Browse Source

Merge remote-tracking branch 'origin/master'

master
ligaode 5 months ago
parent
commit
36b8d31476
  1. 3
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/commonappendix/CommonAttachTypeEnum.java
  2. 3
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/common/enums/BillTypeEnum.java
  3. 2
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysorganization/SysOrganizationService.java
  4. 84
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmfinanceadjustapply/AdjustDetailsListVo.java
  5. 2
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmfinanceadjustapply/AdjustVehListQuery.java
  6. 40
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmfinanceadjustapply/AdjustVehListVo.java
  7. 10
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmfinanceadjustapply/QueryUrl.java
  8. 116
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmfinanceadjustapply/ScmFinanceAdjustApplyDetailsVo.java
  9. 117
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmfinanceadjustapply/ScmFinanceAdjustApplyDto.java
  10. 11
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmfinanceadjustapply/ScmFinanceAdjustApplyFeign.java
  11. 12
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmfinanceadjustapply/ScmFinanceAdjustApplyFeignFallback.java
  12. 81
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmfinanceadjustapply/ScmFinanceAdjustApplyQuery.java
  13. 79
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmfinanceadjustapply/ScmFinanceAdjustApplyVo.java
  14. 2
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmfinanceadjustdetails/ScmFinanceAdjustDetails.java
  15. 91
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmfinanceadjustdetails/ScmFinanceAdjustDetailsQuery.java
  16. 109
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmfinanceadjustdetails/ScmFinanceAdjustDetailsVo.java
  17. 17
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmfinanceadjustapply/ScmFinanceAdjustApplyMapper.java
  18. 102
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmfinanceadjustapply/ScmFinanceAdjustApplyMapper.xml
  19. 39
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmfinanceadjustapply/ScmFinanceAdjustApplyRest.java
  20. 270
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmfinanceadjustapply/ScmFinanceAdjustApplyService.java
  21. 8
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmfinanceadjustdetails/ScmFinanceAdjustDetailsMapper.java
  22. 29
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmfinanceadjustdetails/ScmFinanceAdjustDetailsMapper.xml
  23. 78
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmfinanceadjustdetails/ScmFinanceAdjustDetailsService.java
  24. 8
      yxt-oa/src/main/java/com/yxt/anrui/oa/api/OaFormRest.java
  25. 35
      yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oaform/OaFormService.java
  26. 43
      yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oamendapply/OaMendApplyService.java

3
anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/commonappendix/CommonAttachTypeEnum.java

