Browse Source

更改

master
ligaode 3 months ago
parent
commit
4f9b076037
  1. 4
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/baseshuntinginvoicingapply/BaseShuntingInvoicingApplyFeign.java
  2. 104
      yxt-oa/src/main/java/com/yxt/anrui/oa/api/AdNoexpatriatesHostelApplyRest.java
  3. 3
      yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adexpatriateshomeapply/AdExpatriatesHomeApplyService.java
  4. 49
      yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adnoexpatriateshostelapply/AdNoexpatriatesHostelApply.java
  5. 65
      yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adnoexpatriateshostelapply/AdNoexpatriatesHostelApplyDetailsVo.java
  6. 72
      yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adnoexpatriateshostelapply/AdNoexpatriatesHostelApplyDto.java
  7. 35
      yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adnoexpatriateshostelapply/AdNoexpatriatesHostelApplyMapper.java
  8. 24
      yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adnoexpatriateshostelapply/AdNoexpatriatesHostelApplyMapper.xml
  9. 297
      yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adnoexpatriateshostelapply/AdNoexpatriatesHostelApplyService.java
  10. 65
      yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adnoexpatriateshostelapply/AdNoexpatriatesHostelApplyVo.java

4
anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/baseshuntinginvoicingapply/BaseShuntingInvoicingApplyFeign.java

