Browse Source

Merge remote-tracking branch 'origin/master'

master
dimengzhe 3 months ago
parent
commit
03fbb916e7
  1. 2
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/FinKingDeeFeignRest.java
  2. 34
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebatecheckapply/ScmSpecialrebateCheckapplyService.java
  3. 2
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebatewithapply/ScmSpecialRebateWithApplyService.java
  4. 113
      yxt-oa/src/main/java/com/yxt/anrui/oa/api/AdExpatriatesApplyRest.java
  5. 45
      yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adexpatriatesapply/AdExpatriatesApply.java
  6. 68
      yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adexpatriatesapply/AdExpatriatesApplyDto.java
  7. 52
      yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adexpatriatesapply/AdExpatriatesApplyMapper.java
  8. 36
      yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adexpatriatesapply/AdExpatriatesApplyMapper.xml
  9. 54
      yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adexpatriatesapply/AdExpatriatesApplyQuery.java
  10. 231
      yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adexpatriatesapply/AdExpatriatesApplyService.java
  11. 99
      yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adexpatriatesapply/AdExpatriatesApplyVo.java
  12. 12
      yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oaappendix/OaAppendix.java
  13. 4
      yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oamendapply/OaMendApplyService.java
  14. 2
      yxt-oa/src/main/java/com/yxt/anrui/oa/feign/file/OaFileEnum.java

2
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/FinKingDeeFeignRest.java