@ -59,7 +59,8 @@ public enum CommonAttachTypeEnum {
SHUNTINGINVOICINAPPLY("0015", "调车开票附件"),
OUTSOURCINGAPPLY("0016", "外采申请附件"),
INBOUNDAPPLY("0017", "入账申请附件"),
VEHBUYBLANK("0018", "车辆买断附件");
VEHBUYBLANK("0018", "车辆买断附件"),
JRTXCYTZ("0019", "金融贴息差异调整附件");
/**
* 附件类型
*/

3
anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/common/enums/BillTypeEnum.java

@ -43,7 +43,8 @@ public enum BillTypeEnum {
YQCW("YQCW", "逾期对账申请财务"),
AJBH("AJBH", "案件进程编号"),
JQSQ("JQSQ", "结清申请"),
DDQYBA("DDQYBA", "定点企业备案编号");
DDQYBA("DDQYBA", "定点企业备案编号"),
JRTXCY("JRTXCY", "金融贴息差异调整申请编号");
private String billType;

2
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysorganization/SysOrganizationService.java

@ -741,7 +741,7 @@ public class SysOrganizationService extends MybatisBaseService<SysOrganizationMa
}
public List<SysFinanceVo> selectStaffListByUseOrgSid(String useOrgSid) {
SysOrganization sysOrganization = fetchById(useOrgSid);
SysOrganization sysOrganization = fetchBySid(useOrgSid);
if (null != sysOrganization) {
String orgSidPath = sysOrganization.getOrgSidPath();
List<SysFinanceVo> list = baseMapper.selectStaffListByUseOrgSid(orgSidPath);

84
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmfinanceadjustapply/AdjustDetailsListVo.java

@ -0,0 +1,84 @@
package com.yxt.anrui.scm.api.scmfinanceadjustapply;
import lombok.Data;
@Data
public class AdjustDetailsListVo {
/**
* 差额
*/
private String adjustmentMoney;
/**
* 已调整金额
*/
private String alreadyMoney;
/**
* 品牌
*/
private String brandName;
/**
* 品牌sid
*/
private String brandSid;
/**
* 合同号
*/
private String contractNo;
/**
* 客户
*/
private String customerName;
/**
* 客户sid
*/
private String customerSid;
/**
* 订单贴息金额
*/
private String estimateRebate;
/**
* 本次调整金额
*/
private String nowAdjustmentMoney;
/**
* 当前差异金额
*/
private String nowDiffAmount;
/**
* 采购系统名称
*/
private String purchaseSystemName;
/**
* 采购系统sid
*/
private String purchaseSystemSid;
/**
* 单车返利管理sid
*/
private String rebateSid;
/**
* 调整说明
*/
private String remarks;
/**
* 上传贴息金额
*/
private String uploadMoney;
/**
* 车型
*/
private String vehModelName;
/**
* 车型sid
*/
private String vehModelSid;
/**
* 车辆sid
*/
private String vehSid;
/**
* 车架号
*/
private String vinNo;
}

2
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmfinanceadjustapply/AdjustVehListQuery.java

@ -14,6 +14,8 @@ public class AdjustVehListQuery implements Query {
private String vinNo; //车架号
private String vehModel; //车型
private String customerName; //客户
private String brandName; //车型
private String state; //状态
@ApiModelProperty("组织全路径")
private String orgPath;

40
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmfinanceadjustapply/AdjustVehListVo.java

@ -1,5 +1,6 @@
package com.yxt.anrui.scm.api.scmfinanceadjustapply;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
@ -7,4 +8,43 @@ public class AdjustVehListVo {
@ApiModelProperty("状态")
private String state; // 状态
@ApiModelProperty("采购系统sid")
private String purchaseSystemSid; // 采购系统sid
@ApiModelProperty("采购系统名称")
private String purchaseSystemName; // 采购系统名称
@ApiModelProperty("品牌sid")
private String brandSid; // 品牌sid
@ApiModelProperty("品牌名称")
private String brandName; // 品牌名称
@ApiModelProperty("车型sid")
private String vehModelSid; // 车型sid
@ApiModelProperty("车型名称")
private String vehModelName; // 车型名称
@ApiModelProperty("车辆sid")
private String vehSid; // 车辆sid
@ApiModelProperty("车架号")
private String vinNo; // 车架号
@ApiModelProperty("客户sid")
private String customerSid; // 客户sid
@ApiModelProperty("客户")
private String customerName; // 客户
@ApiModelProperty("合同号")
private String contractNo; // 合同号
@ApiModelProperty("订单贴息金额")
private String estimateRebate; // 订单贴息金额
@ApiModelProperty("上传贴息金额")
private String uploadMoney; // 上传贴息金额
@ApiModelProperty("差额")
private String adjustmentMoney; // 差额
@ApiModelProperty("已调整金额")
private String alreadyMoney; // 已调整金额
@ApiModelProperty("本次调整金额")
private String nowAdjustmentMoney; // 本次调整金额
@ApiModelProperty("当前差异金额")
private String nowDiffAmount; // 当前差异金额
@ApiModelProperty("单车返利管理sid")
private String rebateSid; // 单车返利管理sid
}

10
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmfinanceadjustapply/QueryUrl.java

@ -0,0 +1,10 @@
package com.yxt.anrui.scm.api.scmfinanceadjustapply;
import lombok.Data;
@Data
public class QueryUrl {
private String url;
}

116
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmfinanceadjustapply/ScmFinanceAdjustApplyDetailsVo.java

@ -27,13 +27,12 @@ package com.yxt.anrui.scm.api.scmfinanceadjustapply;
import com.yxt.common.core.vo.Vo;
import com.fasterxml.jackson.annotation.JsonFormat;
import java.util.Date;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
/**
* Project: scm(金融贴息) <br/>
* File: ScmFinanceAdjustApplyVo.java <br/>
@ -50,46 +49,77 @@ import lombok.Data;
@Data
@ApiModel(value = "金融贴息差异调整申请 视图数据详情", description = "金融贴息差异调整申请 视图数据详情")
public class ScmFinanceAdjustApplyDetailsVo implements Vo {
private String sid;
/**
* 调整方式
*/
private String adjustWay;
/**
* 调整方式key
*/
private String adjustWayKey;
/**
* 申请编号
*/
private String billNo;
/**
* 申请人
*/
private String createByName;
/**
* 创建人sid
*/
private String createBySid;
/**
* 申请日期
*/
private String createTime;
/**
* 申请部门
*/
private String deptName;
/**
* 申请部门sid
*/
private String deptSid;
private String instanceId;
/**
* 备注
*/
private String remarks;
/**
* 销售经理
*/
private String salesManage;
/**
* 销售经理sid
*/
private String salesManageSid;
private String sid; // sid
/**
* 销售专员
*/
private String staffName;
/**
* 销售专员sid
*/
private String staffSid;
private String taskId;
/**
* 分公司
*/
private String useOrgName;
/**
* 分公司sid
*/
private String useOrgSid;
@ApiModelProperty("申请人")
private String createByName; // 申请人
@ApiModelProperty("申请部门")
private String deptName; // 申请部门
@ApiModelProperty("申请部门sid")
private String deptSid; // 申请部门sid
@ApiModelProperty("申请编号")
private String billNo; // 申请编号
@ApiModelProperty("调整方式value")
private String adjustWay; // 调整方式value
@ApiModelProperty("调整方式key")
private String adjustWayKey; // 调整方式key
@ApiModelProperty("taskId")
private String taskId; // taskId
@ApiModelProperty("环节定义的sid")
private String nodeSid; // 环节定义的sid
@ApiModelProperty("流程状态")
private String nodeState; // 流程状态
@ApiModelProperty("流程实例的sid")
private String procInstId; // 流程实例的sid
@ApiModelProperty("流程定义的id")
private String procDefId; // 流程定义的id
@ApiModelProperty("使用组织sid")
private String useOrgSid; // 使用组织sid
@ApiModelProperty("使用组织名称(分公司)")
private String useOrgName; // 使用组织名称(分公司)
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
@ApiModelProperty("办结日期")
private Date closingDateStart; // 办结日期
private Date closingDateEnd; // 办结日期
@ApiModelProperty("销售专员sid")
private String staffSid; // 销售专员sid
@ApiModelProperty("销售专员")
private String staffName; // 销售专员
@ApiModelProperty("销售经理sid")
private String salesManageSid; // 销售经理sid
@ApiModelProperty("销售经理")
private String salesManage; // 销售经理
/**
* 详情列表
*/
private List<AdjustDetailsListVo> list = new ArrayList<>();
private List<QueryUrl> filePath = new ArrayList<>();
}

117
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmfinanceadjustapply/ScmFinanceAdjustApplyDto.java

@ -27,13 +27,11 @@ package com.yxt.anrui.scm.api.scmfinanceadjustapply;
import com.yxt.common.core.dto.Dto;
import com.fasterxml.jackson.annotation.JsonFormat;
import java.util.Date;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
/**
* Project: scm(金融贴息) <br/>
* File: ScmFinanceAdjustApplyDto.java <br/>
@ -51,45 +49,78 @@ import lombok.Data;
@ApiModel(value = "金融贴息差异调整申请 数据传输对象", description = "金融贴息差异调整申请 数据传输对象")
public class ScmFinanceAdjustApplyDto implements Dto {
private String sid; // sid
private String sid;
/**
* 调整方式
*/
private String adjustWay;
/**
* 调整方式key
*/
private String adjustWayKey;
/**
* 申请编号
*/
private String billNo;
/**
* 申请人
*/
private String createByName;
/**
* 创建人sid
*/
private String createBySid;
/**
* 申请日期
*/
private String createTime;
/**
* 申请部门
*/
private String deptName;
/**
* 申请部门sid
*/
private String deptSid;
private String instanceId;
/**
* 备注
*/
private String remarks;
/**
* 销售经理
*/
private String salesManage;
/**
* 销售经理sid
*/
private String salesManageSid;
/**
* 销售专员
*/
private String staffName;
/**
* 销售专员sid
*/
private String staffSid;
private String taskId;
/**
* 分公司
*/
private String useOrgName;
/**
* 分公司sid
*/
private String useOrgSid;
@ApiModelProperty("申请人")
private String createByName; // 申请人
@ApiModelProperty("申请部门")
private String deptName; // 申请部门
@ApiModelProperty("申请部门sid")
private String deptSid; // 申请部门sid
@ApiModelProperty("申请编号")
private String billNo; // 申请编号
@ApiModelProperty("调整方式value")
private String adjustWay; // 调整方式value
@ApiModelProperty("调整方式key")
private String adjustWayKey; // 调整方式key
@ApiModelProperty("taskId")
private String taskId; // taskId
@ApiModelProperty("环节定义的sid")
private String nodeSid; // 环节定义的sid
@ApiModelProperty("流程状态")
private String nodeState; // 流程状态
@ApiModelProperty("流程实例的sid")
private String procInstId; // 流程实例的sid
@ApiModelProperty("流程定义的id")
private String procDefId; // 流程定义的id
@ApiModelProperty("使用组织sid")
private String useOrgSid; // 使用组织sid
@ApiModelProperty("使用组织名称(分公司)")
private String useOrgName; // 使用组织名称(分公司)
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
@ApiModelProperty("办结日期")
private Date closingDateStart; // 办结日期
private Date closingDateEnd; // 办结日期
@ApiModelProperty("销售专员sid")
private String staffSid; // 销售专员sid
@ApiModelProperty("销售专员")
private String staffName; // 销售专员
@ApiModelProperty("销售经理sid")
private String salesManageSid; // 销售经理sid
@ApiModelProperty("销售经理")
private String salesManage; // 销售经理
/**
* 详情列表
*/
private List<AdjustDetailsListVo> list;
private List<QueryUrl> filePath;
}

11
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmfinanceadjustapply/ScmFinanceAdjustApplyFeign.java

@ -75,5 +75,16 @@ public interface ScmFinanceAdjustApplyFeign {
public ResultBean<ScmFinanceAdjustApplyDetailsVo> fetchDetailsBySid(@PathVariable("sid") String sid);
@ApiOperation("金融贴息调差选择车辆列表")
@PostMapping("/getAdjustVehList")
@ResponseBody
public ResultBean<PagerVo<AdjustVehListVo>> getAdjustVehList(@RequestBody PagerQuery<AdjustVehListQuery> pq);
@ApiOperation("金融贴息差异调整管理分页列表")
@PostMapping("/finAdjustList")
@ResponseBody
public ResultBean<PagerVo<AdjustVehListVo>> finAdjustList(@RequestBody PagerQuery<AdjustVehListQuery> pq);
}

12
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmfinanceadjustapply/ScmFinanceAdjustApplyFeignFallback.java

@ -30,8 +30,6 @@ import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import org.springframework.stereotype.Component;
import java.util.List;
/**
* Project: scm(金融贴息) <br/>
* File: ScmFinanceAdjustApplyFeignFallback.java <br/>
@ -69,4 +67,14 @@ public class ScmFinanceAdjustApplyFeignFallback implements ScmFinanceAdjustApply
ResultBean rb = ResultBean.fireFail();
return rb.setMsg("接口scm/scmfinanceadjustapply/fetchDetailsBySid无法访问");
}
@Override
public ResultBean<PagerVo<AdjustVehListVo>> getAdjustVehList(PagerQuery<AdjustVehListQuery> pq) {
return null;
}
@Override
public ResultBean<PagerVo<AdjustVehListVo>> finAdjustList(PagerQuery<AdjustVehListQuery> pq) {
return null;
}
}

81
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmfinanceadjustapply/ScmFinanceAdjustApplyQuery.java

@ -27,11 +27,7 @@ package com.yxt.anrui.scm.api.scmfinanceadjustapply;
import com.yxt.common.core.query.Query;
import com.fasterxml.jackson.annotation.JsonFormat;
import java.util.Date;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
@ -51,43 +47,44 @@ import lombok.Data;
@ApiModel(value = "金融贴息差异调整申请 查询条件", description = "金融贴息差异调整申请 查询条件")
public class ScmFinanceAdjustApplyQuery implements Query {
@ApiModelProperty("申请人")
private String createByName; // 申请人
@ApiModelProperty("申请部门")
private String deptName; // 申请部门
@ApiModelProperty("申请部门sid")
private String deptSid; // 申请部门sid
@ApiModelProperty("申请编号")
private String billNo; // 申请编号
@ApiModelProperty("调整方式value")
private String adjustWay; // 调整方式value
@ApiModelProperty("调整方式key")
private String adjustWayKey; // 调整方式key
@ApiModelProperty("taskId")
private String taskId; // taskId
@ApiModelProperty("环节定义的sid")
private String nodeSid; // 环节定义的sid
@ApiModelProperty("流程状态")
private String nodeState; // 流程状态
@ApiModelProperty("流程实例的sid")
private String procInstId; // 流程实例的sid
@ApiModelProperty("流程定义的id")
private String procDefId; // 流程定义的id
@ApiModelProperty("使用组织sid")
private String useOrgSid; // 使用组织sid
@ApiModelProperty("使用组织名称(分公司)")
private String useOrgName; // 使用组织名称(分公司)
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
@ApiModelProperty("办结日期")
private Date closingDateStart; // 办结日期
private Date closingDateEnd; // 办结日期
@ApiModelProperty("销售专员sid")
private String staffSid; // 销售专员sid
@ApiModelProperty("销售专员")
private String staffName; // 销售专员
@ApiModelProperty("销售经理sid")
private String salesManageSid; // 销售经理sid
@ApiModelProperty("销售经理")
private String salesManage; // 销售经理
/**
* 调整方式value
*/
private String adjustWay;
/**
* 申请编号
*/
private String billNo;
/**
* 办结结束
*/
private String closeEndDate;
/**
* 办结开始
*/
private String closeStartDate;
/**
* 申请人
*/
private String createByName;
/**
* 申请结束
*/
private String createEndDate;
/**
* 申请开始
*/
private String createStartDate;
/**
* 申请部门
*/
private String deptName;
private String menuUrl;
private String orgPath;
/**
* 分公司
*/
private String useOrgName;
private String userSid;
}

79
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmfinanceadjustapply/ScmFinanceAdjustApplyVo.java

@ -26,14 +26,10 @@
package com.yxt.anrui.scm.api.scmfinanceadjustapply;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
/**
* Project: scm(金融贴息) <br/>
* File: ScmFinanceAdjustApplyVo.java <br/>
@ -51,45 +47,40 @@ import java.util.Date;
@ApiModel(value = "金融贴息差异调整申请 视图数据对象", description = "金融贴息差异调整申请 视图数据对象")
public class ScmFinanceAdjustApplyVo implements Vo {
private String sid; // sid
@ApiModelProperty("申请人")
private String createByName; // 申请人
@ApiModelProperty("申请部门")
private String deptName; // 申请部门
@ApiModelProperty("申请部门sid")
private String deptSid; // 申请部门sid
@ApiModelProperty("申请编号")
private String billNo; // 申请编号
@ApiModelProperty("调整方式value")
private String adjustWay; // 调整方式value
@ApiModelProperty("调整方式key")
private String adjustWayKey; // 调整方式key
@ApiModelProperty("taskId")
private String taskId; // taskId
@ApiModelProperty("环节定义的sid")
private String nodeSid; // 环节定义的sid
@ApiModelProperty("流程状态")
private String nodeState; // 流程状态
@ApiModelProperty("流程实例的sid")
private String procInstId; // 流程实例的sid
@ApiModelProperty("流程定义的id")
private String procDefId; // 流程定义的id
@ApiModelProperty("使用组织sid")
private String useOrgSid; // 使用组织sid
@ApiModelProperty("使用组织名称(分公司)")
private String useOrgName; // 使用组织名称(分公司)
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
@ApiModelProperty("办结日期")
private Date closingDateStart; // 办结日期
private Date closingDateEnd; // 办结日期
@ApiModelProperty("销售专员sid")
private String staffSid; // 销售专员sid
@ApiModelProperty("销售专员")
private String staffName; // 销售专员
@ApiModelProperty("销售经理sid")
private String salesManageSid; // 销售经理sid
@ApiModelProperty("销售经理")
private String salesManage; // 销售经理
/**
* 调整方式
*/
private String adjustWay;
/**
* 申请编号
*/
private String billNo;
/**
* 办结日期
*/
private String closingDate;
/**
* 申请人
*/
private String createByName;
/**
* 申请日期
*/
private String createTime;
/**
* 申请部门
*/
private String deptName;
/**
* 流程状态
*/
private String nodeState;
private String procDefId;
private String procInstId;
private String sid;
/**
* 分公司
*/
private String useOrgName;
}

