Browse Source

更改

master
ligaode 3 months ago
parent
commit
6ae6b31201
  1. 4
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmspecialrebatecheckapplydetail/ScmSpecialrebateCheckapplydetailFeign.java
  2. 4
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebatecheckapplydetail/ScmVehrebateCheckapplydetailFeign.java
  3. 4
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebatecheckapplydetail/ScmSpecialrebateCheckapplydetailMapper.java
  4. 10
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebatecheckapplydetail/ScmSpecialrebateCheckapplydetailMapper.xml
  5. 4
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebatecheckapplydetail/ScmSpecialrebateCheckapplydetailRest.java
  6. 6
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebatecheckapplydetail/ScmSpecialrebateCheckapplydetailService.java
  7. 3
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebatecheckapplydetail/ScmVehrebateCheckapplydetailMapper.java
  8. 4
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebatecheckapplydetail/ScmVehrebateCheckapplydetailRest.java
  9. 12
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebatecheckapplydetail/ScmVehrebateCheckapplydetailService.java
  10. 115
      yxt-oa/src/main/java/com/yxt/anrui/oa/api/AdExpatriatesHomeApplyRest.java
  11. 19
      yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adexpatriatesapply/AdExpatriatesApplyMapper.java
  12. 25
      yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adexpatriatesapply/AdExpatriatesApplyMapper.xml
  13. 7
      yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adexpatriatesapply/AdExpatriatesApplyService.java
  14. 67
      yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adexpatriateshomeapply/AdExpatriatesHomeApply.java
  15. 74
      yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adexpatriateshomeapply/AdExpatriatesHomeApplyDto.java
  16. 54
      yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adexpatriateshomeapply/AdExpatriatesHomeApplyMapper.java
  17. 40
      yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adexpatriateshomeapply/AdExpatriatesHomeApplyMapper.xml
  18. 40
      yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adexpatriateshomeapply/AdExpatriatesHomeApplyQuery.java
  19. 243
      yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adexpatriateshomeapply/AdExpatriatesHomeApplyService.java
  20. 74
      yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adexpatriateshomeapply/AdExpatriatesHomeApplyVo.java
  21. 1
      yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oamendapply/OaMendApplyMapper.java

4
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmspecialrebatecheckapplydetail/ScmSpecialrebateCheckapplydetailFeign.java