@ -659,7 +659,7 @@ public class FinKingDeeFeignRest implements FinKingDeeFeign {
if (StringUtils.isNotBlank(voucherDetail.getManufacturer())) {
manufacturer = voucherDetail.getManufacturer();
}
if (!voucherDetail.getType().equals("行销活动")) {
if (!voucherDetail.getType().equals("行销政策")) {
if (voucherDetail.getRemarks().equals("返利上传")) {
if (voucherDetail.getSceneCode().equals("1161.01.16")) {
cjfl = cjfl.add(voucherDetail.getAmount());

34
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebatecheckapply/ScmSpecialrebateCheckapplyService.java

@ -473,8 +473,8 @@ public class ScmSpecialrebateCheckapplyService extends MybatisBaseService<ScmSpe
String finalSummaryTag = summaryTag;
String[] split = finalSummaryTag.split("年");
String y1 = split[0]; //预提申请标题年份
map.forEach((k, v) -> {
List<ScmSpecialRebate> rebates = v;
for (Map.Entry<String, List<ScmSpecialRebate>> entry : map.entrySet()) {
List<ScmSpecialRebate> v = entry.getValue();
GeneralVoucher generalVoucher = new GeneralVoucher();
generalVoucher.setBussDate(format);
List<GeneralVoucher.GeneralVoucherDetail> voucherDetails = new ArrayList<>();
@ -511,7 +511,7 @@ public class ScmSpecialrebateCheckapplyService extends MybatisBaseService<ScmSpe
}
}
}
if (!rebate.getRebateTypeValue().equals("行销活动")) {
if (!rebate.getRebateTypeValue().equals("行销政策")) {
if (onceState.intValue() == 2 || tag.equals("1")) {
//没有进行过核对申请
BigDecimal oneMoney = BigDecimal.ZERO;//一次上传金额
@ -634,7 +634,7 @@ public class ScmSpecialrebateCheckapplyService extends MybatisBaseService<ScmSpe
BigDecimal daizhifuchaMoney = BigDecimal.ZERO;//待支付差额
BigDecimal yingshouMoney = BigDecimal.ZERO;//应收返利
if (StringUtils.isNotBlank(rebate.getAdjustmentMoney())) {
adMoney = new BigDecimal(rebate.getAdjustmentMoney());
adMoney = new BigDecimal(rebate.getAdjustmentMoney());
}
if (null != rebate.getOnceTreatCost()) {
daizhifuchaMoney = daizhifuchaMoney.add(rebate.getOnceTreatCost());
@ -710,7 +710,7 @@ public class ScmSpecialrebateCheckapplyService extends MybatisBaseService<ScmSpe
feiyong = oneMoney.subtract(yicidaizhifu).subtract(yizhichufeiyong).subtract(yicididing);
if (oneMoney.compareTo(BigDecimal.ZERO) != 0) {
GeneralVoucher.GeneralVoucherDetail voucherDetail = new GeneralVoucher.GeneralVoucherDetail();
voucherDetail.setType("行销活动");
voucherDetail.setType("行销政策");
voucherDetail.setTimeFlag(finalSummaryTag);
voucherDetail.setSceneCode("1161.01.16");
voucherDetail.setDeptCode(deptCode); //部门编码赋值
@ -721,7 +721,7 @@ public class ScmSpecialrebateCheckapplyService extends MybatisBaseService<ScmSpe
}
if (yicidaizhifu.compareTo(BigDecimal.ZERO) != 0) {
GeneralVoucher.GeneralVoucherDetail voucherDetail = new GeneralVoucher.GeneralVoucherDetail();
voucherDetail.setType("行销活动");
voucherDetail.setType("行销政策");
voucherDetail.setTimeFlag(finalSummaryTag);
voucherDetail.setCustomerCode("DZFCJFL");
voucherDetail.setSceneCode("2181.07.00");
@ -733,7 +733,7 @@ public class ScmSpecialrebateCheckapplyService extends MybatisBaseService<ScmSpe
if (yizhichufeiyong.compareTo(BigDecimal.ZERO) != 0) {
GeneralVoucher.GeneralVoucherDetail voucherDetail = new GeneralVoucher.GeneralVoucherDetail();
voucherDetail.setTimeFlag(finalSummaryTag);
voucherDetail.setType("行销活动");
voucherDetail.setType("行销政策");
voucherDetail.setDeptCode(deptCode); //部门编码赋值
voucherDetail.setManufacturer(gysCode);
voucherDetail.setAmount(yizhichufeiyong);
@ -744,7 +744,7 @@ public class ScmSpecialrebateCheckapplyService extends MybatisBaseService<ScmSpe
if (yicididing.compareTo(BigDecimal.ZERO) != 0) {
GeneralVoucher.GeneralVoucherDetail voucherDetail = new GeneralVoucher.GeneralVoucherDetail();
voucherDetail.setTimeFlag(finalSummaryTag);
voucherDetail.setType("行销活动");
voucherDetail.setType("行销政策");
voucherDetail.setDeptCode(deptCode); //部门编码赋值
voucherDetail.setManufacturer(gysCode);
voucherDetail.setAmount(yicididing);
@ -755,7 +755,7 @@ public class ScmSpecialrebateCheckapplyService extends MybatisBaseService<ScmSpe
if (feiyong.compareTo(BigDecimal.ZERO) != 0) {
GeneralVoucher.GeneralVoucherDetail voucherDetail = new GeneralVoucher.GeneralVoucherDetail();
voucherDetail.setTimeFlag(finalSummaryTag);
voucherDetail.setType("行销活动");
voucherDetail.setType("行销政策");
voucherDetail.setDeptCode(deptCode); //部门编码赋值
voucherDetail.setAmount(feiyong);
voucherDetail.setSceneCode("6401.14");
@ -783,7 +783,7 @@ public class ScmSpecialrebateCheckapplyService extends MybatisBaseService<ScmSpe
erfeiyong = twoMoney.subtract(ercidaizhifu).subtract(erzhichufeiyong).subtract(ercididing);
if (twoMoney.compareTo(BigDecimal.ZERO) != 0) {
GeneralVoucher.GeneralVoucherDetail voucherDetail = new GeneralVoucher.GeneralVoucherDetail();
voucherDetail.setType("行销活动");
voucherDetail.setType("行销政策");
voucherDetail.setTimeFlag(finalSummaryTag);
voucherDetail.setSceneCode("1161.01.16");
voucherDetail.setDeptCode(deptCode); //部门编码赋值
@ -794,7 +794,7 @@ public class ScmSpecialrebateCheckapplyService extends MybatisBaseService<ScmSpe
}
if (ercidaizhifu.compareTo(BigDecimal.ZERO) != 0) {
GeneralVoucher.GeneralVoucherDetail voucherDetail = new GeneralVoucher.GeneralVoucherDetail();
voucherDetail.setType("行销活动");
voucherDetail.setType("行销政策");
voucherDetail.setTimeFlag(finalSummaryTag);
voucherDetail.setCustomerCode("DZFCJFL");
voucherDetail.setSceneCode("2181.07.00");
@ -806,7 +806,7 @@ public class ScmSpecialrebateCheckapplyService extends MybatisBaseService<ScmSpe
if (erzhichufeiyong.compareTo(BigDecimal.ZERO) != 0) {
GeneralVoucher.GeneralVoucherDetail voucherDetail = new GeneralVoucher.GeneralVoucherDetail();
voucherDetail.setTimeFlag(finalSummaryTag);
voucherDetail.setType("行销活动");
voucherDetail.setType("行销政策");
voucherDetail.setDeptCode(deptCode); //部门编码赋值
voucherDetail.setManufacturer(gysCode);
voucherDetail.setAmount(erzhichufeiyong);
@ -817,7 +817,7 @@ public class ScmSpecialrebateCheckapplyService extends MybatisBaseService<ScmSpe
if (ercididing.compareTo(BigDecimal.ZERO) != 0) {
GeneralVoucher.GeneralVoucherDetail voucherDetail = new GeneralVoucher.GeneralVoucherDetail();
voucherDetail.setTimeFlag(finalSummaryTag);
voucherDetail.setType("行销活动");
voucherDetail.setType("行销政策");
voucherDetail.setDeptCode(deptCode); //部门编码赋值
voucherDetail.setManufacturer(gysCode);
voucherDetail.setAmount(ercididing);
@ -828,7 +828,7 @@ public class ScmSpecialrebateCheckapplyService extends MybatisBaseService<ScmSpe
if (erfeiyong.compareTo(BigDecimal.ZERO) != 0) {
GeneralVoucher.GeneralVoucherDetail voucherDetail = new GeneralVoucher.GeneralVoucherDetail();
voucherDetail.setTimeFlag(finalSummaryTag);
voucherDetail.setType("行销活动");
voucherDetail.setType("行销政策");
voucherDetail.setDeptCode(deptCode); //部门编码赋值
voucherDetail.setAmount(erfeiyong);
voucherDetail.setSceneCode("6401.14");
@ -851,7 +851,7 @@ public class ScmSpecialrebateCheckapplyService extends MybatisBaseService<ScmSpe
if (daizhifuchaMoney.compareTo(BigDecimal.ZERO) != 0) {
GeneralVoucher.GeneralVoucherDetail voucherDetail1 = new GeneralVoucher.GeneralVoucherDetail();
voucherDetail1.setTimeFlag(finalSummaryTag);
voucherDetail1.setType("行销活动");
voucherDetail1.setType("行销政策");
voucherDetail1.setDeptCode(deptCode);
voucherDetail1.setManufacturer(gysCode);
voucherDetail1.setAmount(daizhifuchaMoney);
@ -860,7 +860,7 @@ public class ScmSpecialrebateCheckapplyService extends MybatisBaseService<ScmSpe
voucherDetails.add(voucherDetail1);
GeneralVoucher.GeneralVoucherDetail voucherDetail2 = new GeneralVoucher.GeneralVoucherDetail();
voucherDetail2.setTimeFlag(finalSummaryTag);
voucherDetail2.setType("行销活动");
voucherDetail2.setType("行销政策");
voucherDetail2.setDeptCode(deptCode);
voucherDetail2.setAmount(daizhifuchaMoney);
voucherDetail2.setSceneCode("6401.14");
@ -878,7 +878,7 @@ public class ScmSpecialrebateCheckapplyService extends MybatisBaseService<ScmSpe
finKingDeeFeign.saveRebateSpecialReviewVoucher(generalVoucher);
}
}
});
}
}

2
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebatewithapply/ScmSpecialRebateWithApplyService.java

@ -475,7 +475,7 @@ public class ScmSpecialRebateWithApplyService extends MybatisBaseService<ScmSpec
List<GeneralVoucher.GeneralVoucherDetail> voucherDetails = new ArrayList<>();
if (!v.isEmpty()) {
for (ScmSpecialRebate rebate : v) {
if (!rebate.getRebateTypeValue().equals("行销活动")) {
if (!rebate.getRebateTypeValue().equals("行销政策")) {
if (StringUtils.isNotBlank(rebate.getUseOrgSid())) {
String useOrgSid = rebate.getUseOrgSid();
SysOrganizationVo organizationVo = sysOrganizationFeign.fetchBySid(useOrgSid).getData();

113
yxt-oa/src/main/java/com/yxt/anrui/oa/api/AdExpatriatesApplyRest.java

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

45
yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adexpatriatesapply/AdExpatriatesApply.java

@ -0,0 +1,45 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.oa.biz.adexpatriatesapply;
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_apply")
public class AdExpatriatesApply extends BaseEntity {
private static final long serialVersionUID = 1L;
@ApiModelProperty("基础表单sid")
private String formSid; // 基础表单sid
@ApiModelProperty("关联审批sid列表,英文逗号分隔")
private String linkFormSids; // 关联审批sid列表,英文逗号分隔
}

68
yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adexpatriatesapply/AdExpatriatesApplyDto.java

@ -0,0 +1,68 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.oa.biz.adexpatriatesapply;
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: oa(驻外人员认定申请) <br/>
* File: AdExpatriatesApplyDto.java <br/>
* Class: com.yxt.anrui.oa.api.adexpatriatesapply.AdExpatriatesApplyDto <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
*/
@Data
@ApiModel(value = "驻外人员认定申请 数据传输对象", description = "驻外人员认定申请 数据传输对象")
public class AdExpatriatesApplyDto extends OaFormDto {
private String sid; // sid
@ApiModelProperty("备注")
private String remarks;
@ApiModelProperty("基础表单sid")
private String formSid;
@ApiModelProperty("关联审批单")
private String linkFormSids;
@ApiModelProperty("图片")
private List<String> files = new ArrayList<>();
@ApiModelProperty("附件")
private List<String> appes = new ArrayList<>();
}

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

@ -0,0 +1,52 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.oa.biz.adexpatriatesapply;
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: 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);
}

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

@ -0,0 +1,36 @@
<?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.adexpatriatesapply.AdExpatriatesApplyMapper">
<!-- <where> ${ew.sqlSegment} </where>-->
<!-- ${ew.customSqlSegment} -->
<select id="selectPageVo" resultType="com.yxt.anrui.oa.biz.adexpatriatesapply.AdExpatriatesApplyVo">
SELECT ae.sid,
ae.remarks,
ae.expatriatesPost,
ae.expatriatesHomeAddress,
ae.expatriatesWorkAddress,
ae.expatriatesDate,
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>
${ew.sqlSegment}
</where>
</select>
</mapper>

54
yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adexpatriatesapply/AdExpatriatesApplyQuery.java

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

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

@ -0,0 +1,231 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.oa.biz.adexpatriatesapply;
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.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.biz.oamendapply.OaMendApplyDto;
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 AdExpatriatesApplyService extends MybatisBaseService<AdExpatriatesApplyMapper, AdExpatriatesApply> {
@Autowired
private OaAppendixService oaAppendixService;
@Autowired
private OaFormService oaFormService;
public PagerVo<AdExpatriatesApplyVo> listPageVo(PagerQuery<AdExpatriatesApplyQuery> pq) {
AdExpatriatesApplyQuery query = pq.getParams();
QueryWrapper<AdExpatriatesApply> qw = new QueryWrapper<>();
if (query != null) {
if (StringUtils.isNotBlank(query.getBillNo())) {
qw.like("ofm.billNo", query.getBillNo());
}
}
IPage<AdExpatriatesApply> page = PagerUtil.queryToPage(pq);
IPage<AdExpatriatesApplyVo> pagging = baseMapper.selectPageVo(page, qw);
PagerVo<AdExpatriatesApplyVo> p = PagerUtil.pageToVo(pagging, null);
return p;
}
public ResultBean<String> saveOrUpdateDto(AdExpatriatesApplyDto dto) {
ResultBean<String> rb = ResultBean.fireFail();
String sid = dto.getSid();
List<String> files = dto.getFiles();
if (StringUtils.isBlank(sid)) {
// 新建操作
AdExpatriatesApply entity = new AdExpatriatesApply();
BeanUtil.copyProperties(dto, entity, "sid");
dto.setBillNo("ZWRYRDSQ");
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 {
// 更新操作
AdExpatriatesApply entity = fetchBySid(sid);
BeanUtil.copyProperties(dto, entity, "id", "sid");
baseMapper.updateById(entity);
}
// 处理附件
saveFiles(sid, files, OaFileEnum.ADEXPATRIATESAPPLYFLIE.getAttachType());
saveAppes(sid, files, OaFileEnum.ADEXPATRIATESAPPLYAPPE.getAttachType());
return rb.success().setData(sid);
}
private void saveFiles(String sid, List<String> files, String attachType) {
files.removeAll(Collections.singleton(null));
oaAppendixService.saveFile(sid, files, attachType);
}
private void saveAppes(String sid, List<String> files, String attachType) {
files.removeAll(Collections.singleton(null));
oaAppendixService.saveFile(sid, files, attachType);
}
public AdExpatriatesApplyVo fetchDetailsVoBySid(String sid) {
AdExpatriatesApply entity = fetchBySid(sid);
AdExpatriatesApplyVo vo = new AdExpatriatesApplyVo();
BeanUtil.copyProperties(entity, vo);
return vo;
}
/**
* 提交
*
* @param dto
* @return
*/
public ResultBean submit(AdExpatriatesApplyDto 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);
}
}

99
yxt-oa/src/main/java/com/yxt/anrui/oa/biz/adexpatriatesapply/AdExpatriatesApplyVo.java

@ -0,0 +1,99 @@
/*********************************************************
*********************************************************
******************** *******************
************* ************
******* _oo0oo_ *******
*** o8888888o ***
* 88" . "88 *
* (| -_- |) *
* 0\ = /0 *
* ___/`---'\___ *
* .' \\| |// '. *
* / \\||| : |||// \ *
* / _||||| -:- |||||- \ *
* | | \\\ - /// | | *
* | \_| ''\---/'' |_/ | *
* \ .-\__ '-' ___/-. / *
* ___'. .' /--.--\ `. .'___ *
* ."" '< `.___\_<|>_/___.' >' "". *
* | | : `- \`.;`\ _ /`;.`/ - ` : | | *
* \ \ `_. \_ __\ /__ _/ .-` / / *
* =====`-.____`.___ \_____/___.-`___.-'===== *
* `=---=' *
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
*********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
*********************************************************/
package com.yxt.anrui.oa.biz.adexpatriatesapply;
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: oa(驻外人员认定申请) <br/>
* File: AdExpatriatesApplyVo.java <br/>
* Class: com.yxt.anrui.oa.api.adexpatriatesapply.AdExpatriatesApplyVo <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
*/
@Data
@ApiModel(value = "驻外人员认定申请 视图数据对象", description = "驻外人员认定申请 视图数据对象")
public class AdExpatriatesApplyVo implements Vo {
private String sid;
@ApiModelProperty("备注")
private String remarks;
private String formSid;
@ApiModelProperty("关联审批单")
private String linkFormSids;
@ApiModelProperty("表单类别-流程名称")
private String formType;
@ApiModelProperty("标题")
private String title;
@ApiModelProperty("单据编号")
private String billNo;
@ApiModelProperty("申请人")
private String createByName;
@ApiModelProperty("申请部门sid")
private String deptSid;
@ApiModelProperty("申请部门名称")
private String deptName;
@ApiModelProperty("分公司sid")
private String useOrgSid;
@ApiModelProperty("分公司名称")
private String useOrgName;
@ApiModelProperty("办结日期")
private String finishTime;
@ApiModelProperty("实例id")
private String procInstId;
@ApiModelProperty("流程定义id")
private String procDefId;
@ApiModelProperty("任务id")
private String taskId;
@ApiModelProperty("环节id")
private String nodeId;
@ApiModelProperty("流程状态")
private String nodeState;
@ApiModelProperty("创建组织sid")
private String createOrgSid;
@ApiModelProperty("创建组织")
private String createOrgName;
@ApiModelProperty("图片")
private List<String> files = new ArrayList<>();
@ApiModelProperty("附件")
private List<String> appes = new ArrayList<>();
}

12
yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oaappendix/OaAppendix.java

@ -37,17 +37,17 @@ import lombok.Data;
public class OaAppendix extends BaseEntity {
private static final long serialVersionUID = 1L;
@ApiModelProperty("文件名")
@ApiModelProperty("文件名")
private String fileName; // 文件名
@ApiModelProperty("文件类型")
@ApiModelProperty("文件类型")
private String fileType; // 文件类型
@ApiModelProperty("关联业务对象sid")
@ApiModelProperty("关联业务对象sid")
private String linkSid; // 关联业务对象sid
@ApiModelProperty("附件类型")
@ApiModelProperty("附件类型")
private String attachType; // 附件类型
@ApiModelProperty("文件大小")
@ApiModelProperty("文件大小")
private String fileSize; // 文件大小
@ApiModelProperty("文件的路径")
@ApiModelProperty("文件的路径")
private String filePath; // 文件的路径
}

4
yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oamendapply/OaMendApplyService.java

@ -29,13 +29,11 @@ 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.oaappendix.OaAppendixService;
import com.yxt.anrui.oa.biz.oaform.OaFormDto;
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 com.yxt.anrui.oa.feign.portal.sysorganization.SysOrganizationFeign;
import org.apache.commons.lang3.StringUtils;
import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.base.utils.PagerUtil;
@ -52,8 +50,6 @@ import java.util.*;
@Service
public class OaMendApplyService extends MybatisBaseService<OaMendApplyMapper, OaMendApply> {
@Autowired
private SysOrganizationFeign sysOrganizationFeign;
@Autowired
private OaAppendixService oaAppendixService;
@Autowired

2
yxt-oa/src/main/java/com/yxt/anrui/oa/feign/file/OaFileEnum.java

@ -9,6 +9,8 @@ public enum OaFileEnum {
OALEAVEAPPLY("001", "请假申请附件"),
OAMENDAPPLY("002", "补卡申请附件"),
ADEXPATRIATESAPPLYFLIE("003", "驻外人员认定图片"),
ADEXPATRIATESAPPLYAPPE("004", "驻外人员认定附件"),
;

Loading…
Cancel
Save