2
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmfinanceadjustdetails/ScmFinanceAdjustDetails.java

@ -88,5 +88,7 @@ public class ScmFinanceAdjustDetails extends BaseEntity {
private BigDecimal nowAdjustmentMoney; // 本次调整金额
@ApiModelProperty("当前差异金额")
private BigDecimal nowDiffAmount; // 当前差异金额
@ApiModelProperty("单车返利管理sid")
private String rebateSid; // 单车返利管理sid
}

91
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmfinanceadjustdetails/ScmFinanceAdjustDetailsQuery.java

@ -28,11 +28,8 @@ package com.yxt.anrui.scm.api.scmfinanceadjustdetails;
import com.yxt.common.core.query.Query;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
/**
* Project: scm(金融贴息) <br/>
* File: ScmFinanceAdjustDetailsQuery.java <br/>
@ -50,41 +47,57 @@ import java.math.BigDecimal;
@ApiModel(value = "金融贴息差异金额调整明细表 查询条件", description = "金融贴息差异金额调整明细表 查询条件")
public class ScmFinanceAdjustDetailsQuery implements Query {
@ApiModelProperty("金融贴息差异调整申请sid")
private String mainSid; // 金融贴息差异调整申请sid
@ApiModelProperty("采购系统sid")
private String purchaseSystemSid; // 采购系统sid
@ApiModelProperty("采购系统名称")
private String purchaseSystemName; // 采购系统名称
@ApiModelProperty("品牌sid")
private String brandSid; // 品牌sid
@ApiModelProperty("品牌名称")
private String brandName; // 品牌名称
@ApiModelProperty("车型sid")
private String vehModelSid; // 车型sid
@ApiModelProperty("车型名称")
private String vehModelName; // 车型名称
@ApiModelProperty("车辆sid")
private String vehSid; // 车辆sid
@ApiModelProperty("车架号")
private String vinNo; // 车架号
@ApiModelProperty("客户sid")
private String customerSid; // 客户sid
@ApiModelProperty("客户")
private String customerName; // 客户
@ApiModelProperty("合同号")
private String contractNo; // 合同号
@ApiModelProperty("订单贴息金额")
private BigDecimal estimateRebate; // 订单贴息金额
@ApiModelProperty("上传贴息金额")
private BigDecimal uploadMoney; // 上传贴息金额
@ApiModelProperty("差额")
private BigDecimal adjustmentMoney; // 差额
@ApiModelProperty("已调整金额")
private BigDecimal alreadyMoney; // 已调整金额
@ApiModelProperty("本次调整金额")
private BigDecimal nowAdjustmentMoney; // 本次调整金额
@ApiModelProperty("当前差异金额")
private BigDecimal nowDiffAmount; // 当前差异金额
/**
* 审批编号
*/
private String billNo;
/**
* 品牌
*/
private String brandName;
/**
* 调整方式
*/
private String closeStartDate;
/**
* 合同号
*/
private String contractNo;
/**
* 调整时间结束
*/
private String createEndDate;
/**
* 调整时间开始
*/
private String createStartDate;
/**
* 客户
*/
private String customerName;
private String menuUrl;
/**
* 状态
*/
private String nodeState;
private String orgPath;
/**
* 采购系统
*/
private String purchaseSystemName;
/**
* 调整说明
*/
private String remarks;
private String userSid;
/**
* 车型
*/
private String vehModelName;
/**
* 车架号
*/
private String vinNo;
}

109
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmfinanceadjustdetails/ScmFinanceAdjustDetailsVo.java

@ -28,11 +28,8 @@ package com.yxt.anrui.scm.api.scmfinanceadjustdetails;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
/**
* Project: scm(金融贴息) <br/>
* File: ScmFinanceAdjustDetailsVo.java <br/>
@ -50,43 +47,73 @@ import java.math.BigDecimal;
@ApiModel(value = "金融贴息差异金额调整明细表 视图数据对象", description = "金融贴息差异金额调整明细表 视图数据对象")
public class ScmFinanceAdjustDetailsVo implements Vo {
private String sid; // sid
@ApiModelProperty("金融贴息差异调整申请sid")
private String mainSid; // 金融贴息差异调整申请sid
@ApiModelProperty("采购系统sid")
private String purchaseSystemSid; // 采购系统sid
@ApiModelProperty("采购系统名称")
private String purchaseSystemName; // 采购系统名称
@ApiModelProperty("品牌sid")
private String brandSid; // 品牌sid
@ApiModelProperty("品牌名称")
private String brandName; // 品牌名称
@ApiModelProperty("车型sid")
private String vehModelSid; // 车型sid
@ApiModelProperty("车型名称")
private String vehModelName; // 车型名称
@ApiModelProperty("车辆sid")
private String vehSid; // 车辆sid
@ApiModelProperty("车架号")
private String vinNo; // 车架号
@ApiModelProperty("客户sid")
private String customerSid; // 客户sid
@ApiModelProperty("客户")
private String customerName; // 客户
@ApiModelProperty("合同号")
private String contractNo; // 合同号
@ApiModelProperty("订单贴息金额")
private BigDecimal estimateRebate; // 订单贴息金额
@ApiModelProperty("上传贴息金额")
private BigDecimal uploadMoney; // 上传贴息金额
@ApiModelProperty("差额")
private BigDecimal adjustmentMoney; // 差额
@ApiModelProperty("已调整金额")
private BigDecimal alreadyMoney; // 已调整金额
@ApiModelProperty("本次调整金额")
private BigDecimal nowAdjustmentMoney; // 本次调整金额
@ApiModelProperty("当前差异金额")
private BigDecimal nowDiffAmount; // 当前差异金额
/**
* 差额
*/
private String adjustmentMoney;
/**
* 调整时间
*/
private String adjustTime;
/**
* 调整方式
*/
private String adjustWay;
/**
* 审批sid
*/
private String applySid;
/**
* 审批编号
*/
private String billNo;
/**
* 品牌
*/
private String brandName;
/**
* 合同号
*/
private String contractNo;
/**
* 客户
*/
private String customerName;
/**
* 订单贴息
*/
private String estimateRebate;
/**
* 状态
*/
private String nodeState;
/**
* 本次调整
*/
private String nowAdjustmentMoney;
/**
* 本次调整后差额
*/
private String nowDiffAmount;
/**
* 采购系统
*/
private String purchaseSystemName;
/**
* 调整说明
*/
private String remarks;
/**
* 上传贴息
*/
private String uploadMoney;
/**
* 车型
*/
private String vehModelName;
/**
* 车架号
*/
private String vinNo;
}