@ -63,9 +63,9 @@ public interface ScmSpecialrebateCheckapplydetailFeign {
public ResultBean<List<ScmSpecialRebateDetailsVo>> specialRebateCheckDetails(@PathVariable("sid") String sid);
@ApiOperation("专项返利核对查看分组详情")
@GetMapping("/specialRebateGroupDetails/{sid}")
@GetMapping("/specialRebateGroupDetails")
@ResponseBody
public ResultBean<List<ScmSpecialRebateDetailsVo>> specialRebateGroupDetails(@PathVariable("sid") String sid);
public ResultBean<List<ScmSpecialRebateDetailsVo>> specialRebateGroupDetails(@RequestParam("applySid") String applySid,@RequestParam("specialRebateSids") String specialRebateSids);
@ApiOperation("app查询明细")
@GetMapping("/appMx/{sid}")

4
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebatecheckapplydetail/ScmVehrebateCheckapplydetailFeign.java

@ -78,9 +78,9 @@ public interface ScmVehrebateCheckapplydetailFeign {
public ResultBean<List<ScmVehRebateDetailsVo>> vehRebateCheckDetails(@PathVariable("sid") String sid);
@ApiOperation("单车返利核对查看分组详情")
@GetMapping("/vehRebateGroupDetails/{sid}")
@GetMapping("/vehRebateGroupDetails")
@ResponseBody
public ResultBean<List<ScmVehRebateDetailsVo>> vehRebateGroupDetails(@PathVariable("sid") String sid);
public ResultBean<List<ScmVehRebateDetailsVo>> vehRebateGroupDetails(@RequestParam("applySid") String applySid, @RequestParam("vehRebateSids") String vehRebateSids);
@ApiOperation("app查询明细")
@GetMapping("/appMx/{sid}")

4
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebatecheckapplydetail/ScmSpecialrebateCheckapplydetailMapper.java

@ -57,7 +57,9 @@ public interface ScmSpecialrebateCheckapplydetailMapper extends BaseMapper<ScmSp
List<AppSpecialrebateCheckapplydetailDetailssVo> fetchByMainSidType(@Param("sid") String sid, @Param("purchaseSystemName") String purchaseSystemName, @Param("brandName") String brandName);
List<AppSpecialrebateCheckapplydetailDetailssVo> fetchByMainSidDate(@Param("sid") String sid,@Param("purchaseSystemName") String purchaseSystemName,@Param("brandName") String brandName);
List<AppSpecialrebateCheckapplydetailDetailssVo> fetchByMainSidDate(@Param("sid") String sid, @Param("purchaseSystemName") String purchaseSystemName, @Param("brandName") String brandName);
ScmSpecialRebateDetailsVo appMx(String s);
ScmSpecialRebateDetailsVo specialRebateGroupDetails(@Param("applySid") String applySid, @Param("specialRebateSid") String specialRebateSid);
}

10
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebatecheckapplydetail/ScmSpecialrebateCheckapplydetailMapper.xml

@ -153,4 +153,14 @@
ON sd.mainSid = sc.sid
WHERE sd.specialRebateSid = #{s}
</select>
<select id="specialRebateGroupDetails"
resultType="com.yxt.anrui.scm.api.scmspecialrebate.ScmSpecialRebateDetailsVo">
SELECT sc.createOrgName, sd.*
FROM scm_specialrebate_checkapplydetail sd
LEFT JOIN scm_specialrebate_checkapply sc
ON sd.mainSid = sc.sid
WHERE sd.mainSid = #{applySid}
AND sd.specialRebateSid = #{specialRebateSid}
</select>
</mapper>

4
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebatecheckapplydetail/ScmSpecialrebateCheckapplydetailRest.java

@ -61,8 +61,8 @@ public class ScmSpecialrebateCheckapplydetailRest implements ScmSpecialrebateChe
}
@Override
public ResultBean<List<ScmSpecialRebateDetailsVo>> specialRebateGroupDetails(String sid) {
return scmSpecialrebateCheckapplydetailService.specialRebateGroupDetails(sid);
public ResultBean<List<ScmSpecialRebateDetailsVo>> specialRebateGroupDetails(String applySid,String specialRebateSids) {
return scmSpecialrebateCheckapplydetailService.specialRebateGroupDetails(applySid,specialRebateSids);
}
@Override

6
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebatecheckapplydetail/ScmSpecialrebateCheckapplydetailService.java

@ -119,12 +119,12 @@ public class ScmSpecialrebateCheckapplydetailService extends MybatisBaseService<
return rb.success().setData(scmSpecialRebateDetailsVos);
}
public ResultBean<List<ScmSpecialRebateDetailsVo>> specialRebateGroupDetails(String sid) {
public ResultBean<List<ScmSpecialRebateDetailsVo>> specialRebateGroupDetails(String applySid,String specialRebateSids) {
ResultBean rb = ResultBean.fireFail();
List<ScmSpecialRebateDetailsVo> scmSpecialRebateDetailsVos = new ArrayList<>();
String[] sids = sid.split(",");
String[] sids = specialRebateSids.split(",");
for (String s : sids) {
ScmSpecialRebateDetailsVo scmSpecialRebateDetailsVo = baseMapper.appMx(s);
ScmSpecialRebateDetailsVo scmSpecialRebateDetailsVo = baseMapper.specialRebateGroupDetails(applySid,s);
scmSpecialRebateDetailsVo.setWithholdCost(scmSpecialRebateDetailsVo.getExpectItureCost().add(scmSpecialRebateDetailsVo.getExpectTreatCost()).add(scmSpecialRebateDetailsVo.getExpectSuppCost()));
scmSpecialRebateDetailsVo.setMoney(scmSpecialRebateDetailsVo.getOnceItureCost().add(scmSpecialRebateDetailsVo.getOnceTreatCost()).add(scmSpecialRebateDetailsVo.getOnceSuppCost()).add(scmSpecialRebateDetailsVo.getSecondItureCost()).add(scmSpecialRebateDetailsVo.getSecondTreatCost()).add(scmSpecialRebateDetailsVo.getSecondSuppCost()).toString());
scmSpecialRebateDetailsVos.add(scmSpecialRebateDetailsVo);

3
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebatecheckapplydetail/ScmVehrebateCheckapplydetailMapper.java

@ -85,4 +85,7 @@ public interface ScmVehrebateCheckapplydetailMapper extends BaseMapper<ScmVehreb
@Select("select * from scm_vehrebate_checkapplydetail where vehRebateSid = #{s}")
ScmVehRebateDetailsVo selByVehRebteSidNew(String s);
@Select("select * from scm_vehrebate_checkapplydetail where mainSid = #{applySid} and vehRebateSid = #{vehRebateSid}")
ScmVehRebateDetailsVo vehRebateGroupDetails(@Param("applySid") String applySid,@Param("vehRebateSid") String vehRebateSid);
}

4
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebatecheckapplydetail/ScmVehrebateCheckapplydetailRest.java

@ -81,8 +81,8 @@ public class ScmVehrebateCheckapplydetailRest implements ScmVehrebateCheckapplyd
}
@Override
public ResultBean<List<ScmVehRebateDetailsVo>> vehRebateGroupDetails(String sid) {
return scmVehrebateCheckapplydetailService.vehRebateGroupDetails(sid);
public ResultBean<List<ScmVehRebateDetailsVo>> vehRebateGroupDetails(String applySid, String vehRebateSids) {
return scmVehrebateCheckapplydetailService.vehRebateGroupDetails(applySid, vehRebateSids);
}
@Override

12
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebatecheckapplydetail/ScmVehrebateCheckapplydetailService.java

@ -103,11 +103,11 @@ public class ScmVehrebateCheckapplydetailService extends MybatisBaseService<ScmV
}
public List<AppVehrebateCheckapplydetailDetailssVo> fetchByMainSidType(String sid, String purchaseSystemName, String brandName) {
return baseMapper.fetchByMainSidType(sid,purchaseSystemName,brandName);
return baseMapper.fetchByMainSidType(sid, purchaseSystemName, brandName);
}
public List<AppVehrebateCheckapplydetailDetailssVo> fetchByMainSidDate(String sid, String purchaseSystemName, String brandName) {
return baseMapper.fetchByMainSidDate(sid,purchaseSystemName,brandName);
return baseMapper.fetchByMainSidDate(sid, purchaseSystemName, brandName);
}
public ResultBean<List<ScmVehRebateDetailsVo>> appMx(String sid) {
@ -123,12 +123,12 @@ public class ScmVehrebateCheckapplydetailService extends MybatisBaseService<ScmV
return rb.success().setData(scmVehRebateDetailsVos);
}
public ResultBean<List<ScmVehRebateDetailsVo>> vehRebateGroupDetails(String sid) {
public ResultBean<List<ScmVehRebateDetailsVo>> vehRebateGroupDetails(String applySid, String vehRebateSids) {
ResultBean rb = ResultBean.fireFail();
List<ScmVehRebateDetailsVo> scmVehRebateDetailsVos = new ArrayList<>();
String[] vehRebateSids = sid.split(",");
for (String vehRebateSid : vehRebateSids) {
ScmVehRebateDetailsVo scmVehRebateDetailsVo = baseMapper.selByVehRebteSidNew(vehRebateSid);
String[] sids = vehRebateSids.split(",");
for (String vehRebateSid : sids) {
ScmVehRebateDetailsVo scmVehRebateDetailsVo = baseMapper.vehRebateGroupDetails(applySid, vehRebateSid);
scmVehRebateDetailsVo.setWithholdCost(scmVehRebateDetailsVo.getExpectTreatCost().add(scmVehRebateDetailsVo.getExpectSuppCost()));
scmVehRebateDetailsVo.setMoney(scmVehRebateDetailsVo.getOnceTreatCost().add(scmVehRebateDetailsVo.getOnceSuppCost()).add(scmVehRebateDetailsVo.getSecondTreatCost()).add(scmVehRebateDetailsVo.getSecondSuppCost()).toString());
scmVehRebateDetailsVos.add(scmVehRebateDetailsVo);

115
yxt-oa/src/main/java/com/yxt/anrui/oa/api/AdExpatriatesHomeApplyRest.java

@ -0,0 +1,115 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.oa.api;
import com.yxt.anrui.oa.biz.adexpatriatesapply.AdExpatriatesApplyDto;
import com.yxt.anrui.oa.biz.adexpatriateshomeapply.*;
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.NodeVo;
import com.yxt.anrui.oa.biz.oaform.flowable.TaskDto;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
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;
import java.util.List;
@Api(tags = "驻外人员探亲申请")
@RestController
@RequestMapping("v1/adexpatriateshomeapply")
public class AdExpatriatesHomeApplyRest {
@Autowired
private AdExpatriatesHomeApplyService adExpatriatesHomeApplyService;
@ApiOperation("根据条件分页查询数据的列表")
@PostMapping("/listPage")
public ResultBean<PagerVo<AdExpatriatesHomeApplyVo>> listPage(@RequestBody PagerQuery<AdExpatriatesHomeApplyQuery> pq) {
ResultBean rb = ResultBean.fireFail();
PagerVo<AdExpatriatesHomeApplyVo> pv = adExpatriatesHomeApplyService.listPageVo(pq);
return rb.success().setData(pv);
}
@ApiOperation("新增或修改")
@PostMapping("/save")
public ResultBean save(@RequestBody AdExpatriatesHomeApplyDto dto) {
ResultBean rb = ResultBean.fireFail();
adExpatriatesHomeApplyService.saveOrUpdateDto(dto);
return rb.success();
}
@ApiOperation("根据sid批量删除")
@DeleteMapping("/delBySids")
public ResultBean delBySids(@RequestBody String[] sids) {
ResultBean rb = ResultBean.fireFail();
adExpatriatesHomeApplyService.delAll(sids);
return rb.success();
}
@ApiOperation("根据SID获取一条记录")
@GetMapping("/fetchDetailsBySid/{sid}")
public ResultBean<AdExpatriatesHomeApplyVo> fetchDetailsBySid(@PathVariable("sid") String sid) {
ResultBean rb = ResultBean.fireFail();
AdExpatriatesHomeApplyVo vo = adExpatriatesHomeApplyService.fetchDetailsVoBySid(sid);
return rb.success().setData(vo);
}
@ApiOperation("提交审批流程")
@PostMapping("/submit")
public ResultBean submit(@RequestBody @Valid AdExpatriatesHomeApplyDto dto) {
return adExpatriatesHomeApplyService.submit(dto);
}
@ApiOperation(value = "办理(同意)")
@PostMapping("/complete")
public ResultBean complete(@Valid @RequestBody CompleteDto dto) {
return adExpatriatesHomeApplyService.complete(dto);
}
@ApiOperation(value = "驳回任务")
@PostMapping(value = "/reject")
public ResultBean reject(@Valid @RequestBody TaskDto dto) {
return adExpatriatesHomeApplyService.reject(dto);
}
@ApiOperation(value = "获取上一个环节")
@GetMapping(value = "/getPreviousNodesForReject")
public ResultBean<List<NodeVo>> getPreviousNodesForReject(@Valid @SpringQueryMap NodeQuery query) {
return adExpatriatesHomeApplyService.getPreviousNodesForReject(query);
}
@ApiOperation(value = "获取下一个环节")
@GetMapping(value = "/getNextNodesForSubmit")
public ResultBean<List<NodeVo>> getNextNodesForSubmit(@Valid @SpringQueryMap NodeQuery query) {
return adExpatriatesHomeApplyService.getNextNodesForSubmit(query);
}
}

19
yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adexpatriatesapply/AdExpatriatesApplyMapper.java

@ -32,23 +32,12 @@ import com.baomidou.mybatisplus.core.toolkit.Constants;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
/**
* Project: oa(驻外人员认定申请) <br/>
* File: AdExpatriatesApplyMapper.java <br/>
* Class: com.yxt.anrui.oa.biz.adexpatriatesapply.AdExpatriatesApplyMapper <br/>
* Description: 驻外人员认定申请. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2025-01-16 15:22:53 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Mapper
public interface AdExpatriatesApplyMapper extends BaseMapper<AdExpatriatesApply> {
IPage<AdExpatriatesApplyVo> selectPageVo(IPage<AdExpatriatesApply> page, @Param(Constants.WRAPPER) Wrapper<AdExpatriatesApply> qw);
IPage<AdExpatriatesApplyVo> selectPageVo(IPage<AdExpatriatesApply> page, @Param(Constants.WRAPPER) Wrapper<AdExpatriatesApply> qw);
int selectBySid(String join);
int selectBySid(String join);
AdExpatriatesApplyVo fetchDetailsVoBySid(String sid);
}

25
yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adexpatriatesapply/AdExpatriatesApplyMapper.xml

@ -37,4 +37,29 @@
WHERE ofm.nodeState != '待提交'
and find_in_set(oa.sid, #{list})
</select>
<select id="fetchDetailsVoBySid" resultType="com.yxt.anrui.oa.biz.adexpatriatesapply.AdExpatriatesApplyVo">
SELECT ae.sid,
ae.remarks,
ae.formSid,
ofm.billNo,
ofm.createByName,
ofm.deptSid,
ofm.deptName,
ofm.useOrgSid,
ofm.useOrgName,
DATE_FORMAT(ofm.finishTime) as finishTime,
ofm.procInstId,
ofm.procDefId,
ofm.taskId,
ofm.nodeId,
ofm.nodeState,
ofm.formType,
ofm.title,
ofm.createOrgSid,
ofm.createOrgName
FROM ad_expatriates_apply ae
left join oa_form ofm on ae.formSid = ofm.sid
where ae.sid = #{sid}
</select>
</mapper>

7
yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adexpatriatesapply/AdExpatriatesApplyService.java

@ -36,6 +36,7 @@ import com.yxt.anrui.oa.biz.oaform.OaFormRuleEnum;
import com.yxt.anrui.oa.biz.oaform.OaFormService;
import com.yxt.anrui.oa.biz.oaform.flowable.*;
import com.yxt.anrui.oa.biz.oamendapply.OaMendApplyDto;
import com.yxt.anrui.oa.biz.oamendapply.OaMendApplyVo;
import com.yxt.anrui.oa.feign.file.OaFileEnum;
import com.yxt.anrui.oa.feign.flowable.flow.ProcDefEnum;
import org.apache.commons.lang3.StringUtils;
@ -130,9 +131,9 @@ public class AdExpatriatesApplyService extends MybatisBaseService<AdExpatriatesA
}
public AdExpatriatesApplyVo fetchDetailsVoBySid(String sid) {
AdExpatriatesApply entity = fetchBySid(sid);
AdExpatriatesApplyVo vo = new AdExpatriatesApplyVo();
BeanUtil.copyProperties(entity, vo);
AdExpatriatesApplyVo vo = baseMapper.fetchDetailsVoBySid(sid);
List<String> files = oaAppendixService.selectByLinkSid(sid);
vo.setFiles(files);
List<AdExpatriatesDetailVo> adExpatriatesDetailList = adExpatriatesDetailService.fetchByMainSid(sid);
vo.setAdExpatriatesDetailList(adExpatriatesDetailList);
return vo;

67
yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adexpatriateshomeapply/AdExpatriatesHomeApply.java

@ -0,0 +1,67 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.oa.biz.adexpatriateshomeapply;
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_expatriates_home_apply")
public class AdExpatriatesHomeApply extends BaseEntity {
private static final long serialVersionUID = 1L;
@ApiModelProperty("申请人岗位sid")
private String postSid; // 申请人岗位sid
@ApiModelProperty("申请人岗位名称")
private String postName; // 申请人岗位名称
@ApiModelProperty("上次探亲休假探亲地")
private String lastAddress; // 上次探亲休假探亲地
@ApiModelProperty("上次探亲休假开始时间")
private String lastStartDate; // 上次探亲休假开始时间
@ApiModelProperty("上次探亲休假结束时间")
private String lastEndDate; // 上次探亲休假结束时间
@ApiModelProperty("本次探亲休假探亲地")
private String thisAddress; // 本次探亲休假探亲地
@ApiModelProperty("本次申请探亲休假开始时间")
private String thisStartDate; // 本次申请探亲休假开始时间
@ApiModelProperty("本次申请探亲休假结束时间")
private String thisEndDate; // 本次申请探亲休假结束时间
@ApiModelProperty("探亲家属关系")
private String relation; // 探亲家属关系
@ApiModelProperty("探亲家属人数")
private String peoNum; // 探亲家属人数
@ApiModelProperty("探亲类型")
private String homeType; // 探亲类型
@ApiModelProperty("基础表单sid")
private String formSid; // 基础表单sid
@ApiModelProperty("关联审批sid列表,英文逗号分隔")
private String linkFormSids; // 关联审批sid列表,英文逗号分隔
}

74
yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adexpatriateshomeapply/AdExpatriatesHomeApplyDto.java

@ -0,0 +1,74 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.oa.biz.adexpatriateshomeapply;
import com.yxt.anrui.oa.biz.oaform.OaFormDto;
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 AdExpatriatesHomeApplyDto extends OaFormDto {
private String sid; // sid
@ApiModelProperty("申请人岗位sid")
private String postSid; // 申请人岗位sid
@ApiModelProperty("申请人岗位名称")
private String postName; // 申请人岗位名称
@ApiModelProperty("上次探亲休假探亲地")
private String lastAddress; // 上次探亲休假探亲地
@ApiModelProperty("上次探亲休假开始时间")
private String lastStartDate; // 上次探亲休假开始时间
@ApiModelProperty("上次探亲休假结束时间")
private String lastEndDate; // 上次探亲休假结束时间
@ApiModelProperty("本次探亲休假探亲地")
private String thisAddress; // 本次探亲休假探亲地
@ApiModelProperty("本次申请探亲休假开始时间")
private String thisStartDate; // 本次申请探亲休假开始时间
@ApiModelProperty("本次申请探亲休假结束时间")
private String thisEndDate; // 本次申请探亲休假结束时间
@ApiModelProperty("探亲家属关系")
private String relation; // 探亲家属关系
@ApiModelProperty("探亲家属人数")
private String peoNum; // 探亲家属人数
@ApiModelProperty("探亲类型")
private String homeType; // 探亲类型
@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<>();
}

54
yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adexpatriateshomeapply/AdExpatriatesHomeApplyMapper.java

@ -0,0 +1,54 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.oa.biz.adexpatriateshomeapply;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
/**
* Project: yxt-oa(驻外人员探亲申请) <br/>
* File: AdExpatriatesHomeApplyMapper.java <br/>
* Class: com.yxt.anrui.oa.biz.adexpatriateshomeapply.AdExpatriatesHomeApplyMapper <br/>
* Description: 驻外人员探亲申请. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2025-01-21 15:36:23 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Mapper
public interface AdExpatriatesHomeApplyMapper extends BaseMapper<AdExpatriatesHomeApply> {
IPage<AdExpatriatesHomeApplyVo> selectPageVo(IPage<AdExpatriatesHomeApply> page, @Param(Constants.WRAPPER) Wrapper<AdExpatriatesHomeApply> qw);
int selectBySid(String join);
}

40
yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adexpatriateshomeapply/AdExpatriatesHomeApplyMapper.xml

@ -0,0 +1,40 @@
<?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.adexpatriateshomeapply.AdExpatriatesHomeApplyMapper">
<!-- <where> ${ew.sqlSegment} </where>-->
<!-- ${ew.customSqlSegment} -->
<select id="selectPageVo" resultType="com.yxt.anrui.oa.biz.adexpatriateshomeapply.AdExpatriatesHomeApplyVo">
SELECT aeh.sid,
aeh.remarks,
aeh.formSid,
ofm.billNo,
ofm.createByName,
ofm.deptSid,
ofm.deptName,
ofm.useOrgSid,
ofm.useOrgName,
DATE_FORMAT(ofm.finishTime) as finishTime,
ofm.procInstId,
ofm.procDefId,
ofm.taskId,
ofm.nodeId,
ofm.nodeState,
ofm.formType,
ofm.title,
ofm.createOrgSid,
ofm.createOrgName
FROM ad_expatriates_home_apply aeh
left join oa_form ofm on aeh.formSid = ofm.sid
<where>
${ew.sqlSegment}
</where>
</select>
<select id="selectBySid" resultType="int">
SELECT COUNT(*)
FROM ad_expatriates_home_apply aeh
left join oa_form ofm on aeh.formSid = ofm.sid
WHERE ofm.nodeState != '待提交'
and find_in_set(oa.sid, #{list})
</select>
</mapper>

40
yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adexpatriateshomeapply/AdExpatriatesHomeApplyQuery.java

@ -0,0 +1,40 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.oa.biz.adexpatriateshomeapply;
import com.yxt.common.core.query.Query;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
@ApiModel(value = "驻外人员探亲申请 查询条件", description = "驻外人员探亲申请 查询条件")
public class AdExpatriatesHomeApplyQuery implements Query {
@ApiModelProperty("单据编号")
private String billNo;
}

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

@ -0,0 +1,243 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.oa.biz.adexpatriateshomeapply;
import cn.hutool.core.bean.BeanUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yxt.anrui.oa.biz.adexpatriatesapply.AdExpatriatesApplyDto;
import com.yxt.anrui.oa.biz.oaappendix.OaAppendixService;
import com.yxt.anrui.oa.biz.oaform.OaFormRuleEnum;
import com.yxt.anrui.oa.biz.oaform.OaFormService;
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 org.apache.commons.lang3.StringUtils;
import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.base.utils.PagerUtil;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
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 AdExpatriatesHomeApplyService extends MybatisBaseService<AdExpatriatesHomeApplyMapper, AdExpatriatesHomeApply> {
@Autowired
private OaAppendixService oaAppendixService;
@Autowired
private OaFormService oaFormService;
public PagerVo<AdExpatriatesHomeApplyVo> listPageVo(PagerQuery<AdExpatriatesHomeApplyQuery> pq) {
AdExpatriatesHomeApplyQuery query = pq.getParams();
QueryWrapper<AdExpatriatesHomeApply> qw = new QueryWrapper<>();
if (query != null) {
if (StringUtils.isNotBlank(query.getBillNo())) {
qw.like("ofm.billNo", query.getBillNo());
}
}
IPage<AdExpatriatesHomeApply> page = PagerUtil.queryToPage(pq);
IPage<AdExpatriatesHomeApplyVo> pagging = baseMapper.selectPageVo(page, qw);
PagerVo<AdExpatriatesHomeApplyVo> p = PagerUtil.pageToVo(pagging, null);
return p;
}
public ResultBean<String> saveOrUpdateDto(AdExpatriatesHomeApplyDto dto) {
ResultBean<String> rb = ResultBean.fireFail();
String sid = dto.getSid();
String homeType = dto.getHomeType();
List<String> files = dto.getFiles();
List<String> appes = dto.getAppes();
if (StringUtils.isBlank(sid)) {
// 新建操作
AdExpatriatesHomeApply entity = new AdExpatriatesHomeApply();
BeanUtil.copyProperties(dto, entity, "sid");
if ("1".equals(homeType)){
dto.setBillNo("ZWRYTQXJSQ");
}else if ("2".equals(homeType)){
dto.setBillNo("ZWRYJSTQSQ");
}
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 {
// 更新操作
AdExpatriatesHomeApply 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 AdExpatriatesHomeApplyVo fetchDetailsVoBySid(String sid) {
AdExpatriatesHomeApply entity = fetchBySid(sid);
AdExpatriatesHomeApplyVo vo = new AdExpatriatesHomeApplyVo();
BeanUtil.copyProperties(entity, vo);
return vo;
}
/**
* 提交
*
* @param dto
* @return
*/
public ResultBean submit(AdExpatriatesHomeApplyDto 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<>();
Map<String, Object> appMap = new HashMap<>();
appMap.put("sid", businessSid);
//需和移动端沟通业务sid保存的属性具体值:appMap中sid不是固定的。移动端提供具体字段。
formVariables.put("app", appMap);
submitDto.setFormVariables(formVariables);
submitDto.setProcDefId(ProcDefEnum.OAMENDAPPLY.getProDefId());
//若申请单中选择了下一处理人,则需赋值给下一处理人字段,若没有则删除
// submitDto.setNextNodeUserSids("");
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.put("", "");
Map<String, Object> appMap = new HashMap<>();
appMap.put("sid", dto.getBusinessSid());
formVariables.put("app", appMap);
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.put("", "");
//若有移动端,则需和移动端沟通具体参数,若没有删去即可。
Map<String, Object> appMap = new HashMap<>();
appMap.put("sid", dto.getBusinessSid());
formVariables.put("app", appMap);
dto.setFormVariables(formVariables);
return oaFormService.reject(dto);
}
/**
* 提交时获取下一环节
*
* @param query
* @return
*/
public ResultBean<List<NodeVo>> getNextNodesForSubmit(NodeQuery query) {
Map<String, Object> formVariables = query.getFormVariables();
//添加网关
// formVariables.put("", "");
//若有移动端,则需和移动端沟通具体参数,若没有删去即可。
Map<String, Object> appMap = new HashMap<>();
appMap.put("sid", query.getBusinessSid());
formVariables.put("app", appMap);
query.setFormVariables(formVariables);
return oaFormService.getNextNodesForSubmit(query);
}
/**
* 驳回时获取上一环节
*
* @param query
* @return
*/
public ResultBean<List<NodeVo>> getPreviousNodesForReject(NodeQuery query) {
Map<String, Object> formVariables = query.getFormVariables();
//添加网关
// formVariables.put("", "");
//若有移动端,则需和移动端沟通具体参数,若没有删去即可。
Map<String, Object> appMap = new HashMap<>();
appMap.put("sid", query.getBusinessSid());
formVariables.put("app", appMap);
query.setFormVariables(formVariables);
return oaFormService.getPreviousNodesForReject(query);
}
public ResultBean delAll(String[] sids) {
ResultBean rb = ResultBean.fireFail();
//查询该sid中是否有流程不是待提交的
int count = baseMapper.selectBySid(StringUtils.join(sids, ","));
if (count > 0) {
return rb.setMsg("删除的数据中包含已提交或已办结审批的数据,删除失败");
}
delBySids(sids);
return rb.success();
}
}

74
yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adexpatriateshomeapply/AdExpatriatesHomeApplyVo.java

@ -0,0 +1,74 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.oa.biz.adexpatriateshomeapply;
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 AdExpatriatesHomeApplyVo implements Vo {
private String sid; // sid
@ApiModelProperty("申请人岗位sid")
private String postSid; // 申请人岗位sid
@ApiModelProperty("申请人岗位名称")
private String postName; // 申请人岗位名称
@ApiModelProperty("上次探亲休假探亲地")
private String lastAddress; // 上次探亲休假探亲地
@ApiModelProperty("上次探亲休假开始时间")
private String lastStartDate; // 上次探亲休假开始时间
@ApiModelProperty("上次探亲休假结束时间")
private String lastEndDate; // 上次探亲休假结束时间
@ApiModelProperty("本次探亲休假探亲地")
private String thisAddress; // 本次探亲休假探亲地
@ApiModelProperty("本次申请探亲休假开始时间")
private String thisStartDate; // 本次申请探亲休假开始时间
@ApiModelProperty("本次申请探亲休假结束时间")
private String thisEndDate; // 本次申请探亲休假结束时间
@ApiModelProperty("探亲家属关系")
private String relation; // 探亲家属关系
@ApiModelProperty("探亲家属人数")
private String peoNum; // 探亲家属人数
@ApiModelProperty("探亲类型")
private String homeType; // 探亲类型
@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<>();
}

1
yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oamendapply/OaMendApplyMapper.java

@ -54,7 +54,6 @@ public interface OaMendApplyMapper extends BaseMapper<OaMendApply> {
int selectBySid(String join);
OaMendApplyVo fetchDetailsVoBySid(String sid);
}
Loading…
Cancel
Save