From 58a120020744e5c6fe2b2799e136d1daef8fcfe0 Mon Sep 17 00:00:00 2001 From: dimengzhe <251008545@qq.com> Date: Mon, 29 Aug 2022 18:52:15 +0800 Subject: [PATCH 01/12] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../anrui/base/common/enums/BillTypeEnum.java | 1 + .../BaseModelConfigService.java | 12 +++-- .../biz/basevehicle/BaseVehicleService.java | 7 +-- .../bussalesorder/BusSalesOrderMapper.java | 2 + .../biz/bussalesorder/BusSalesOrderMapper.xml | 6 +++ .../bussalesorder/BusSalesOrderService.java | 29 +++++++++++- .../BusSalesOrderDepositService.java | 45 ++++++++++++++----- .../BusSalesOrderMakeupMapper.xml | 2 + 8 files changed, 85 insertions(+), 19 deletions(-) diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/common/enums/BillTypeEnum.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/common/enums/BillTypeEnum.java index 8a7b2547ba..ec3f38812d 100644 --- a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/common/enums/BillTypeEnum.java +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/common/enums/BillTypeEnum.java @@ -19,6 +19,7 @@ public enum BillTypeEnum { KCDDBGSQ("KCDDBG","库存地点变更申请"), JYDDDJSQ("JYDDDJSQ","简易订单订金收取"), JYDDCLYD("JYDDCLYD","简易订单车辆预定"), + XSDDHT("XSDDHT","销售订单合同"), XSDD("XSDD","销售订单"), ; diff --git a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemodelconfig/BaseModelConfigService.java b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemodelconfig/BaseModelConfigService.java index 14bda7bfdf..1d41b2aa92 100644 --- a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemodelconfig/BaseModelConfigService.java +++ b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemodelconfig/BaseModelConfigService.java @@ -558,8 +558,10 @@ public class BaseModelConfigService extends MybatisBaseService moreConfigVos = baseMapper.getCompanyModelList(appModelConfigListVo.getModelSid(), appModelConfigListVo.getConfigSid(), orgSid, VehicleState.LockEnum.UN_LOCK.getCode()); for (MoreConfigVo moreConfigVo : moreConfigVos) { String sid = moreConfigVo.getUseOrgSid(); - SysOrganizationVo sysOrganization = sysOrganizationFeign.fetchBySid(sid).getData(); - moreConfigVo.setCompanyName(sysOrganization.getName()); + if(StringUtils.isNotBlank(sid)){ + SysOrganizationVo sysOrganization = sysOrganizationFeign.fetchBySid(sid).getData(); + moreConfigVo.setCompanyName(sysOrganization.getName()); + } if (StringUtils.isBlank(moreConfigVo.getProduceCarNum())) { moreConfigVo.setProduceCarNum("0"); } @@ -842,8 +844,10 @@ public class BaseModelConfigService extends MybatisBaseService moreConfigVos = baseMapper.getCompanyModelList(appModelConfigListVo.getModelSid(), appModelConfigListVo.getConfigSid(), orgSid, VehicleState.LockEnum.UN_LOCK.getCode()); for (MoreConfigVo moreConfigVo : moreConfigVos) { String sid = moreConfigVo.getUseOrgSid(); - SysOrganizationVo sysOrganization = sysOrganizationFeign.fetchBySid(sid).getData(); - moreConfigVo.setCompanyName(sysOrganization.getName()); + if(StringUtils.isNotBlank(sid)){ + SysOrganizationVo sysOrganization = sysOrganizationFeign.fetchBySid(sid).getData(); + moreConfigVo.setCompanyName(sysOrganization.getName()); + } if (StringUtils.isBlank(moreConfigVo.getProduceCarNum())) { moreConfigVo.setProduceCarNum("0"); } diff --git a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicle/BaseVehicleService.java b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicle/BaseVehicleService.java index 9e109a0bca..b91ca010dc 100644 --- a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicle/BaseVehicleService.java +++ b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicle/BaseVehicleService.java @@ -10,7 +10,6 @@ import com.yxt.anrui.base.api.basevehicle.*; import com.yxt.anrui.base.api.basevehicle.app.AppBaseVehicleOrderVo; import com.yxt.anrui.base.api.basevehiclecertificate.BaseVehicleCertificate; import com.yxt.anrui.base.api.basevehiclecertificate.BaseVehicleCertificateVo; -import com.yxt.anrui.base.api.basevehmodelconfig.BaseVehmodelVo; import com.yxt.anrui.base.api.commonappendix.CommonAppendix; import com.yxt.anrui.base.api.commonappendix.CommonAppendixVo; import com.yxt.anrui.base.api.commonappendix.CommonAttachTypeEnum; @@ -858,8 +857,10 @@ public class BaseVehicleService extends MybatisBaseService moreConfigVos = baseMapper.getCompanyModelList(record.getModelSid(), orgSid, VehicleState.LockEnum.UN_LOCK.getCode()); for (MoreConfigVo moreConfigVo : moreConfigVos) { String sid = moreConfigVo.getUseOrgSid(); - SysOrganizationVo sysOrganization = sysOrganizationFeign.fetchBySid(sid).getData(); - moreConfigVo.setCompanyName(sysOrganization.getName()); + if(StringUtils.isNotBlank(sid)){ + SysOrganizationVo sysOrganization = sysOrganizationFeign.fetchBySid(sid).getData(); + moreConfigVo.setCompanyName(sysOrganization.getName()); + } if (StringUtils.isBlank(moreConfigVo.getProduceCarNum())) { moreConfigVo.setProduceCarNum("0"); } diff --git a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderMapper.java b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderMapper.java index 44574786bd..41bcc97da8 100644 --- a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderMapper.java +++ b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderMapper.java @@ -157,4 +157,6 @@ public interface BusSalesOrderMapper extends BaseMapper { AppOrderDetailsVo getSaleOrderDetails(String sid); int updateFlowFiled(Map map); + + int selectNum(String bill); } \ No newline at end of file diff --git a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderMapper.xml b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderMapper.xml index b7afe2a08f..05b8391164 100644 --- a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderMapper.xml +++ b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderMapper.xml @@ -207,4 +207,10 @@ WHERE sid = #{sid} + + \ No newline at end of file diff --git a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderService.java b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderService.java index e0bba8fd0b..d4ac3aa4e2 100644 --- a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderService.java +++ b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderService.java @@ -46,6 +46,9 @@ import com.yxt.anrui.base.api.busvehicleorder.BusVehicleOrderFeign; import com.yxt.anrui.base.api.busvehicleorder.BusVehicleOrderVo; import com.yxt.anrui.base.api.commoncontract.CommonContractBuscenterVo; import com.yxt.anrui.base.api.commoncontract.CommonContractFeign; +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.buscenter.api.busdepositfictitious.BusDepositFictitiousDetailsVo; import com.yxt.anrui.buscenter.api.busdepositfictitious.BusDepositFictitiousDto; import com.yxt.anrui.buscenter.api.bussalesorder.*; @@ -101,6 +104,7 @@ import com.yxt.anrui.portal.api.dictcommon.DictCommonFeign; import com.yxt.anrui.portal.api.dictcommon.DictCommonVo; import com.yxt.anrui.portal.api.sysorganization.SysOrganization; import com.yxt.anrui.portal.api.sysorganization.SysOrganizationFeign; +import com.yxt.anrui.portal.api.sysorganization.SysOrganizationVo; import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrg; import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgFeign; import com.yxt.anrui.portal.api.sysuser.SysUserFeign; @@ -1286,7 +1290,8 @@ public class BusSalesOrderService extends MybatisBaseService resultBean = sysStaffOrgFeign.getPathSidByUserSid(userSid); + ResultBean resultBean1 = sysOrganizationFeign.fetchBySid(resultBean.getData()); + String orgCode = resultBean1.getData().getOrgCode(); + BillNo b = new BillNo(); + b.setOrgCode(orgCode); + b.setBillType(BillTypeEnum.XSDD.getBillType()); + String bill = Rule.getBill(b); + int i = baseMapper.selectNum(bill); + String billNo = Rule.getBillNo(bill, i); + return billNo; + } + /** * 初始化销售订单车型信息,以及验证销售订单的车型信息是否发生了变化 * @@ -1482,7 +1501,13 @@ public class BusSalesOrderService extends MybatisBaseService stringList = Arrays.asList(payPath.split(",")); - listVo.setEntrustImage(stringList); + if(StringUtils.isNotBlank(payPath)){ + List stringList = Arrays.asList(payPath.split(",")); + listVo.setEntrustImage(stringList); + } //根据销售订单 if (!busSalesOrder.getCustomerName().equals(listVo.getName())) { listVo.setShowImage(true); @@ -182,16 +184,47 @@ public class BusSalesOrderDepositService extends MybatisBaseService listVos = dto.getVirtualOrderList(); + listVos.removeAll(Collections.singleton(null)); + for (AppBusSalesOrderDepositListDto listDto : listVos) { + //查询付款人是否和客户一样 + BusDeposit busDeposit = busDepositService.selectByBillSid(listDto.getDepositBillSid()); + if (!busSalesOrder.getCustomerName().equals(busDeposit.getDraweeName())) { + if (listDto.getEntrustImage().isEmpty()) { + return rb.setMsg("选择的虚拟订金单中有付款人与该客户不一致,请上传款项支付委托书"); + } + } + makeUpDecimal = makeUpDecimal.add(new BigDecimal(listDto.getPrice())); + } + } BusSalesOrderDeposit busSalesOrderDeposit = baseMapper.selectByOrderSid(salesOrderSid); String depositSid = ""; if (busSalesOrderDeposit == null) { busSalesOrderDeposit = new BusSalesOrderDeposit(); BeanUtil.copyProperties(dto, busSalesOrderDeposit, "sid"); + //计算需补交订金 + if(StringUtils.isNotBlank(dto.getDepositAll())){ + if("02".equals(dto.getDepositTypeKey())){ + BigDecimal bigDecimalAll = new BigDecimal(dto.getDepositAll()); + busSalesOrderDeposit.setMakeUpDeposit(bigDecimalAll.subtract(makeUpDecimal)); + } + } depositSid = busSalesOrderDeposit.getSid(); baseMapper.insert(busSalesOrderDeposit); } else { depositSid = busSalesOrderDeposit.getSid(); BeanUtil.copyProperties(dto, busSalesOrderDeposit, "sid"); + //计算需补交订金 + if(StringUtils.isNotBlank(dto.getDepositAll())){ + if("02".equals(dto.getDepositTypeKey())){ + BigDecimal bigDecimalAll = new BigDecimal(dto.getDepositAll()); + busSalesOrderDeposit.setMakeUpDeposit(bigDecimalAll.subtract(makeUpDecimal)); + } + } baseMapper.updateById(busSalesOrderDeposit); if ("01".equals(dto.getDepositTypeKey())) { //将需补交订金设置为null @@ -208,14 +241,6 @@ public class BusSalesOrderDepositService extends MybatisBaseService listVos = dto.getVirtualOrderList(); listVos.removeAll(Collections.singleton(null)); for (AppBusSalesOrderDepositListDto listDto : listVos) { - //查询付款人是否和客户一样 - BusDeposit busDeposit = busDepositService.selectByBillSid(listDto.getDepositBillSid()); - if (!busSalesOrder.getCustomerName().equals(busDeposit.getDraweeName())) { - if (listDto.getEntrustImage().isEmpty()) { - return rb.setMsg("选择的虚拟订金单中有付款人与该客户不一致,请上传款项支付委托书"); - } - - } BusDepositFictitious busDepositFictitious = new BusDepositFictitious(); BeanUtil.copyProperties(listDto, busDepositFictitious, "sid"); busDepositFictitious.setDepositSid(depositSid); diff --git a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesordermakeup/BusSalesOrderMakeupMapper.xml b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesordermakeup/BusSalesOrderMakeupMapper.xml index 31719c9ed5..d3a39cdcdc 100644 --- a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesordermakeup/BusSalesOrderMakeupMapper.xml +++ b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesordermakeup/BusSalesOrderMakeupMapper.xml @@ -68,6 +68,8 @@ NULL), IF(LENGTH(trim(GROUP_CONCAT(topPrice))) > 0, GROUP_CONCAT('上装价格:', topPrice), NULL), IF(LENGTH(trim(GROUP_CONCAT(moreConfig))) > 0, GROUP_CONCAT('更多配置:', moreConfig), + NULL), + IF(LENGTH(trim(GROUP_CONCAT(remarks))) > 0, GROUP_CONCAT('备注:', remarks), NULL)) as topBean, contractPath, topName From 2d6126f21d4f1c8d476ae47cf718d2602b064e89 Mon Sep 17 00:00:00 2001 From: hp <2969694837@qq.com> Date: Mon, 29 Aug 2022 19:17:55 +0800 Subject: [PATCH 02/12] =?UTF-8?q?=E5=90=88=E5=90=8C=E6=A1=A3=E6=A1=88?= =?UTF-8?q?=E9=97=AE=E9=A2=98=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../AppCommonContractPageVo.java | 5 ++ .../commoncontract/CommonContractFeign.java | 2 +- .../BaseModelModpriceService.java | 4 - .../commoncontract/CommonContractMapper.xml | 44 ++++----- .../commoncontract/CommonContractService.java | 89 ++++++++++--------- .../ScmVehicleGressionService.java | 3 - .../ScmVehicleReturnService.java | 6 -- .../contract/AppCommonContractFeign.java | 8 ++ .../AppCommonContractFeignFallback.java | 10 +++ .../contract/CommonContractInitVo.java | 69 ++++++++++++++ .../contract/CrmCustomerFileDto.java | 73 +++++++++++++++ .../contract/AppCommonContractRest.java | 14 ++- .../contract/AppCommonContractService.java | 28 +++++- 13 files changed, 275 insertions(+), 80 deletions(-) create mode 100644 anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/contract/CommonContractInitVo.java create mode 100644 anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/contract/CrmCustomerFileDto.java diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/commoncontract/AppCommonContractPageVo.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/commoncontract/AppCommonContractPageVo.java index 0b091a91e9..9a06bc521e 100644 --- a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/commoncontract/AppCommonContractPageVo.java +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/commoncontract/AppCommonContractPageVo.java @@ -1,5 +1,6 @@ package com.yxt.anrui.base.api.commoncontract; +import com.fasterxml.jackson.annotation.JsonProperty; import com.yxt.common.core.vo.Vo; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -22,10 +23,14 @@ public class AppCommonContractPageVo implements Vo { @ApiModelProperty("经办人") private String handler; + @ApiModelProperty("车型") + private String model; + @ApiModelProperty("合同金额") private String contractPrice; @ApiModelProperty("是否显示办理按钮") + @JsonProperty("isShowUpdate") private boolean isShowUpdate; @ApiModelProperty("节点状态") diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/commoncontract/CommonContractFeign.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/commoncontract/CommonContractFeign.java index f98d0f0396..df430a3ac2 100644 --- a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/commoncontract/CommonContractFeign.java +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/commoncontract/CommonContractFeign.java @@ -150,7 +150,7 @@ public interface CommonContractFeign { public ResultBean> getContractList(@RequestBody PagerQuery pagerQuery); @ApiOperation("移动端-初始化合同审核") - @PostMapping("/getContractInfo/{contractSid}/{userSid}") + @GetMapping("/getContractInfo/{contractSid}/{userSid}") @ResponseBody public ResultBean getContractInfo(@PathVariable("contractSid") String contractSid, @PathVariable("userSid") String userSid); diff --git a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemodelmodprice/BaseModelModpriceService.java b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemodelmodprice/BaseModelModpriceService.java index f8b390ec43..6b17df8cbf 100644 --- a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemodelmodprice/BaseModelModpriceService.java +++ b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemodelmodprice/BaseModelModpriceService.java @@ -240,7 +240,6 @@ public class BaseModelModpriceService extends MybatisBaseService stringResultBean = messageFeign.pushMessage(messageFlowableQuery); -// String msgSid = getMessage(ufVo, appMap, baseModelModprice); return voResultBean; } if (r == 2) { @@ -338,8 +337,6 @@ public class BaseModelModpriceService extends MybatisBaseService stringResultBean = messageFeign.pushMessage(messageFlowableQuery); - -// String msgSid = getMessage(ufVo, appMap, baseModelModprice); } return rb.success().setData(resultBean.getData()); } else { @@ -418,7 +415,6 @@ public class BaseModelModpriceService extends MybatisBaseService stringResultBean = messageFeign.pushMessage(messageFlowableQuery); -// String msgSid = getMessage(ufVo, appMap, baseModelModprice); return rb.success(); } } diff --git a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/commoncontract/CommonContractMapper.xml b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/commoncontract/CommonContractMapper.xml index a30ed4afec..5be8045b03 100644 --- a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/commoncontract/CommonContractMapper.xml +++ b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/commoncontract/CommonContractMapper.xml @@ -3,7 +3,7 @@ INSERT INTO common_contract(sid, contractNo, contractType, partyA, partyB, partyC, createBySid, - createDate, address, deposit, contractAmount, remarks) + createDate, address, deposit, contractAmount, remarks) VALUES (UUID(), @@ -39,19 +39,19 @@ - select IFNULL(CAST(REPLACE(MAX(contractNo), #{bill}, '') AS SIGNED),0) as code + select IFNULL(CAST(REPLACE(MAX(contractNo), #{bill}, '') AS SIGNED), 0) as code from common_contract where contractNo LIKE concat(#{bill}, '%') diff --git a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/commoncontract/CommonContractService.java b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/commoncontract/CommonContractService.java index d5c83c63e7..381510bcd7 100644 --- a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/commoncontract/CommonContractService.java +++ b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/commoncontract/CommonContractService.java @@ -990,7 +990,7 @@ public class CommonContractService extends MybatisBaseService contract = new ArrayList<>(); - List contractImages = Arrays.asList(split1); - for (String contractImage : contractImages) { - String contractImageUrl = urlPrefix + contractImage; - contract.add(contractImageUrl); + vo.setUserSid(userSid); + if (StringUtils.isNotBlank(vo.getAppdixUrl())) { + String[] split1 = vo.getAppdixUrl().split(","); + List contract = new ArrayList<>(); + List contractImages = Arrays.asList(split1); + for (String contractImage : contractImages) { + String contractImageUrl = urlPrefix + contractImage; + contract.add(contractImageUrl); + } + vo.setContractImages(contract); } - vo.setContractImages(contract); - - String[] split2 = vo.getSceneSignUrl().split(","); - List siteSig = new ArrayList<>(); - List siteSigImages = Arrays.asList(split2); - for (String siteSigImage : siteSigImages) { - String siteSigImagesUrl = urlPrefix + siteSigImage; - siteSig.add(siteSigImagesUrl); + if (StringUtils.isNotBlank(vo.getSceneSignUrl())) { + String[] split2 = vo.getSceneSignUrl().split(","); + List siteSig = new ArrayList<>(); + List siteSigImages = Arrays.asList(split2); + for (String siteSigImage : siteSigImages) { + String siteSigImagesUrl = urlPrefix + siteSigImage; + siteSig.add(siteSigImagesUrl); + } + vo.setSiteSigImages(siteSig); } - vo.setSiteSigImages(siteSig); - - if (vo.getCustomerKey().equals("1")) { - vo.setIdCardArchives(false); - if (StringUtils.isNotBlank(vo.getSceneSignUrl())) { - - String[] split3 = vo.getSceneSignUrl().split(","); - List idCard = new ArrayList<>(); - List idCardImages = Arrays.asList(split3); - for (String idCardImage : idCardImages) { - String idCardImagesUrl = urlPrefix + idCardImage; - idCard.add(idCardImagesUrl); + if (StringUtils.isNotBlank(vo.getCustomerKey())) { + if (vo.getCustomerKey().equals("1")) { + vo.setIdCardArchives(false); + if (StringUtils.isNotBlank(vo.getSceneSignUrl())) { + + String[] split3 = vo.getSceneSignUrl().split(","); + List idCard = new ArrayList<>(); + List idCardImages = Arrays.asList(split3); + for (String idCardImage : idCardImages) { + String idCardImagesUrl = urlPrefix + idCardImage; + idCard.add(idCardImagesUrl); + } + vo.setIdCardImages(idCard); + } else { + vo.setIdCardImages(new ArrayList<>()); } - vo.setIdCardImages(idCard); - } else { - vo.setIdCardImages(new ArrayList<>()); - } - } else if (vo.getCustomerKey().equals("2")) { - vo.setIdCardArchives(true); + } else if (vo.getCustomerKey().equals("2")) { + vo.setIdCardArchives(true); // 往里添加客户档案里的身份证信息 + } } return vo; } @@ -1056,9 +1060,8 @@ public class CommonContractService extends MybatisBaseService 0) { + if (dto.getContractImages() != null) { for (String contractImage : dto.getContractImages()) { if (contractImage.indexOf(fileUploadComponent.getUrlPrefix()) > -1) { contractImage = contractImage.replace(fileUploadComponent.getUrlPrefix(), ""); } s1 += contractImage + ","; + commonContract.setAppdixUrl(s1.substring(0, s1.length() - 1)); } - commonContract.setAppdixUrl(s1.substring(0, s1.length() - 1)); } - if (dto.getContractImages().size() > 0) { + if (dto.getContractImages() != null) { for (String siteSigImages : dto.getSiteSigImages()) { if (siteSigImages.indexOf(fileUploadComponent.getUrlPrefix()) > -1) { siteSigImages = siteSigImages.replace(fileUploadComponent.getUrlPrefix(), ""); } s2 += siteSigImages + ","; + commonContract.setSceneSignUrl(s2.substring(0, s2.length() - 1)); } - commonContract.setSceneSignUrl(s2.substring(0, s2.length() - 1)); } - if (dto.getContractImages().size() > 0) { + if (dto.getContractImages() != null) { for (String idCardImage : dto.getIdCardImages()) { if (idCardImage.indexOf(fileUploadComponent.getUrlPrefix()) > -1) { idCardImage = idCardImage.replace(fileUploadComponent.getUrlPrefix(), ""); } s3 += idCardImage + ","; + commonContract.setIdImagesUrl(s3.substring(0, s3.length() - 1)); } - commonContract.setIdImagesUrl(s3.substring(0, s3.length() - 1)); } - save(commonContract); + updateById(commonContract); return rb.success(); } diff --git a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclegression/ScmVehicleGressionService.java b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclegression/ScmVehicleGressionService.java index 61758537a8..3c7894ecab 100644 --- a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclegression/ScmVehicleGressionService.java +++ b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclegression/ScmVehicleGressionService.java @@ -665,7 +665,6 @@ public class ScmVehicleGressionService extends MybatisBaseService stringResultBean = messageFeign.pushMessage(messageFlowableQuery); -// String msgSid = getMessage(ufVo, appMap, scmVehicleGression); return voResultBean; } if (r == 2) { @@ -769,7 +768,6 @@ public class ScmVehicleGressionService extends MybatisBaseService stringResultBean = messageFeign.pushMessage(messageFlowableQuery); -// String msgSid = getMessage(ufVo, appMap, scmVehicleGression); } return rb.success().setData(resultBean.getData()); @@ -874,7 +872,6 @@ public class ScmVehicleGressionService extends MybatisBaseService stringResultBean = messageFeign.pushMessage(messageFlowableQuery); -// String msgSid = getMessage(ufVo, appMap, scmVehicleGression); return rb.success(); } } diff --git a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclereturn/ScmVehicleReturnService.java b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclereturn/ScmVehicleReturnService.java index 59db4d1387..5bdad23e4d 100644 --- a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclereturn/ScmVehicleReturnService.java +++ b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclereturn/ScmVehicleReturnService.java @@ -268,7 +268,6 @@ public class ScmVehicleReturnService extends MybatisBaseService stringResultBean = messageFeign.pushMessage(messageFlowableQuery); -// String msgSid = getMessage(uff, appMap, scmVehicleReturn); return resultBean1; } return submitBusinessData(scmVehicleReturnDto, busSid, orgSidPath, variables); @@ -426,8 +425,6 @@ public class ScmVehicleReturnService extends MybatisBaseService stringResultBean = messageFeign.pushMessage(messageFlowableQuery); - -// String msgSid = getMessage(uff, appMap, scmVehicleReturn); } return rb1; } else { @@ -749,8 +746,6 @@ public class ScmVehicleReturnService extends MybatisBaseService stringResultBean = messageFeign.pushMessage(messageFlowableQuery); - - String msgSid = getMessage(uff, appMap, scmVehicleReturn); return resultBean; } else { return ResultBean.fireFail().setMsg("操作失败,提交的数据不一致!"); @@ -779,7 +774,6 @@ public class ScmVehicleReturnService extends MybatisBaseService codesInteger = Arrays.asList(Arrays.asList(sysProUrlVo.getUrl().split("#")).get(1).split(",")).stream().map(Integer::parseInt).collect(Collectors.toList()); int[] ints = codesInteger.stream().mapToInt(Integer::valueOf).toArray(); - ; messageJsonDto.setButtons(ints); } else { messageFlowableDto.setModuleAction(sysProUrlVo.getUrl()); diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/contract/AppCommonContractFeign.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/contract/AppCommonContractFeign.java index 9b7b1e1f7e..efea846d7a 100644 --- a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/contract/AppCommonContractFeign.java +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/contract/AppCommonContractFeign.java @@ -42,5 +42,13 @@ public interface AppCommonContractFeign { @ResponseBody public ResultBean> getContractList(@RequestBody PagerQuery pagerQuery); + @ApiOperation("移动端-初始化合同审核") + @GetMapping("/getContractInfo/{contractSid}/{userSid}") + @ResponseBody + public ResultBean getContractInfo(@PathVariable("contractSid") String contractSid, @PathVariable("userSid") String userSid); + @ApiOperation("移动端-保存合同审核") + @PostMapping("/saveContractInfo") + @ResponseBody + public ResultBean saveContractInfo(@RequestBody CrmCustomerFileDto dto); } \ No newline at end of file diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/contract/AppCommonContractFeignFallback.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/contract/AppCommonContractFeignFallback.java index 50eece7314..8fb6c53a69 100644 --- a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/contract/AppCommonContractFeignFallback.java +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/contract/AppCommonContractFeignFallback.java @@ -31,4 +31,14 @@ public class AppCommonContractFeignFallback implements AppCommonContractFeign { public ResultBean> getContractList(PagerQuery pagerQuery) { return null; } + + @Override + public ResultBean getContractInfo(String contractSid, String userSid) { + return null; + } + + @Override + public ResultBean saveContractInfo(CrmCustomerFileDto dto) { + return null; + } } \ No newline at end of file diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/contract/CommonContractInitVo.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/contract/CommonContractInitVo.java new file mode 100644 index 0000000000..6ddbc5cd79 --- /dev/null +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/contract/CommonContractInitVo.java @@ -0,0 +1,69 @@ +package com.yxt.anrui.terminal.api.autoservice.contract; + +import com.yxt.common.core.vo.Vo; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.List; + +@Data +public class CommonContractInitVo implements Vo { + + private static final long serialVersionUID = 8205950296578299984L; + @ApiModelProperty("合同sid") + private String contractSid; + + @ApiModelProperty("单台价格") + private String price; + + @ApiModelProperty("数量") + private String number; + + @ApiModelProperty("车型") + private String model; + + @ApiModelProperty("乙方名称") + private String partyB; + + @ApiModelProperty("合同编号") + private String contractId; + + @ApiModelProperty("合同价格") + private String contractPrice; + + @ApiModelProperty("新车买卖合同") + private List contractImages; + + @ApiModelProperty("现场签署图片") + private List siteSigImages; + + @ApiModelProperty("身份证图片") + private List idCardImages; + + @ApiModelProperty("客户类型") + private String customerKey; + + @ApiModelProperty("任务id") + private String taskId; + + @ApiModelProperty("流程实例id") + private String procInsId; + + @ApiModelProperty("用户sid") + private String userSid; + + @ApiModelProperty("是否是档案库里的身份证") + private boolean idCardArchives; + + @ApiModelProperty("客户sid") + private String customerSid; + + @ApiModelProperty("合同附件") + private String appdixUrl; + + @ApiModelProperty("现场签署图片附件") + private String sceneSignUrl; + + @ApiModelProperty("身份证图片") + private String idImagesUrl; +} diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/contract/CrmCustomerFileDto.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/contract/CrmCustomerFileDto.java new file mode 100644 index 0000000000..29b93600ea --- /dev/null +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/contract/CrmCustomerFileDto.java @@ -0,0 +1,73 @@ +package com.yxt.anrui.terminal.api.autoservice.contract; + +import com.yxt.common.core.dto.Dto; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.math.BigDecimal; +import java.util.List; + +@Data +public class CrmCustomerFileDto implements Dto { + + + private static final long serialVersionUID = 3534355480622793601L; + + @ApiModelProperty("合同sid") + private String contractSid; + + @ApiModelProperty("单台价格") + private BigDecimal price; + + @ApiModelProperty("数量") + private String number; + + @ApiModelProperty("车型") + private String model; + + @ApiModelProperty("乙方名称") + private String partyB; + + @ApiModelProperty("合同编号") + private String contractId; + + @ApiModelProperty("合同价格") + private String contractPrice; + + @ApiModelProperty("新车买卖合同") + private List contractImages; + + @ApiModelProperty("现场签署图片") + private List siteSigImages; + + @ApiModelProperty("身份证图片") + private List idCardImages; + + @ApiModelProperty("客户类型") + private String customerKey; + + @ApiModelProperty("任务id") + private String taskId; + + @ApiModelProperty("流程实例id") + private String procInsId; + + @ApiModelProperty("用户sid") + private String userSid; + + @ApiModelProperty("是否是档案库里的身份证") + private boolean idCardArchives; + + @ApiModelProperty("客户sid") + private String customerSid; + + @ApiModelProperty("合同附件") + private String appdixUrl; + + @ApiModelProperty("现场签署图片附件") + private String sceneSignUrl; + + @ApiModelProperty("身份证图片") + private String idImagesUrl; + +} diff --git a/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/contract/AppCommonContractRest.java b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/contract/AppCommonContractRest.java index fa2d160932..1e5a4ae869 100644 --- a/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/contract/AppCommonContractRest.java +++ b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/contract/AppCommonContractRest.java @@ -5,6 +5,8 @@ import com.yxt.anrui.base.api.commoncontract.*; import com.yxt.anrui.terminal.api.autoservice.contract.AppCommonContractFeign; +import com.yxt.anrui.terminal.api.autoservice.contract.CommonContractInitVo; +import com.yxt.anrui.terminal.api.autoservice.contract.CrmCustomerFileDto; import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.vo.PagerVo; @@ -41,6 +43,16 @@ public class AppCommonContractRest implements AppCommonContractFeign { @Override @ApiOperation("移动端-合同审核列表") public ResultBean> getContractList(PagerQuery pagerQuery) { - return appCommonContractService.getContractList(pagerQuery); + return appCommonContractService.getContractList(pagerQuery); + } + + @Override + public ResultBean getContractInfo(String contractSid, String userSid) { + return appCommonContractService.getContractInfo(contractSid,userSid); + } + + @Override + public ResultBean saveContractInfo(CrmCustomerFileDto dto) { + return appCommonContractService.saveContractInfo(dto); } } diff --git a/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/contract/AppCommonContractService.java b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/contract/AppCommonContractService.java index d660d3b2c0..3a7ddccda9 100644 --- a/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/contract/AppCommonContractService.java +++ b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/contract/AppCommonContractService.java @@ -1,18 +1,22 @@ package com.yxt.anrui.terminal.biz.autoservice.contract; +import com.sun.org.apache.regexp.internal.RE; import com.yxt.anrui.base.api.commoncontract.*; +import com.yxt.anrui.terminal.api.autoservice.contract.CommonContractInitVo; +import com.yxt.anrui.terminal.api.autoservice.contract.CrmCustomerFileDto; +import com.yxt.common.base.utils.StringUtils; 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.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; - /** * Project: anrui-base(安瑞基础)
* File: CommonContractService.java
@@ -45,4 +49,26 @@ public class AppCommonContractService { } + public ResultBean getContractInfo(String contractSid, String userSid) { + ResultBean rb = ResultBean.fireFail(); + CommonContractInitVo vo = new CommonContractInitVo(); + ResultBean resultBean = commonContractFeign.getContractInfo(contractSid, userSid); + if (!resultBean.getSuccess()) { + return rb.setMsg(resultBean.getMsg()); + } + AppCommonContractInitVo data = resultBean.getData(); + BeanUtils.copyProperties(data, vo); + return rb.success().setData(vo); + } + + public ResultBean saveContractInfo(CrmCustomerFileDto dto) { + ResultBean rb = ResultBean.fireFail(); + AppCrmCustomerFileDto appCrmCustomerFileDto = new AppCrmCustomerFileDto(); + BeanUtils.copyProperties(dto, appCrmCustomerFileDto); + ResultBean resultBean = commonContractFeign.saveContractInfo(appCrmCustomerFileDto); + if (!resultBean.getSuccess()) { + rb.setMsg(resultBean.getMsg()); + } + return rb.success(); + } } \ No newline at end of file From ff892ef77d777fefbb25a57cd7058d0d47c96fec Mon Sep 17 00:00:00 2001 From: dimengzhe <251008545@qq.com> Date: Tue, 30 Aug 2022 10:16:09 +0800 Subject: [PATCH 03/12] =?UTF-8?q?=E7=A7=BB=E5=8A=A8=E7=AB=AF=E8=BD=A6?= =?UTF-8?q?=E5=9E=8B=E8=B0=83=E4=BB=B7=E8=AF=A6=E6=83=85=E4=B8=AD=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=E8=BD=A6=E5=9E=8B=E9=A1=B5=E9=9D=A2=E4=BF=A1=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../BaseModelVehicleVersionVo.java | 32 +++++++++++++++++++ .../BaseModelModpriceModelVo.java | 4 +++ .../BaseModelModpriceService.java | 23 +++++++++++++ .../AppBaseModelModpriceFeign.java | 10 +----- .../modelAdjust/ModelModpriceModelVo.java | 5 +++ .../modelAdjust/ModelVehicleVersionVo.java | 32 +++++++++++++++++++ 6 files changed, 97 insertions(+), 9 deletions(-) create mode 100644 anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelmodprice/BaseModelVehicleVersionVo.java create mode 100644 anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/modelAdjust/ModelVehicleVersionVo.java diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelmodprice/BaseModelVehicleVersionVo.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelmodprice/BaseModelVehicleVersionVo.java new file mode 100644 index 0000000000..f8d7070ef3 --- /dev/null +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelmodprice/BaseModelVehicleVersionVo.java @@ -0,0 +1,32 @@ +package com.yxt.anrui.base.api.basemodelmodprice; + +import com.yxt.common.core.vo.Vo; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @Author dimengzhe + * @Date 2022/8/30 9:51 + * @Description + */ +@Data +public class BaseModelVehicleVersionVo implements Vo { + private static final long serialVersionUID = -1925653992768754705L; + + @ApiModelProperty("版本编码") + private Integer moduleVersion; + + @ApiModelProperty("apk下载地址") + private String path; + + @ApiModelProperty("0.内置Activity 1.内置WebView 2.RePlugin插件") + private String type; + + @ApiModelProperty("插件名称") + private String modulePluginName; + + @ApiModelProperty("地址") + private String moduleAction; + + private String json; +} diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelmodpricemodel/BaseModelModpriceModelVo.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelmodpricemodel/BaseModelModpriceModelVo.java index 7e3de0998f..306ca47771 100644 --- a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelmodpricemodel/BaseModelModpriceModelVo.java +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelmodpricemodel/BaseModelModpriceModelVo.java @@ -26,6 +26,7 @@ package com.yxt.anrui.base.api.basemodelmodpricemodel; +import com.yxt.anrui.base.api.basemodelmodprice.BaseModelVehicleVersionVo; import com.yxt.common.core.vo.Vo; import io.swagger.annotations.ApiModel; @@ -69,4 +70,7 @@ public class BaseModelModpriceModelVo implements Vo { private String incOrDecInPrice; // 价格增减数额 @ApiModelProperty("备注") private String remarks; // 备注 + + + private BaseModelVehicleVersionVo carDetailPage; } diff --git a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemodelmodprice/BaseModelModpriceService.java b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemodelmodprice/BaseModelModpriceService.java index 6b17df8cbf..26a1585db6 100644 --- a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemodelmodprice/BaseModelModpriceService.java +++ b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemodelmodprice/BaseModelModpriceService.java @@ -27,6 +27,7 @@ package com.yxt.anrui.base.biz.basemodelmodprice; import cn.hutool.core.bean.BeanUtil; import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.yxt.anrui.base.api.basemodelmodprice.*; @@ -49,6 +50,8 @@ import com.yxt.anrui.flowable.api.sysprourl.SysProUrlFeign; import com.yxt.anrui.flowable.api.sysprourl.SysProUrlVo; import com.yxt.anrui.flowable.api.utils.ProcDefEnum; import com.yxt.anrui.flowable.sqloperationsymbol.BusinessVariables; +import com.yxt.anrui.portal.api.appsubsetversion.AppSubVersionVo; +import com.yxt.anrui.portal.api.appsubsetversion.AppSubsetVersionFeign; import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrg; import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgFeign; import com.yxt.anrui.portal.api.sysuser.SysUserFeign; @@ -99,6 +102,8 @@ public class BaseModelModpriceService extends MybatisBaseService listPageVo(PagerQuery pq) { BaseModelModpriceQuery query = pq.getParams(); @@ -158,6 +163,24 @@ public class BaseModelModpriceService extends MybatisBaseService baseModelModpriceModelVos = baseModelModpriceModelService.fetchByMainSid(sid); + //添加移动端车型页面信息 + ResultBean resultBean = appSubsetVersionFeign.selectLast(); + AppSubVersionVo appSubVersionVo = resultBean.getData(); + baseModelModpriceModelVos.removeAll(Collections.singleton(null)); + if (!baseModelModpriceModelVos.isEmpty()) { + baseModelModpriceModelVos.stream().forEach(vos -> { + BaseModelVehicleVersionVo appVehicleVersionVo = new BaseModelVehicleVersionVo(); + String modelSid = vos.getModelSid(); + String configSid = vos.getConfigSid(); + Map map = new HashMap<>(); + map.put("modelSid", modelSid); + map.put("configSid", configSid); + map.put("selectType", 0); + appSubVersionVo.setJson(JSONObject.toJSONString(map)); + BeanUtil.copyProperties(appSubVersionVo, appVehicleVersionVo); + vos.setCarDetailPage(appVehicleVersionVo); + }); + } baseModelModpriceDetailVo.setBaseModelModpriceModels(baseModelModpriceModelVos); return rb.success().setData(baseModelModpriceDetailVo); } diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/modelAdjust/AppBaseModelModpriceFeign.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/modelAdjust/AppBaseModelModpriceFeign.java index a641fffd2b..16a2eb07ce 100644 --- a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/modelAdjust/AppBaseModelModpriceFeign.java +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/modelAdjust/AppBaseModelModpriceFeign.java @@ -25,15 +25,7 @@ *********************************************************/ package com.yxt.anrui.terminal.api.supplychain.modelAdjust; -import com.yxt.anrui.base.api.basemodelmodprice.*; -import com.yxt.anrui.base.api.basemodelmodprice.flow.BaseModelModPriceCompleteDto; -import com.yxt.anrui.base.api.basemodelmodprice.flow.BaseModelModPriceTaskQuery; -import com.yxt.anrui.base.api.basemodelmodprice.flow.GetNodeQuery; -import com.yxt.anrui.base.api.basemodelmodprice.flow.SubmitBaseModelModPriceDto; -import com.yxt.anrui.terminal.api.supplychain.scmvehiclegression.flowable.GressionQuery; -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.cloud.openfeign.FeignClient; @@ -63,7 +55,7 @@ import javax.validation.Valid; fallback = AppBaseModelModpriceFeignFallback.class) public interface AppBaseModelModpriceFeign { - @ApiOperation("获取车型调车详情") + @ApiOperation("获取车型调价详情") @ResponseBody @GetMapping("/getModelAdjust/{sid}") public ResultBean getModelAdjust(@PathVariable("sid") String sid); diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/modelAdjust/ModelModpriceModelVo.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/modelAdjust/ModelModpriceModelVo.java index 4147f613ca..1166fbbc50 100644 --- a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/modelAdjust/ModelModpriceModelVo.java +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/modelAdjust/ModelModpriceModelVo.java @@ -31,4 +31,9 @@ public class ModelModpriceModelVo implements Vo { @ApiModelProperty("备注") private String remarks; // 备注 + @ApiModelProperty("车型页面信息") + private ModelVehicleVersionVo carDetailPage; + + + } diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/modelAdjust/ModelVehicleVersionVo.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/modelAdjust/ModelVehicleVersionVo.java new file mode 100644 index 0000000000..61807eab36 --- /dev/null +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/modelAdjust/ModelVehicleVersionVo.java @@ -0,0 +1,32 @@ +package com.yxt.anrui.terminal.api.supplychain.modelAdjust; + +import com.yxt.common.core.vo.Vo; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @Author dimengzhe + * @Date 2022/8/30 9:45 + * @Description + */ +@Data +public class ModelVehicleVersionVo implements Vo { + private static final long serialVersionUID = -245022776176515562L; + + @ApiModelProperty("版本编码") + private Integer moduleVersion; + + @ApiModelProperty("apk下载地址") + private String path; + + @ApiModelProperty("0.内置Activity 1.内置WebView 2.RePlugin插件") + private String type; + + @ApiModelProperty("插件名称") + private String modulePluginName; + + @ApiModelProperty("地址") + private String moduleAction; + + private String json; +} From 63fd4061b886ced46196ce78f81d3e28ecdd97d1 Mon Sep 17 00:00:00 2001 From: dimengzhe <251008545@qq.com> Date: Tue, 30 Aug 2022 10:50:10 +0800 Subject: [PATCH 04/12] =?UTF-8?q?=E7=A7=BB=E5=8A=A8=E7=AB=AF=E6=9C=AA?= =?UTF-8?q?=E5=94=AE=E4=B9=B0=E6=96=AD=E8=AF=A6=E6=83=85=E4=B8=AD=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=E8=BD=A6=E5=9E=8B=E9=A1=B5=E9=9D=A2=E4=BF=A1=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../AppBaseVehicleActualDetailsVo.java | 3 + .../BaseVehiVesionVo.java | 32 ++++++++ .../BaseVehicleActualSalesService.java | 73 ++++++------------- .../UnsoldBuyoutDetailsListVo.java | 2 + .../unsoldBuyout/UnsoldVesionVo.java | 32 ++++++++ 5 files changed, 92 insertions(+), 50 deletions(-) create mode 100644 anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicleactualsales/BaseVehiVesionVo.java create mode 100644 anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/unsoldBuyout/UnsoldVesionVo.java diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicleactualdetails/AppBaseVehicleActualDetailsVo.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicleactualdetails/AppBaseVehicleActualDetailsVo.java index b08a7d6b5c..c4090d5df6 100644 --- a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicleactualdetails/AppBaseVehicleActualDetailsVo.java +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicleactualdetails/AppBaseVehicleActualDetailsVo.java @@ -1,5 +1,6 @@ package com.yxt.anrui.base.api.basevehicleactualdetails; +import com.yxt.anrui.base.api.basevehicleactualsales.BaseVehiVesionVo; import com.yxt.common.core.vo.Vo; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -32,4 +33,6 @@ public class AppBaseVehicleActualDetailsVo implements Vo { private int dayNum; @ApiModelProperty("车辆数量") private int vehicleNum; + + private BaseVehiVesionVo carDetailPage; } diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicleactualsales/BaseVehiVesionVo.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicleactualsales/BaseVehiVesionVo.java new file mode 100644 index 0000000000..f806db94b3 --- /dev/null +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicleactualsales/BaseVehiVesionVo.java @@ -0,0 +1,32 @@ +package com.yxt.anrui.base.api.basevehicleactualsales; + +import com.yxt.common.core.vo.Vo; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @Author dimengzhe + * @Date 2022/8/30 10:37 + * @Description + */ +@Data +public class BaseVehiVesionVo implements Vo { + private static final long serialVersionUID = 7281325868701017122L; + + @ApiModelProperty("版本编码") + private Integer moduleVersion; + + @ApiModelProperty("apk下载地址") + private String path; + + @ApiModelProperty("0.内置Activity 1.内置WebView 2.RePlugin插件") + private String type; + + @ApiModelProperty("插件名称") + private String modulePluginName; + + @ApiModelProperty("地址") + private String moduleAction; + + private String json; +} diff --git a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicleactualsales/BaseVehicleActualSalesService.java b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicleactualsales/BaseVehicleActualSalesService.java index 2a3ddfd618..6b93996d66 100644 --- a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicleactualsales/BaseVehicleActualSalesService.java +++ b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicleactualsales/BaseVehicleActualSalesService.java @@ -2,6 +2,7 @@ package com.yxt.anrui.base.biz.basevehicleactualsales; import cn.hutool.core.bean.BeanUtil; import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.yxt.anrui.base.api.basevehicle.BaseVehicle; @@ -24,9 +25,10 @@ import com.yxt.anrui.flowable.api.flowtask.FlowTaskFeign; import com.yxt.anrui.flowable.api.flowtask.FlowTaskVo; import com.yxt.anrui.flowable.api.flowtask.LatestTaskVo; import com.yxt.anrui.flowable.api.sysprourl.SysProUrlFeign; -import com.yxt.anrui.flowable.api.sysprourl.SysProUrlVo; import com.yxt.anrui.flowable.api.utils.ProcDefEnum; import com.yxt.anrui.flowable.sqloperationsymbol.BusinessVariables; +import com.yxt.anrui.portal.api.appsubsetversion.AppSubVersionVo; +import com.yxt.anrui.portal.api.appsubsetversion.AppSubsetVersionFeign; import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrg; import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgFeign; import com.yxt.anrui.portal.api.sysuser.SysUserFeign; @@ -36,7 +38,9 @@ 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.messagecenter.api.message.*; +import com.yxt.messagecenter.api.message.MessageFeign; +import com.yxt.messagecenter.api.message.MessageFlowVo; +import com.yxt.messagecenter.api.message.MessageFlowableQuery; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; @@ -71,6 +75,8 @@ public class BaseVehicleActualSalesService extends MybatisBaseService stringResultBean = messageFeign.pushMessage(messageFlowableQuery); -// String msgSid = getMessage(ufVo, appMap, baseVehicleActualSales); return voResultBean; } if (r == 2) { @@ -406,7 +411,6 @@ public class BaseVehicleActualSalesService extends MybatisBaseService stringResultBean = messageFeign.pushMessage(messageFlowableQuery); -// String msgSid = getMessage(ufVo, appMap, baseVehicleActualSales); } return rb.success().setData(resultBean.getData()); @@ -519,7 +523,6 @@ public class BaseVehicleActualSalesService extends MybatisBaseService stringResultBean = messageFeign.pushMessage(messageFlowableQuery); -// String msgSid = getMessage(ufVo, appMap, baseVehicleActualSales); return rb.success(); } } @@ -606,52 +609,22 @@ public class BaseVehicleActualSalesService extends MybatisBaseService records = baseVehicleActualDetailsService.getList(sid, orgSid); + records.removeAll(Collections.singleton(null)); + ResultBean resultBean = appSubsetVersionFeign.selectLast(); + AppSubVersionVo appSubVersionVo = resultBean.getData(); + if (!records.isEmpty()) { + records.stream().forEach(vos -> { + BaseVehiVesionVo appVehicleVersionVo = new BaseVehiVesionVo(); + String modelSid = vos.getModelSid(); + String configSid = vos.getConfigSid(); + Map map = new HashMap<>(); + map.put("modelSid", modelSid); + map.put("configSid", configSid); + map.put("selectType", 0); + appVehicleVersionVo.setJson(JSONObject.toJSONString(map)); + BeanUtil.copyProperties(appSubVersionVo, appVehicleVersionVo); + vos.setCarDetailPage(appVehicleVersionVo);});} vo.setRecords(records); return rb.success().setData(vo); } - - public String getMessage(UpdateFlowFieldVo ufVo, Map appMap, BaseVehicleActualSales baseVehicleActualSales) { - //=====极光推送信息========================================参数组装 - String procId = baseVehicleActualSales.getProcInstId(); - ResultBean> resultBean = flowTaskFeign.getLatestTasks(procId); - String nextNodeUserSids = resultBean.getData().get(0).getASSIGNEE_(); - List receiveSidList = Arrays.asList(nextNodeUserSids.split(",")); - //根据用户的sid查询用户的id - ResultBean stringList1 = sysUserFeign.selectIdBySid(receiveSidList); - List reveiveIdList = Arrays.asList(stringList1.getData().split(",")); - MessageFlowableDto messageFlowableDto = new MessageFlowableDto(); - MessageJsonDto messageJsonDto = new MessageJsonDto(); - BeanUtil.copyProperties(ufVo, messageJsonDto); - //查询流程审批的页面操作地址组装json的参数 - //根据taskDef和移动端标识 - ResultBean selectUrlByKey = sysProUrlFeign.selectUrlByKey(ProcDefEnum.BASEVEHICLEACTUALSALES.getProDefId(), ufVo.getTaskDefKey(), "1", "2"); - SysProUrlVo sysProUrlVo = selectUrlByKey.getData(); - messageFlowableDto.setBusinessSid(baseVehicleActualSales.getSid()); - messageFlowableDto.setApp_type("2"); - if (sysProUrlVo.getUrl().contains("#")) { - messageFlowableDto.setModuleAction(Arrays.asList(sysProUrlVo.getUrl().split("#")).get(0)); - List codesInteger = Arrays.asList(Arrays.asList(sysProUrlVo.getUrl().split("#")).get(1).split(",")).stream().map(Integer::parseInt).collect(Collectors.toList()); - int[] ints = codesInteger.stream().mapToInt(Integer::valueOf).toArray(); - ; - messageJsonDto.setButtons(ints); - } else { - messageFlowableDto.setModuleAction(sysProUrlVo.getUrl()); - } - messageFlowableDto.setModuleSid(Arrays.asList(sysProUrlVo.getModulePluginName().split("#")).get(0)); - messageJsonDto.setTaskName(ufVo.getNodeState()); - messageJsonDto.setProcInsId(ufVo.getProcInsId()); - messageJsonDto.setAppMap(appMap); - messageFlowableDto.setJson(messageJsonDto); - messageFlowableDto.setList(receiveSidList); - messageFlowableDto.setReceiveIdList(reveiveIdList); - messageFlowableDto.setModuleName("未售买断申请"); - messageFlowableDto.setMsgContent("未售买断申请"); - messageFlowableDto.setMsgTitle("未售买断申请"); - messageFlowableDto.setCreateName(baseVehicleActualSales.getApplicationName()); - messageFlowableDto.setTaskId(ufVo.getTaskId()); - ResultBean stringResultBean = messageFeign.getMessage(messageFlowableDto); - String msgSid = stringResultBean.getData(); - return msgSid; - - } } diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/unsoldBuyout/UnsoldBuyoutDetailsListVo.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/unsoldBuyout/UnsoldBuyoutDetailsListVo.java index c72b5693e4..370a6bf0a6 100644 --- a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/unsoldBuyout/UnsoldBuyoutDetailsListVo.java +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/unsoldBuyout/UnsoldBuyoutDetailsListVo.java @@ -39,4 +39,6 @@ public class UnsoldBuyoutDetailsListVo implements Vo { private int dayNum; @ApiModelProperty("车辆数量") private int vehicleNum; + + private UnsoldVesionVo carDetailPage; } diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/unsoldBuyout/UnsoldVesionVo.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/unsoldBuyout/UnsoldVesionVo.java new file mode 100644 index 0000000000..d4d8d3f600 --- /dev/null +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/unsoldBuyout/UnsoldVesionVo.java @@ -0,0 +1,32 @@ +package com.yxt.anrui.terminal.api.supplychain.unsoldBuyout; + +import com.yxt.common.core.vo.Vo; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @Author dimengzhe + * @Date 2022/8/30 10:34 + * @Description + */ +@Data +public class UnsoldVesionVo implements Vo { + private static final long serialVersionUID = -8925410215132128967L; + + @ApiModelProperty("版本编码") + private Integer moduleVersion; + + @ApiModelProperty("apk下载地址") + private String path; + + @ApiModelProperty("0.内置Activity 1.内置WebView 2.RePlugin插件") + private String type; + + @ApiModelProperty("插件名称") + private String modulePluginName; + + @ApiModelProperty("地址") + private String moduleAction; + + private String json; +} From 5caca45fb3691c7f41becee202976ab71af028fb Mon Sep 17 00:00:00 2001 From: dimengzhe <251008545@qq.com> Date: Tue, 30 Aug 2022 11:12:17 +0800 Subject: [PATCH 05/12] =?UTF-8?q?=E7=A7=BB=E5=8A=A8=E7=AB=AF=E5=A4=96?= =?UTF-8?q?=E9=87=87=E7=94=B3=E8=AF=B7=E8=AF=A6=E6=83=85=E4=B8=AD=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=E8=BD=A6=E5=9E=8B=E9=A1=B5=E9=9D=A2=E4=BF=A1=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../AppBaseOutsourcingApplicationVo.java | 2 ++ .../AppBaseVesionVo.java | 32 +++++++++++++++++++ .../BaseOutsourcingApplicationService.java | 17 ++++++++++ .../externalPurchase/ExterVesionVo.java | 32 +++++++++++++++++++ .../externalPurchase/ExternalPurchaseVo.java | 2 ++ 5 files changed, 85 insertions(+) create mode 100644 anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/baseoutsourcingapplication/AppBaseVesionVo.java create mode 100644 anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/externalPurchase/ExterVesionVo.java diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/baseoutsourcingapplication/AppBaseOutsourcingApplicationVo.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/baseoutsourcingapplication/AppBaseOutsourcingApplicationVo.java index 3ea7fc5013..24f1be90c4 100644 --- a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/baseoutsourcingapplication/AppBaseOutsourcingApplicationVo.java +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/baseoutsourcingapplication/AppBaseOutsourcingApplicationVo.java @@ -60,4 +60,6 @@ public class AppBaseOutsourcingApplicationVo implements Vo { private String modelSid; @ApiModelProperty("配置sid") private String configSid; + + private AppBaseVesionVo carDetailPage; } diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/baseoutsourcingapplication/AppBaseVesionVo.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/baseoutsourcingapplication/AppBaseVesionVo.java new file mode 100644 index 0000000000..f5a24bd103 --- /dev/null +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/baseoutsourcingapplication/AppBaseVesionVo.java @@ -0,0 +1,32 @@ +package com.yxt.anrui.base.api.baseoutsourcingapplication; + +import com.yxt.common.core.vo.Vo; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @Author dimengzhe + * @Date 2022/8/30 11:00 + * @Description + */ +@Data +public class AppBaseVesionVo implements Vo { + private static final long serialVersionUID = 6536128762018795190L; + + @ApiModelProperty("版本编码") + private Integer moduleVersion; + + @ApiModelProperty("apk下载地址") + private String path; + + @ApiModelProperty("0.内置Activity 1.内置WebView 2.RePlugin插件") + private String type; + + @ApiModelProperty("插件名称") + private String modulePluginName; + + @ApiModelProperty("地址") + private String moduleAction; + + private String json; +} diff --git a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/baseoutsourcingapplication/BaseOutsourcingApplicationService.java b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/baseoutsourcingapplication/BaseOutsourcingApplicationService.java index f86c058443..8314104404 100644 --- a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/baseoutsourcingapplication/BaseOutsourcingApplicationService.java +++ b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/baseoutsourcingapplication/BaseOutsourcingApplicationService.java @@ -28,6 +28,7 @@ package com.yxt.anrui.base.biz.baseoutsourcingapplication; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.thread.ThreadUtil; import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.yxt.anrui.base.api.baseoutsourcingapplication.*; @@ -56,6 +57,8 @@ import com.yxt.anrui.flowable.api.flowtask.LatestTaskVo; import com.yxt.anrui.flowable.api.sysprourl.SysProUrlFeign; import com.yxt.anrui.flowable.api.utils.ProcDefEnum; import com.yxt.anrui.flowable.sqloperationsymbol.BusinessVariables; +import com.yxt.anrui.portal.api.appsubsetversion.AppSubVersionVo; +import com.yxt.anrui.portal.api.appsubsetversion.AppSubsetVersionFeign; import com.yxt.anrui.portal.api.dictcommon.DictCommonFeign; import com.yxt.anrui.portal.api.dictcommon.DictCommonVo; import com.yxt.anrui.portal.api.sysorganization.SysOrganizationFeign; @@ -137,6 +140,8 @@ public class BaseOutsourcingApplicationService extends MybatisBaseService createQueryWrapper(BaseOutsourcingApplicationQuery query) { // todo: 这里根据具体业务调整查询条件 @@ -854,6 +859,18 @@ public class BaseOutsourcingApplicationService extends MybatisBaseService 0) { stringList.add(fileUploadComponent.getUrlPrefix()+commonAppendixVos.get(0).getFilePath()); } + ResultBean resultBean = appSubsetVersionFeign.selectLast(); + AppSubVersionVo appSubVersionVo = resultBean.getData(); + AppBaseVesionVo appVehicleVersionVo = new AppBaseVesionVo(); + String modelSid = vo.getModelSid(); + String configSid = vo.getConfigSid(); + Map map = new HashMap<>(); + map.put("modelSid", modelSid); + map.put("configSid", configSid); + map.put("selectType", 0); + appSubVersionVo.setJson(JSONObject.toJSONString(map)); + BeanUtil.copyProperties(appSubVersionVo, appVehicleVersionVo); + vo.setCarDetailPage(appVehicleVersionVo); vo.setImages(stringList); return rb.success().setData(vo); } diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/externalPurchase/ExterVesionVo.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/externalPurchase/ExterVesionVo.java new file mode 100644 index 0000000000..b8777a0db9 --- /dev/null +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/externalPurchase/ExterVesionVo.java @@ -0,0 +1,32 @@ +package com.yxt.anrui.terminal.api.supplychain.externalPurchase; + +import com.yxt.common.core.vo.Vo; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @Author dimengzhe + * @Date 2022/8/30 10:58 + * @Description + */ +@Data +public class ExterVesionVo implements Vo { + private static final long serialVersionUID = -2066221815836429401L; + + @ApiModelProperty("版本编码") + private Integer moduleVersion; + + @ApiModelProperty("apk下载地址") + private String path; + + @ApiModelProperty("0.内置Activity 1.内置WebView 2.RePlugin插件") + private String type; + + @ApiModelProperty("插件名称") + private String modulePluginName; + + @ApiModelProperty("地址") + private String moduleAction; + + private String json; +} diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/externalPurchase/ExternalPurchaseVo.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/externalPurchase/ExternalPurchaseVo.java index 1a277e9eec..0ac1b64e8e 100644 --- a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/externalPurchase/ExternalPurchaseVo.java +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/externalPurchase/ExternalPurchaseVo.java @@ -74,4 +74,6 @@ public class ExternalPurchaseVo implements Vo { private String modelSid; @ApiModelProperty("配置sid") private String configSid; + + private ExterVesionVo carDetailPage; } From bc60706c317a5d9c4685596bb142366bfe0239bc Mon Sep 17 00:00:00 2001 From: dimengzhe <251008545@qq.com> Date: Tue, 30 Aug 2022 15:53:04 +0800 Subject: [PATCH 06/12] =?UTF-8?q?=E5=90=88=E5=90=8C=E5=AE=A1=E6=A0=B8?= =?UTF-8?q?=E5=8A=9E=E7=90=86=E3=80=81=E9=A9=B3=E5=9B=9E=E3=80=81=E7=BB=88?= =?UTF-8?q?=E6=AD=A2=E3=80=81=E6=92=A4=E5=9B=9E=E3=80=81=E8=8E=B7=E5=8F=96?= =?UTF-8?q?=E4=B8=8A=E4=B8=80=E7=8E=AF=E8=8A=82=E3=80=81=E8=8E=B7=E5=8F=96?= =?UTF-8?q?=E4=B8=8B=E4=B8=80=E7=8E=AF=E8=8A=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/commoncontract/CommonContract.java | 11 + .../commoncontract/CommonContractFeign.java | 31 +++ .../CommonContractFeignFallback.java | 36 ++++ .../flowable/CommonContractCompleteDto.java | 38 ++++ .../flowable/CommonContractNodeQuery.java | 24 +++ .../flowable/CommonContractNodeVo.java | 26 +++ .../flowable/CommonContractTaskQuery.java | 45 ++++ .../commoncontract/CommonContractMapper.java | 3 + .../commoncontract/CommonContractMapper.xml | 16 ++ .../commoncontract/CommonContractRest.java | 40 ++++ .../commoncontract/CommonContractService.java | 199 ++++++++++++++++++ .../anrui/flowable/api/utils/ProcDefEnum.java | 1 + 12 files changed, 470 insertions(+) create mode 100644 anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/commoncontract/flowable/CommonContractCompleteDto.java create mode 100644 anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/commoncontract/flowable/CommonContractNodeQuery.java create mode 100644 anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/commoncontract/flowable/CommonContractNodeVo.java create mode 100644 anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/commoncontract/flowable/CommonContractTaskQuery.java diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/commoncontract/CommonContract.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/commoncontract/CommonContract.java index 20b30954fc..f3fe6ba7b4 100644 --- a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/commoncontract/CommonContract.java +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/commoncontract/CommonContract.java @@ -96,4 +96,15 @@ public class CommonContract extends BaseEntity { private BigDecimal price; @ApiModelProperty("单台订金") private BigDecimal oneDeposit; + + @ApiModelProperty(value = "节点状态") + private String nodeState; + @ApiModelProperty(value = "节点id") + private String nodeId; + @ApiModelProperty(value = "流程id") + private String procDefId; + @ApiModelProperty(value = "实例id") + private String procInstId; + @ApiModelProperty(value = "任务id") + private String taskId; } diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/commoncontract/CommonContractFeign.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/commoncontract/CommonContractFeign.java index df430a3ac2..6a69810848 100644 --- a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/commoncontract/CommonContractFeign.java +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/commoncontract/CommonContractFeign.java @@ -1,11 +1,16 @@ package com.yxt.anrui.base.api.commoncontract; +import com.yxt.anrui.base.api.commoncontract.flowable.CommonContractCompleteDto; +import com.yxt.anrui.base.api.commoncontract.flowable.CommonContractNodeQuery; +import com.yxt.anrui.base.api.commoncontract.flowable.CommonContractNodeVo; +import com.yxt.anrui.base.api.commoncontract.flowable.CommonContractTaskQuery; 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.cloud.openfeign.FeignClient; +import org.springframework.cloud.openfeign.SpringQueryMap; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; @@ -159,4 +164,30 @@ public interface CommonContractFeign { @ResponseBody public ResultBean saveContractInfo(@RequestBody AppCrmCustomerFileDto dto); + //====================移动端合同审核流程 + + @ApiOperation(value = "办理(同意)") + @PostMapping("/complete") + public ResultBean complete(@Valid @RequestBody CommonContractCompleteDto query); + + @ApiOperation(value = "获取上一个环节") + @GetMapping(value = "/getPreviousNodesForReject") + ResultBean> getPreviousNodesForReject(@Valid @SpringQueryMap CommonContractNodeQuery query); + + @ApiOperation(value = "获取下一个环节") + @GetMapping(value = "/getNextNodesForSubmit") + ResultBean> getNextNodesForSubmit(@Valid @SpringQueryMap CommonContractNodeQuery query); + + @ApiOperation(value = "驳回任务") + @PostMapping(value = "/reject") + public ResultBean taskReject(@Valid @RequestBody CommonContractTaskQuery query); + + @ApiOperation(value = "撤回流程") + @PostMapping(value = "/revokeProcess") + public ResultBean revokeProcess(@Valid @RequestBody CommonContractTaskQuery query); + + @ApiOperation(value = "终止任务") + @PostMapping(value = "/breakProcess") + public ResultBean breakProcess(@Valid @RequestBody CommonContractTaskQuery query); + } \ No newline at end of file diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/commoncontract/CommonContractFeignFallback.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/commoncontract/CommonContractFeignFallback.java index 3eef59cd0f..cee966c3b4 100644 --- a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/commoncontract/CommonContractFeignFallback.java +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/commoncontract/CommonContractFeignFallback.java @@ -1,5 +1,10 @@ package com.yxt.anrui.base.api.commoncontract; +import com.yxt.anrui.base.api.busvehicleapply.flow.GetNodeVo; +import com.yxt.anrui.base.api.commoncontract.flowable.CommonContractCompleteDto; +import com.yxt.anrui.base.api.commoncontract.flowable.CommonContractNodeQuery; +import com.yxt.anrui.base.api.commoncontract.flowable.CommonContractNodeVo; +import com.yxt.anrui.base.api.commoncontract.flowable.CommonContractTaskQuery; import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.vo.PagerVo; @@ -8,6 +13,7 @@ import org.springframework.web.multipart.MultipartFile; import java.io.IOException; import java.text.ParseException; +import java.util.List; import java.util.Map; /** @@ -165,4 +171,34 @@ public class CommonContractFeignFallback implements CommonContractFeign { public ResultBean saveContractInfo(AppCrmCustomerFileDto dto) { return null; } + + @Override + public ResultBean complete(CommonContractCompleteDto query) { + return null; + } + + @Override + public ResultBean> getPreviousNodesForReject(CommonContractNodeQuery query) { + return null; + } + + @Override + public ResultBean> getNextNodesForSubmit(CommonContractNodeQuery query) { + return null; + } + + @Override + public ResultBean taskReject(CommonContractTaskQuery query) { + return null; + } + + @Override + public ResultBean revokeProcess(CommonContractTaskQuery query) { + return null; + } + + @Override + public ResultBean breakProcess(CommonContractTaskQuery query) { + return null; + } } \ No newline at end of file diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/commoncontract/flowable/CommonContractCompleteDto.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/commoncontract/flowable/CommonContractCompleteDto.java new file mode 100644 index 0000000000..8417533229 --- /dev/null +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/commoncontract/flowable/CommonContractCompleteDto.java @@ -0,0 +1,38 @@ +package com.yxt.anrui.base.api.commoncontract.flowable; + +import com.yxt.common.core.dto.Dto; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotBlank; + +/** + * @Author dimengzhe + * @Date 2022/8/30 15:00 + * @Description + */ +@Data +public class CommonContractCompleteDto implements Dto { + private static final long serialVersionUID = -1577957348084710482L; + + @ApiModelProperty(value = "用户sid") + @NotBlank(message = "参数错误:userSid") + private String userSid; + @ApiModelProperty(value = "用户全路径sid") + @NotBlank(message = "参数错误:orgSidPath") + private String orgSidPath; + @ApiModelProperty(value = "节点id") + @NotBlank(message = "参数错误:taskDefKey") + private String taskDefKey; + @ApiModelProperty(value = "任务id") + @NotBlank(message = "参数错误:taskId") + private String taskId; + @ApiModelProperty(value = "流程id") + @NotBlank(message = "参数错误:instanceId") + private String instanceId; + @ApiModelProperty(value = "意见") + private String comment; + @ApiModelProperty(value = "业务sid") + @NotBlank(message = "参数错误:businessSid") + private String businessSid; +} diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/commoncontract/flowable/CommonContractNodeQuery.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/commoncontract/flowable/CommonContractNodeQuery.java new file mode 100644 index 0000000000..f74b8a0b19 --- /dev/null +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/commoncontract/flowable/CommonContractNodeQuery.java @@ -0,0 +1,24 @@ +package com.yxt.anrui.base.api.commoncontract.flowable; + +import com.yxt.common.core.query.Query; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotBlank; + +/** + * @Author dimengzhe + * @Date 2022/8/30 15:02 + * @Description + */ +@Data +public class CommonContractNodeQuery implements Query { + private static final long serialVersionUID = 2719079015837709118L; + + @ApiModelProperty(value = "环节定义id") + @NotBlank(message = "参数错误:taskDefKey") + private String taskDefKey; + @ApiModelProperty(value = "业务sid") + private String businessSid; + +} diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/commoncontract/flowable/CommonContractNodeVo.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/commoncontract/flowable/CommonContractNodeVo.java new file mode 100644 index 0000000000..150710637f --- /dev/null +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/commoncontract/flowable/CommonContractNodeVo.java @@ -0,0 +1,26 @@ +package com.yxt.anrui.base.api.commoncontract.flowable; + +import com.yxt.common.core.vo.Vo; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.List; + +/** + * @Author dimengzhe + * @Date 2022/8/30 15:09 + * @Description + */ +@Data +public class CommonContractNodeVo implements Vo { + private static final long serialVersionUID = -3011038115113343705L; + + @ApiModelProperty(value = "节点名称") + private String name; + @ApiModelProperty(value = "节点id") + private String id; + @ApiModelProperty(value = "审批组") + private List candidateGroups; + @ApiModelProperty(value = "是否是最后环节") + private String endTask; +} diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/commoncontract/flowable/CommonContractTaskQuery.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/commoncontract/flowable/CommonContractTaskQuery.java new file mode 100644 index 0000000000..79a6fd6c2c --- /dev/null +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/commoncontract/flowable/CommonContractTaskQuery.java @@ -0,0 +1,45 @@ +package com.yxt.anrui.base.api.commoncontract.flowable; + +import com.yxt.common.core.query.Query; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotBlank; + +/** + * @Author dimengzhe + * @Date 2022/8/30 15:03 + * @Description + */ +@Data +public class CommonContractTaskQuery implements Query { + private static final long serialVersionUID = 4020176288666396111L; + + /** + * 终止、驳回、撤回 + */ + @ApiModelProperty("任务Id") + @NotBlank(message = "参数错误:taskId") + private String taskId; + /** + * 终止、驳回、撤回 + */ + @ApiModelProperty("业务sid") + @NotBlank(message = "参数错误:businessSid") + private String businessSid; + /** + * 终止、驳回 + */ + @ApiModelProperty("任务意见") + private String comment; + /** + * 终止、撤回、驳回 + */ + @ApiModelProperty("用户Sid") + private String userSid; + /** + * 终止 + */ + @ApiModelProperty("流程实例Id") + private String instanceId; +} diff --git a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/commoncontract/CommonContractMapper.java b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/commoncontract/CommonContractMapper.java index 954e47126b..239c39c7c1 100644 --- a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/commoncontract/CommonContractMapper.java +++ b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/commoncontract/CommonContractMapper.java @@ -9,6 +9,7 @@ import com.yxt.anrui.base.api.commoncontract.*; import org.apache.ibatis.annotations.*; import java.util.List; +import java.util.Map; /** * Project: anrui-base(安瑞基础)
@@ -79,4 +80,6 @@ public interface CommonContractMapper extends BaseMapper { AppCommonContractInitVo getContractInfo(@Param("contractSid") String contractSid, @Param("staffSid") String staffSid); int selectNum(String bill); + + int updateFlowFiled(Map map); } \ No newline at end of file diff --git a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/commoncontract/CommonContractMapper.xml b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/commoncontract/CommonContractMapper.xml index 5be8045b03..d502005615 100644 --- a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/commoncontract/CommonContractMapper.xml +++ b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/commoncontract/CommonContractMapper.xml @@ -114,4 +114,20 @@ from common_contract where contractNo LIKE concat(#{bill}, '%') + + + UPDATE common_contract + SET nodeState=#{nodeState} + , nodeId=#{taskDefKey} + + , procDefId=#{procDefId} + + + , procInstId=#{procInsId} + + + , taskId=#{taskId} + + WHERE sid = #{sid} +
\ No newline at end of file diff --git a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/commoncontract/CommonContractRest.java b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/commoncontract/CommonContractRest.java index 43e098afcc..162df4edfd 100644 --- a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/commoncontract/CommonContractRest.java +++ b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/commoncontract/CommonContractRest.java @@ -1,11 +1,18 @@ package com.yxt.anrui.base.biz.commoncontract; +import cn.hutool.core.bean.BeanUtil; import com.yxt.anrui.base.api.commonappendix.CommonAppendixVo; import com.yxt.anrui.base.api.commonappendix.CommonAttachTypeEnum; import com.yxt.anrui.base.api.commonappendix.PcCommonAppendixDto; import com.yxt.anrui.base.api.commoncontract.*; +import com.yxt.anrui.base.api.commoncontract.flowable.CommonContractCompleteDto; +import com.yxt.anrui.base.api.commoncontract.flowable.CommonContractNodeQuery; +import com.yxt.anrui.base.api.commoncontract.flowable.CommonContractNodeVo; +import com.yxt.anrui.base.api.commoncontract.flowable.CommonContractTaskQuery; import com.yxt.anrui.base.biz.commonappendix.CommonAppendixService; import com.yxt.anrui.fin.api.finuncollectedreceivablesdetailed.FinUncollectedReceivablesDetailedFeign; +import com.yxt.anrui.flowable.api.utils.ProcDefEnum; +import com.yxt.anrui.flowable.sqloperationsymbol.BusinessVariables; import com.yxt.common.base.config.component.FileUploadComponent; import com.yxt.common.base.utils.ExportExcelUtils; import com.yxt.common.base.utils.StringUtils; @@ -524,4 +531,37 @@ public class CommonContractRest implements CommonContractFeign { ResultBean resultBean = commonContractService.saveContractInfo(dto); return rb.success(); } + + @Override + public ResultBean complete(CommonContractCompleteDto query) { + BusinessVariables bv = new BusinessVariables(); + BeanUtil.copyProperties(query, bv); + bv.setModelId(ProcDefEnum.CONTRACTAPPLY.getProDefId()); + return commonContractService.complete(bv); + } + + @Override + public ResultBean> getPreviousNodesForReject(CommonContractNodeQuery query) { + return commonContractService.getPreviousNodesForReject(query); + } + + @Override + public ResultBean> getNextNodesForSubmit(CommonContractNodeQuery query) { + return commonContractService.getNextNodesForSubmit(query); + } + + @Override + public ResultBean taskReject(CommonContractTaskQuery query) { + return commonContractService.taskReject(query); + } + + @Override + public ResultBean revokeProcess(CommonContractTaskQuery query) { + return commonContractService.revokeProcess(query); + } + + @Override + public ResultBean breakProcess(CommonContractTaskQuery query) { + return commonContractService.breakProcess(query); + } } diff --git a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/commoncontract/CommonContractService.java b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/commoncontract/CommonContractService.java index 381510bcd7..cd58d16298 100644 --- a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/commoncontract/CommonContractService.java +++ b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/commoncontract/CommonContractService.java @@ -1,11 +1,15 @@ package com.yxt.anrui.base.biz.commoncontract; import cn.hutool.core.bean.BeanUtil; +import com.alibaba.fastjson.JSON; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.google.common.util.concurrent.ThreadFactoryBuilder; import com.yxt.anrui.base.api.commonappendix.CommonAppendix; import com.yxt.anrui.base.api.commoncontract.*; +import com.yxt.anrui.base.api.commoncontract.flowable.CommonContractNodeQuery; +import com.yxt.anrui.base.api.commoncontract.flowable.CommonContractNodeVo; +import com.yxt.anrui.base.api.commoncontract.flowable.CommonContractTaskQuery; import com.yxt.anrui.base.biz.basemodelszconfig.BaseModelSzconfigService; import com.yxt.anrui.base.biz.basetrailer.BaseTrailerService; import com.yxt.anrui.base.biz.basevehiclebrand.BaseVehicleBrandService; @@ -25,8 +29,15 @@ import com.yxt.anrui.crm.api.crmcustomer.CrmCustomerFeign; import com.yxt.anrui.crm.api.crmcustomerfile.CrmCustomerFileFeign; import com.yxt.anrui.crm.api.crmcustomertemp.CrmCustomerTempFeign; import com.yxt.anrui.crm.api.crmcustomertemp.CrmCustomerTempVo; +import com.yxt.anrui.flowable.api.flow.FlowableFeign; +import com.yxt.anrui.flowable.api.flow.UpdateFlowFieldVo; +import com.yxt.anrui.flowable.api.flowtask.FlowTaskFeign; +import com.yxt.anrui.flowable.api.flowtask.FlowTaskVo; +import com.yxt.anrui.flowable.api.flowtask.LatestTaskVo; import com.yxt.anrui.flowable.api.sysformlink.SysFormLinkFeign; import com.yxt.anrui.flowable.api.sysformlink.SysFormStateVo; +import com.yxt.anrui.flowable.api.utils.ProcDefEnum; +import com.yxt.anrui.flowable.sqloperationsymbol.BusinessVariables; import com.yxt.anrui.portal.api.dictcommon.DictCommonFeign; import com.yxt.anrui.portal.api.dictcommon.DictCommonVo; import com.yxt.anrui.portal.api.sysorganization.SysOrganizationFeign; @@ -46,6 +57,9 @@ 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.messagecenter.api.message.MessageFeign; +import com.yxt.messagecenter.api.message.MessageFlowVo; +import com.yxt.messagecenter.api.message.MessageFlowableQuery; import org.apache.commons.lang3.StringUtils; import org.apache.tomcat.util.threads.ThreadPoolExecutor; import org.springframework.beans.factory.annotation.Autowired; @@ -130,6 +144,12 @@ public class CommonContractService extends MybatisBaseService createQueryWrapper(CommonContractQuery query) { // todo: 这里根据具体业务调整查询条件 @@ -1290,4 +1310,183 @@ public class CommonContractService extends MybatisBaseService variables = new HashMap<>(); + Map appMap = new HashMap<>(); + appMap.put("sid", businessSid); + variables.put("app", appMap); + bv.setFormVariables(variables); + if (bv.getTaskId().equals(commonContract.getTaskId())) { + ResultBean resultBean = flowableFeign.handleProsess(bv); + if (!resultBean.getSuccess()) { + return rb.setMsg(resultBean.getMsg()); + } + UpdateFlowFieldVo ufVo = resultBean.getData(); + updateFlowFiled(BeanUtil.beanToMap(resultBean.getData())); + if (!"Event_end".equals(resultBean.getData().getTaskDefKey())) { + //极光推送 + commonContract = fetchBySid(businessSid); + MessageFlowableQuery messageFlowableQuery = new MessageFlowableQuery(); + MessageFlowVo messageFlowVo = new MessageFlowVo(); + BeanUtil.copyProperties(ufVo,messageFlowVo); + ufVo.setProcInsId(commonContract.getProcInstId()); + messageFlowableQuery.setUfVo(messageFlowVo); + messageFlowableQuery.setAppMap(appMap); + messageFlowableQuery.setBusinessSid(businessSid); + messageFlowableQuery.setModuleName("合同审核申请"); + messageFlowableQuery.setMsgContent(commonContract.getStaffName()+"提交的"+messageFlowableQuery.getModuleName()+",请审批"); + messageFlowableQuery.setMsgTitle("业务中心"); + ResultBean stringResultBean = messageFeign.pushMessage(messageFlowableQuery); + } + return rb.success().setData(resultBean.getData()); + } else { + return rb.setMsg("操作失败!提交的数据不一致"); + } + + } + + private int updateFlowFiled(Map map) { + return baseMapper.updateFlowFiled(map); + } + + public ResultBean> getPreviousNodesForReject(CommonContractNodeQuery query) { + ResultBean> rb = ResultBean.fireFail(); + BusinessVariables bv = new BusinessVariables(); + BeanUtil.copyProperties(query, bv); + //流程中的参数赋值、若有网关,则赋值网关中判断的字段。 + Map variables = new HashMap<>(); + bv.setFormVariables(variables); + bv.setModelId(ProcDefEnum.CONTRACTAPPLY.getProDefId()); + ResultBean>> resultBean = flowTaskFeign.getPreviousNodesForReject(bv); + //判断数组是否为空,若为空则赋值,若不为空,则遍历循环将map中的数据赋值给getNodeVo + List voList = Optional.ofNullable(resultBean.getData()).orElse(new ArrayList<>()).stream().map(m -> JSON.parseObject(JSON.toJSONString(m), CommonContractNodeVo.class)).collect(Collectors.toList()); + return rb.success().setData(voList); + } + + public ResultBean> getNextNodesForSubmit(CommonContractNodeQuery query) { + ResultBean> rb = ResultBean.fireFail(); + BusinessVariables bv = new BusinessVariables(); + BeanUtil.copyProperties(query, bv); + //流程中的参数赋值、若有网关,则赋值网关中判断的字段。 + Map variables = new HashMap<>(); + bv.setFormVariables(variables); + bv.setModelId(ProcDefEnum.CONTRACTAPPLY.getProDefId()); + ResultBean>> resultBean = flowTaskFeign.getNextNodesForSubmit(bv); + //判断数组是否为空,若为空则赋值,若不为空,则遍历循环将map中的数据赋值给getNodeVo + List voList = Optional.ofNullable(resultBean.getData()).orElse(new ArrayList<>()).stream().map(m -> JSON.parseObject(JSON.toJSONString(m), CommonContractNodeVo.class)).collect(Collectors.toList()); + return rb.success().setData(voList); + } + + public ResultBean taskReject(CommonContractTaskQuery query) { + ResultBean rb = ResultBean.fireFail(); + String businessSid = query.getBusinessSid(); + CommonContract commonContract = fetchBySid(businessSid); + if (commonContract == null) { + return rb.setMsg("该申请不存在"); + } + String businessTaskId = commonContract.getTaskId(); + if (StringUtils.isNotBlank(businessTaskId)) { + if (businessTaskId.equals(query.getTaskId())) { + if (StringUtils.isBlank(query.getComment())) { + return rb.setMsg("请填写意见"); + } + if (StringUtils.isBlank(query.getUserSid())) { + return rb.setMsg("参数错误:userSid"); + } + FlowTaskVo flowTaskVo = new FlowTaskVo(); + BeanUtil.copyProperties(query, flowTaskVo); + Map variables = new HashMap<>(); + Map appMap = new HashMap<>(); + appMap.put("sid", businessSid); + variables.put("app", appMap); + flowTaskVo.setValues(variables); + ResultBean resultBean = flowableFeign.taskReject(flowTaskVo); + if (!resultBean.getSuccess()) { + return rb.setMsg(resultBean.getMsg()); + } + UpdateFlowFieldVo ufVo = resultBean.getData(); + Map map = BeanUtil.beanToMap(ufVo); + //更新业务中的流程相关的参数 + updateFlowFiled(map); + //极光推送 + commonContract = fetchBySid(businessSid); + MessageFlowableQuery messageFlowableQuery = new MessageFlowableQuery(); + MessageFlowVo messageFlowVo = new MessageFlowVo(); + BeanUtil.copyProperties(ufVo,messageFlowVo); + String procId = commonContract.getProcInstId(); + ufVo.setProcInsId(procId); + messageFlowableQuery.setUfVo(messageFlowVo); + messageFlowableQuery.setAppMap(appMap); + messageFlowableQuery.setBusinessSid(businessSid); + messageFlowableQuery.setModuleName("合同审核申请"); + ResultBean> listResultBean = flowTaskFeign.getLatestTasks(procId); + String nextNodeUserSids = listResultBean.getData().get(0).getASSIGNEE_(); + List receiveSidList = Arrays.asList(nextNodeUserSids.split(",")); + if(receiveSidList.size() == 1 && receiveSidList.get(0).equals(commonContract.getStaffSid())){ + messageFlowableQuery.setMsgContent("您提交的"+messageFlowableQuery.getModuleName()+"已被驳回,请重新提交"); + }else{ + messageFlowableQuery.setMsgContent(commonContract.getStaffName()+"提交的"+messageFlowableQuery.getModuleName()+",请审批"); + } + messageFlowableQuery.setMsgTitle("业务中心"); + ResultBean stringResultBean = messageFeign.pushMessage(messageFlowableQuery); + return rb.success(); + } + } + return rb.setMsg("操作失败!提交的数据不一致!"); + } + + public ResultBean revokeProcess(CommonContractTaskQuery query) { + ResultBean rb = ResultBean.fireFail(); + if (StringUtils.isBlank(query.getUserSid())) { + return rb.setMsg("参数错误:userSid"); + } + CommonContract commonContract = fetchBySid(query.getBusinessSid()); + String businessTaskId = commonContract.getTaskId(); + if (StringUtils.isNotBlank(businessTaskId)) { + if (businessTaskId.equals(query.getTaskId())) { + FlowTaskVo flowTaskVo = new FlowTaskVo(); + BeanUtil.copyProperties(query, flowTaskVo); + ResultBean resultBean = flowableFeign.revokeProcess(flowTaskVo); + if (!resultBean.getSuccess()) { + return rb.setMsg(resultBean.getMsg()); + } + updateFlowFiled(BeanUtil.beanToMap(resultBean.getData())); + return rb.success().setData(resultBean.getData()); + } + } + return rb.setMsg("操作失败,提交的数据不一致!"); + } + + public ResultBean breakProcess(CommonContractTaskQuery query) { + ResultBean rb = ResultBean.fireFail(); + if (StringUtils.isBlank(query.getInstanceId())) { + return rb.setMsg("参数错误:instanceId"); + } + if (StringUtils.isBlank(query.getUserSid())) { + return rb.setMsg("参数错误:userSid"); + } + if (StringUtils.isBlank(query.getComment())) { + return rb.setMsg("请填写意见"); + } + CommonContract commonContract = fetchBySid(query.getBusinessSid()); + String businessTaskId = commonContract.getTaskId(); + if (StringUtils.isNotBlank(businessTaskId)) { + if (businessTaskId.equals(query.getTaskId())) { + FlowTaskVo flowTaskVo = new FlowTaskVo(); + BeanUtil.copyProperties(query, flowTaskVo); + ResultBean resultBean = flowableFeign.breakProcess(flowTaskVo); + if (!resultBean.getSuccess()) { + return rb.setMsg(resultBean.getMsg()); + } + Map map = BeanUtil.beanToMap(resultBean.getData()); + updateFlowFiled(map); + return rb.success().setData(resultBean.getData()); + } + } + return rb.setMsg("操作失败!提交的数据不一致!"); + } } \ No newline at end of file diff --git a/anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/utils/ProcDefEnum.java b/anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/utils/ProcDefEnum.java index 928eee5e8b..a67f71ac73 100644 --- a/anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/utils/ProcDefEnum.java +++ b/anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/utils/ProcDefEnum.java @@ -31,6 +31,7 @@ public enum ProcDefEnum { BASESHUNINVOICAPPLY("调车开票申请","process_u4xrvaso:1:400008"), BASEVEHINSTALLMODPRICE("上装调价申请","process_s0a0svth:1:492508"), SCMVEHREBATEWITHAPPLY("单车返利预提申请","process_qegarc7r:1:535004"), + CONTRACTAPPLY("合同审核","process_gd8c9xd5:1:545008"), ; ProcDefEnum(String proDefName, String proDefId) { From b1ab890328783d4e0fdb933bea134a1b21b8ac05 Mon Sep 17 00:00:00 2001 From: dimengzhe <251008545@qq.com> Date: Tue, 30 Aug 2022 16:17:35 +0800 Subject: [PATCH 07/12] =?UTF-8?q?=E7=A7=BB=E5=8A=A8=E7=AB=AF=E5=90=88?= =?UTF-8?q?=E5=90=8C=E5=AE=A1=E6=A0=B8=E5=8A=9E=E7=90=86=E3=80=81=E9=A9=B3?= =?UTF-8?q?=E5=9B=9E=E3=80=81=E7=BB=88=E6=AD=A2=E3=80=81=E6=92=A4=E5=9B=9E?= =?UTF-8?q?=E3=80=81=E8=8E=B7=E5=8F=96=E4=B8=8A=E4=B8=80=E7=8E=AF=E8=8A=82?= =?UTF-8?q?=E3=80=81=E8=8E=B7=E5=8F=96=E4=B8=8B=E4=B8=80=E7=8E=AF=E8=8A=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../contract/AppCommonContractFeign.java | 39 +++++-- .../AppCommonContractFeignFallback.java | 28 +++++ .../contract/flowable/ContractDto.java | 37 ++++++ .../contract/flowable/ContractQuery.java | 25 ++++ .../contract/flowable/ContractTaskQuery.java | 47 ++++++++ .../contract/AppCommonContractRest.java | 28 +++++ .../contract/AppCommonContractService.java | 110 +++++++++++++++++- 7 files changed, 302 insertions(+), 12 deletions(-) create mode 100644 anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/contract/flowable/ContractDto.java create mode 100644 anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/contract/flowable/ContractQuery.java create mode 100644 anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/contract/flowable/ContractTaskQuery.java diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/contract/AppCommonContractFeign.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/contract/AppCommonContractFeign.java index efea846d7a..66ad4f7fb7 100644 --- a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/contract/AppCommonContractFeign.java +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/contract/AppCommonContractFeign.java @@ -1,19 +1,19 @@ package com.yxt.anrui.terminal.api.autoservice.contract; -import com.yxt.anrui.base.api.commoncontract.*; +import com.yxt.anrui.base.api.commoncontract.AppCommonContractPageVo; +import com.yxt.anrui.base.api.commoncontract.AppCommonContractQuery; +import com.yxt.anrui.base.api.commoncontract.CommonContractFeignFallback; +import com.yxt.anrui.terminal.api.autoservice.contract.flowable.ContractDto; +import com.yxt.anrui.terminal.api.autoservice.contract.flowable.ContractQuery; +import com.yxt.anrui.terminal.api.autoservice.contract.flowable.ContractTaskQuery; 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.cloud.openfeign.FeignClient; +import org.springframework.cloud.openfeign.SpringQueryMap; import org.springframework.web.bind.annotation.*; -import org.springframework.web.multipart.MultipartFile; - -import javax.validation.Valid; -import java.io.IOException; -import java.text.ParseException; -import java.util.Map; /** * Project: anrui-base(安瑞基础)
@@ -51,4 +51,29 @@ public interface AppCommonContractFeign { @PostMapping("/saveContractInfo") @ResponseBody public ResultBean saveContractInfo(@RequestBody CrmCustomerFileDto dto); + + @ApiOperation("办理") + @PutMapping("/agreeContractInfo") + @ResponseBody + ResultBean agreeContractInfo(@RequestBody ContractDto dto); + + @ApiOperation("驳回") + @PutMapping("/rejectContractInfo") + @ResponseBody + ResultBean rejectContractInfo(@RequestBody ContractTaskQuery query); + + @ApiOperation("撤回") + @PutMapping("/recallContractInfo") + @ResponseBody + ResultBean recallContractInfo(@RequestBody ContractTaskQuery query); + + @ApiOperation("终止") + @PutMapping("/stopContractInfo") + @ResponseBody + ResultBean stopContractInfo(@RequestBody ContractTaskQuery query); + + @ApiOperation("获取流程操作标题") + @GetMapping("/getFlowOperateTitle") + @ResponseBody + ResultBean getFlowOperateTitle(@SpringQueryMap ContractQuery query); } \ No newline at end of file diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/contract/AppCommonContractFeignFallback.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/contract/AppCommonContractFeignFallback.java index 8fb6c53a69..12b53abb38 100644 --- a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/contract/AppCommonContractFeignFallback.java +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/contract/AppCommonContractFeignFallback.java @@ -1,6 +1,9 @@ package com.yxt.anrui.terminal.api.autoservice.contract; import com.yxt.anrui.base.api.commoncontract.*; +import com.yxt.anrui.terminal.api.autoservice.contract.flowable.ContractDto; +import com.yxt.anrui.terminal.api.autoservice.contract.flowable.ContractQuery; +import com.yxt.anrui.terminal.api.autoservice.contract.flowable.ContractTaskQuery; import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.vo.PagerVo; @@ -41,4 +44,29 @@ public class AppCommonContractFeignFallback implements AppCommonContractFeign { public ResultBean saveContractInfo(CrmCustomerFileDto dto) { return null; } + + @Override + public ResultBean agreeContractInfo(ContractDto dto) { + return null; + } + + @Override + public ResultBean rejectContractInfo(ContractTaskQuery query) { + return null; + } + + @Override + public ResultBean recallContractInfo(ContractTaskQuery query) { + return null; + } + + @Override + public ResultBean stopContractInfo(ContractTaskQuery query) { + return null; + } + + @Override + public ResultBean getFlowOperateTitle(ContractQuery query) { + return null; + } } \ No newline at end of file diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/contract/flowable/ContractDto.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/contract/flowable/ContractDto.java new file mode 100644 index 0000000000..4bac92a86e --- /dev/null +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/contract/flowable/ContractDto.java @@ -0,0 +1,37 @@ +package com.yxt.anrui.terminal.api.autoservice.contract.flowable; + +import com.fasterxml.jackson.annotation.JsonProperty; +import com.yxt.common.core.dto.Dto; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotBlank; + +/** + * @Author dimengzhe + * @Date 2022/8/30 15:57 + * @Description + */ +@Data +public class ContractDto implements Dto { + private static final long serialVersionUID = -2994642678989084467L; + + @ApiModelProperty(value = "任务id") + @NotBlank(message = "参数错误:taskId") + private String taskId; + @ApiModelProperty(value = "流程id") + @NotBlank(message = "参数错误:procInsId") + @JsonProperty("procInsId") + private String instanceId; + @ApiModelProperty(value = "意见") + private String comment; + @ApiModelProperty(value = "业务sid") + @NotBlank(message = "参数错误:businessSid") + private String businessSid; + @ApiModelProperty(value = "用户sid") + @NotBlank(message = "参数错误:userSid") + private String userSid; + @ApiModelProperty(value = "节点id") + @NotBlank(message = "参数错误:taskDefKey") + private String taskDefKey; +} diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/contract/flowable/ContractQuery.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/contract/flowable/ContractQuery.java new file mode 100644 index 0000000000..3c5869553b --- /dev/null +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/contract/flowable/ContractQuery.java @@ -0,0 +1,25 @@ +package com.yxt.anrui.terminal.api.autoservice.contract.flowable; + +import com.yxt.common.core.query.Query; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotNull; + +/** + * @Author dimengzhe + * @Date 2022/8/30 15:57 + * @Description + */ +@Data +public class ContractQuery implements Query { + private static final long serialVersionUID = 3554621072454825756L; + + @ApiModelProperty(value = "节点key") + private String taskDefKey; + @ApiModelProperty(value = "业务sid") + private String businessSid; + @ApiModelProperty(value = "0 上一环节 1下一环节") + @NotNull(message = "参数错误:next") + private Integer next; +} diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/contract/flowable/ContractTaskQuery.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/contract/flowable/ContractTaskQuery.java new file mode 100644 index 0000000000..fb7e60ab9a --- /dev/null +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/contract/flowable/ContractTaskQuery.java @@ -0,0 +1,47 @@ +package com.yxt.anrui.terminal.api.autoservice.contract.flowable; + +import com.fasterxml.jackson.annotation.JsonProperty; +import com.yxt.common.core.query.Query; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotBlank; + +/** + * @Author dimengzhe + * @Date 2022/8/30 15:57 + * @Description + */ +@Data +public class ContractTaskQuery implements Query { + private static final long serialVersionUID = -8643921324527025037L; + + /** + * 终止、驳回、撤回 + */ + @ApiModelProperty("任务Id") + @NotBlank(message = "参数错误:taskId") + private String taskId; + /** + * 终止、驳回、撤回 + */ + @ApiModelProperty("业务sid") + @NotBlank(message = "参数错误:businessSid") + private String businessSid; + /** + * 终止、驳回 + */ + @ApiModelProperty("任务意见") + private String comment; + /** + * 终止、撤回、驳回 + */ + @ApiModelProperty("用户Sid") + private String userSid; + /** + * 终止 + */ + @ApiModelProperty("流程实例Id") + @JsonProperty("procInsId") + private String instanceId; +} diff --git a/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/contract/AppCommonContractRest.java b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/contract/AppCommonContractRest.java index 1e5a4ae869..0c91184154 100644 --- a/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/contract/AppCommonContractRest.java +++ b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/contract/AppCommonContractRest.java @@ -7,6 +7,9 @@ import com.yxt.anrui.terminal.api.autoservice.contract.AppCommonContractFeign; import com.yxt.anrui.terminal.api.autoservice.contract.CommonContractInitVo; import com.yxt.anrui.terminal.api.autoservice.contract.CrmCustomerFileDto; +import com.yxt.anrui.terminal.api.autoservice.contract.flowable.ContractDto; +import com.yxt.anrui.terminal.api.autoservice.contract.flowable.ContractQuery; +import com.yxt.anrui.terminal.api.autoservice.contract.flowable.ContractTaskQuery; import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.vo.PagerVo; @@ -55,4 +58,29 @@ public class AppCommonContractRest implements AppCommonContractFeign { public ResultBean saveContractInfo(CrmCustomerFileDto dto) { return appCommonContractService.saveContractInfo(dto); } + + @Override + public ResultBean agreeContractInfo(ContractDto dto) { + return appCommonContractService.agreeContractInfo(dto); + } + + @Override + public ResultBean rejectContractInfo(ContractTaskQuery query) { + return appCommonContractService.rejectContractInfo(query); + } + + @Override + public ResultBean recallContractInfo(ContractTaskQuery query) { + return appCommonContractService.recallContractInfo(query); + } + + @Override + public ResultBean stopContractInfo(ContractTaskQuery query) { + return appCommonContractService.stopContractInfo(query); + } + + @Override + public ResultBean getFlowOperateTitle(ContractQuery query) { + return appCommonContractService.getFlowOperateTitle(query); + } } diff --git a/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/contract/AppCommonContractService.java b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/contract/AppCommonContractService.java index 3a7ddccda9..53154078c1 100644 --- a/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/contract/AppCommonContractService.java +++ b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/contract/AppCommonContractService.java @@ -1,21 +1,31 @@ package com.yxt.anrui.terminal.biz.autoservice.contract; -import com.sun.org.apache.regexp.internal.RE; +import cn.hutool.core.bean.BeanUtil; import com.yxt.anrui.base.api.commoncontract.*; - +import com.yxt.anrui.base.api.commoncontract.flowable.CommonContractCompleteDto; +import com.yxt.anrui.base.api.commoncontract.flowable.CommonContractNodeQuery; +import com.yxt.anrui.base.api.commoncontract.flowable.CommonContractNodeVo; +import com.yxt.anrui.base.api.commoncontract.flowable.CommonContractTaskQuery; +import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrg; +import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgFeign; +import com.yxt.anrui.portal.api.sysuser.SysUserFeign; +import com.yxt.anrui.portal.api.sysuser.SysUserVo; import com.yxt.anrui.terminal.api.autoservice.contract.CommonContractInitVo; import com.yxt.anrui.terminal.api.autoservice.contract.CrmCustomerFileDto; -import com.yxt.common.base.utils.StringUtils; +import com.yxt.anrui.terminal.api.autoservice.contract.flowable.ContractDto; +import com.yxt.anrui.terminal.api.autoservice.contract.flowable.ContractQuery; +import com.yxt.anrui.terminal.api.autoservice.contract.flowable.ContractTaskQuery; 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.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; - import org.springframework.stereotype.Service; +import java.util.Collections; +import java.util.List; + /** * Project: anrui-base(安瑞基础)
@@ -36,6 +46,10 @@ public class AppCommonContractService { @Autowired CommonContractFeign commonContractFeign; + @Autowired + private SysUserFeign sysUserFeign; + @Autowired + private SysStaffOrgFeign sysStaffOrgFeign; /** * 移动端-合同审核列表 @@ -71,4 +85,90 @@ public class AppCommonContractService { } return rb.success(); } + + public ResultBean agreeContractInfo(ContractDto dto) { + ResultBean rb = ResultBean.fireFail(); + //根据用户sid获取staffSid + ResultBean userVoResultBean = sysUserFeign.fetchBySid(dto.getUserSid()); + if (!userVoResultBean.getSuccess()) { + return rb.setMsg(userVoResultBean.getMsg()); + } + //根据staffSid获取用户的组织全路径 + ResultBean staffOrgResultBean = sysStaffOrgFeign.getOrgByStaffSid(userVoResultBean.getData().getStaffSid()); + if (!staffOrgResultBean.getSuccess()) { + return rb.setMsg(staffOrgResultBean.getMsg()); + } + //用户的组织全路径 + String orgSidPath = staffOrgResultBean.getData().getOrgSidPath(); + CommonContractCompleteDto commonContractCompleteDto = new CommonContractCompleteDto(); + BeanUtil.copyProperties(dto, commonContractCompleteDto); + commonContractCompleteDto.setOrgSidPath(orgSidPath); + ResultBean resultBean = commonContractFeign.complete(commonContractCompleteDto); + if (!resultBean.getSuccess()) { + return rb.setMsg(resultBean.getMsg()); + } + return rb.success().setData(resultBean.getData()); + } + + public ResultBean rejectContractInfo(ContractTaskQuery query) { + ResultBean rb = ResultBean.fireFail(); + CommonContractTaskQuery commonContractTaskQuery = new CommonContractTaskQuery(); + BeanUtil.copyProperties(query, commonContractTaskQuery); + ResultBean resultBean = commonContractFeign.taskReject(commonContractTaskQuery); + if (!resultBean.getSuccess()) { + return rb.setMsg(resultBean.getMsg()); + } + return rb.success().setData(resultBean.getData()); + } + + public ResultBean recallContractInfo(ContractTaskQuery query) { + ResultBean rb = ResultBean.fireFail(); + CommonContractTaskQuery commonContractTaskQuery = new CommonContractTaskQuery(); + BeanUtil.copyProperties(query, commonContractTaskQuery); + ResultBean resultBean = commonContractFeign.revokeProcess(commonContractTaskQuery); + if (!resultBean.getSuccess()) { + return rb.setMsg(resultBean.getMsg()); + } + return rb.success().setData(resultBean.getData()); + } + + public ResultBean stopContractInfo(ContractTaskQuery query) { + ResultBean rb = ResultBean.fireFail(); + CommonContractTaskQuery commonContractTaskQuery = new CommonContractTaskQuery(); + BeanUtil.copyProperties(query, commonContractTaskQuery); + ResultBean resultBean = commonContractFeign.breakProcess(commonContractTaskQuery); + if (!resultBean.getSuccess()) { + return rb.setMsg(resultBean.getMsg()); + } + return rb.success().setData(resultBean.getData()); + } + + public ResultBean getFlowOperateTitle(ContractQuery query) { + ResultBean rb = ResultBean.fireFail(); + //0 上一环节 1下一环节 + int next = query.getNext(); + CommonContractNodeQuery getNodeQuery = new CommonContractNodeQuery(); + BeanUtil.copyProperties(query, getNodeQuery); + String data = ""; + if (next == 0) { + ResultBean> getPreviousNodesForReject = commonContractFeign.getPreviousNodesForReject(getNodeQuery); + if (getPreviousNodesForReject.getSuccess()) { + getPreviousNodesForReject.getData().removeAll(Collections.singleton(null)); + data = getPreviousNodesForReject.getData().get(0).getName(); + } else { + return rb.setMsg(getPreviousNodesForReject.getMsg()); + } + } else if (next == 1) { + ResultBean> getNextNodesForSubmit = commonContractFeign.getNextNodesForSubmit(getNodeQuery); + if (getNextNodesForSubmit.getSuccess()) { + getNextNodesForSubmit.getData().removeAll(Collections.singleton(null)); + data = getNextNodesForSubmit.getData().get(0).getName(); + } else { + return rb.setMsg(getNextNodesForSubmit.getMsg()); + } + } else { + return rb.setMsg("参数错误:next"); + } + return rb.success().setData(data); + } } \ No newline at end of file From 33db470392483d1bd42de3b11818087b87228a7a Mon Sep 17 00:00:00 2001 From: hp <2969694837@qq.com> Date: Tue, 30 Aug 2022 16:41:47 +0800 Subject: [PATCH 08/12] =?UTF-8?q?=E4=BE=9B=E5=BA=94=E9=93=BE=E9=97=AE?= =?UTF-8?q?=E9=A2=98=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ScmVehicleGressionMapper.java | 4 +-- .../ScmVehicleGressionService.java | 2 +- .../ScmVehicleStayInventoryService.java | 25 +++++++++++-------- .../modelAdjust/ModelModPriceCompleteDto.java | 3 --- .../AppBaseModelModpriceService.java | 22 ++++++++++++++++ .../AppScmVehicleReturnService.java | 19 ++++++++++++++ 6 files changed, 58 insertions(+), 17 deletions(-) diff --git a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclegression/ScmVehicleGressionMapper.java b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclegression/ScmVehicleGressionMapper.java index 28bb7450e3..3aab47a37e 100644 --- a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclegression/ScmVehicleGressionMapper.java +++ b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclegression/ScmVehicleGressionMapper.java @@ -116,6 +116,6 @@ public interface ScmVehicleGressionMapper extends BaseMapper List getlastTimeEqual(@Param("vinNo") String vinNo, @Param("targetLocationSid") String targetLocationSid); - @Select("SELECT count(*) FROM scm_vehicle_gression WHERE useOrgSid = #{useOrgSid} and handleState = '1' ") - int getToDoNum(@Param("useOrgSid") String useOrgSid); + @Select("SELECT count(*) FROM scm_vehicle_gression WHERE useOrgSid = #{useOrgSid} and createBySid = #{userSid} and handleState = '1' ") + int getToDoNum(@Param("useOrgSid") String useOrgSid, @Param("userSid") String userSid); } \ No newline at end of file diff --git a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclegression/ScmVehicleGressionService.java b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclegression/ScmVehicleGressionService.java index 3c7894ecab..926b023986 100644 --- a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclegression/ScmVehicleGressionService.java +++ b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclegression/ScmVehicleGressionService.java @@ -1052,7 +1052,7 @@ public class ScmVehicleGressionService extends MybatisBaseService getToDoNum(String userSid) { ResultBean rb = ResultBean.fireFail(); String useOrgSid = sysStaffOrgFeign.getPathSidByUserSid(userSid).getData(); - int count = baseMapper.getToDoNum(useOrgSid); + int count = baseMapper.getToDoNum(useOrgSid,userSid); return rb.success().setData(String.valueOf(count)); } diff --git a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclestayinventory/ScmVehicleStayInventoryService.java b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclestayinventory/ScmVehicleStayInventoryService.java index d2f18ed5e7..32471e630e 100644 --- a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclestayinventory/ScmVehicleStayInventoryService.java +++ b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclestayinventory/ScmVehicleStayInventoryService.java @@ -186,17 +186,19 @@ public class ScmVehicleStayInventoryService extends MybatisBaseService scmVehicleStayInventoryVos = selInventory(record.getVin(), record.getId(), useOrgSid); - if (scmVehicleStayInventoryVos.size() <= 0) { - record.setInventoryDate("无"); - } else { - ScmVehicleStayInventoryVo scmVehicleStayInventoryVo = scmVehicleStayInventoryVos.get(0); - record.setInventoryDate(simpleDateFormat.format(scmVehicleStayInventoryVo.getLastDate())); - } - if (scmVehicleStayInventoryVos.size() <= 0) { - record.setInventoryName("无"); - } else { + if (scmVehicleStayInventoryVos.size() > 0) { + ScmVehicleStayInventoryVo scmVehicleStayInventoryVo = scmVehicleStayInventoryVos.get(0); - record.setInventoryName(scmVehicleStayInventoryVo.getLastName()); + if (scmVehicleStayInventoryVo.getLastDate() == null) { + record.setInventoryDate("无"); + } else { + record.setInventoryDate(simpleDateFormat.format(scmVehicleStayInventoryVo.getLastDate())); + } + if (StringUtils.isBlank(scmVehicleStayInventoryVo.getLastName())) { + record.setInventoryName("无"); + } else { + record.setInventoryName(scmVehicleStayInventoryVo.getLastName()); + } } } return iPage; @@ -212,7 +214,8 @@ public class ScmVehicleStayInventoryService extends MybatisBaseService appQueryWrapper(AppScmVehicleStayInventoryListPageQuery query) { + private QueryWrapper appQueryWrapper + (AppScmVehicleStayInventoryListPageQuery query) { QueryWrapper qw = new QueryWrapper<>(); qw.eq("svsi.isDelete", 0); if (StringUtils.isNotBlank(query.getUseOrgSid())) { diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/modelAdjust/ModelModPriceCompleteDto.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/modelAdjust/ModelModPriceCompleteDto.java index d4db645cc3..b0559918f9 100644 --- a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/modelAdjust/ModelModPriceCompleteDto.java +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/modelAdjust/ModelModPriceCompleteDto.java @@ -15,9 +15,6 @@ public class ModelModPriceCompleteDto implements Dto { @ApiModelProperty(value = "用户sid") @NotBlank(message = "参数错误:userSid") private String userSid; - @ApiModelProperty(value = "用户全路径sid") -// @NotBlank(message = "参数错误:orgSidPath") - private String orgSidPath; @ApiModelProperty(value = "节点id") @NotBlank(message = "参数错误:taskDefKey") private String taskDefKey; diff --git a/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/supplychain/modelAdjust/AppBaseModelModpriceService.java b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/supplychain/modelAdjust/AppBaseModelModpriceService.java index 8156d21986..039cba4da2 100644 --- a/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/supplychain/modelAdjust/AppBaseModelModpriceService.java +++ b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/supplychain/modelAdjust/AppBaseModelModpriceService.java @@ -29,6 +29,11 @@ import cn.hutool.core.bean.BeanUtil; import com.yxt.anrui.base.api.basemodelmodprice.BaseModelModpriceDetailVo; import com.yxt.anrui.base.api.basemodelmodprice.BaseModelModpriceFeign; import com.yxt.anrui.base.api.basemodelmodprice.flow.*; +import com.yxt.anrui.buscenter.api.busmaindeposit.BusMainDepositFeign; +import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrg; +import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgFeign; +import com.yxt.anrui.portal.api.sysuser.SysUserFeign; +import com.yxt.anrui.portal.api.sysuser.SysUserVo; import com.yxt.anrui.terminal.api.supplychain.modelAdjust.*; import com.yxt.common.core.result.ResultBean; import org.springframework.beans.factory.annotation.Autowired; @@ -55,6 +60,10 @@ public class AppBaseModelModpriceService { @Autowired BaseModelModpriceFeign baseModelModpriceFeign; + @Autowired + private SysUserFeign sysUserFeign; + @Autowired + private SysStaffOrgFeign sysStaffOrgFeign; /** * 获取车型调车详情 @@ -99,8 +108,21 @@ public class AppBaseModelModpriceService { */ public ResultBean agreeModelAdjustInfo(ModelModPriceCompleteDto query) { ResultBean rb = ResultBean.fireFail(); + //根据用户sid获取staffSid + ResultBean userVoResultBean = sysUserFeign.fetchBySid(query.getUserSid()); + if (!userVoResultBean.getSuccess()) { + return rb.setMsg(userVoResultBean.getMsg()); + } + //根据staffSid获取用户的组织全路径 + ResultBean staffOrgResultBean = sysStaffOrgFeign.getOrgByStaffSid(userVoResultBean.getData().getStaffSid()); + if (!staffOrgResultBean.getSuccess()) { + return rb.setMsg(staffOrgResultBean.getMsg()); + } + //用户的组织全路径 + String orgSidPath = staffOrgResultBean.getData().getOrgSidPath(); BaseModelModPriceCompleteDto baseModelModPriceCompleteDto = new BaseModelModPriceCompleteDto(); BeanUtil.copyProperties(query, baseModelModPriceCompleteDto); + baseModelModPriceCompleteDto.setOrgSidPath(orgSidPath); ResultBean resultBean = baseModelModpriceFeign.complete(baseModelModPriceCompleteDto); if (!resultBean.getSuccess()) { return rb.setMsg(resultBean.getMsg()); diff --git a/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/supplychain/purchaseReturn/AppScmVehicleReturnService.java b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/supplychain/purchaseReturn/AppScmVehicleReturnService.java index 3864895dc2..0fce9296bd 100644 --- a/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/supplychain/purchaseReturn/AppScmVehicleReturnService.java +++ b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/supplychain/purchaseReturn/AppScmVehicleReturnService.java @@ -4,7 +4,11 @@ package com.yxt.anrui.terminal.biz.supplychain.purchaseReturn; import cn.hutool.core.bean.BeanUtil; import com.yxt.anrui.base.api.basevehicle.BaseVehicle; import com.yxt.anrui.base.api.basevehicle.BaseVehicleFeign; +import com.yxt.anrui.buscenter.api.busmaindeposit.BusMainDepositFeign; +import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrg; import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgFeign; +import com.yxt.anrui.portal.api.sysuser.SysUserFeign; +import com.yxt.anrui.portal.api.sysuser.SysUserVo; import com.yxt.anrui.scm.api.flow.FlowTaskVo; import com.yxt.anrui.scm.api.scmvehiclereturn.ScmVehicleReturnDetailsVo; import com.yxt.anrui.scm.api.scmvehiclereturn.ScmVehicleReturnDto; @@ -35,6 +39,8 @@ public class AppScmVehicleReturnService { BaseVehicleFeign baseVehicleFeign; @Autowired SysStaffOrgFeign sysStaffOrgFeign; + @Autowired + private SysUserFeign sysUserFeign; /** * 获取采购退库详情 @@ -155,8 +161,21 @@ public class AppScmVehicleReturnService { */ public ResultBean agreePurchaseReturnInfo(VehicleReturnFlowQuery vehicleReturnFlowQuery) { ResultBean rb = ResultBean.fireFail(); + //根据用户sid获取staffSid + ResultBean userVoResultBean = sysUserFeign.fetchBySid(vehicleReturnFlowQuery.getUserSid()); + if (!userVoResultBean.getSuccess()) { + return rb.setMsg(userVoResultBean.getMsg()); + } + //根据staffSid获取用户的组织全路径 + ResultBean staffOrgResultBean = sysStaffOrgFeign.getOrgByStaffSid(userVoResultBean.getData().getStaffSid()); + if (!staffOrgResultBean.getSuccess()) { + return rb.setMsg(staffOrgResultBean.getMsg()); + } + //用户的组织全路径 + String orgSidPath = staffOrgResultBean.getData().getOrgSidPath(); ScmVehicleReturnFlowQuery scmVehicleReturnFlowQuery = new ScmVehicleReturnFlowQuery(); BeanUtil.copyProperties(vehicleReturnFlowQuery, scmVehicleReturnFlowQuery); + scmVehicleReturnFlowQuery.setOrgSidPath(orgSidPath); ResultBean resultBean = scmVehicleReturnFeign.complete(scmVehicleReturnFlowQuery); if (!resultBean.getSuccess()) { return rb.setMsg(resultBean.getMsg()); From 887e8264dead0b401fbdabc71b7e9bcfab309832 Mon Sep 17 00:00:00 2001 From: dimengzhe <251008545@qq.com> Date: Tue, 30 Aug 2022 20:36:36 +0800 Subject: [PATCH 09/12] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../anrui/base/biz/basemodelconfig/BaseModelConfigMapper.xml | 2 +- .../com/yxt/anrui/base/biz/basevehicle/BaseVehicleMapper.xml | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemodelconfig/BaseModelConfigMapper.xml b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemodelconfig/BaseModelConfigMapper.xml index a571bdb297..93c30b354f 100644 --- a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemodelconfig/BaseModelConfigMapper.xml +++ b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemodelconfig/BaseModelConfigMapper.xml @@ -585,7 +585,7 @@ FROM base_vehmodel_config bvc WHERE bvc.modelSid = #{modelSid} AND bvc.configurationItemsSid = #{configSid} - AND bvc.useOrgSid != #{useOrg} + AND bvc.useOrgSid != #{useOrg} and LENGTH(bvc.useOrgSid) >0