17
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmfinanceadjustapply/ScmFinanceAdjustApplyMapper.java

@ -26,14 +26,17 @@
package com.yxt.anrui.scm.biz.scmfinanceadjustapply;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.yxt.anrui.scm.api.scmfinanceadjustapply.AdjustVehListVo;
import com.yxt.anrui.scm.api.scmfinanceadjustapply.ScmFinanceAdjustApply;
import com.yxt.anrui.scm.api.scmfinanceadjustapply.ScmFinanceAdjustApplyVo;
import com.yxt.anrui.scm.api.scmfinanceadjustdetails.ScmFinanceAdjustDetails;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import com.yxt.anrui.scm.api.scmfinanceadjustapply.ScmFinanceAdjustApply;
import com.yxt.anrui.scm.api.scmfinanceadjustapply.ScmFinanceAdjustApplyVo;
import java.util.List;
@ -62,4 +65,12 @@ public interface ScmFinanceAdjustApplyMapper extends BaseMapper<ScmFinanceAdjust
@Select("select * from scm_finance_adjust_apply")
List<ScmFinanceAdjustApplyVo> selectListVo();
IPage<AdjustVehListVo> getAdjustVehList(IPage<ScmFinanceAdjustApply> page, @Param(Constants.WRAPPER) QueryWrapper<ScmFinanceAdjustApply> qw);
IPage<AdjustVehListVo> finAdjustList(IPage<ScmFinanceAdjustDetails> page, @Param(Constants.WRAPPER) QueryWrapper<ScmFinanceAdjustDetails> qw);
int selectNum(String bill);
int selectBySid(String join);
}

102
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmfinanceadjustapply/ScmFinanceAdjustApplyMapper.xml