@ -77,12 +77,12 @@ public interface BaseShuntingInvoicingApplyFeign {
@PostMapping("/save")
@ResponseBody
public ResultBean save(@RequestBody BaseShuntingInvoicingApplyDto dto);
@ApiOperation("根据sid删除记录")
@DeleteMapping("/delBySids")
@ResponseBody
public ResultBean delBySids(@RequestBody String[] sids);
@ApiOperation("根据SID获取一条记录")
@GetMapping("/fetchDetailsBySid/{sid}")
@ResponseBody

104
yxt-oa/src/main/java/com/yxt/anrui/oa/api/AdNoexpatriatesHostelApplyRest.java

@ -0,0 +1,104 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.oa.api;
import com.yxt.anrui.oa.biz.adnoexpatriateshostelapply.*;
import com.yxt.anrui.oa.biz.oaform.flowable.CompleteDto;
import com.yxt.anrui.oa.biz.oaform.flowable.NodeQuery;
import com.yxt.anrui.oa.biz.oaform.flowable.TaskDto;
import com.yxt.common.core.result.ResultBean;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.cloud.openfeign.SpringQueryMap;
import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
@Api(tags = "非驻外人员申请宿舍申请")
@RestController
@RequestMapping("v1/adnoexpatriateshostelapply")
public class AdNoexpatriatesHostelApplyRest {
@Autowired
private AdNoexpatriatesHostelApplyService adNoexpatriatesHostelApplyService;
@ApiOperation("初始化(新增或修改)")
@GetMapping({"/getInit", "/getInit/{sid}"})
public ResultBean<AdNoexpatriatesHostelApplyVo> getInit(
@PathVariable(value = "sid", required = false) String sid,
@RequestParam(value = "userSid", required = false) String userSid,
@RequestParam(value = "orgPath", required = false) String orgPath) {
ResultBean<AdNoexpatriatesHostelApplyVo> rb = ResultBean.fireFail();
if (sid == null || sid.isEmpty()) {
// 执行新增初始化
if (userSid == null || orgPath == null) {
return rb.setMsg("userSid和orgPath不能为空");
}
return adNoexpatriatesHostelApplyService.getSaveInit(userSid, orgPath);
} else {
// 执行修改初始化
return adNoexpatriatesHostelApplyService.getUpdateInit(sid);
}
}
@ApiOperation("新增或修改")
@PostMapping("/save")
public ResultBean save(@RequestBody AdNoexpatriatesHostelApplyDto dto) {
return adNoexpatriatesHostelApplyService.saveOrUpdateDto(dto);
}
@ApiOperation("详情")
@GetMapping("/details/{sid}")
ResultBean<AdNoexpatriatesHostelApplyDetailsVo> details(@PathVariable("sid") String sid
, @RequestParam(value = "application", required = false) String application) {
return adNoexpatriatesHostelApplyService.details(sid,application);
}
@ApiOperation("提交审批流程")
@PostMapping("/submit")
public ResultBean submit(@RequestBody @Valid AdNoexpatriatesHostelApplyDto dto) {
return adNoexpatriatesHostelApplyService.submit(dto);
}
@ApiOperation(value = "办理(同意)")
@PutMapping("/complete")
public ResultBean complete(@Valid @RequestBody CompleteDto dto) {
return adNoexpatriatesHostelApplyService.complete(dto);
}
@ApiOperation(value = "驳回任务")
@PutMapping(value = "/reject")
public ResultBean reject(@Valid @RequestBody TaskDto dto) {
return adNoexpatriatesHostelApplyService.reject(dto);
}
@ApiOperation("获取流程操作标题")
@GetMapping("/getFlowOperateTitle")
@ResponseBody
ResultBean<String> getFlowOperateTitle(@SpringQueryMap NodeQuery query) {
return adNoexpatriatesHostelApplyService.getFlowOperateTitle(query);
}
}

3
yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adexpatriateshomeapply/AdExpatriatesHomeApplyService.java

@ -26,9 +26,6 @@
package com.yxt.anrui.oa.biz.adexpatriateshomeapply;
import cn.hutool.core.bean.BeanUtil;
import com.yxt.anrui.oa.biz.adexpatriatesapply.AdExpatriatesApply;
import com.yxt.anrui.oa.biz.adexpatriatesapply.AdExpatriatesApplyDetailVo;
import com.yxt.anrui.oa.biz.adexpatriatesdetail.AdExpatriatesDetailDto;
import com.yxt.anrui.oa.biz.oaappendix.OaAppendixService;
import com.yxt.anrui.oa.biz.oaform.*;
import com.yxt.anrui.oa.biz.oaform.flowable.*;

49
yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adnoexpatriateshostelapply/AdNoexpatriatesHostelApply.java

@ -0,0 +1,49 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.oa.biz.adnoexpatriateshostelapply;
import com.baomidou.mybatisplus.annotation.TableName;
import com.yxt.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
@ApiModel(value = "非驻外人员申请宿舍申请", description = "非驻外人员申请宿舍申请")
@TableName("ad_noexpatriates_hostel_apply")
public class AdNoexpatriatesHostelApply extends BaseEntity {
private static final long serialVersionUID = 1L;
@ApiModelProperty("申请人岗位sid")
private String postSid; // 申请人岗位sid
@ApiModelProperty("申请人岗位名称")
private String postName; // 申请人岗位名称
@ApiModelProperty("基础表单sid")
private String formSid; // 基础表单sid
@ApiModelProperty("关联审批sid列表,英文逗号分隔")
private String linkFormSids; // 关联审批sid列表,英文逗号分隔
}

65
yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adnoexpatriateshostelapply/AdNoexpatriatesHostelApplyDetailsVo.java

@ -0,0 +1,65 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.oa.biz.adnoexpatriateshostelapply;
import com.yxt.anrui.oa.biz.oaform.FormCommon;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
/**
* Project: yxt-oa(非驻外人员申请宿舍) <br/>
* File: AdNoexpatriatesHostelApplyVo.java <br/>
* Class: com.yxt.anrui.oa.api.adnoexpatriateshostelapply.AdNoexpatriatesHostelApplyVo <br/>
* Description: 非驻外人员申请宿舍申请 视图数据对象. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2025-01-24 15:12:38 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "非驻外人员申请宿舍申请 视图数据详情", description = "非驻外人员申请宿舍申请 视图数据详情")
public class AdNoexpatriatesHostelApplyDetailsVo implements Vo {
@ApiModelProperty("申请人岗位")
private String jobValue;
@ApiModelProperty("申请事由及详情")
private String remarks;
@ApiModelProperty("图片")
private List<String> files = new ArrayList<>();
@ApiModelProperty("附件")
private List<String> appes = new ArrayList<>();
}

72
yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adnoexpatriateshostelapply/AdNoexpatriatesHostelApplyDto.java

@ -0,0 +1,72 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.oa.biz.adnoexpatriateshostelapply;
import com.yxt.anrui.oa.biz.oaform.FormCommon;
import com.yxt.anrui.oa.biz.oaform.OaFormDto;
import com.yxt.common.core.dto.Dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
/**
* Project: yxt-oa(非驻外人员申请宿舍) <br/>
* File: AdNoexpatriatesHostelApplyDto.java <br/>
* Class: com.yxt.anrui.oa.api.adnoexpatriateshostelapply.AdNoexpatriatesHostelApplyDto <br/>
* Description: 非驻外人员申请宿舍申请 数据传输对象. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2025-01-24 15:12:38 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "非驻外人员申请宿舍申请 数据传输对象", description = "非驻外人员申请宿舍申请 数据传输对象")
public class AdNoexpatriatesHostelApplyDto extends OaFormDto {
@ApiModelProperty("申请人岗位")
private FormCommon jobObj;
private String jobKey;
private String jobValue;
@ApiModelProperty("申请事由及详情")
private String remarks;
@ApiModelProperty("基础表单sid")
private String formSid; // 基础表单sid
@ApiModelProperty("关联审批sid列表,英文逗号分隔")
private String linkFormSids; // 关联审批sid列表,英文逗号分隔
@ApiModelProperty("图片")
private List<String> files = new ArrayList<>();
@ApiModelProperty("文件")
private List<String> appes = new ArrayList<>();
}

35
yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adnoexpatriateshostelapply/AdNoexpatriatesHostelApplyMapper.java

@ -0,0 +1,35 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.oa.biz.adnoexpatriateshostelapply;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
@Mapper
public interface AdNoexpatriatesHostelApplyMapper extends BaseMapper<AdNoexpatriatesHostelApply> {
AdNoexpatriatesHostelApplyDetailsVo details(String sid);
}

24
yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adnoexpatriateshostelapply/AdNoexpatriatesHostelApplyMapper.xml

@ -0,0 +1,24 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yxt.anrui.oa.biz.adnoexpatriateshostelapply.AdNoexpatriatesHostelApplyMapper">
<!-- <where> ${ew.sqlSegment} </where>-->
<!-- ${ew.customSqlSegment} -->
<select id="details"
resultType="com.yxt.anrui.oa.biz.adnoexpatriateshostelapply.AdNoexpatriatesHostelApplyDetailsVo">
select sid,
postName jobValue,
lastAddress,
lastStartDate,
lastEndDate,
thisAddress,
thisStartDate,
thisEndDate,
relationValue,
peoNum,
homeType
from ad_expatriates_home_apply
where sid = #{sid}
</select>
</mapper>

297
yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adnoexpatriateshostelapply/AdNoexpatriatesHostelApplyService.java

@ -0,0 +1,297 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.oa.biz.adnoexpatriateshostelapply;
import cn.hutool.core.bean.BeanUtil;
import com.yxt.anrui.oa.biz.oaappendix.OaAppendixService;
import com.yxt.anrui.oa.biz.oaform.*;
import com.yxt.anrui.oa.biz.oaform.flowable.*;
import com.yxt.anrui.oa.feign.file.OaFileEnum;
import com.yxt.anrui.oa.feign.flowable.flow.ProcDefEnum;
import com.yxt.anrui.oa.feign.portal.sysorganization.SysOrganizationFeign;
import com.yxt.anrui.oa.feign.portal.sysorganization.SysOrganizationVo;
import org.apache.commons.lang3.StringUtils;
import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.core.result.ResultBean;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@Service
public class AdNoexpatriatesHostelApplyService extends MybatisBaseService<AdNoexpatriatesHostelApplyMapper, AdNoexpatriatesHostelApply> {
@Autowired
private OaAppendixService oaAppendixService;
@Autowired
private OaFormService oaFormService;
@Autowired
private SysOrganizationFeign sysOrganizationFeign;
public ResultBean<AdNoexpatriatesHostelApplyVo> getSaveInit(String userSid, String orgPath) {
ResultBean<AdNoexpatriatesHostelApplyVo> rb = ResultBean.fireFail();
AdNoexpatriatesHostelApplyVo adNoexpatriatesHostelApplyVo = new AdNoexpatriatesHostelApplyVo();
adNoexpatriatesHostelApplyVo.setCreateBySid(userSid);
adNoexpatriatesHostelApplyVo.setOrgSidPath(orgPath);
return rb.success().setData(adNoexpatriatesHostelApplyVo);
}
public ResultBean<AdNoexpatriatesHostelApplyVo> getUpdateInit(String sid) {
ResultBean<AdNoexpatriatesHostelApplyVo> rb = ResultBean.fireFail();
AdNoexpatriatesHostelApplyVo adNoexpatriatesHostelApplyVo = new AdNoexpatriatesHostelApplyVo();
AdNoexpatriatesHostelApply adNoexpatriatesHostelApply = fetchBySid(sid);
if (adNoexpatriatesHostelApply == null) {
return rb.setMsg("该申请不存在");
}
// adExpatriatesHomeApplyVo.setTestPage(adExpatriatesHomeApply.getTestPage());
OaForm oaForm = oaFormService.fetchBySid(sid);
adNoexpatriatesHostelApplyVo.setTaskId(oaForm.getTaskId());
adNoexpatriatesHostelApplyVo.setProcInsId(oaForm.getProcInstId());
//根据部门sid获取orgPath并赋值
SysOrganizationVo organizationVo = sysOrganizationFeign.fetchBySid(oaForm.getDeptSid()).getData();
String orgSidPath = organizationVo.getOrgSidPath();
adNoexpatriatesHostelApplyVo.setOrgSidPath(orgSidPath);
adNoexpatriatesHostelApplyVo.setCreateBySid(oaForm.getCreateBySid());
BeanUtil.copyProperties(adNoexpatriatesHostelApply, adNoexpatriatesHostelApplyVo);
adNoexpatriatesHostelApplyVo.setJobKey(adNoexpatriatesHostelApply.getPostSid());
adNoexpatriatesHostelApplyVo.setJobValue(adNoexpatriatesHostelApply.getPostName());
FormCommon jobObj = FormCommon.of(adNoexpatriatesHostelApplyVo.getJobKey(), adNoexpatriatesHostelApplyVo.getJobValue());
adNoexpatriatesHostelApplyVo.setJobObj(jobObj);
List<String> files = oaAppendixService.selectByLinkSid(sid, "图片");
adNoexpatriatesHostelApplyVo.setFiles(files);
List<String> appes = oaAppendixService.selectByLinkSid(sid, "文件");
adNoexpatriatesHostelApplyVo.setAppes(appes);
adNoexpatriatesHostelApplyVo.setSid(sid);
return rb.success().setData(adNoexpatriatesHostelApplyVo);
}
public ResultBean<String> saveOrUpdateDto(AdNoexpatriatesHostelApplyDto dto) {
ResultBean<String> rb = ResultBean.fireFail();
String sid = dto.getSid();
List<String> files = dto.getFiles();
List<String> appes = dto.getAppes();
if (StringUtils.isBlank(sid)) {
// 新建操作
AdNoexpatriatesHostelApply entity = new AdNoexpatriatesHostelApply();
BeanUtil.copyProperties(dto, entity, "sid");
dto.setBillNo("FZWRYSSSQ");
dto.setSid(entity.getSid());
ResultBean<String> resultBean = oaFormService.saveOaForm(dto);
if (!resultBean.getSuccess()) {
return rb;
}
entity.setFormSid(resultBean.getData());
baseMapper.insert(entity);
sid = entity.getSid();
} else {
// 更新操作
AdNoexpatriatesHostelApply entity = fetchBySid(sid);
BeanUtil.copyProperties(dto, entity, "id", "sid");
baseMapper.updateById(entity);
}
// 处理附件
saveFiles(sid, files, OaFileEnum.ADEXPATRIATESAPPLY.getAttachType(), "图片");
saveFiles(sid, appes, OaFileEnum.ADEXPATRIATESAPPLY.getAttachType(), "文件");
return rb.success().setData(sid);
}
// 保存文件
private void saveFiles(String sid, List<String> files, String attachType, String fileType) {
files.removeAll(Collections.singleton(null));
oaAppendixService.saveFile(sid, files, attachType, fileType);
}
public ResultBean<AdNoexpatriatesHostelApplyDetailsVo> details(String sid, String application) {
ResultBean<AdNoexpatriatesHostelApplyDetailsVo> rb = ResultBean.fireFail();
AdNoexpatriatesHostelApplyDetailsVo adNoexpatriatesHostelApplyDetailsVo = baseMapper.details(sid);
if (adNoexpatriatesHostelApplyDetailsVo == null) {
return rb.setMsg("该申请不存在");
}
List<String> files = oaAppendixService.selectByLinkSid(sid, "图片");
List<String> appes = oaAppendixService.selectByLinkSid(sid, "文件");
adNoexpatriatesHostelApplyDetailsVo.setFiles(files);
adNoexpatriatesHostelApplyDetailsVo.setAppes(appes);
//基础字段赋值
BeanUtil.copyProperties(oaFormService.getDetails(sid), adNoexpatriatesHostelApplyDetailsVo);
return rb.success().setData(adNoexpatriatesHostelApplyDetailsVo);
}
/**
* 提交
*
* @param dto
* @return
*/
public ResultBean submit(AdNoexpatriatesHostelApplyDto dto) {
ResultBean rb = ResultBean.fireFail();
ResultBean<String> stringResultBean = saveOrUpdateDto(dto);
if (!stringResultBean.getSuccess()) {
return rb.setMsg(stringResultBean.getData());
}
String businessSid = stringResultBean.getData();
SubmitDto submitDto = new SubmitDto();
submitDto.setUserSid(dto.getCreateBySid());
submitDto.setBusinessSid(businessSid);
Map<String, Object> formVariables = new HashMap<>();
formVariables = getMap(formVariables, businessSid);
submitDto.setFormVariables(formVariables);
submitDto.setProcDefId(ProcDefEnum.HIHIREAPPLY.getProDefId());
submitDto.setNextTaskId(dto.getTaskId());
submitDto.setRule(OaFormRuleEnum.DIRECTLY_UNDER.getRule());
return oaFormService.submit(submitDto);
}
/**
* 办理同意
*
* @param dto
* @return
*/
public ResultBean complete(CompleteDto dto) {
Map<String, Object> formVariables = dto.getFormVariables();
formVariables = getMap(formVariables, dto.getBusinessSid());
dto.setFormVariables(formVariables);
BusinessVariablesDto businessVariablesDto = new BusinessVariablesDto();
BeanUtil.copyProperties(dto, businessVariablesDto);
return oaFormService.complete(businessVariablesDto);
}
/**
* 驳回
*
* @param dto
* @return
*/
public ResultBean reject(TaskDto dto) {
Map<String, Object> formVariables = dto.getFormVariables();
formVariables = getMap(formVariables, dto.getBusinessSid());
dto.setFormVariables(formVariables);
return oaFormService.reject(dto);
}
public ResultBean<String> getFlowOperateTitle(NodeQuery query) {
// 默认失败返回
ResultBean<String> rb = ResultBean.fireFail();
// 获取next值和formVariables
int next = query.getNext();
// 获取并更新formVariables
Map<String, Object> formVariables = getMap(query.getFormVariables(), query.getBusinessSid());
query.setFormVariables(formVariables);
// 校验next参数是否有效(只允许0或1)
if (next != 0 && next != 1) {
return rb.setMsg("参数错误:next"); // 如果next不是0或1,返回错误信息
}
// 获取节点名称
String data = getNodeName(query, next);
// 如果data为null,表示未获取到有效的节点信息
if (data == null) {
return rb.setMsg("没有获取到节点信息"); // 返回错误消息
}
// 返回成功的结果和获取到的节点名称
return rb.success().setData(data);
}
/**
* 网关参数组成
*
* @param formVariables
* @param sid
* @return
*/
public Map<String, Object> getMap(Map<String, Object> formVariables, String sid) {
Map<String, Object> appMap = new HashMap<>();
appMap.put("sid", sid);
/*appMap.put("editUrl", "approval/#/pages/EditOnboradingApplyActivity?sid=" + sid);
appMap.put("detailUrl", "approval/#/pages/DetailOnboradingApplyActivity?sid=" + sid);
appMap.put("flowOperateUrl", "oa/v1/HrHireApply/getFlowOperateTitle");
appMap.put("agreeUrl", "oa/v1/HrHireApply/complete");
appMap.put("stopUrl", "oa/v1/oaform/breakProcess");
appMap.put("rejectUrl", "oa/v1/HrHireApply/reject");
appMap.put("recallUrl", "oa/v1/oaform/revokeProcess");
appMap.put("signUrl", "oa/v1/oaform/delegate");
appMap.put("transferUrl", "oa/v1/oaform/assignTask");*/
appMap.put(OaFormUrlEnum.HRHIREAPPLY_EDIT.getType(), OaFormUrlEnum.HRHIREAPPLY_EDIT.getUrl() + "?sid=" + sid);
appMap.put(OaFormUrlEnum.HRHIREAPPLY_DETAIL.getType(), OaFormUrlEnum.HRHIREAPPLY_DETAIL.getUrl() + "?sid=" + sid);
appMap.put(OaFormUrlEnum.HRHIREAPPLY_FLOWOPERATEURL.getType(), OaFormUrlEnum.HRHIREAPPLY_FLOWOPERATEURL.getUrl());
appMap.put(OaFormUrlEnum.HRHIREAPPLY_AGREEURL.getType(), OaFormUrlEnum.HRHIREAPPLY_AGREEURL.getUrl());
appMap.put(OaFormUrlEnum.STOPURL.getType(), OaFormUrlEnum.STOPURL.getUrl());
appMap.put(OaFormUrlEnum.HRHIREAPPLY_REJECTURL.getType(), OaFormUrlEnum.HRHIREAPPLY_REJECTURL.getUrl());
appMap.put(OaFormUrlEnum.RECALLURL.getType(), OaFormUrlEnum.RECALLURL.getUrl());
appMap.put(OaFormUrlEnum.SIGNURL.getType(), OaFormUrlEnum.SIGNURL.getUrl());
appMap.put(OaFormUrlEnum.TRANSFERURL.getType(), OaFormUrlEnum.TRANSFERURL.getUrl());
formVariables.put("app", appMap);
//根据组织查询是否是分公司
OaForm oaForm = oaFormService.fetchBySid(sid);
AdNoexpatriatesHostelApply adNoexpatriatesHostelApply = fetchBySid(sid);
SysOrganizationVo sysOrganization = sysOrganizationFeign.fetchBySid(oaForm.getUseOrgSid()).getData();
//是否是分公司
formVariables.put("isTrue", sysOrganization.getIsDept() == 0);
return formVariables;
}
/**
* 根据next的值获取前一个节点或下一个节点的名称
*
* @param query 包含查询所需参数的NodeQuery对象
* @param next 参数0表示上一环节1表示下一环节
* @return 节点名称如果失败则返回null
*/
private String getNodeName(NodeQuery query, int next) {
// 根据next值选择相应的服务方法获取节点信息
ResultBean<List<NodeVo>> resultBean = (next == 0)
? oaFormService.getPreviousNodesForReject(query) // 获取上一环节的节点
: oaFormService.getNextNodesForSubmit(query); // 获取下一环节的节点
// 如果服务调用成功
if (resultBean.getSuccess()) {
// 清除结果列表中的null值,避免空节点
resultBean.getData().removeAll(Collections.singleton(null));
// 如果结果列表非空,返回第一个节点的名称
if (!resultBean.getData().isEmpty()) {
return resultBean.getData().get(0).getName();
}
} else {
// 如果服务调用失败,返回null
return null;
}
// 如果结果为空,返回null
return null;
}
}

65
yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adnoexpatriateshostelapply/AdNoexpatriatesHostelApplyVo.java

@ -0,0 +1,65 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.oa.biz.adnoexpatriateshostelapply;
import com.yxt.anrui.oa.biz.oaform.FormCommon;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
@Data
@ApiModel(value = "非驻外人员申请宿舍申请 视图数据对象", description = "非驻外人员申请宿舍申请 视图数据对象")
public class AdNoexpatriatesHostelApplyVo implements Vo {
private String sid;
/* private String userSid;
private String orgPath;*/
private String orgSidPath;
private String createBySid;
@ApiModelProperty("申请人岗位")
private FormCommon jobObj;
private String jobKey;
private String jobValue;
@ApiModelProperty("申请事由及详情")
private String remarks;
@ApiModelProperty("图片")
private List<String> files = new ArrayList<>();
@ApiModelProperty("附件")
private List<String> appes = new ArrayList<>();
private String taskId;
@ApiModelProperty("流程实例id")
private String procInsId;
// private String testPage;
}
Loading…
Cancel
Save