@ -4,10 +4,110 @@
<!-- <where> ${ew.sqlSegment} </where>-->
<!-- ${ew.customSqlSegment} -->
<select id="selectPageVo" resultType="com.yxt.anrui.scm.api.scmfinanceadjustapply.ScmFinanceAdjustApplyVo">
SELECT * FROM scm_finance_adjust_apply <where> ${ew.sqlSegment} </where>
SELECT
a.sid,
a.nodeState,
a.billNo,
a.useOrgName,
a.deptName,
a.createByName,
a.adjustWay,
date_format (a.createTime,'%Y-%m-%d') createTime,
date_format (a.closingDate,'%Y-%m-%d') closingDate,
a.procDefId,
a.procInstId
FROM
scm_finance_adjust_apply as a
LEFT JOIN anrui_portal.sys_organization as s ON a.deptSid = s.sid
<where> ${ew.sqlSegment} </where>
</select>
<select id="selectListAllVo" resultType="com.yxt.anrui.scm.api.scmfinanceadjustapply.ScmFinanceAdjustApplyVo">
SELECT * FROM scm_finance_adjust_apply <where> ${ew.sqlSegment} </where>
</select>
<select id="getAdjustVehList"
resultType="com.yxt.anrui.scm.api.scmfinanceadjustapply.AdjustVehListVo">
SELECT n.*,bo.contractNo,bo.customerSid,bo.customerName,
CASE
WHEN n.alreadyMoney = 0 THEN'未调整'
WHEN n.alreadyMoney != 0 AND n.nowDiffAmount != 0 THEN '部分调整'
WHEN n.nowDiffAmount = 0 THEN'已调整'
END AS `state`
FROM
(SELECT
d.vehRebateSid as rebateSid,
a.useOrgSid,
d.purchaseSystemSid,
d.purchaseSystemName,
d.brandSid,
d.brandName,
d.vehModelSid,
d.vehModelName,
d.vehSid,
d.vinNo,
r.estimateRebate,
r.uploadMoney,
r.adjustmentMoney,
( SELECT IFNULL(SUM(fd.nowAdjustmentMoney),0) FROM scm_finance_adjust_details as fd LEFT JOIN scm_finance_adjust_apply as fa ON fd.mainSid = fa.sid
WHERE fd.rebateSid = d.vehRebateSid AND fa.nodeState != '未提交' AND fa.nodeState != '终止') as alreadyMoney,
(r.adjustmentMoney - ( SELECT IFNULL(SUM(fd.nowAdjustmentMoney),0) FROM scm_finance_adjust_details as fd LEFT JOIN scm_finance_adjust_apply as fa ON fd.mainSid = fa.sid
WHERE fd.rebateSid = d.vehRebateSid AND fa.nodeState != '未提交' AND fa.nodeState != '终止') ) as nowDiffAmount,
(SELECT o.sid orderSid FROM anrui_buscenter.bus_sales_order_vehicle bv LEFT JOIN anrui_buscenter.bus_sales_order as o ON bv.salesOrderSid = o.sid WHERE bv.linkSid = d.vehSid AND o.nodeState = '已办结' ORDER BY o.createTime DESC LIMIT 1) as orderSid
FROM
scm_vehrebate_checkapplydetail AS d
LEFT JOIN scm_vehrebate_checkapply as a ON d.mainSid = a.sid
LEFT JOIN scm_veh_rebate as r ON d.vehRebateSid = r.sid
WHERE r.adjustmentMoney &lt; 0 AND a.nodeState = '已办结' AND d.rebateTypeValue = '金融贴息') as n
INNER JOIN anrui_buscenter.bus_sales_order as bo ON n.orderSid = bo.sid
<where> ${ew.sqlSegment} </where>
</select>
<select id="finAdjustList"
resultType="com.yxt.anrui.scm.api.scmfinanceadjustapply.AdjustVehListVo">
SELECT n.*,
bo.contractNo,bo.customerSid,bo.customerName,
CASE
WHEN n.alreadyMoney = 0 THEN'未调整'
WHEN n.alreadyMoney != 0 AND n.nowDiffAmount != 0 THEN '部分调整'
WHEN n.nowDiffAmount = 0 THEN'已调整'
END AS `state`
FROM
(SELECT
d.vehRebateSid as rebateSid,
a.createBySid,
a.orgPath,
d.purchaseSystemSid,
d.purchaseSystemName,
d.brandSid,
d.brandName,
d.vehModelSid,
d.vehModelName,
d.vehSid,
d.vinNo,
r.estimateRebate,
r.uploadMoney,
r.adjustmentMoney,
( SELECT IFNULL(SUM(fd.nowAdjustmentMoney),0) FROM scm_finance_adjust_details as fd LEFT JOIN scm_finance_adjust_apply as fa ON fd.mainSid = fa.sid
WHERE fd.rebateSid = d.vehRebateSid AND fa.nodeState != '未提交' AND fa.nodeState != '终止') as alreadyMoney,
(r.adjustmentMoney - ( SELECT IFNULL(SUM(fd.nowAdjustmentMoney),0) FROM scm_finance_adjust_details as fd LEFT JOIN scm_finance_adjust_apply as fa ON fd.mainSid = fa.sid
WHERE fd.rebateSid = d.vehRebateSid AND fa.nodeState != '未提交' AND fa.nodeState != '终止') ) as nowDiffAmount,
(SELECT o.sid orderSid FROM anrui_buscenter.bus_sales_order_vehicle bv LEFT JOIN anrui_buscenter.bus_sales_order as o ON bv.salesOrderSid = o.sid WHERE bv.linkSid = d.vehSid AND o.nodeState = '已办结' ORDER BY o.createTime DESC LIMIT 1) as orderSid
FROM
scm_vehrebate_checkapplydetail AS d
LEFT JOIN scm_vehrebate_checkapply as a ON d.mainSid = a.sid
LEFT JOIN scm_veh_rebate as r ON d.vehRebateSid = r.sid
WHERE r.adjustmentMoney &lt; 0 AND a.nodeState = '已办结' AND d.rebateTypeValue = '金融贴息') as n
LEFT JOIN anrui_buscenter.bus_sales_order as bo ON n.orderSid = bo.sid
<where> ${ew.sqlSegment} </where>
</select>
<select id="selectNum" resultType="java.lang.Integer">
select IFNULL(CAST(REPLACE(MAX(billNo), #{bill}, '') AS SIGNED), 0) as code
from scm_finance_adjust_apply
where billNo LIKE concat(#{bill}, '%')
</select>
<select id="selectBySid" resultType="java.lang.Integer">
SELECT COUNT(*)
FROM base_internal_purchase
WHERE nodeState != '未提交'
and find_in_set(sid, #{list})
</select>
</mapper>

39
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmfinanceadjustapply/ScmFinanceAdjustApplyRest.java

@ -26,11 +26,14 @@
package com.yxt.anrui.scm.biz.scmfinanceadjustapply;
import com.yxt.anrui.scm.api.scmfinanceadjustapply.*;
import com.yxt.anrui.scm.biz.scmfile.ScmFileService;
import com.yxt.anrui.scm.biz.scmfinanceadjustdetails.ScmFinanceAdjustDetailsService;
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.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@ -54,7 +57,10 @@ public class ScmFinanceAdjustApplyRest implements ScmFinanceAdjustApplyFeign {
@Autowired
private ScmFinanceAdjustApplyService scmFinanceAdjustApplyService;
@Autowired
private ScmFileService scmFileService;
@Autowired
private ScmFinanceAdjustDetailsService scmFinanceAdjustDetailsService;
@Override
@ApiOperation("根据条件分页查询数据的列表")
@PostMapping("/listPage")
@ -69,7 +75,7 @@ public class ScmFinanceAdjustApplyRest implements ScmFinanceAdjustApplyFeign {
@PostMapping("/save")
public ResultBean save(@RequestBody ScmFinanceAdjustApplyDto dto){
ResultBean rb = ResultBean.fireFail();
scmFinanceAdjustApplyService.saveOrUpdateDto(dto);
scmFinanceAdjustApplyService.saveBill(dto);
return rb.success();
}
@ -78,7 +84,16 @@ public class ScmFinanceAdjustApplyRest implements ScmFinanceAdjustApplyFeign {
@PostMapping("/delBySids")
public ResultBean delBySids(@RequestBody String[] sids){
ResultBean rb = ResultBean.fireFail();
//查询该sid中是否有流程不是待提交的
int count = scmFinanceAdjustApplyService.selectBySid(StringUtils.join(sids, ","));
if (count > 0) {
return rb.setMsg("删除的数据中包含已经提交审批的数据,删除失败");
}
scmFinanceAdjustApplyService.delBySids(sids);
for (String sid : sids) {
scmFileService.delByMainSid(sid);
scmFinanceAdjustDetailsService.delByMainSid(sid);
}
return rb.success();
}
@ -90,4 +105,24 @@ public class ScmFinanceAdjustApplyRest implements ScmFinanceAdjustApplyFeign {
ScmFinanceAdjustApplyDetailsVo vo = scmFinanceAdjustApplyService.fetchDetailsVoBySid(sid);
return rb.success().setData(vo);
}
@ApiOperation("根据条件分页查询数据的列表")
@PostMapping("/getAdjustVehList")
@ResponseBody
@Override
public ResultBean<PagerVo<AdjustVehListVo>> getAdjustVehList(@RequestBody PagerQuery<AdjustVehListQuery> pq) {
ResultBean rb = ResultBean.fireFail();
PagerVo<AdjustVehListVo> pv = scmFinanceAdjustApplyService.getAdjustVehList(pq);
return rb.success().setData(pv);
}
@ApiOperation("根据条件分页查询数据的列表")
@PostMapping("/finAdjustList")
@ResponseBody
@Override
public ResultBean<PagerVo<AdjustVehListVo>> finAdjustList(@RequestBody PagerQuery<AdjustVehListQuery> pq) {
ResultBean rb = ResultBean.fireFail();
PagerVo<AdjustVehListVo> pv = scmFinanceAdjustApplyService.finAdjustList(pq);
return rb.success().setData(pv);
}
}

270
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmfinanceadjustapply/ScmFinanceAdjustApplyService.java

@ -28,21 +28,33 @@ package com.yxt.anrui.scm.biz.scmfinanceadjustapply;
import cn.hutool.core.bean.BeanUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.apache.commons.lang3.StringUtils;
import com.yxt.anrui.base.api.commonappendix.CommonAttachTypeEnum;
import com.yxt.anrui.base.common.enums.BillTypeEnum;
import com.yxt.anrui.base.common.utils.Rule;
import com.yxt.anrui.base.common.utils.domain.BillNo;
import com.yxt.anrui.portal.api.sysorganization.SysOrganizationFeign;
import com.yxt.anrui.portal.api.sysorganization.SysOrganizationVo;
import com.yxt.anrui.portal.api.sysuser.PrivilegeQuery;
import com.yxt.anrui.portal.api.sysuser.PrivilegeVo;
import com.yxt.anrui.portal.api.sysuser.SysUserFeign;
import com.yxt.anrui.scm.api.scmfile.ScmFileDto;
import com.yxt.anrui.scm.api.scmfile.ScmFileVo;
import com.yxt.anrui.scm.api.scmfinanceadjustapply.*;
import com.yxt.anrui.scm.api.scmfinanceadjustdetails.ScmFinanceAdjustDetails;
import com.yxt.anrui.scm.biz.scmfile.ScmFileService;
import com.yxt.anrui.scm.biz.scmfinanceadjustdetails.ScmFinanceAdjustDetailsService;
import com.yxt.common.base.config.component.DocPdfComponent;
import com.yxt.common.base.config.component.FileUploadComponent;
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 com.yxt.anrui.scm.api.scmfinanceadjustapply.ScmFinanceAdjustApply;
import com.yxt.anrui.scm.api.scmfinanceadjustapply.ScmFinanceAdjustApplyQuery;
import com.yxt.anrui.scm.api.scmfinanceadjustapply.ScmFinanceAdjustApplyVo;
import com.yxt.anrui.scm.api.scmfinanceadjustapply.ScmFinanceAdjustApplyDetailsVo;
import com.yxt.anrui.scm.api.scmfinanceadjustapply.ScmFinanceAdjustApplyDto;
import com.yxt.anrui.scm.api.scmfinanceadjustapply.ScmFinanceAdjustApplyFeign;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
/**
@ -60,6 +72,20 @@ import java.util.List;
*/
@Service
public class ScmFinanceAdjustApplyService extends MybatisBaseService<ScmFinanceAdjustApplyMapper, ScmFinanceAdjustApply> {
@Autowired
private ScmFileService scmFileService;
@Autowired
private ScmFinanceAdjustDetailsService scmFinanceAdjustDetailsService;
@Autowired
private FileUploadComponent fileUploadComponent;
@Autowired
private DocPdfComponent docPdfComponent;
@Autowired
private SysUserFeign sysUserFeign;
@Autowired
private SysOrganizationFeign sysOrganizationFeign;
private QueryWrapper<ScmFinanceAdjustApply> createQueryWrapper(ScmFinanceAdjustApplyQuery query) {
// todo: 这里根据具体业务调整查询条件
// 多字段Like示例:qw.and(wrapper -> wrapper.like("name", query.getName()).or().like("remark", query.getName()));
@ -69,13 +95,115 @@ public class ScmFinanceAdjustApplyService extends MybatisBaseService<ScmFinanceA
public PagerVo<ScmFinanceAdjustApplyVo> listPageVo(PagerQuery<ScmFinanceAdjustApplyQuery> pq) {
ScmFinanceAdjustApplyQuery query = pq.getParams();
QueryWrapper<ScmFinanceAdjustApply> qw = createQueryWrapper(query);
QueryWrapper<ScmFinanceAdjustApply> qw = new QueryWrapper<>();
if (StringUtils.isNotBlank(query.getMenuUrl())) {
PrivilegeQuery privilegeQuery = new PrivilegeQuery();
privilegeQuery.setOrgPath(query.getOrgPath());
privilegeQuery.setMenuUrl(query.getMenuUrl());
privilegeQuery.setUserSid(query.getUserSid());
ResultBean<PrivilegeVo> defaultIdReltBean = sysUserFeign.selectPrivilegeLevelPath(privilegeQuery);
if (null != defaultIdReltBean.getData()) {
//数据权限ID(1集团、2事业部、3分公司、4部门、5个人)
PrivilegeVo privilegeVo = defaultIdReltBean.getData();
if ("5".equals(privilegeVo.getOrgLevelKey())) {
qw.eq("a.createBySid", privilegeVo.getLevelPath());
} else {
qw.like("s.orgSidPath", privilegeVo.getLevelPath());
}
} else {
PagerVo<ScmFinanceAdjustApplyVo> p = new PagerVo<>();
return p;
}
}
if (StringUtils.isNotBlank(query.getUseOrgName())) {
qw.like("a.useOrgName",query.getUseOrgName());
}
if (StringUtils.isNotBlank(query.getDeptName())) {
qw.like("a.deptName",query.getDeptName());
}
if (StringUtils.isNotBlank(query.getCreateByName())) {
qw.like("a.createByName",query.getCreateByName());
}
if (StringUtils.isNotBlank(query.getBillNo())) {
qw.like("a.billNo",query.getBillNo());
}
String applyStartTime = query.getCreateStartDate();
String applyEndTime = query.getCreateEndDate();
qw.apply(StringUtils.isNotEmpty(applyStartTime), "date_format (a.createTime,'%Y-%m-%d') >= date_format('" + applyStartTime + "','%Y-%m-%d')").
apply(StringUtils.isNotEmpty(applyEndTime), "date_format (a.createTime,'%Y-%m-%d') <= date_format('" + applyEndTime + "','%Y-%m-%d')"
);
String closingStartDate = query.getCloseStartDate();
String closingEndDate = query.getCloseEndDate();
qw.apply(StringUtils.isNotEmpty(closingStartDate), "date_format (a.closingDate,'%Y-%m-%d') >= date_format('" + closingStartDate + "','%Y-%m-%d')").
apply(StringUtils.isNotEmpty(closingEndDate), "date_format (a.closingDate,'%Y-%m-%d') <= date_format('" + closingEndDate + "','%Y-%m-%d')"
);
IPage<ScmFinanceAdjustApply> page = PagerUtil.queryToPage(pq);
IPage<ScmFinanceAdjustApplyVo> pagging = baseMapper.selectPageVo(page, qw);
PagerVo<ScmFinanceAdjustApplyVo> p = PagerUtil.pageToVo(pagging, null);
return p;
}
/**
* 生成申请单单据编号
*
* @param orgSid
* @return
*/
public String getApplyCode(String orgSid) {
//获取分公司sid
ResultBean<SysOrganizationVo> resultBean1 = sysOrganizationFeign.fetchBySid(orgSid);
String orgCode = resultBean1.getData().getOrgCode();
BillNo b = new BillNo();
b.setOrgCode(orgCode);
b.setBillType(BillTypeEnum.JRTXCY.getBillType());
String bill = Rule.getBill(b);
int i = baseMapper.selectNum(bill);
String billNo = Rule.getBillNo(bill, i);
return billNo;
}
public String saveBill(ScmFinanceAdjustApplyDto dto) {
String sid = "";
if (StringUtils.isNotBlank(dto.getSid())) {
sid = dto.getSid();
ScmFinanceAdjustApply scmFinanceAdjustApply = fetchBySid(sid);
BeanUtil.copyProperties(dto,scmFinanceAdjustApply,"id","sid");
baseMapper.updateById(scmFinanceAdjustApply);
} else {
ScmFinanceAdjustApply entity = new ScmFinanceAdjustApply();
sid = entity.getSid();
BeanUtil.copyProperties(dto,entity,"id","sid");
entity.setNodeState("未提交");
String applyCode = getApplyCode(dto.getUseOrgSid());
entity.setBillNo(applyCode);
baseMapper.insert(entity);
}
scmFileService.delByMainSid(sid);
if (!dto.getFilePath().isEmpty() && dto.getFilePath().size() > 0) {
for (QueryUrl scmFile : dto.getFilePath()) {
ScmFileDto scmFileDto = new ScmFileDto();
scmFileDto.setAttachType(CommonAttachTypeEnum.JRTXCYTZ.getAttachType());
scmFileDto.setLinkSid(sid);
String filePath = scmFile.getUrl();
if (filePath.indexOf(fileUploadComponent.getUrlPrefix()) > -1) {
filePath = filePath.replace(fileUploadComponent.getUrlPrefix(), "");
}
scmFileDto.setFilePath(filePath);
scmFileService.insertByDto(scmFileDto);
}
}
scmFinanceAdjustDetailsService.delByMainSid(sid);
if (!dto.getList().isEmpty() && dto.getList().size() > 0) {
for (AdjustDetailsListVo detailsListVo : dto.getList()) {
ScmFinanceAdjustDetails details = new ScmFinanceAdjustDetails();
BeanUtil.copyProperties(detailsListVo,details,"id","sid");
details.setMainSid(sid);
scmFinanceAdjustDetailsService.insert(details);
}
}
return sid;
}
public void saveOrUpdateDto(ScmFinanceAdjustApplyDto dto){
String dtoSid = dto.getSid();
if (StringUtils.isBlank(dtoSid)) {
@ -104,7 +232,129 @@ public class ScmFinanceAdjustApplyService extends MybatisBaseService<ScmFinanceA
public ScmFinanceAdjustApplyDetailsVo fetchDetailsVoBySid(String sid){
ScmFinanceAdjustApply entity = fetchBySid(sid);
ScmFinanceAdjustApplyDetailsVo vo = new ScmFinanceAdjustApplyDetailsVo();
BeanUtil.copyProperties(entity, vo);
List<QueryUrl> filePaths = new ArrayList<>();
List<AdjustDetailsListVo> listVos = new ArrayList<>();
if (null != entity) {
BeanUtil.copyProperties(entity, vo);
if (StringUtils.isNotBlank(entity.getProcInstId())) {
vo.setInstanceId(entity.getProcInstId());
}
List<ScmFileVo> scmFileVos = scmFileService.fetchByMainSid(sid);
if (!scmFileVos.isEmpty() && scmFileVos.size() > 0) {
for (ScmFileVo scmFileVo : scmFileVos) {
QueryUrl url = new QueryUrl();
String filePath = scmFileVo.getFilePath();
String urlPrefix = fileUploadComponent.getUrlPrefix();
filePath = urlPrefix + filePath;
url.setUrl(filePath);
filePaths.add(url);
}
vo.setFilePath(filePaths);
}
List<ScmFinanceAdjustDetails> details = scmFinanceAdjustDetailsService.selByMainSid(sid);
if (!details.isEmpty() && details.size() > 0) {
for (ScmFinanceAdjustDetails detail : details) {
AdjustDetailsListVo detailsListVo = new AdjustDetailsListVo();
BeanUtil.copyProperties(detail,detailsListVo);
listVos.add(detailsListVo);
}
vo.setList(listVos);
}
}
return vo;
}
public PagerVo<AdjustVehListVo> getAdjustVehList(PagerQuery<AdjustVehListQuery> pq) {
AdjustVehListQuery query = pq.getParams();
QueryWrapper<ScmFinanceAdjustApply> qw = new QueryWrapper<>();
if (StringUtils.isNotBlank(query.getPurchaseSystemName())) {
qw.like("n.purchaseSystemName",query.getPurchaseSystemName());
}
if (StringUtils.isNotBlank(query.getBrandName())) {
qw.like("n.brandName",query.getBrandName());
}
if (StringUtils.isNotBlank(query.getVehModel())) {
qw.like("n.vehModelName",query.getVehModel());
}
if (StringUtils.isNotBlank(query.getVinNo())) {
qw.like("n.vinNo",query.getVinNo());
}
if (StringUtils.isNotBlank(query.getCustomerName())) {
qw.like("bo.customerName",query.getCustomerName());
}
if (StringUtils.isNotBlank(query.getContractNo())) {
qw.like("bo.contractNo",query.getContractNo());
}
if (StringUtils.isNotBlank(query.getStaffSid())) {
qw.eq("bo.createBySid",query.getStaffSid());
}
qw.apply("n.nowDiffAmount != 0");
qw.eq("n.useOrgSid",query.getUseOrgSid());
IPage<ScmFinanceAdjustApply> page = PagerUtil.queryToPage(pq);
IPage<AdjustVehListVo> pagging = baseMapper.getAdjustVehList(page, qw);
PagerVo<AdjustVehListVo> p = PagerUtil.pageToVo(pagging, null);
return p;
}
public PagerVo<AdjustVehListVo> finAdjustList(PagerQuery<AdjustVehListQuery> pq) {
AdjustVehListQuery query = pq.getParams();
QueryWrapper<ScmFinanceAdjustDetails> qw = new QueryWrapper<>();
if (StringUtils.isNotBlank(query.getMenuUrl())) {
PrivilegeQuery privilegeQuery = new PrivilegeQuery();
privilegeQuery.setOrgPath(query.getOrgPath());
privilegeQuery.setMenuUrl(query.getMenuUrl());
privilegeQuery.setUserSid(query.getUserSid());
ResultBean<PrivilegeVo> defaultIdReltBean = sysUserFeign.selectPrivilegeLevelPath(privilegeQuery);
if (null != defaultIdReltBean.getData()) {
//数据权限ID(1集团、2事业部、3分公司、4部门、5个人)
PrivilegeVo privilegeVo = defaultIdReltBean.getData();
if ("5".equals(privilegeVo.getOrgLevelKey())) {
qw.eq("n.createBySid", privilegeVo.getLevelPath());
} else {
qw.like("n.orgPath", privilegeVo.getLevelPath());
}
} else {
PagerVo<AdjustVehListVo> p = new PagerVo<>();
return p;
}
}
if (StringUtils.isNotBlank(query.getPurchaseSystemName())) {
qw.like("n.purchaseSystemName",query.getPurchaseSystemName());
}
if (StringUtils.isNotBlank(query.getBrandName())) {
qw.like("n.brandName",query.getBrandName());
}
if (StringUtils.isNotBlank(query.getVehModel())) {
qw.like("n.vehModelName",query.getVehModel());
}
if (StringUtils.isNotBlank(query.getVinNo())) {
qw.like("n.vinNo",query.getVinNo());
}
if (StringUtils.isNotBlank(query.getCustomerName())) {
qw.like("bo.customerName",query.getCustomerName());
}
if (StringUtils.isNotBlank(query.getContractNo())) {
qw.like("bo.contractNo",query.getContractNo());
}
if (StringUtils.isNotBlank(query.getStaffSid())) {
qw.eq("bo.createBySid",query.getStaffSid());
}
if (StringUtils.isNotBlank(query.getState())) {
if (query.getState().equals("未调整")) {
qw.apply("n.alreadyMoney = 0");
} else if (query.getState().equals("已调整")){
qw.apply("n.nowDiffAmount = 0");
} else {
qw.apply("n.nowDiffAmount != 0 and n.alreadyMoney != 0");
}
}
IPage<ScmFinanceAdjustDetails> page = PagerUtil.queryToPage(pq);
IPage<AdjustVehListVo> pagging = baseMapper.finAdjustList(page, qw);
PagerVo<AdjustVehListVo> p = PagerUtil.pageToVo(pagging, null);
return p;
}
public int selectBySid(String join) {
return baseMapper.selectBySid(join);
}
}

8
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmfinanceadjustdetails/ScmFinanceAdjustDetailsMapper.java

@ -29,6 +29,7 @@ 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.Delete;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
@ -62,4 +63,11 @@ public interface ScmFinanceAdjustDetailsMapper extends BaseMapper<ScmFinanceAdju
@Select("select * from scm_finance_adjust_details")
List<ScmFinanceAdjustDetailsVo> selectListVo();
@Delete("delete from scm_finance_adjust_details where mainSid = #{sid}")
void delByMainSid(String sid);
@Select("select * from scm_finance_adjust_details where mainSid = #{sid}")
List<ScmFinanceAdjustDetails> selByMainSid(String sid);
}

29
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmfinanceadjustdetails/ScmFinanceAdjustDetailsMapper.xml

@ -4,7 +4,34 @@
<!-- <where> ${ew.sqlSegment} </where>-->
<!-- ${ew.customSqlSegment} -->
<select id="selectPageVo" resultType="com.yxt.anrui.scm.api.scmfinanceadjustdetails.ScmFinanceAdjustDetailsVo">
SELECT * FROM scm_finance_adjust_details <where> ${ew.sqlSegment} </where>
SELECT
CASE
WHEN a.nodeState = '未提交' THEN'未提交'
WHEN a.nodeState != '未提交' AND a.nodeState != '已办结' AND a.nodeState != '终止' THEN '申请中'
WHEN a.nodeState = '已办结' THEN '已办结'
WHEN a.nodeState = '终止' THEN '终止'
END AS `nodeState`,
d.purchaseSystemName,
d.brandName,
d.vehModelName,
d.vinNo,
d.customerName,
d.contractNo,
d.estimateRebate,
d.uploadMoney,
d.adjustmentMoney,
d.nowAdjustmentMoney,
d.nowDiffAmount,
a.billNo,
a.sid applySid,
d.remarks,
a.adjustWay,
date_format (a.createTime,'%Y-%m-%d') adjustTime
FROM
scm_finance_adjust_details as d
LEFT JOIN scm_finance_adjust_apply as a ON d.mainSid = a.sid
LEFT JOIN anrui_portal.sys_organization as s ON a.deptSid = s.sid
<where>${ew.sqlSegment} </where>
</select>
<select id="selectListAllVo" resultType="com.yxt.anrui.scm.api.scmfinanceadjustdetails.ScmFinanceAdjustDetailsVo">

78
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmfinanceadjustdetails/ScmFinanceAdjustDetailsService.java

@ -28,14 +28,22 @@ package com.yxt.anrui.scm.biz.scmfinanceadjustdetails;
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.portal.api.sysorganization.SysOrganizationFeign;
import com.yxt.anrui.portal.api.sysuser.PrivilegeQuery;
import com.yxt.anrui.portal.api.sysuser.PrivilegeVo;
import com.yxt.anrui.portal.api.sysuser.SysUserFeign;
import com.yxt.anrui.scm.api.scmfinanceadjustdetails.*;
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.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* Project: scm(金融贴息) <br/>
* File: ScmFinanceAdjustDetailsService.java <br/>
@ -51,6 +59,10 @@ import org.springframework.stereotype.Service;
*/
@Service
public class ScmFinanceAdjustDetailsService extends MybatisBaseService<ScmFinanceAdjustDetailsMapper, ScmFinanceAdjustDetails> {
@Autowired
private SysUserFeign sysUserFeign;
@Autowired
private SysOrganizationFeign sysOrganizationFeign;
private QueryWrapper<ScmFinanceAdjustDetails> createQueryWrapper(ScmFinanceAdjustDetailsQuery query) {
// todo: 这里根据具体业务调整查询条件
// 多字段Like示例:qw.and(wrapper -> wrapper.like("name", query.getName()).or().like("remark", query.getName()));
@ -58,9 +70,73 @@ public class ScmFinanceAdjustDetailsService extends MybatisBaseService<ScmFinanc
return qw;
}
public void delByMainSid(String sid) {
baseMapper.delByMainSid(sid);
}
public List<ScmFinanceAdjustDetails> selByMainSid(String sid) {
return baseMapper.selByMainSid(sid);
}
public PagerVo<ScmFinanceAdjustDetailsVo> listPageVo(PagerQuery<ScmFinanceAdjustDetailsQuery> pq) {
ScmFinanceAdjustDetailsQuery query = pq.getParams();
QueryWrapper<ScmFinanceAdjustDetails> qw = createQueryWrapper(query);
QueryWrapper<ScmFinanceAdjustDetails> qw = new QueryWrapper<>();
if (StringUtils.isNotBlank(query.getMenuUrl())) {
PrivilegeQuery privilegeQuery = new PrivilegeQuery();
privilegeQuery.setOrgPath(query.getOrgPath());
privilegeQuery.setMenuUrl(query.getMenuUrl());
privilegeQuery.setUserSid(query.getUserSid());
ResultBean<PrivilegeVo> defaultIdReltBean = sysUserFeign.selectPrivilegeLevelPath(privilegeQuery);
if (null != defaultIdReltBean.getData()) {
//数据权限ID(1集团、2事业部、3分公司、4部门、5个人)
PrivilegeVo privilegeVo = defaultIdReltBean.getData();
if ("5".equals(privilegeVo.getOrgLevelKey())) {
qw.eq("a.createBySid", privilegeVo.getLevelPath());
} else {
qw.like("s.orgSidPath", privilegeVo.getLevelPath());
}
} else {
PagerVo<ScmFinanceAdjustDetailsVo> p = new PagerVo<>();
return p;
}
}
if (StringUtils.isNotBlank(query.getNodeState())) {
if (query.getNodeState().equals("申请中")) {
qw.apply("a.nodeState != '未提交' AND a.nodeState != '已办结' AND a.nodeState != '终止'");
} else {
qw.eq("a.nodeState",query.getNodeState());
}
}
if (StringUtils.isNotBlank(query.getPurchaseSystemName())) {
qw.like("d.purchaseSystemName",query.getPurchaseSystemName());
}
if (StringUtils.isNotBlank(query.getBrandName())) {
qw.like("d.brandName",query.getBrandName());
}
if (StringUtils.isNotBlank(query.getVehModelName())) {
qw.like("d.vehModelName",query.getVehModelName());
}
if (StringUtils.isNotBlank(query.getVinNo())) {
qw.like("d.vinNo",query.getVinNo());
}
if (StringUtils.isNotBlank(query.getCustomerName())) {
qw.like("d.customerName",query.getCustomerName());
}
if (StringUtils.isNotBlank(query.getContractNo())) {
qw.like("d.contractNo",query.getContractNo());
}
if (StringUtils.isNotBlank(query.getBillNo())) {
qw.like("a.billNo",query.getBillNo());
}
String applyStartTime = query.getCreateStartDate();
String applyEndTime = query.getCreateEndDate();
qw.apply(StringUtils.isNotEmpty(applyStartTime), "date_format (a.createTime,'%Y-%m-%d') >= date_format('" + applyStartTime + "','%Y-%m-%d')").
apply(StringUtils.isNotEmpty(applyEndTime), "date_format (a.createTime,'%Y-%m-%d') <= date_format('" + applyEndTime + "','%Y-%m-%d')"
);
if (StringUtils.isNotBlank(query.getRemarks())) {
qw.like("d.remarks",query.getRemarks());
}
IPage<ScmFinanceAdjustDetails> page = PagerUtil.queryToPage(pq);
IPage<ScmFinanceAdjustDetailsVo> pagging = baseMapper.selectPageVo(page, qw);
PagerVo<ScmFinanceAdjustDetailsVo> p = PagerUtil.pageToVo(pagging, null);

8
yxt-oa/src/main/java/com/yxt/anrui/oa/api/OaFormRest.java

@ -4,6 +4,7 @@ import cn.hutool.core.bean.BeanUtil;
import com.yxt.anrui.oa.biz.oaform.*;
import com.yxt.anrui.oa.biz.oaform.flowable.*;
import com.yxt.anrui.oa.feign.flowable.flow.BusinessVariables;
import com.yxt.anrui.oa.feign.flowable.flow2.FlowDelegateQuery;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
@ -35,11 +36,11 @@ public class OaFormRest {
return rb.success().setData(pv);
}
/*@ApiOperation("新增或修改")
@ApiOperation("新增或修改")
@PostMapping("/save")
ResultBean<String> save(@RequestBody OaFormDto dto) {
return oaFormService.saveOrUpdateForm(dto);
}*/
return oaFormService.saveOaForm(dto);
}
@ApiOperation("根据SID获取一条记录")
@GetMapping("/fetchDetailsBySid/{sid}")
@ -106,5 +107,4 @@ public class OaFormRest {
return oaFormService.assignTask(query);
}
}

35
yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oaform/OaFormService.java

@ -87,7 +87,7 @@ public class OaFormService extends MybatisBaseService<OaFormMapper, OaForm> {
// 生成单据编号
BillNo b = new BillNo();
b.setOrgCode(orgVo.getOrgCode());
b.setBillType("BKSQ");
b.setBillType(dto.getBillNo());
String bill = Rule.getBill(b);
int i = baseMapper.selectNum(bill);
String billNo = Rule.getBillNo(bill, i);
@ -400,4 +400,37 @@ public class OaFormService extends MybatisBaseService<OaFormMapper, OaForm> {
public int updateFormType(OaForm oaForm) {
return baseMapper.updateById(oaForm);
}
public ResultBean submit(BusinessVariables bv) {
ResultBean<UpdateFlowFieldVo> voResultBean = flowFeign.startProcess(bv);
UpdateFlowFieldVo ufVo = voResultBean.getData();
OaFormFlowDto oaFormFlowDto = new OaFormFlowDto();
BeanUtil.copyProperties(ufVo, oaFormFlowDto);
updateFlow(oaFormFlowDto);
OaForm oaForm = fetchBySid(bv.getBusinessSid());
try {
ThreadFactory namedThreadFactory = new ThreadFactoryBuilder()
.setNameFormat("demo-pool-%d").build();
ExecutorService pool = new ThreadPoolExecutor(2, 100,
0L, TimeUnit.MILLISECONDS,
new LinkedBlockingQueue<Runnable>(1024), namedThreadFactory, new ThreadPoolExecutor.AbortPolicy());
Future future1 = pool.submit(() -> {
//极光推送
MessageFlowableQuery messageFlowableQuery = new MessageFlowableQuery();
MessageFlowVo messageFlowVo = new MessageFlowVo();
BeanUtil.copyProperties(ufVo, messageFlowVo);
messageFlowableQuery.setUfVo(messageFlowVo);
messageFlowableQuery.setAppMap((Map<String, Object>) bv.getFormVariables().get("app"));
messageFlowableQuery.setBusinessSid(bv.getBusinessSid());
messageFlowableQuery.setModuleName(oaForm.getFormType());
messageFlowableQuery.setMsgContent(oaForm.getCreateByName() + "提交的" + messageFlowableQuery.getModuleName() + ",请审批");
messageFlowableQuery.setMsgTitle(oaForm.getFormType());
messageFeign.pushMessage(messageFlowableQuery);
});
} catch (Exception e) {
e.printStackTrace();
}
return voResultBean;
}
}

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

@ -45,6 +45,8 @@ import com.yxt.anrui.oa.feign.message.MessageFlowVo;
import com.yxt.anrui.oa.feign.message.MessageFlowableQuery;
import com.yxt.anrui.oa.feign.portal.sysorganization.SysOrganizationFeign;
import com.yxt.anrui.oa.feign.portal.sysorganization.SysOrganizationVo;
import com.yxt.anrui.oa.feign.portal.sysstafforg.SysStaffOrgFeign;
import com.yxt.anrui.oa.feign.sysuser.SysUserFeign;
import com.yxt.common.base.config.component.FileUploadComponent;
import org.apache.commons.lang3.StringUtils;
import com.yxt.common.base.service.MybatisBaseService;
@ -148,19 +150,24 @@ public class OaMendApplyService extends MybatisBaseService<OaMendApplyMapper, Oa
ResultBean<String> rb = ResultBean.fireFail();
String sid = dto.getSid();
List<String> files = dto.getFiles();
if (StringUtils.isBlank(sid)) {
// 新建操作
OaMendApply entity = new OaMendApply();
BeanUtil.copyProperties(dto, entity, "sid");
OaFormDto oaFormDto = new OaFormDto();
BeanUtil.copyProperties(dto, oaFormDto, "sid");
oaFormDto.setBillNo("BKSQ");
ResultBean<String> resultBean = oaFormService.saveOaForm(oaFormDto);
if (!resultBean.getSuccess()) {
return rb;
}
entity.setFormSid(resultBean.getData());
baseMapper.insert(entity);
// 处理附件
saveFiles(sid, files);
sid = entity.getSid();
@ -180,7 +187,7 @@ public class OaMendApplyService extends MybatisBaseService<OaMendApplyMapper, Oa
private void saveFiles(String sid, List<String> files) {
files.removeAll(Collections.singleton(null));
List<OaAppendix> oaAppendixList = new ArrayList<>();
if (!files.isEmpty()) {
if(!files.isEmpty()){
for (String file : files) {
String filePath = file.replace(fileUploadComponent.getUrlPrefix(), "");
OaAppendix oaAppendix = new OaAppendix();
@ -190,6 +197,7 @@ public class OaMendApplyService extends MybatisBaseService<OaMendApplyMapper, Oa
oaAppendixList.add(oaAppendix);
}
}
oaAppendixService.saveOrUpdateFile(sid, oaAppendixList);
}
@ -250,38 +258,7 @@ public class OaMendApplyService extends MybatisBaseService<OaMendApplyMapper, Oa
bv.setNextNodeUserSids(organizationVo.getManagerSid());
bv.setFormVariables(variables);
if (r == 1) {
ResultBean<UpdateFlowFieldVo> voResultBean = flowFeign.startProcess(bv);
UpdateFlowFieldVo ufVo = voResultBean.getData();
OaFormFlowDto oaFormFlowDto = new OaFormFlowDto();
BeanUtil.copyProperties(ufVo, oaFormFlowDto);
oaFormService.updateFlow(oaFormFlowDto);
//==================================添加线程
try {
ThreadFactory namedThreadFactory = new ThreadFactoryBuilder()
.setNameFormat("demo-pool-%d").build();
ExecutorService pool = new ThreadPoolExecutor(2, 100,
0L, TimeUnit.MILLISECONDS,
new LinkedBlockingQueue<Runnable>(1024), namedThreadFactory, new ThreadPoolExecutor.AbortPolicy());
oaForm = oaFormService.fetchBySid(oaMendApply.getFormSid());
OaForm finalOaForm = oaForm;
Future future1 = pool.submit(() -> {
//极光推送
MessageFlowableQuery messageFlowableQuery = new MessageFlowableQuery();
MessageFlowVo messageFlowVo = new MessageFlowVo();
BeanUtil.copyProperties(ufVo, messageFlowVo);
messageFlowableQuery.setUfVo(messageFlowVo);
messageFlowableQuery.setAppMap(appMap);
messageFlowableQuery.setBusinessSid(businessSid);
messageFlowableQuery.setModuleName(finalOaForm.getFormType());
messageFlowableQuery.setMsgContent(finalOaForm.getCreateByName() + "提交的" + messageFlowableQuery.getModuleName() + ",请审批");
messageFlowableQuery.setMsgTitle(finalOaForm.getFormType());
messageFeign.pushMessage(messageFlowableQuery);
});
} catch (Exception e) {
e.printStackTrace();
}
//==================================添加线程
return voResultBean;
return oaFormService.submit(bv);
}
if (r == 2) {
// ToDo:驳回到发起人后再次提交

Loading…
Cancel
Save