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 f48fc801f6..c394a15781 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 @@ -195,4 +195,8 @@ public interface CommonContractFeign { @GetMapping(value = "/getContractByBusSid/{sid}") ResultBean getContractByBusSid(@PathVariable("sid") String sid); + @ApiOperation(value = "根据销售订单sid获取合同") + @GetMapping(value = "/getContractBySalesOrderSid/{busSid}") + ResultBean getContractBySalesOrderSid(@PathVariable("busSid") String busSid); + } \ 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 05086f1601..76ac4c6874 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 @@ -208,4 +208,9 @@ public class CommonContractFeignFallback implements CommonContractFeign { public ResultBean getContractByBusSid(String sid) { return null; } + + @Override + public ResultBean getContractBySalesOrderSid(String busSid) { + 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/CommonContractVo.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/commoncontract/CommonContractVo.java index 3fd5ffeed3..63e7c72093 100644 --- a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/commoncontract/CommonContractVo.java +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/commoncontract/CommonContractVo.java @@ -60,6 +60,8 @@ public class CommonContractVo implements Vo { private String appdixUrl; @ApiModelProperty("现场签署图片附件") private String sceneSignUrl; + @ApiModelProperty("客户sid") + private String customerSid; @ApiModelProperty("节点状态") private String nodeState; @ApiModelProperty("附件文件") diff --git a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicleout/BaseVehicleOutService.java b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicleout/BaseVehicleOutService.java index aa902950da..b1e7e0b0ae 100644 --- a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicleout/BaseVehicleOutService.java +++ b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicleout/BaseVehicleOutService.java @@ -15,6 +15,7 @@ import com.yxt.anrui.portal.api.sysorganization.SysOrganizationFeign; import com.yxt.anrui.portal.api.sysorganization.SysOrganizationVo; import com.yxt.anrui.scm.api.scmwarehouse.ScmWarehouseFeign; import com.yxt.common.base.service.MybatisBaseService; +import com.yxt.common.base.utils.HanZiConverterPinYin; import com.yxt.common.base.utils.PagerUtil; import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.result.ResultBean; @@ -95,7 +96,7 @@ public class BaseVehicleOutService extends MybatisBaseService resultBean = sysOrganizationFeign.fetchBySid(baseVehicle.getCreateOrgSid()); if (resultBean.getSuccess()) { SysOrganizationVo vo = resultBean.getData(); @@ -120,7 +123,10 @@ public class BaseVehicleOutService extends MybatisBaseService { CommonContractBuscenterVo selectByBusSid(String busSid); - IPage getContractList(IPage page, @Param(Constants.WRAPPER) QueryWrapper qw,@Param("names")String names); + IPage getContractList(IPage page, @Param(Constants.WRAPPER) QueryWrapper qw, @Param("names") String names); /** * 移动端-初始化合同审核 @@ -88,4 +88,7 @@ public interface CommonContractMapper extends BaseMapper { void updateBySidAndState(@Param("businessSid") String businessSid, @Param("state") String state); CommonContract getContractByBusSid(String sid); + + @Select("select * from common_contract where busSid = #{busSid}") + CommonContractVo getContractBySalesOrderSid(@Param("busSid") String busSid); } \ 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 842aa5c773..ba5454ce19 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 @@ -571,4 +571,9 @@ public class CommonContractRest implements CommonContractFeign { public ResultBean getContractByBusSid(String sid) { return commonContractService.getContractByBusSid(sid); } + + @Override + public ResultBean getContractBySalesOrderSid(String busSid) { + return commonContractService.getContractBySalesOrderSid(busSid); + } } 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 23753ca173..65119f3901 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 @@ -1321,7 +1321,7 @@ public class CommonContractService extends MybatisBaseService resultBean = sysStaffOrgFeign.getPathSidByUserSid(userSid); ResultBean resultBean1 = sysOrganizationFeign.fetchBySid(resultBean.getData()); @@ -1468,7 +1468,7 @@ public class CommonContractService extends MybatisBaseService getContractBySalesOrderSid(String busSid) { + ResultBean rb = ResultBean.fireFail(); + CommonContractVo commonContractVo = baseMapper.getContractBySalesOrderSid(busSid); + return rb.success().setData(commonContractVo); + } + } \ No newline at end of file diff --git a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busadvanceginvoiceapply/AdCarListDto.java b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busadvanceginvoiceapply/AdCarListDto.java new file mode 100644 index 0000000000..46533e1c38 --- /dev/null +++ b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busadvanceginvoiceapply/AdCarListDto.java @@ -0,0 +1,14 @@ +package com.yxt.anrui.buscenter.api.busadvanceginvoiceapply; + +import com.yxt.common.core.dto.Dto; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +public class AdCarListDto implements Dto { + private static final long serialVersionUID = -1495695891564098295L; + @ApiModelProperty("车架号") + private String vin; + @ApiModelProperty("成交价") + private String price; +} diff --git a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busadvanceginvoiceapply/AppAdvanceInvoiceDto.java b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busadvanceginvoiceapply/AppAdvanceInvoiceDto.java index ebf89d8e54..85732d5c78 100644 --- a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busadvanceginvoiceapply/AppAdvanceInvoiceDto.java +++ b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busadvanceginvoiceapply/AppAdvanceInvoiceDto.java @@ -1,5 +1,6 @@ package com.yxt.anrui.buscenter.api.busadvanceginvoiceapply; + import com.yxt.common.core.dto.Dto; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -14,14 +15,14 @@ public class AppAdvanceInvoiceDto implements Dto { private String userSid; @ApiModelProperty("合同sid") private String contractSid; - @ApiModelProperty("合同id") + @ApiModelProperty("合同编号") private String contractNo; @ApiModelProperty("客户") private String customerName; @ApiModelProperty("申请日期") private String applyDate; @ApiModelProperty("车辆列表") - private List carList; + private List carList; @ApiModelProperty("欠款金额") private String arrearsMoney; @ApiModelProperty("车型") @@ -38,12 +39,12 @@ public class AppAdvanceInvoiceDto implements Dto { private String returnedMoneyDate; @ApiModelProperty("车辆登记合同") private List registerFile; - @ApiModelProperty("提前开票原因 0手写 1选择") + @ApiModelProperty("提前开票原因 选择value") private String advGinReasonValue; @ApiModelProperty("提前开票原因 0手写 1选择") private String advGinReasonKey; - @ApiModelProperty("选择原因") - private String reasonChoose; + @ApiModelProperty("提前开票原因 0手写 1选择") + private String advGinReasonType; @ApiModelProperty("任务id") private String taskId; @ApiModelProperty("流程实列id") diff --git a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busadvanceginvoiceapply/AppAdvanceInvoiceInfoVo.java b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busadvanceginvoiceapply/AppAdvanceInvoiceInfoVo.java index 22f26769ff..86ec15e2b5 100644 --- a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busadvanceginvoiceapply/AppAdvanceInvoiceInfoVo.java +++ b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busadvanceginvoiceapply/AppAdvanceInvoiceInfoVo.java @@ -4,6 +4,7 @@ import com.yxt.common.core.vo.Vo; import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import java.util.ArrayList; import java.util.List; @Data @@ -20,16 +21,18 @@ public class AppAdvanceInvoiceInfoVo implements Vo { private String customerName; @ApiModelProperty("申请日期") private String applyDate; - @ApiModelProperty("车辆列表") - private List carList; + @ApiModelProperty("选择车辆列表") + private List carList = new ArrayList<>(); + @ApiModelProperty("所有车辆列表") + private List vinList = new ArrayList<>(); @ApiModelProperty("欠款金额") private String arrearsMoney; @ApiModelProperty("车型") private String carModel; @ApiModelProperty("开票信息确认书") - private List confirmFile; + private List confirmFile = new ArrayList<>(); @ApiModelProperty("客户开票申请书") - private List applyFile; + private List applyFile = new ArrayList<>(); @ApiModelProperty("备注") private String remarks; @ApiModelProperty("手写原因") @@ -37,13 +40,13 @@ public class AppAdvanceInvoiceInfoVo implements Vo { @ApiModelProperty("承诺回款日期") private String returnedMoneyDate; @ApiModelProperty("车辆登记合同") - private List registerFile; + private List registerFile = new ArrayList<>(); + @ApiModelProperty("提前开票原因 0手写 1选择") + private String advGinReasonType; @ApiModelProperty("提前开票原因 0手写 1选择") private String advGinReasonValue; @ApiModelProperty("提前开票原因 0手写 1选择") private String advGinReasonKey; - @ApiModelProperty("选择原因") - private String reasonChoose; @ApiModelProperty("任务id") private String taskId; @ApiModelProperty("流程实列id") diff --git a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busadvanceginvoiceapply/AppAdvanceInvoiceQuery.java b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busadvanceginvoiceapply/AppAdvanceInvoicePageQuery.java similarity index 87% rename from anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busadvanceginvoiceapply/AppAdvanceInvoiceQuery.java rename to anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busadvanceginvoiceapply/AppAdvanceInvoicePageQuery.java index acecbf36ae..65cbf0b777 100644 --- a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busadvanceginvoiceapply/AppAdvanceInvoiceQuery.java +++ b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busadvanceginvoiceapply/AppAdvanceInvoicePageQuery.java @@ -5,7 +5,7 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; @Data -public class AppAdvanceInvoiceQuery implements Query { +public class AppAdvanceInvoicePageQuery implements Query { private static final long serialVersionUID = 7668511398241906995L; @ApiModelProperty("用户sid") diff --git a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busadvanceginvoiceapply/AppAdvanceInvoicePageVo.java b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busadvanceginvoiceapply/AppAdvanceInvoicePageVo.java index d3cf51f22f..f2ee0a5806 100644 --- a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busadvanceginvoiceapply/AppAdvanceInvoicePageVo.java +++ b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busadvanceginvoiceapply/AppAdvanceInvoicePageVo.java @@ -1,6 +1,6 @@ package com.yxt.anrui.buscenter.api.busadvanceginvoiceapply; -import com.fasterxml.jackson.annotation.JsonProperty; + import com.yxt.common.core.vo.Vo; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -11,37 +11,72 @@ public class AppAdvanceInvoicePageVo implements Vo { @ApiModelProperty("sid") private String sid; - @ApiModelProperty("合同状态") private String nodeState; - @ApiModelProperty("合同编号") private String contractNo; - @ApiModelProperty("欠款金额") private String arrearsMoney; - @ApiModelProperty("承诺汇款日期") private String returnedMoneyDate; - @ApiModelProperty("申请人") private String applyName; - @ApiModelProperty("数量") private String num; - @ApiModelProperty("原因") + private String reason; + + @ApiModelProperty("选择 手写 key 0 1") + private String advGinReasonType; + @ApiModelProperty("选择value") + private String advGinReasonValue; + @ApiModelProperty("选择key") + private String advGinReasonKey; + @ApiModelProperty("手写") private String otherReasons; @ApiModelProperty("创建日期") private String applyDate; - @ApiModelProperty("客户名称") private String customerName; - @ApiModelProperty("是否显示办理按钮") private Boolean showUpdateBtn; - @ApiModelProperty("是否显示删除按钮") private Boolean showDeleteBtn; + +// @ApiModelProperty("sid") +// private String sid; +// +// @ApiModelProperty("合同状态") +// private String nodeState; +// +// @ApiModelProperty("合同编号") +// private String contractNo; +// +// @ApiModelProperty("欠款金额") +// private String arrearsMoney; +// +// @ApiModelProperty("承诺汇款日期") +// private String returnedMoneyDate; +// +// @ApiModelProperty("申请人") +// private String applyName; +// +// @ApiModelProperty("数量") +// private String num; +// +// @ApiModelProperty("原因") +// private String otherReasons; +// +// @ApiModelProperty("创建日期") +// private String applyDate; +// +// @ApiModelProperty("客户名称") +// private String customerName; +// +// @ApiModelProperty("是否显示办理按钮") +// private Boolean showUpdateBtn; +// +// @ApiModelProperty("是否显示删除按钮") +// private Boolean showDeleteBtn; } diff --git a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busadvanceginvoiceapply/AppAdvanceInvoiceVinDto.java b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busadvanceginvoiceapply/AppAdvanceInvoiceVinDto.java new file mode 100644 index 0000000000..9fbd6975d9 --- /dev/null +++ b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busadvanceginvoiceapply/AppAdvanceInvoiceVinDto.java @@ -0,0 +1,22 @@ +package com.yxt.anrui.buscenter.api.busadvanceginvoiceapply; + +import com.yxt.common.core.dto.Dto; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.List; + +@Data +public class AppAdvanceInvoiceVinDto implements Dto { + private static final long serialVersionUID = 553960206426394602L; + + @ApiModelProperty("用户sid") + private String userSid; + + @ApiModelProperty("车架号集合") + private List vinList; + + @ApiModelProperty("合同sid") + private String contractSid; + +} diff --git a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busadvanceginvoiceapply/BusAdvanceGinvoiceapply.java b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busadvanceginvoiceapply/BusAdvanceGinvoiceapply.java index b0eff5f184..d04c27cdf2 100644 --- a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busadvanceginvoiceapply/BusAdvanceGinvoiceapply.java +++ b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busadvanceginvoiceapply/BusAdvanceGinvoiceapply.java @@ -71,8 +71,26 @@ public class BusAdvanceGinvoiceapply extends BaseEntity { private String advGinReasonKey; // 提前开票原因key @ApiModelProperty("提前开票原因value") private String advGinReasonValue; // 提前开票原因value - @ApiModelProperty("其他原因") - private String otherReasons; // 其他原因 - @ApiModelProperty("流程状态") - private String nodeState; // 其他原因 + @ApiModelProperty("选择 手写 key 0 1") + private String advGinReasonType; + @ApiModelProperty("手写原因") + private String otherReasons; + @ApiModelProperty(value = "分公司的sid") + private String useOrgSid; + @ApiModelProperty(value = "分公司的sid") + private String useOrgName; + + @ApiModelProperty(value = "用户sid") + private String createBySid; + + @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-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busadvanceginvoiceapply/BusAdvanceGinvoiceapplyFeign.java b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busadvanceginvoiceapply/BusAdvanceGinvoiceapplyFeign.java index b085521ebb..e5a90ab3dc 100644 --- a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busadvanceginvoiceapply/BusAdvanceGinvoiceapplyFeign.java +++ b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busadvanceginvoiceapply/BusAdvanceGinvoiceapplyFeign.java @@ -25,7 +25,7 @@ *********************************************************/ package com.yxt.anrui.buscenter.api.busadvanceginvoiceapply; -import com.yxt.anrui.buscenter.api.busmaindeposit.BusDepositDto; +import com.yxt.anrui.buscenter.api.busadvanceginvoiceapply.flowable.*; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import com.yxt.common.core.query.PagerQuery; @@ -87,7 +87,7 @@ public interface BusAdvanceGinvoiceapplyFeign { /*************************************************PC提前开票审批流程***************************************************/ @ApiOperation("提交提前开票审批流程") - @PostMapping("/submitAdvanceGinvoiceaapply") + @PostMapping("/submitAdvanceGinvoiceaapply ") public ResultBean submitAdvanceGinvoiceaapply(@RequestBody @Valid BusAdvanceGinvoiceapplyDto dto); /*************************************************APP提前开票接口***************************************************/ @@ -96,21 +96,63 @@ public interface BusAdvanceGinvoiceapplyFeign { @ApiOperation("手机端-获取提前开票列表") @PostMapping("/getAdvanceInvoiceList") @ResponseBody - ResultBean> getAdvanceInvoiceList(@RequestBody PagerQuery pagerQuery); + ResultBean> getAdvanceInvoiceList(@RequestBody PagerQuery pagerQuery); @ApiOperation("手机端-初始化提前开票申请") @GetMapping("/initAdvanceInvoice/{contractSid}") @ResponseBody public ResultBean initAdvanceInvoice(@PathVariable("contractSid") String contractSid); + @ApiOperation("移动端-新增提前开票申请") + @PostMapping("/addAdvanceInvoice") + @ResponseBody + public ResultBean addAdvanceInvoice(@Valid @RequestBody AppAdvanceInvoiceVinDto dto); + @ApiOperation("移动端-保存提前开票申请") @PostMapping("/saveAdvanceInvoice") @ResponseBody public ResultBean saveAdvanceInvoice(@Valid @RequestBody AppAdvanceInvoiceDto dto); @ApiOperation("手机端-删除提前开票") - @GetMapping("/deleteAdvanceInvoice/{contractSid}") + @DeleteMapping("/deleteAdvanceInvoice/{contractSid}") @ResponseBody public ResultBean deleteAdvanceInvoice(@PathVariable("contractSid") String contractSid); + /*************************************************APP提前开票流程接口***************************************************/ + + @ApiOperation("提交流程") + @PostMapping("/submitAdvanceInvoiceInfo") + @ResponseBody + ResultBean submitAdvanceInvoiceInfo(@RequestBody AppSubmitAdvanceInvoiceDto dto); + + @ApiOperation(value = "办理(同意)") + @PostMapping("/complete") + @ResponseBody + public ResultBean complete(@Valid @RequestBody AppCompleteAdvanceInvoiceDto query); + + @ApiOperation(value = "获取上一个环节") + @PostMapping(value = "/getPreviousNodesForReject") + @ResponseBody + ResultBean> getPreviousNodesForReject(@Valid @RequestBody GetNodeQuery query); + + @ApiOperation(value = "获取下一个环节") + @PostMapping(value = "/getNextNodesForSubmit") + @ResponseBody + ResultBean> getNextNodesForSubmit(@Valid @RequestBody GetNodeQuery query); + + @ApiOperation(value = "驳回任务") + @PostMapping(value = "/reject") + @ResponseBody + public ResultBean taskReject(@Valid @RequestBody AppAdvanceInvoiceTaskQuery query); + + @ApiOperation(value = "撤回流程") + @PostMapping(value = "/revokeProcess") + @ResponseBody + public ResultBean revokeProcess(@Valid @RequestBody AppAdvanceInvoiceTaskQuery query); + + @ApiOperation(value = "终止任务") + @PostMapping(value = "/breakProcess") + @ResponseBody + public ResultBean breakProcess(@Valid @RequestBody AppAdvanceInvoiceTaskQuery query); + } \ No newline at end of file diff --git a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busadvanceginvoiceapply/BusAdvanceGinvoiceapplyFeignFallback.java b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busadvanceginvoiceapply/BusAdvanceGinvoiceapplyFeignFallback.java index 9c7f0f8053..9bfbb6a08c 100644 --- a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busadvanceginvoiceapply/BusAdvanceGinvoiceapplyFeignFallback.java +++ b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busadvanceginvoiceapply/BusAdvanceGinvoiceapplyFeignFallback.java @@ -25,6 +25,7 @@ *********************************************************/ package com.yxt.anrui.buscenter.api.busadvanceginvoiceapply; +import com.yxt.anrui.buscenter.api.busadvanceginvoiceapply.flowable.*; import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.vo.PagerVo; @@ -81,7 +82,7 @@ public class BusAdvanceGinvoiceapplyFeignFallback implements BusAdvanceGinvoicea } @Override - public ResultBean> getAdvanceInvoiceList(PagerQuery pagerQuery) { + public ResultBean> getAdvanceInvoiceList(PagerQuery pagerQuery) { return null; } @@ -90,6 +91,11 @@ public class BusAdvanceGinvoiceapplyFeignFallback implements BusAdvanceGinvoicea return null; } + @Override + public ResultBean addAdvanceInvoice(AppAdvanceInvoiceVinDto dto) { + return null; + } + @Override public ResultBean saveAdvanceInvoice(AppAdvanceInvoiceDto dto) { return null; @@ -100,4 +106,39 @@ public class BusAdvanceGinvoiceapplyFeignFallback implements BusAdvanceGinvoicea return null; } + @Override + public ResultBean submitAdvanceInvoiceInfo(AppSubmitAdvanceInvoiceDto dto) { + return null; + } + + @Override + public ResultBean complete(AppCompleteAdvanceInvoiceDto query) { + return null; + } + + @Override + public ResultBean> getPreviousNodesForReject(GetNodeQuery query) { + return null; + } + + @Override + public ResultBean> getNextNodesForSubmit(GetNodeQuery query) { + return null; + } + + @Override + public ResultBean taskReject(AppAdvanceInvoiceTaskQuery query) { + return null; + } + + @Override + public ResultBean revokeProcess(AppAdvanceInvoiceTaskQuery query) { + return null; + } + + @Override + public ResultBean breakProcess(AppAdvanceInvoiceTaskQuery query) { + return null; + } + } \ No newline at end of file diff --git a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busadvanceginvoiceapply/flowable/AppAdvanceInvoiceQuery.java b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busadvanceginvoiceapply/flowable/AppAdvanceInvoiceQuery.java new file mode 100644 index 0000000000..fadf981037 --- /dev/null +++ b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busadvanceginvoiceapply/flowable/AppAdvanceInvoiceQuery.java @@ -0,0 +1,20 @@ +package com.yxt.anrui.buscenter.api.busadvanceginvoiceapply.flowable; + +import com.yxt.common.core.query.Query; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotNull; + +@Data +public class AppAdvanceInvoiceQuery implements Query { + private static final long serialVersionUID = -5150532363407828594L; + + @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-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busadvanceginvoiceapply/flowable/AppAdvanceInvoiceTaskQuery.java b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busadvanceginvoiceapply/flowable/AppAdvanceInvoiceTaskQuery.java new file mode 100644 index 0000000000..f058a276ed --- /dev/null +++ b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busadvanceginvoiceapply/flowable/AppAdvanceInvoiceTaskQuery.java @@ -0,0 +1,42 @@ +package com.yxt.anrui.buscenter.api.busadvanceginvoiceapply.flowable; + +import com.yxt.common.core.query.Query; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotBlank; + +@Data +public class AppAdvanceInvoiceTaskQuery implements Query { + private static final long serialVersionUID = 3308561390435471019L; + /** + * 终止、驳回、撤回 + */ + @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; + +// @ApiModelProperty("节点") +// private String targetKey; +} diff --git a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busadvanceginvoiceapply/flowable/AppCompleteAdvanceInvoiceDto.java b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busadvanceginvoiceapply/flowable/AppCompleteAdvanceInvoiceDto.java new file mode 100644 index 0000000000..4c627ee5ee --- /dev/null +++ b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busadvanceginvoiceapply/flowable/AppCompleteAdvanceInvoiceDto.java @@ -0,0 +1,35 @@ +package com.yxt.anrui.buscenter.api.busadvanceginvoiceapply.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; + +@Data +public class AppCompleteAdvanceInvoiceDto implements Dto { + private static final long serialVersionUID = 3647601312967057188L; + @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; +// @ApiModelProperty(value = "暂不确定是不是需要前端传的:还是有分支的时候传??") +// private Map formVariables; +} diff --git a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busadvanceginvoiceapply/flowable/AppSubmitAdvanceInvoiceDto.java b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busadvanceginvoiceapply/flowable/AppSubmitAdvanceInvoiceDto.java new file mode 100644 index 0000000000..965f32bc80 --- /dev/null +++ b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busadvanceginvoiceapply/flowable/AppSubmitAdvanceInvoiceDto.java @@ -0,0 +1,19 @@ +package com.yxt.anrui.buscenter.api.busadvanceginvoiceapply.flowable; + + +import com.yxt.anrui.buscenter.api.busadvanceginvoiceapply.AppAdvanceInvoiceDto; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +public class AppSubmitAdvanceInvoiceDto extends AppAdvanceInvoiceDto { + private static final long serialVersionUID = 4891793865442240715L; + + @ApiModelProperty("意见") + private String comment; + @ApiModelProperty("流程实例id") + private String instanceId; + @ApiModelProperty("任务id") + private String taskId; + +} diff --git a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busadvanceginvoiceapply/flowable/GetNodeQuery.java b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busadvanceginvoiceapply/flowable/GetNodeQuery.java new file mode 100644 index 0000000000..504e44e2de --- /dev/null +++ b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busadvanceginvoiceapply/flowable/GetNodeQuery.java @@ -0,0 +1,19 @@ +package com.yxt.anrui.buscenter.api.busadvanceginvoiceapply.flowable; + +import com.yxt.common.core.query.Query; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotBlank; + +@Data +public class GetNodeQuery implements Query { + private static final long serialVersionUID = -8926127081586674686L; + + @ApiModelProperty(value = "环节定义id") + @NotBlank(message = "参数错误:taskDefKey") + private String taskDefKey; + +// @ApiModelProperty(value = "分支字段及业务字段") +// private Map formVariables; +} diff --git a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busadvanceginvoiceapply/flowable/GetNodeVo.java b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busadvanceginvoiceapply/flowable/GetNodeVo.java new file mode 100644 index 0000000000..9d18ba2dd3 --- /dev/null +++ b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busadvanceginvoiceapply/flowable/GetNodeVo.java @@ -0,0 +1,21 @@ +package com.yxt.anrui.buscenter.api.busadvanceginvoiceapply.flowable; + +import com.yxt.common.core.vo.Vo; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.List; + +@Data +public class GetNodeVo implements Vo { + private static final long serialVersionUID = -3568899210334967291L; + + @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-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busarrearscarryvehicleapply/BusArrearsCarryVehicleApplyFeign.java b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busarrearscarryvehicleapply/BusArrearsCarryVehicleApplyFeign.java index fea62ac3a6..6274a7d31b 100644 --- a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busarrearscarryvehicleapply/BusArrearsCarryVehicleApplyFeign.java +++ b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busarrearscarryvehicleapply/BusArrearsCarryVehicleApplyFeign.java @@ -1,10 +1,5 @@ package com.yxt.anrui.buscenter.api.busarrearscarryvehicleapply; -import com.yxt.anrui.buscenter.api.busadvanceginvoiceapply.AppAdvanceInvoicePageVo; -import com.yxt.anrui.buscenter.api.busadvanceginvoiceapply.AppAdvanceInvoiceQuery; -import com.yxt.anrui.buscenter.api.busordervehicle.ExpectInvoicevehicleDto; -import com.yxt.anrui.buscenter.api.busordervehicle.ExpectInvoicevehicleQuery; -import com.yxt.anrui.buscenter.api.busordervehicle.ExpectInvoicevehicleVo; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import com.yxt.common.core.query.PagerQuery; diff --git a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busarrearscarryvehicleapply/BusArrearsCarryVehicleApplyFeignFallback.java b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busarrearscarryvehicleapply/BusArrearsCarryVehicleApplyFeignFallback.java index a5d4df8e5e..ab20630081 100644 --- a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busarrearscarryvehicleapply/BusArrearsCarryVehicleApplyFeignFallback.java +++ b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busarrearscarryvehicleapply/BusArrearsCarryVehicleApplyFeignFallback.java @@ -1,7 +1,5 @@ package com.yxt.anrui.buscenter.api.busarrearscarryvehicleapply; -import com.yxt.anrui.buscenter.api.busadvanceginvoiceapply.AppAdvanceInvoicePageVo; -import com.yxt.anrui.buscenter.api.busadvanceginvoiceapply.AppAdvanceInvoiceQuery; import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.vo.PagerVo; diff --git a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorder/BusSalesOrderFeign.java b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorder/BusSalesOrderFeign.java index fa21436948..42f713359d 100644 --- a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorder/BusSalesOrderFeign.java +++ b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorder/BusSalesOrderFeign.java @@ -31,6 +31,8 @@ import com.yxt.anrui.buscenter.api.bussalesorder.app.model.AppInitModelQuery; import com.yxt.anrui.buscenter.api.bussalesorder.app.order.*; import com.yxt.anrui.buscenter.api.bussalesorder.app.vin.VinDto; import com.yxt.anrui.buscenter.api.bussalesorder.app.vin.VinVo; +import com.yxt.anrui.buscenter.api.bussalesorder.contract.AppRovalContractPageQuery; +import com.yxt.anrui.buscenter.api.bussalesorder.contract.AppRovalContractPageVo; import com.yxt.anrui.buscenter.api.bussalesorder.flowable.*; import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.result.ResultBean; @@ -214,4 +216,13 @@ public interface BusSalesOrderFeign { @PostMapping("/saveSaleOrderInputVin") @ResponseBody ResultBean saveSaleOrderInputVin(@RequestBody VinDto dto); + + + @ApiOperation("移动端-提前开票查询合同列表") + @PostMapping("/getApprovalContractList") + @ResponseBody + public ResultBean> getApprovalContractList(@RequestBody PagerQuery pagerQuery); + + + } \ No newline at end of file diff --git a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorder/BusSalesOrderFeignFallback.java b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorder/BusSalesOrderFeignFallback.java index 38d6b19078..a8619be449 100644 --- a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorder/BusSalesOrderFeignFallback.java +++ b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorder/BusSalesOrderFeignFallback.java @@ -31,6 +31,8 @@ import com.yxt.anrui.buscenter.api.bussalesorder.app.model.AppInitModelQuery; import com.yxt.anrui.buscenter.api.bussalesorder.app.order.*; import com.yxt.anrui.buscenter.api.bussalesorder.app.vin.VinDto; import com.yxt.anrui.buscenter.api.bussalesorder.app.vin.VinVo; +import com.yxt.anrui.buscenter.api.bussalesorder.contract.AppRovalContractPageQuery; +import com.yxt.anrui.buscenter.api.bussalesorder.contract.AppRovalContractPageVo; import com.yxt.anrui.buscenter.api.bussalesorder.flowable.*; import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.result.ResultBean; @@ -191,4 +193,9 @@ public class BusSalesOrderFeignFallback implements BusSalesOrderFeign { public ResultBean saveSaleOrderInputVin(VinDto dto) { return null; } + + @Override + public ResultBean> getApprovalContractList(PagerQuery pagerQuery) { + return null; + } } \ No newline at end of file diff --git a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorder/contract/AppRovalContractPageQuery.java b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorder/contract/AppRovalContractPageQuery.java new file mode 100644 index 0000000000..1a225f3bb4 --- /dev/null +++ b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorder/contract/AppRovalContractPageQuery.java @@ -0,0 +1,17 @@ +package com.yxt.anrui.buscenter.api.bussalesorder.contract; + +import com.yxt.common.core.query.Query; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +public class AppRovalContractPageQuery implements Query { + + private static final long serialVersionUID = -1449862667407636197L; + + @ApiModelProperty("用户sid") + private String userSid; + + @ApiModelProperty("车架号 客户名称 合同编号") + private String name; +} diff --git a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorder/contract/AppRovalContractPageVo.java b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorder/contract/AppRovalContractPageVo.java new file mode 100644 index 0000000000..518e665b6e --- /dev/null +++ b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorder/contract/AppRovalContractPageVo.java @@ -0,0 +1,30 @@ +package com.yxt.anrui.buscenter.api.bussalesorder.contract; + +import com.yxt.common.core.vo.Vo; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +public class AppRovalContractPageVo implements Vo { + + private static final long serialVersionUID = 907545793790278229L; + + @ApiModelProperty("合同sid") + private String contractSid; + + @ApiModelProperty("合同编号") + private String contractId; + + @ApiModelProperty("车架号") + private String vin; + + @ApiModelProperty("销售订单sid") + private String busSid; + + @ApiModelProperty("客户名称") + private String customerName; + + @ApiModelProperty("车型名称") + private String modelName; + +} diff --git a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busadvanceginvoiceapply/BusAdvanceGinvoiceapplyMapper.java b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busadvanceginvoiceapply/BusAdvanceGinvoiceapplyMapper.java index 5f9156568f..b8ac670bee 100644 --- a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busadvanceginvoiceapply/BusAdvanceGinvoiceapplyMapper.java +++ b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busadvanceginvoiceapply/BusAdvanceGinvoiceapplyMapper.java @@ -36,6 +36,7 @@ import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Select; import java.util.List; +import java.util.Map; /** * Project: anrui_buscenter(销售业务)
@@ -65,5 +66,7 @@ public interface BusAdvanceGinvoiceapplyMapper extends BaseMapper getAdvanceInvoiceList(IPage page, @Param(Constants.WRAPPER) QueryWrapper qw, @Param("name") String name); + IPage getAdvanceInvoiceList(IPage page, @Param(Constants.WRAPPER) QueryWrapper qw, @Param("name") String name); + + int updateFlowFiled(Map map); } \ No newline at end of file diff --git a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busadvanceginvoiceapply/BusAdvanceGinvoiceapplyMapper.xml b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busadvanceginvoiceapply/BusAdvanceGinvoiceapplyMapper.xml index ae228c1c49..c061de6a5d 100644 --- a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busadvanceginvoiceapply/BusAdvanceGinvoiceapplyMapper.xml +++ b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busadvanceginvoiceapply/BusAdvanceGinvoiceapplyMapper.xml @@ -45,11 +45,16 @@ resultType="com.yxt.anrui.buscenter.api.busadvanceginvoiceapply.AppAdvanceInvoicePageVo"> SELECT sid, if(length(nodeState) > 0, nodeState, '待提交') as nodeState, + if(length(nodeState) > 0, false, true ) as showUpdateBtn, + if(length(nodeState) > 0, false, true ) as showDeleteBtn, contractNo, arrearsMoney, returnedMoneyDate, applyName, num, + advGinReasonType, + advGinReasonValue, + advGinReasonKey, otherReasons, applyDate, customerName @@ -63,4 +68,20 @@ + + + UPDATE bus_advance_ginvoiceapply + SET nodeState=#{nodeState} + , nodeId=#{taskDefKey} + + , procDefId=#{procDefId} + + + , procInstId=#{procInsId} + + + , taskId=#{taskId} + + 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/busadvanceginvoiceapply/BusAdvanceGinvoiceapplyRest.java b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busadvanceginvoiceapply/BusAdvanceGinvoiceapplyRest.java index 1027397e7b..ce524e3b8e 100644 --- a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busadvanceginvoiceapply/BusAdvanceGinvoiceapplyRest.java +++ b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busadvanceginvoiceapply/BusAdvanceGinvoiceapplyRest.java @@ -25,9 +25,12 @@ *********************************************************/ package com.yxt.anrui.buscenter.biz.busadvanceginvoiceapply; +import cn.hutool.core.bean.BeanUtil; import com.baomidou.mybatisplus.core.metadata.IPage; import com.yxt.anrui.buscenter.api.busadvanceginvoiceapply.*; -import com.yxt.anrui.buscenter.api.busdeliveredapply.AppDeliveredApplyPageVo; +import com.yxt.anrui.buscenter.api.busadvanceginvoiceapply.flowable.*; +import com.yxt.anrui.flowable.api.utils.ProcDefEnum; +import com.yxt.anrui.flowable.sqloperationsymbol.BusinessVariables; import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.vo.PagerVo; @@ -102,7 +105,7 @@ public class BusAdvanceGinvoiceapplyRest implements BusAdvanceGinvoiceapplyFeign } @Override - public ResultBean> getAdvanceInvoiceList(PagerQuery pagerQuery) { + public ResultBean> getAdvanceInvoiceList(PagerQuery pagerQuery) { ResultBean rb = ResultBean.fireFail(); IPage iPage = busAdvanceGinvoiceapplyService.getAdvanceInvoiceList(pagerQuery); return rb.success().setData(iPage); @@ -113,6 +116,11 @@ public class BusAdvanceGinvoiceapplyRest implements BusAdvanceGinvoiceapplyFeign return busAdvanceGinvoiceapplyService.initAdvanceInvoice(contractSid); } + @Override + public ResultBean addAdvanceInvoice(AppAdvanceInvoiceVinDto dto) { + return busAdvanceGinvoiceapplyService.addAdvanceInvoice(dto); + } + @Override public ResultBean saveAdvanceInvoice(AppAdvanceInvoiceDto dto) { return busAdvanceGinvoiceapplyService.saveAdvanceInvoice(dto); @@ -122,4 +130,42 @@ public class BusAdvanceGinvoiceapplyRest implements BusAdvanceGinvoiceapplyFeign public ResultBean deleteAdvanceInvoice(String contractSid) { return busAdvanceGinvoiceapplyService.deleteAdvanceInvoice(contractSid); } + + @Override + public ResultBean submitAdvanceInvoiceInfo(AppSubmitAdvanceInvoiceDto dto) { + return busAdvanceGinvoiceapplyService.submitCarTransfer(dto); + } + + @Override + public ResultBean complete(AppCompleteAdvanceInvoiceDto query) { + BusinessVariables bv = new BusinessVariables(); + BeanUtil.copyProperties(query, bv); + bv.setModelId(ProcDefEnum.BUSCENTERADVANCEGINVOICEAPPLY.getProDefId()); + return busAdvanceGinvoiceapplyService.complete(bv); + } + + @Override + public ResultBean> getPreviousNodesForReject(GetNodeQuery query) { + return busAdvanceGinvoiceapplyService.getPreviousNodesForReject(query); + } + + @Override + public ResultBean> getNextNodesForSubmit(GetNodeQuery query) { + return busAdvanceGinvoiceapplyService.getNextNodesForSubmit(query); + } + + @Override + public ResultBean taskReject(AppAdvanceInvoiceTaskQuery query) { + return busAdvanceGinvoiceapplyService.taskReject(query); + } + + @Override + public ResultBean revokeProcess(AppAdvanceInvoiceTaskQuery query) { + return busAdvanceGinvoiceapplyService.revokeProcess(query); + } + + @Override + public ResultBean breakProcess(AppAdvanceInvoiceTaskQuery query) { + return busAdvanceGinvoiceapplyService.breakProcess(query); + } } diff --git a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busadvanceginvoiceapply/BusAdvanceGinvoiceapplyService.java b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busadvanceginvoiceapply/BusAdvanceGinvoiceapplyService.java index 6ecf7e1321..091ce08319 100644 --- a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busadvanceginvoiceapply/BusAdvanceGinvoiceapplyService.java +++ b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busadvanceginvoiceapply/BusAdvanceGinvoiceapplyService.java @@ -26,24 +26,42 @@ package com.yxt.anrui.buscenter.biz.busadvanceginvoiceapply; 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.baomidou.mybatisplus.extension.api.R; +import com.yxt.anrui.base.api.basevehicle.*; import com.yxt.anrui.base.api.commonappendix.CommonAppendixFeign; import com.yxt.anrui.base.api.commonappendix.CommonAppendixVo; import com.yxt.anrui.base.api.commonappendix.CommonAttachTypeEnum; +import com.yxt.anrui.base.api.commoncontract.CommonContractFeign; +import com.yxt.anrui.base.api.commoncontract.CommonContractVo; import com.yxt.anrui.buscenter.api.busadvanceginvoiceapply.*; -import com.yxt.anrui.buscenter.api.busdeliveredapply.AppDeliveredApplyPageQuery; -import com.yxt.anrui.buscenter.api.busdeliveredapply.AppDeliveredApplyPageVo; +import com.yxt.anrui.buscenter.api.busadvanceginvoiceapply.flowable.AppAdvanceInvoiceTaskQuery; +import com.yxt.anrui.buscenter.api.busadvanceginvoiceapply.flowable.AppSubmitAdvanceInvoiceDto; +import com.yxt.anrui.buscenter.api.busadvanceginvoiceapply.flowable.GetNodeQuery; +import com.yxt.anrui.buscenter.api.busadvanceginvoiceapply.flowable.GetNodeVo; import com.yxt.anrui.buscenter.api.busginvoiceapplyvehicle.BusGinvoiceapplyVehicle; import com.yxt.anrui.buscenter.api.busginvoiceapplyvehicle.BusGinvoiceapplyVehicleDetailsVo; import com.yxt.anrui.buscenter.api.busginvoiceapplyvehicle.BusGinvoiceapplyVehicleDto; +import com.yxt.anrui.buscenter.api.bussalesorder.contract.AppRovalContractPageVo; import com.yxt.anrui.buscenter.biz.busginvoiceapplyvehicle.BusGinvoiceapplyVehicleService; +import com.yxt.anrui.buscenter.biz.bussalesorder.BusSalesOrderService; import com.yxt.anrui.buscenter.biz.flow.FlowableService; +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.SysFormLinkDto; import com.yxt.anrui.flowable.api.sysformlink.SysFormLinkFeign; import com.yxt.anrui.flowable.api.sysformlink.SysFormLinkTypeEnum; import com.yxt.anrui.flowable.api.utils.ProcDefEnum; +import com.yxt.anrui.flowable.sqloperationsymbol.BusinessVariables; +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; import com.yxt.anrui.portal.api.sysuser.SysUserVo; @@ -53,15 +71,16 @@ 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.http.nio.pool.NIOConnFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; +import java.text.SimpleDateFormat; +import java.util.*; +import java.util.stream.Collectors; /** * Project: anrui_buscenter(销售业务)
@@ -93,6 +112,22 @@ public class BusAdvanceGinvoiceapplyService extends MybatisBaseService listPage(PagerQuery pq) { BusAdvanceGinvoiceapplyQuery query = pq.getParams(); @@ -339,14 +374,22 @@ public class BusAdvanceGinvoiceapplyService extends MybatisBaseService getAdvanceInvoiceList(PagerQuery pagerQuery) { - AppAdvanceInvoiceQuery params = pagerQuery.getParams(); - QueryWrapper qw = new QueryWrapper<>(); + public IPage getAdvanceInvoiceList(PagerQuery pagerQuery) { + AppAdvanceInvoicePageQuery params = pagerQuery.getParams(); + QueryWrapper qw = new QueryWrapper<>(); if (StringUtils.isNotBlank(params.getUserSid())) { qw.eq("createBySid", params.getUserSid()); } - IPage page = PagerUtil.queryToPage(pagerQuery); + IPage page = PagerUtil.queryToPage(pagerQuery); IPage iPage = baseMapper.getAdvanceInvoiceList(page, qw, params.getName()); + for (AppAdvanceInvoicePageVo record : iPage.getRecords()) { + if ("1".equals(record.getAdvGinReasonType())) { + record.setReason(record.getAdvGinReasonValue()); + } + if ("0".equals(record.getAdvGinReasonType())) { + record.setReason(record.getOtherReasons()); + } + } return iPage; } @@ -355,15 +398,35 @@ public class BusAdvanceGinvoiceapplyService extends MybatisBaseService carList = new ArrayList<>(); - List vinList = busGinvoiceapplyVehicleService.fetchByAdvGinSid(contractSid); - for (BusGinvoiceapplyVehicleDetailsVo vehicleDetailsVo : vinList) { + List vinList = new ArrayList<>(); + int arrearsMoney = 0; + List carLists = busGinvoiceapplyVehicleService.fetchByAdvGinSid(contractSid); + for (BusGinvoiceapplyVehicleDetailsVo vehicleDetailsVo : carLists) { AdCarListVo adCarListVo = new AdCarListVo(); adCarListVo.setPrice(vehicleDetailsVo.getDealMoney()); adCarListVo.setVin(vehicleDetailsVo.getVinNo()); carList.add(adCarListVo); + int dealMoney = Integer.parseInt(vehicleDetailsVo.getDealMoney()); + arrearsMoney = dealMoney + arrearsMoney; } vo.setCarList(carList); + vo.setArrearsMoney(String.valueOf(arrearsMoney)); + List vinLists = busSalesOrderService.selectByContractNo(busAdvanceGinvoiceapply.getContractNo()); + if (vinLists.size() > 0) { + for (AppRovalContractPageVo appRovalContractPageVo : vinLists) { + AdCarListVo adCarListVo = new AdCarListVo(); + adCarListVo.setVin(appRovalContractPageVo.getVin()); + CommonContractVo commonContractVo = commonContractFeign.getContractBySalesOrderSid(appRovalContractPageVo.getBusSid()).getData(); + if (commonContractVo != null) { + adCarListVo.setPrice(commonContractVo.getPrice()); + } + vinList.add(adCarListVo); + } + } + vo.setVinList(vinList); String urlPrefix = fileUploadComponent.getUrlPrefix(); List confirmFile = new ArrayList<>(); List confirmFiles = commonAppendixFeign.getAppAppendixList(contractSid, CommonAttachTypeEnum.ADVANCE_KPXXQRS.getAttachType()).getData(); @@ -386,39 +449,76 @@ public class BusAdvanceGinvoiceapplyService extends MybatisBaseService carList = dto.getCarList(); - for (AdCarListVo adCarListVo : carList) { - BusGinvoiceapplyVehicle busGinvoiceapplyVehicle = new BusGinvoiceapplyVehicle(); - busGinvoiceapplyVehicle.setAdvGinSid(busAdvanceGinvoiceapply.getSid()); - busGinvoiceapplyVehicle.setVinNo(adCarListVo.getVin()); - busGinvoiceapplyVehicle.setDealMoney(adCarListVo.getPrice()); - busGinvoiceapplyVehicleService.save(busGinvoiceapplyVehicle); + SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd"); + String price = ""; + String modelName = ""; + BusAdvanceGinvoiceapply busAdvanceGinvoiceapply = new BusAdvanceGinvoiceapply(); + busAdvanceGinvoiceapply.setAdvGinReasonType("0"); + if (StringUtils.isNotBlank(dto.getContractSid())) { + CommonContractVo commonContractVo = commonContractFeign.fetchBySid(dto.getContractSid()).getData(); + if (commonContractVo != null) { + CrmCustomerTempVo crmCustomerTempVo = crmCustomerTempFeign.fetchSid(commonContractVo.getCustomerSid()).getData(); + if (crmCustomerTempVo != null) { + busAdvanceGinvoiceapply.setCustomerName(crmCustomerTempVo.getName()); + } + busAdvanceGinvoiceapply.setContractNo(commonContractVo.getContractNo()); + price = commonContractVo.getPrice(); + modelName = commonContractVo.getModelName(); } - saveFile(dto.getConfirmFile(), dto.getApplyFile(), dto.getRegisterFile(), busAdvanceGinvoiceapply.getSid(), sysUserVo.getStaffSid()); - } else { - BusAdvanceGinvoiceapply busAdvanceGinvoiceapply = fetchBySid(dto.getContractSid()); - BeanUtil.copyProperties(dto, busAdvanceGinvoiceapply); - updateById(busAdvanceGinvoiceapply); - busGinvoiceapplyVehicleService.delByAdvGinSid(dto.getContractSid()); - List carList = dto.getCarList(); - for (AdCarListVo adCarListVo : carList) { + } + busAdvanceGinvoiceapply.setCreateBySid(dto.getUserSid()); + busAdvanceGinvoiceapply.setUseOrgSid(useOrgSid); + busAdvanceGinvoiceapply.setApplyName(sysUserVo.getName()); + busAdvanceGinvoiceapply.setApplyDate(sf.format(new Date())); + busAdvanceGinvoiceapply.setUseOrgName(sysOrganizationVo.getName()); + if (dto.getVinList().size() > 0) { + for (String vin : dto.getVinList()) { BusGinvoiceapplyVehicle busGinvoiceapplyVehicle = new BusGinvoiceapplyVehicle(); busGinvoiceapplyVehicle.setAdvGinSid(busAdvanceGinvoiceapply.getSid()); - busGinvoiceapplyVehicle.setVinNo(adCarListVo.getVin()); - busGinvoiceapplyVehicle.setDealMoney(adCarListVo.getPrice()); + busGinvoiceapplyVehicle.setVinNo(vin); + BaseVehicle baseVehicle = baseVehicleFeign.selectByVinNoAndOrgSid(vin, useOrgSid).getData(); + if (baseVehicle != null) { + busGinvoiceapplyVehicle.setVehicleSid(baseVehicle.getSid()); + } + busGinvoiceapplyVehicle.setDealMoney(price); busGinvoiceapplyVehicleService.save(busGinvoiceapplyVehicle); } - commonAppendixFeign.deleteFiles(dto.getContractSid()); - saveFile(dto.getConfirmFile(), dto.getApplyFile(), dto.getRegisterFile(), busAdvanceGinvoiceapply.getSid(), sysUserVo.getStaffSid()); } - return rb.success(); + busAdvanceGinvoiceapply.setNum(dto.getVinList().size()); + busAdvanceGinvoiceapply.setCarModel(modelName); + save(busAdvanceGinvoiceapply); + return rb.success().setData(busAdvanceGinvoiceapply.getSid()); + } + + public ResultBean saveAdvanceInvoice(AppAdvanceInvoiceDto dto) { + ResultBean rb = ResultBean.fireFail(); + String useOrgSid = sysStaffOrgFeign.getPathSidByUserSid(dto.getUserSid()).getData(); + SysUserVo sysUserVo = sysUserFeign.fetchBySid(dto.getUserSid()).getData(); + BusAdvanceGinvoiceapply busAdvanceGinvoiceapply = fetchBySid(dto.getContractSid()); + BeanUtil.copyProperties(dto, busAdvanceGinvoiceapply); + updateById(busAdvanceGinvoiceapply); + String sid = dto.getContractSid(); + busGinvoiceapplyVehicleService.delByAdvGinSid(sid); + List carList = dto.getCarList(); + for (AdCarListDto adCarListDto : carList) { + BusGinvoiceapplyVehicle busGinvoiceapplyVehicle = new BusGinvoiceapplyVehicle(); + busGinvoiceapplyVehicle.setAdvGinSid(busAdvanceGinvoiceapply.getSid()); + busGinvoiceapplyVehicle.setVinNo(adCarListDto.getVin()); + BaseVehicle baseVehicle = baseVehicleFeign.selectByVinNoAndOrgSid(adCarListDto.getVin(), useOrgSid).getData(); + if (baseVehicle != null) { + busGinvoiceapplyVehicle.setVehicleSid(baseVehicle.getSid()); + } + busGinvoiceapplyVehicle.setDealMoney(adCarListDto.getPrice()); + busGinvoiceapplyVehicleService.save(busGinvoiceapplyVehicle); + } + commonAppendixFeign.deleteFiles(dto.getContractSid()); + saveFile(dto.getConfirmFile(), dto.getApplyFile(), dto.getRegisterFile(), busAdvanceGinvoiceapply.getSid(), sysUserVo.getStaffSid()); + return rb.success().setData(busAdvanceGinvoiceapply.getSid()); } public void saveFile(List confirmFile, List applyFile, List registerFile, String sid, String staffSid) { @@ -461,4 +561,294 @@ public class BusAdvanceGinvoiceapplyService extends MybatisBaseService 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(); + BusAdvanceGinvoiceapply busAdvanceGinvoiceapply = fetchBySid(dto.getContractSid()); + int r = submitBusinessData(dto, busAdvanceGinvoiceapply); + if (r == 3) { + return rb.setMsg("该申请不存在"); + } + if (r == 0) { + return rb.setMsg("操作失败!提交的数据不一致"); + } + //新增修改保存 + ResultBean resultBean = saveAdvanceInvoice(dto); + if (!resultBean.getSuccess()) { + return rb.setMsg(resultBean.getMsg()); + } + String businessSid = resultBean.getData(); + //创建BusinessVariables实体对象 + BusinessVariables bv = new BusinessVariables(); + //流程中的参数赋值、若有网关,则赋值网关中判断的字段。 + Map variables = new HashMap<>(); + //用户的部门全路径sid + bv.setOrgSidPath(orgSidPath); + //业务sid + bv.setBusinessSid(businessSid); + //用户sid + bv.setUserSid(dto.getUserSid()); + bv.setFormVariables(variables); + //若app移动端有此功能,则传递appMap参数 + Map appMap = new HashMap<>(); + //需和移动端沟通业务sid保存的属性具体值:appMap中sid不是固定的。移动端提供具体字段。 + appMap.put("contractSid", businessSid); + variables.put("app", appMap); + //流程定义id + bv.setModelId(ProcDefEnum.BUSCENTERADVANCEGINVOICEAPPLY.getProDefId()); + if (r == 1) { + ResultBean voResultBean = flowableFeign.startProcess(bv); + UpdateFlowFieldVo ufVo = voResultBean.getData(); + updateFlowFiled(BeanUtil.beanToMap(ufVo)); + //极光推送 + busAdvanceGinvoiceapply = fetchBySid(businessSid); + MessageFlowableQuery messageFlowableQuery = new MessageFlowableQuery(); + MessageFlowVo messageFlowVo = new MessageFlowVo(); + BeanUtil.copyProperties(ufVo, messageFlowVo); + messageFlowableQuery.setUfVo(messageFlowVo); + messageFlowableQuery.setAppMap(appMap); + messageFlowableQuery.setBusinessSid(businessSid); + messageFlowableQuery.setModuleName("提前开票申请"); + messageFlowableQuery.setMsgContent(busAdvanceGinvoiceapply.getApplyName() + "提交的" + messageFlowableQuery.getModuleName() + ",请审批"); + messageFlowableQuery.setMsgTitle("提前开票申请"); + ResultBean stringResultBean = messageFeign.pushMessage(messageFlowableQuery); + return voResultBean; + } + if (r == 2) { + // ToDo:驳回到发起人后再次提交 + if (StringUtils.isBlank(dto.getInstanceId())) { + return rb.setMsg("参数错误:instanceId"); + } + bv.setTaskId(busAdvanceGinvoiceapply.getTaskId()); + bv.setTaskDefKey(busAdvanceGinvoiceapply.getNodeId()); + bv.setComment(StringUtils.isNotBlank(dto.getComment()) ? dto.getComment() : "重新提交"); + bv.setInstanceId(dto.getInstanceId()); + return complete(bv); + } + return rb; + } + + /** + * 判断提交的流程是否被允许 + * + * @param dto + * @return + */ + private synchronized int submitBusinessData(AppSubmitAdvanceInvoiceDto dto, BusAdvanceGinvoiceapply busAdvanceGinvoiceapply) { + int r = 0; + if (StringUtils.isBlank(dto.getContractSid())) { + r = 1; + } else { + if (busAdvanceGinvoiceapply != null) { + String businessTaskId = busAdvanceGinvoiceapply.getTaskId(); + if (StringUtils.isBlank(businessTaskId) && StringUtils.isBlank(dto.getTaskId())) { + //新提交 + r = 1; + } else if (StringUtils.isNotBlank(businessTaskId) && businessTaskId.equals(dto.getTaskId())) { + //二次提交//只有数据一致的时候才能进行下一步 + r = 2; + } + } else { + r = 3; + } + + } + return r; + } + + /** + * 更新流程相关的状态 + * + * @param map + * @return + */ + private int updateFlowFiled(Map map) { + return baseMapper.updateFlowFiled(map); + } + + public ResultBean complete(BusinessVariables bv) { + ResultBean rb = ResultBean.fireFail(); + BusAdvanceGinvoiceapply busAdvanceGinvoiceapply = fetchBySid(bv.getBusinessSid()); + Map variables = new HashMap<>(); + Map appMap = new HashMap<>(); + appMap.put("contractSid", bv.getBusinessSid()); + variables.put("app", appMap); + bv.setFormVariables(variables); + if (bv.getTaskId().equals(busAdvanceGinvoiceapply.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(ufVo.getTaskDefKey())) { + //极光推送 + busAdvanceGinvoiceapply = fetchBySid(bv.getBusinessSid()); + ufVo.setProcInsId(busAdvanceGinvoiceapply.getProcInstId()); + MessageFlowableQuery messageFlowableQuery = new MessageFlowableQuery(); + MessageFlowVo messageFlowVo = new MessageFlowVo(); + BeanUtil.copyProperties(ufVo, messageFlowVo); + ufVo.setProcInsId(busAdvanceGinvoiceapply.getProcInstId()); + messageFlowableQuery.setUfVo(messageFlowVo); + messageFlowableQuery.setAppMap(appMap); + messageFlowableQuery.setBusinessSid(bv.getBusinessSid()); + messageFlowableQuery.setModuleName("提前开票申请"); + messageFlowableQuery.setMsgContent(busAdvanceGinvoiceapply.getApplyName() + "提交的" + messageFlowableQuery.getModuleName() + ",请审批"); + messageFlowableQuery.setMsgTitle("提前开票申请"); + ResultBean stringResultBean = messageFeign.pushMessage(messageFlowableQuery); + } + return rb.success().setData(resultBean.getData()); + } else { + return rb.setMsg("操作失败!提交的数据不一致"); + } + } + + public ResultBean> getPreviousNodesForReject(GetNodeQuery query) { + ResultBean> rb = new ResultBean<>(); + BusinessVariables bv = new BusinessVariables(); + BeanUtil.copyProperties(query, bv); +// Map formVariables = query.getFormVariables(); + //判断流程分支 +// Map map = IsTrue(formVariables.get("businessSid")); +// bv.setFormVariables(map); + bv.setModelId(ProcDefEnum.BUSCENTERADVANCEGINVOICEAPPLY.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), GetNodeVo.class)).collect(Collectors.toList()); + return rb.success().setData(voList); + } + + public ResultBean> getNextNodesForSubmit(GetNodeQuery query) { + ResultBean> rb = ResultBean.fireFail(); + BusinessVariables bv = new BusinessVariables(); + BeanUtil.copyProperties(query, bv); +// Map formVariables = query.getFormVariables(); + //判断流程分支 +// Map map = IsTrue(formVariables.get("businessSid")); +// bv.setFormVariables(map); + bv.setModelId(ProcDefEnum.BUSCENTERADVANCEGINVOICEAPPLY.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), GetNodeVo.class)).collect(Collectors.toList()); + return rb.success().setData(voList); + } + + public ResultBean taskReject(AppAdvanceInvoiceTaskQuery query) { + ResultBean rb = ResultBean.fireFail(); + if (StringUtils.isBlank(query.getComment())) { + return rb.setMsg("意见不能为空"); + } + BusAdvanceGinvoiceapply busAdvanceGinvoiceapply = fetchBySid(query.getBusinessSid()); + if (busAdvanceGinvoiceapply == null) { + return rb.setMsg("该申请不存在"); + } + String businessTaskId = busAdvanceGinvoiceapply.getTaskId(); + if (StringUtils.isNotBlank(businessTaskId)) { + if (businessTaskId.equals(query.getTaskId())) { + FlowTaskVo flowTaskVo = new FlowTaskVo(); + BeanUtil.copyProperties(query, flowTaskVo); + Map variables = new HashMap<>(); + Map appMap = new HashMap<>(); + appMap.put("contractSid", query.getBusinessSid()); + 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(resultBean.getData()); + //更新业务中的流程相关的参数 + updateFlowFiled(map); + busAdvanceGinvoiceapply = fetchBySid(query.getBusinessSid()); + MessageFlowableQuery messageFlowableQuery = new MessageFlowableQuery(); + MessageFlowVo messageFlowVo = new MessageFlowVo(); + BeanUtil.copyProperties(ufVo, messageFlowVo); + String procId = busAdvanceGinvoiceapply.getProcInstId(); + ufVo.setProcInsId(procId); + messageFlowableQuery.setUfVo(messageFlowVo); + messageFlowableQuery.setAppMap(appMap); + messageFlowableQuery.setBusinessSid(query.getBusinessSid()); + 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(busAdvanceGinvoiceapply.getCreateBySid())) { + messageFlowableQuery.setMsgContent("您提交的" + messageFlowableQuery.getModuleName() + "已被驳回,请重新提交"); + } else { + messageFlowableQuery.setMsgContent(busAdvanceGinvoiceapply.getApplyName() + "提交的" + messageFlowableQuery.getModuleName() + ",请审批"); + } + messageFlowableQuery.setMsgTitle("提前开票申请"); + ResultBean stringResultBean = messageFeign.pushMessage(messageFlowableQuery); + return rb.success(); + } + } + return rb.setMsg("操作失败!提交的数据不一致!"); + } + + public ResultBean revokeProcess(AppAdvanceInvoiceTaskQuery query) { + ResultBean rb = ResultBean.fireFail(); + if (StringUtils.isBlank(query.getUserSid())) { + return rb.setMsg("参数错误:userSid"); + } + //根据业务sid查询移库申请 + BusAdvanceGinvoiceapply busAdvanceGinvoiceapply = fetchBySid(query.getBusinessSid()); + String businessTaskId = busAdvanceGinvoiceapply.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("操作失败!"); + } + updateFlowFiled(BeanUtil.beanToMap(resultBean.getData())); + return rb.success().setData(resultBean.getData()); + } + } + return rb.setMsg("操作失败,提交的数据不一致!"); + + } + + public ResultBean breakProcess(AppAdvanceInvoiceTaskQuery 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("意见不能为空"); + } + BusAdvanceGinvoiceapply busAdvanceGinvoiceapply = fetchBySid(query.getBusinessSid()); + String businessTaskId = busAdvanceGinvoiceapply.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()); + } + updateFlowFiled(BeanUtil.beanToMap(resultBean.getData())); + return rb.success().setData(resultBean.getData()); + } + } + return rb.setMsg("操作失败!提交的数据不一致!"); + } + + } \ No newline at end of file diff --git a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busarrearscarryvehicleapply/BusArrearsCarryVehicleApplyRest.java b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busarrearscarryvehicleapply/BusArrearsCarryVehicleApplyRest.java index 82f9c2f5b4..1fc440152b 100644 --- a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busarrearscarryvehicleapply/BusArrearsCarryVehicleApplyRest.java +++ b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busarrearscarryvehicleapply/BusArrearsCarryVehicleApplyRest.java @@ -1,11 +1,7 @@ package com.yxt.anrui.buscenter.biz.busarrearscarryvehicleapply; -import cn.hutool.core.bean.BeanUtil; import com.baomidou.mybatisplus.core.metadata.IPage; -import com.yxt.anrui.buscenter.api.busadvanceginvoiceapply.AppAdvanceInvoicePageVo; -import com.yxt.anrui.buscenter.api.busadvanceginvoiceapply.AppAdvanceInvoiceQuery; import com.yxt.anrui.buscenter.api.busarrearscarryvehicleapply.*; -import com.yxt.anrui.buscenter.api.busmaindeposit.AppBusMainDepositVo; import com.yxt.common.base.utils.PagerUtil; import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.result.ResultBean; diff --git a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busarrearscarryvehicleapply/BusArrearsCarryVehicleApplyService.java b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busarrearscarryvehicleapply/BusArrearsCarryVehicleApplyService.java index c8354ada6d..a47d352af3 100644 --- a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busarrearscarryvehicleapply/BusArrearsCarryVehicleApplyService.java +++ b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busarrearscarryvehicleapply/BusArrearsCarryVehicleApplyService.java @@ -5,8 +5,6 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.yxt.anrui.base.api.commonappendix.CommonAppendixDto; import com.yxt.anrui.base.api.commonappendix.CommonAppendixFeign; -import com.yxt.anrui.buscenter.api.busadvanceginvoiceapply.AppAdvanceInvoicePageVo; -import com.yxt.anrui.buscenter.api.busadvanceginvoiceapply.AppAdvanceInvoiceQuery; import com.yxt.anrui.buscenter.api.busarrearscarryvehicleapply.*; import com.yxt.anrui.buscenter.api.busarrearscarryvehicledetails.BusArrearsCarryVehicleDetailsDto; import com.yxt.anrui.buscenter.api.busarrearscarryvehicledetails.BusArrearsCarryVehicleDetailsVo; diff --git a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busginvoiceapplyvehicle/BusGinvoiceapplyVehicleMapper.java b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busginvoiceapplyvehicle/BusGinvoiceapplyVehicleMapper.java index a153b415bc..4173403e1c 100644 --- a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busginvoiceapplyvehicle/BusGinvoiceapplyVehicleMapper.java +++ b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busginvoiceapplyvehicle/BusGinvoiceapplyVehicleMapper.java @@ -62,11 +62,11 @@ public interface BusGinvoiceapplyVehicleMapper extends BaseMapper selectListAllVo(@Param(Constants.WRAPPER) Wrapper qw); - @Select("select * from bus_ginvoiceapply_vehicle") + @Select("select * from bus_advance_ginvoiceapply_vehicle") List selectListVo(); - @Delete("DELETE FROM bus_ginvoiceapply_vehicle WHERE advGinSid = #{sid}") - Integer delByAdvGinSid(String sid); + @Delete("DELETE FROM bus_advance_ginvoiceapply_vehicle WHERE advGinSid = #{sid}") + Integer delByAdvGinSid(@Param("sid") String sid); List fetchByAdvGinSid(String sid); diff --git a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busginvoiceapplyvehicle/BusGinvoiceapplyVehicleRest.java b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busginvoiceapplyvehicle/BusGinvoiceapplyVehicleRest.java index d408d77ad4..fba587b4d1 100644 --- a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busginvoiceapplyvehicle/BusGinvoiceapplyVehicleRest.java +++ b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busginvoiceapplyvehicle/BusGinvoiceapplyVehicleRest.java @@ -34,7 +34,6 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import java.util.List; -import com.yxt.anrui.buscenter.api.busginvoiceapplyvehicle.BusGinvoiceapplyVehicle; import com.yxt.anrui.buscenter.api.busginvoiceapplyvehicle.BusGinvoiceapplyVehicleQuery; import com.yxt.anrui.buscenter.api.busginvoiceapplyvehicle.BusGinvoiceapplyVehicleVo; import com.yxt.anrui.buscenter.api.busginvoiceapplyvehicle.BusGinvoiceapplyVehicleDto; 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 ac84f359d2..57dcab2a52 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 @@ -36,8 +36,10 @@ import com.yxt.anrui.buscenter.api.bussalesorder.app.order.AppBusSalesOrderSubmi import com.yxt.anrui.buscenter.api.bussalesorder.app.order.AppBusSalesOrderVo; import com.yxt.anrui.buscenter.api.bussalesorder.app.model.AppModelInfoVo; import com.yxt.anrui.buscenter.api.bussalesorder.app.order.AppOrderDetailsVo; +import com.yxt.anrui.buscenter.api.bussalesorder.contract.AppRovalContractPageVo; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; import org.apache.ibatis.annotations.Update; import java.util.List; @@ -163,4 +165,8 @@ public interface BusSalesOrderMapper extends BaseMapper { List getList(String saleOrderSid); + + IPage getApprovalContractList(IPage page, @Param(Constants.WRAPPER) QueryWrapper qw); + + List selectByContractNo(@Param("contractNo") String contractNo); } \ 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 dd3d0ffe07..ce07bf20d0 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 @@ -221,4 +221,28 @@ from bus_sales_vehicle_order where salesOrderSid = #{saleOrderSid} + + + \ No newline at end of file diff --git a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderRest.java b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderRest.java index 87f97879f0..eff8b9ec8a 100644 --- a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderRest.java +++ b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderRest.java @@ -26,6 +26,7 @@ package com.yxt.anrui.buscenter.biz.bussalesorder; import cn.hutool.core.bean.BeanUtil; +import com.baomidou.mybatisplus.core.metadata.IPage; import com.yxt.anrui.buscenter.api.bussalesorder.*; import com.yxt.anrui.buscenter.api.bussalesorder.app.model.AppBusSaleOrderInitModelInfoQuery; import com.yxt.anrui.buscenter.api.bussalesorder.app.model.AppBusSaleOrderInitModelInfoVo; @@ -33,9 +34,13 @@ import com.yxt.anrui.buscenter.api.bussalesorder.app.model.AppInitModelQuery; import com.yxt.anrui.buscenter.api.bussalesorder.app.order.*; import com.yxt.anrui.buscenter.api.bussalesorder.app.vin.VinDto; import com.yxt.anrui.buscenter.api.bussalesorder.app.vin.VinVo; +import com.yxt.anrui.buscenter.api.bussalesorder.contract.AppRovalContractPageQuery; +import com.yxt.anrui.buscenter.api.bussalesorder.contract.AppRovalContractPageVo; import com.yxt.anrui.buscenter.api.bussalesorder.flowable.*; import com.yxt.anrui.flowable.api.utils.ProcDefEnum; import com.yxt.anrui.flowable.sqloperationsymbol.BusinessVariables; +import com.yxt.common.base.utils.PagerUtil; +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; @@ -259,4 +264,15 @@ public class BusSalesOrderRest implements BusSalesOrderFeign { public ResultBean saveSaleOrderInputVin(VinDto dto) { return busSalesOrderService.saveSaleOrderInputVin(dto); } + + @Override + public ResultBean> getApprovalContractList(PagerQuery pagerQuery) { + if (StringUtils.isBlank(pagerQuery.getParams().getUserSid())) { + new ResultBean<>().success().setMsg("用户sid不能为空"); + } + PagerVo page = new PagerVo<>(); + IPage iPage = busSalesOrderService.getApprovalContractList(pagerQuery); + PagerVo pagerVo = PagerUtil.pageToVo(iPage, page); + return new ResultBean>().success().setData(pagerVo); + } } 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 1d0195e401..a4685f4ccf 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 @@ -45,9 +45,7 @@ import com.yxt.anrui.base.api.busvehicleapplydetail.AppBusVehicleApplyListVo; import com.yxt.anrui.base.api.busvehicleapplydetail.BusVehicleApplyDetailFeign; import com.yxt.anrui.base.api.busvehicleorder.BusVehicleOrderFeign; import com.yxt.anrui.base.api.busvehicleorder.BusVehicleOrderVo; -import com.yxt.anrui.base.api.commoncontract.CommonContract; -import com.yxt.anrui.base.api.commoncontract.CommonContractBuscenterVo; -import com.yxt.anrui.base.api.commoncontract.CommonContractFeign; +import com.yxt.anrui.base.api.commoncontract.*; import com.yxt.anrui.base.common.enums.BillTypeEnum; import com.yxt.anrui.base.common.enums.VehicleState; import com.yxt.anrui.base.common.utils.Rule; @@ -62,6 +60,8 @@ import com.yxt.anrui.buscenter.api.bussalesorder.app.vin.VinDto; import com.yxt.anrui.buscenter.api.bussalesorder.app.vin.VinListDto; import com.yxt.anrui.buscenter.api.bussalesorder.app.vin.VinListVo; import com.yxt.anrui.buscenter.api.bussalesorder.app.vin.VinVo; +import com.yxt.anrui.buscenter.api.bussalesorder.contract.AppRovalContractPageQuery; +import com.yxt.anrui.buscenter.api.bussalesorder.contract.AppRovalContractPageVo; import com.yxt.anrui.buscenter.api.bussalesorder.flowable.*; import com.yxt.anrui.buscenter.api.bussalesorderdeposit.BusSalesOrderDeposit; import com.yxt.anrui.buscenter.api.bussalesorderdeposit.BusSalesOrderDepositDetailsVo; @@ -119,6 +119,7 @@ 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; +import com.yxt.anrui.portal.api.sysuser.SysUserVo; import com.yxt.anrui.portal.api.sysuser.app.AppUserOrgInfoVo; import com.yxt.anrui.portal.config.DictCommonType; import com.yxt.common.base.config.component.FileUploadComponent; @@ -2640,7 +2641,7 @@ public class BusSalesOrderService extends MybatisBaseService getApprovalContractList(PagerQuery pagerQuery) { + AppRovalContractPageQuery params = pagerQuery.getParams(); + SysUserVo sysUserVo = sysUserFeign.fetchBySid(params.getUserSid()).getData(); + QueryWrapper qw = new QueryWrapper<>(); + qw.eq("bo.staffSid", sysUserVo.getStaffSid()); + IPage page = PagerUtil.queryToPage(pagerQuery); + IPage iPage = baseMapper.getApprovalContractList(page, qw); + for (AppRovalContractPageVo record : iPage.getRecords()) { + String busSid = record.getBusSid(); + CommonContractVo commonContract = commonContractFeign.getContractBySalesOrderSid(busSid).getData(); + if (commonContract != null) { + record.setContractId(commonContract.getContractNo()); + record.setContractSid(commonContract.getSid()); + } + } + return iPage; + } + + public List selectByContractNo(String contractNo) { + List list = baseMapper.selectByContractNo(contractNo); + return list; + } } \ No newline at end of file diff --git a/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/FinKingDeeFeign.java b/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/FinKingDeeFeign.java index fd44465877..fb6418b47f 100644 --- a/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/FinKingDeeFeign.java +++ b/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/FinKingDeeFeign.java @@ -92,6 +92,10 @@ public interface FinKingDeeFeign { @PostMapping("/draftBdCustomer") @ResponseBody ResultBean draftBdCustomer(@RequestBody @Valid BdCustomer bdCustomer); + @ApiOperation("修改客户信息的接口") + @PostMapping("/saveBdCustomers") + @ResponseBody + ResultBean saveBdCustomers(@RequestBody @Valid List bdCustomers); @ApiOperation("使用number查看数据表单") @GetMapping("/getKingDataInfoByNumber/{formId}/{number}") @ResponseBody diff --git a/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/FinKingDeeFeignFallBack.java b/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/FinKingDeeFeignFallBack.java index 97aefeeed6..76f9ab0500 100644 --- a/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/FinKingDeeFeignFallBack.java +++ b/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/FinKingDeeFeignFallBack.java @@ -81,6 +81,11 @@ implements FinKingDeeFeign{ return null; } + @Override + public ResultBean saveBdCustomers(List bdCustomers) { + return null; + } + @Override public ResultBean getKingDataInfoByNumber(String formId,String number) { return null; diff --git a/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/bdcustomer/BdCustomer.java b/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/bdcustomer/BdCustomer.java index 23a976a3e9..ac0fbcdc9f 100644 --- a/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/bdcustomer/BdCustomer.java +++ b/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/kingdee/bdcustomer/BdCustomer.java @@ -29,6 +29,11 @@ public class BdCustomer { */ @JsonProperty("FDescription") public String FDescription=""; + /** + * 简称 + */ + @JsonProperty("FShortName") + public String FShortName=""; public final static BdCustomer bdCustomer = new BdCustomer(); static { /* 创建组织:FCreateOrgId (必填项)*/ diff --git a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/FinKingDeeFeignRest.java b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/FinKingDeeFeignRest.java index 648936b40a..672ff8d059 100644 --- a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/FinKingDeeFeignRest.java +++ b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/FinKingDeeFeignRest.java @@ -216,6 +216,14 @@ public class FinKingDeeFeignRest implements FinKingDeeFeign { public ResultBean draftBdCustomer(@RequestBody @Valid BdCustomer bdCustomer) { return bdCustomerService.draftBdCustomer(bdCustomer); } + @ApiOperation("修改客户信息的接口") + @PostMapping("/saveBdCustomers") + @ResponseBody + @Override + public ResultBean saveBdCustomers(List bdCustomers) { + return bdCustomerService.saveBdCustomers(bdCustomers); + } + @ApiOperation("使用number查看数据表单") @GetMapping("/getKingDataInfoByNumber/{formId}/{number}") @ResponseBody diff --git a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/FinKingDeeService.java b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/FinKingDeeService.java index b1aedc2b27..2902439b54 100644 --- a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/FinKingDeeService.java +++ b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/FinKingDeeService.java @@ -5,7 +5,9 @@ import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.yxt.anrui.fin.api.kingdee.KingDeeBillId; import com.yxt.anrui.fin.api.kingdee.KingDeeBillUrl; +import com.yxt.anrui.fin.api.kingdee.KingDeeCode; import com.yxt.anrui.fin.api.kingdee.KingDeeResult; +import com.yxt.anrui.fin.api.kingdee.bdcustomer.BdCustomer; import com.yxt.anrui.portal.api.sysmapping.SysMappingFeign; import com.yxt.anrui.portal.api.sysmapping.SysMappingInfoQueryBatch; import com.yxt.common.base.utils.StringUtils; @@ -166,10 +168,10 @@ public class FinKingDeeService { return "{\"formId\":\""+formId+"\",\"data\":\"{\\\"PkIds\\\":\\\""+s+"\\\",\\\"TOrgIds\\\":\\\""+tOrgIds+"\\\",\\\"IsAutoSubmitAndAudit\\\":\\\"true\\\"}\"}"; } public String getAllocate(String data,String tOrgIds,String formId) { - return getAllocateTempJson(formId,getParam(data),tOrgIds);//"{\"formId\":\""+formId+"\",\"data\":\"{\\\"PkIds\\\":\\\""+s+"\\\",\\\"TOrgIds\\\":\\\""+tOrgIds+"\\\",\\\"IsAutoSubmitAndAudit\\\":\\\"true\\\"}\"}"; + return getAllocateTempJson(formId,draftResultGetId(data),tOrgIds);//"{\"formId\":\""+formId+"\",\"data\":\"{\\\"PkIds\\\":\\\""+s+"\\\",\\\"TOrgIds\\\":\\\""+tOrgIds+"\\\",\\\"IsAutoSubmitAndAudit\\\":\\\"true\\\"}\"}"; } public String getAuditKD(String data,String formId) { - return getAuditKDTempJson(formId,getParam(data));//"{\"formId\":\""+formId+"\",\"data\":\"{\\\"CreateOrgId\\\":\\\"\\\",\\\"Numbers\\\":[],\\\"Ids\\\":\\\""+s+"\\\",\\\"InterationFlags\\\":\\\"\\\"}\"}"; + return getAuditKDTempJson(formId,draftResultGetId(data));//"{\"formId\":\""+formId+"\",\"data\":\"{\\\"CreateOrgId\\\":\\\"\\\",\\\"Numbers\\\":[],\\\"Ids\\\":\\\""+s+"\\\",\\\"InterationFlags\\\":\\\"\\\"}\"}"; } public String getUnAuditKD(String s, String id) { @@ -177,9 +179,9 @@ public class FinKingDeeService { return"{\"formId\":\""+ id+"\",\"data\":\"{\\\"CreateOrgId\\\":\\\"\\\",\\\"Numbers\\\":[],\\\"Ids\\\":\\\""+s+"\\\",\\\"InterationFlags\\\":\\\"\\\"}\"}"; } public String getSubmitKD(String data,String formId) { - return getSubmitKDTempJson(formId,getParam(data));//"{\"formId\":\""+formId+"\",\"data\":\"{\\\"CreateOrgId\\\":\\\"\\\",\\\"Numbers\\\":[],\\\"Ids\\\":\\\""+s+"\\\"}\"}"; + return getSubmitKDTempJson(formId,draftResultGetId(data));//"{\"formId\":\""+formId+"\",\"data\":\"{\\\"CreateOrgId\\\":\\\"\\\",\\\"Numbers\\\":[],\\\"Ids\\\":\\\""+s+"\\\"}\"}"; } - private String getParam(String data) { + public String draftResultGetId(String data) { JSONObject jsonObject = JSONObject.parseObject(data); JSONObject result = (JSONObject)jsonObject.get("Result"); JSONObject responseStatus = (JSONObject)result.get("ResponseStatus"); @@ -293,38 +295,174 @@ public class FinKingDeeService { } return new ResultBean().fail().setMsg("查询异常"); } + /** - * 审核 - * @param data + * 反审核 + * @param DocumentStatus + * @param id * @return * @throws Exception */ - public ResultBean audit( String data,String formId) throws Exception { - String auditKD = getAuditKDTempJson(formId,data); - ResultBean resultBean2 = accessKingDeeInterface(formId, auditKD,KingDeeBillUrl.AUDIT_URL.getURL()); - if(!resultBean2.getSuccess()){ - log.info(formId+"审核失败!"+data); + public boolean isAudit(String formId,String DocumentStatus,String id) throws Exception { + log.info("DocumentStatus:{}",DocumentStatus); + if("C".equals(DocumentStatus)){ + String auditKD = getUnAuditKD(id,formId); + ResultBean rb1 = accessKingDeeInterface(formId, auditKD,KingDeeBillUrl.UNAUDIT_URL.getURL()); + if(!rb1.getSuccess()){ + log.info("反审核失败!"); + return false; + } + log.info("反审核成功!"); } - log.info(formId+"审核成功!"+data); - return resultBean2; + return true; + } + /** + * 反审核 + * @param formId + * @param number + * @return + * @throws Exception + */ + public ResultBean unAudit(String formId,String number) { + ResultBean rb=ResultBean.fireFail(); + JSONObject result = null; + try { + result = view(formId,number); + } catch (Exception e) { + e.printStackTrace(); + return rb.setMsg("信息查询失败!"); + } + JSONObject responseStatus = (JSONObject)result.get("ResponseStatus"); + if(responseStatus!=null){//不存在该客户 //新增客户 + return rb.setCode(KingDeeCode.NOTEXIST.getCode()).setMsg(KingDeeCode.NOTEXIST.getMsg()); + }else{ //存在该客户 + JSONObject result2 = (JSONObject)result.get("Result"); + String DocumentStatus = (String)result2.get("DocumentStatus");//单据状态 A 创建, B 审核中,C 已审核 ,D 重新审核 + String Id=result2.get("Id").toString(); + boolean audit = false; + try { + audit = isAudit(formId,DocumentStatus, Id); + } catch (Exception e) { + e.printStackTrace(); + return rb.setMsg("反审核失败!"); + } + if(!audit){ + return rb.setCode(KingDeeCode.UNAUDIT.getCode()).setMsg(KingDeeCode.UNAUDIT.getMsg()); + } + log.info("Id:{}",Id); + return rb.success().setData(Id); + } + } + public JSONObject view(String formid,String Number) throws Exception { + String getKDForNumbers = getGetKDForNumbers(formid, Number); + ResultBean kingDataInfoByNumber = accessKingDeeInterface(formid, getKDForNumbers, + KingDeeConfig.userName_administrator,KingDeeConfig.password_administrator, KingDeeBillUrl.VIEW_URL.getURL()); + log.info("kingDataInfoByNumber:{}",kingDataInfoByNumber.getData()); + JSONObject jsonObject = JSONObject.parseObject(kingDataInfoByNumber.getData().toString()); + JSONObject result = (JSONObject)jsonObject.get("Result"); + return result; } + /** + * 根据number 查询数据 返回id + * @param formId + * @param number + * @return + */ + public ResultBean viewGetId(String formId,String number){ + ResultBean rb=ResultBean.fireFail(); + String getKDForNumbers = getGetKDForNumbers(formId,number); + ResultBean kingDataInfoByNumber = null; + try { + if(KingDeeBillId.ORG_ORGANIZATIONS.getID().equals(formId)){ + kingDataInfoByNumber = accessKingDeeInterface(formId, getKDForNumbers, + KingDeeConfig.userName_administrator, + KingDeeConfig.password_administrator, + KingDeeBillUrl.VIEW_URL.getURL()); + }else{ + kingDataInfoByNumber = accessKingDeeInterface(formId, getKDForNumbers,KingDeeBillUrl.VIEW_URL.getURL()); + } + } catch (Exception e) { + e.printStackTrace(); + return rb.setMsg("查询单据出错!"); + } + JSONObject jsonObject = JSONObject.parseObject(kingDataInfoByNumber.getData()); + JSONObject result = (JSONObject)jsonObject.get("Result"); + JSONObject responseStatus = (JSONObject)result.get("ResponseStatus"); + if(responseStatus==null){ + String vie_result =kingDataInfoByNumber.getData(); + jsonObject = JSONObject.parseObject(vie_result); + JSONObject result1 = (JSONObject)jsonObject.get("Result"); + JSONObject Result2 = (JSONObject)result1.get("Result"); + Integer Id = (Integer)Result2.get("Id"); + return rb.success().setData(Id+""); + } + return rb.setData("0").setMsg(KingDeeCode.NOTEXIST.getMsg()); + } /** * 提交 * @param data * @return * @throws Exception */ - public ResultBean submit( String data,String formId) throws Exception { + public ResultBean submit(String formId,String data) throws Exception { String submitKD = getSubmitKDTempJson(formId,data); ResultBean resultBean1 = accessKingDeeInterface(formId, submitKD,KingDeeBillUrl.SUBMIT_URL.getURL());//submitKingDeeBillData(KingDeeBillId.BD_MATERIAL.getID(), submitKD); if(!resultBean1.getSuccess()){ log.info(formId+"提交失败!"+data); + return resultBean1; } log.info(formId+"提交成功!"+data); return resultBean1; } + + /** + * 审核 + * @param data + * @return + * @throws Exception + */ + public ResultBean audit( String formId,String data) throws Exception { + String auditKD = getAuditKD(data,formId); + ResultBean resultBean2 = accessKingDeeInterface(formId, auditKD,KingDeeBillUrl.AUDIT_URL.getURL()); + if(!resultBean2.getSuccess()){ + log.info("审核失败!"); + return resultBean2; + } + log.info("审核成功!"); + return resultBean2; + } + /** + * 分配功能 + * @param formId 单据id + * @param dataId 要分配的数据的id + * @param torgIds 分配的机构id + * @return + */ + public ResultBean allocate(String formId,String dataId,String torgIds){ + ResultBean rb=ResultBean.fireFail(); + ResultBean stringResultBean1 = viewGetId(KingDeeBillId.ORG_ORGANIZATIONS.getID(),torgIds ); + String orgId = stringResultBean1.getData(); + if(!stringResultBean1.getSuccess()&&!"0".equals(stringResultBean1.getData())){ + return stringResultBean1; + } + String allocate =getAllocateTempJson(formId,dataId,orgId); + ResultBean resultBean3 = null; + try { + resultBean3 = accessKingDeeInterface(formId,allocate, KingDeeBillUrl.ALLOCATE_URL.getURL()); + if(!resultBean3.getSuccess()){ + log.info("分配失败!"); + return rb.setMsg("分配失败!"); + } + } catch (Exception e) { + e.printStackTrace(); + log.info("分配失败!"); + return rb.setMsg("分配失败!"); + } + log.info("分配成功!"); + return resultBean3; + } /** * 调用金蝶接口的数据格式 */ diff --git a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bdcustomer/BdCustomerCastToKingDeeBillFields.java b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bdcustomer/BdCustomerCastToKingDeeBillFields.java index 4722849103..55cd746272 100644 --- a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bdcustomer/BdCustomerCastToKingDeeBillFields.java +++ b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bdcustomer/BdCustomerCastToKingDeeBillFields.java @@ -1,12 +1,15 @@ package com.yxt.anrui.fin.biz.kingdee.bdcustomer; import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.parser.Feature; import com.yxt.anrui.fin.biz.kingdee.KingDeeUtils; +import com.yxt.common.base.utils.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import java.util.ArrayList; import java.util.Map; /** @@ -33,10 +36,17 @@ public class BdCustomerCastToKingDeeBillFields { //模板字符创转json JSONObject jsonObj= JSONObject.parseObject(readJsonFile, Feature.OrderedField); + fEntityData_ = KingDeeUtils.replaceTemplateParams(fEntityData_, map_fEntityModel_); JSONObject jsonFEntityData_= JSONObject.parseObject(fEntityData_,Feature.OrderedField); fEntityModel_ =KingDeeUtils.replaceTemplateParams(fEntityModel_, map_fEntityModel_); JSONObject jsonFEntityModel_= JSONObject.parseObject(fEntityModel_,Feature.OrderedField); - + String fields = map_fEntityModel_.get("fields"); + if(StringUtils.isBlank(fields)){ + jsonFEntityData_.put("NeedUpDateFields", JSONArray.parseArray(JSON.toJSONString(new ArrayList<>()))); + }else{ + String[] split = fields.split(","); + jsonFEntityData_.put("NeedUpDateFields",JSONArray.parseArray(JSON.toJSONString(split))); + } jsonFEntityData_.put("Model",JSONObject.parseObject(JSON.toJSONString(jsonFEntityModel_),Feature.OrderedField)); jsonObj.put("data",jsonFEntityData_.toJSONString()); return jsonObj.toJSONString(); diff --git a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bdcustomer/BdCustomerService.java b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bdcustomer/BdCustomerService.java index 6bf77d626b..f4c1df3e07 100644 --- a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bdcustomer/BdCustomerService.java +++ b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bdcustomer/BdCustomerService.java @@ -1,17 +1,15 @@ package com.yxt.anrui.fin.biz.kingdee.bdcustomer; +import cn.hutool.core.bean.BeanUtil; +import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.yxt.anrui.fin.api.kingdee.KingDeeBillId; import com.yxt.anrui.fin.api.kingdee.KingDeeBillUrl; import com.yxt.anrui.fin.api.kingdee.KingDeeCode; import com.yxt.anrui.fin.api.kingdee.KingDeeResult; import com.yxt.anrui.fin.api.kingdee.bdcustomer.BdCustomer; -import com.yxt.anrui.fin.api.kingdee.bdmaterial.BdMaterial; -import com.yxt.anrui.fin.api.kingdee.orgorganizations.OrgOrganizations; import com.yxt.anrui.fin.biz.kingdee.FinKingDeeService; -import com.yxt.anrui.fin.biz.kingdee.KingDeeConfig; import com.yxt.common.core.result.ResultBean; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.ArrayList; @@ -25,53 +23,115 @@ public class BdCustomerService extends FinKingDeeService { * @param bdCustomer * @return */ - public ResultBean> draftBdMaterialList(List bdCustomer) { + public ResultBean> draftBdCustomerList(List bdCustomer) { List list=new ArrayList<>(); ResultBean rb=ResultBean.fireFail(); for(BdCustomer b:bdCustomer) { - ResultBean> resultBean = draftBdCustomer(b); - if (resultBean.getSuccess()) { - list.add(resultBean.getData().get(0)); + ResultBean stringResultBean = draftBdCustomer(b); + if (stringResultBean.getSuccess()) { + JSONObject jr=JSONObject.parseObject(JSON.toJSONString(stringResultBean.getData())); + KingDeeResult kingDeeResult = new KingDeeResult(); + kingDeeResult.setDIndex(jr.get("DIndex").toString()); + kingDeeResult.setId(jr.get("Id")!=null?jr.get("Id").toString():""); + kingDeeResult.setNumber(jr.get("Number")!=null?jr.get("Number").toString():""); + list.add(kingDeeResult); } } return rb.success().setData(list); } + /** * 保存客户信息 * @param bdCustomer * @return */ - public ResultBean draftBdCustomer(BdCustomer bdCustomer) { + public ResultBean draftBdCustomer(BdCustomer bdCustomer) { //bdCustomer=BdCustomer.createBdCustomer(); ResultBean rb=ResultBean.fireFail(); try { - String getKDForNumbers = getGetKDForNumbers(KingDeeBillId.BD_CUSTOMER.getID(), bdCustomer.getFNumber()); - ResultBean kingDataInfoByNumber = accessKingDeeInterface(KingDeeBillId.BD_CUSTOMER.getID(), getKDForNumbers, - KingDeeBillUrl.VIEW_URL.getURL()); - JSONObject jsonObject = JSONObject.parseObject(kingDataInfoByNumber.getData().toString()); - JSONObject result = (JSONObject)jsonObject.get("Result"); - JSONObject responseStatus = (JSONObject)result.get("ResponseStatus"); - String custId=""; - if(responseStatus==null){//不存在客户 //新增客户 - String vie_result =kingDataInfoByNumber.getData(); - jsonObject = JSONObject.parseObject(vie_result); - JSONObject result1 = (JSONObject)jsonObject.get("Result"); - JSONObject Result2 = (JSONObject)result1.get("Result"); - Integer Id = (Integer)Result2.get("Id"); - custId= Id+""; // return rb.setCode(KingDeeCode.NOTEXIST.getCode()).setMsg(KingDeeCode.NOTEXIST.getMsg()); - }else{ - //业务表的主表数据集合 - Map map_fEntityModel_= object2Map(bdCustomer); - //准备 物料列表的数据 ForEntryBill - String kingDeeData = BdCustomerCastToKingDeeBillFields.getKingDeeData(map_fEntityModel_); - ResultBean resultBean = accessKingDeeInterface( - KingDeeBillId.BD_CUSTOMER.getID(), kingDeeData, KingDeeBillUrl.DRAFT_URL.getURL()); - String vie_result =resultBean.getData(); - jsonObject = JSONObject.parseObject(vie_result); - JSONObject result1 = (JSONObject)jsonObject.get("Result"); - Integer Id = (Integer)result1.get("Id"); - custId= Id+""; - String submitKD = getSubmitKD(resultBean.getData(),KingDeeBillId.BD_CUSTOMER.getID()); + ResultBean stringResultBean = viewGetId(KingDeeBillId.BD_CUSTOMER.getID(), bdCustomer.getFNumber()); + if(!stringResultBean.getSuccess()&&!"0".equals(stringResultBean.getData())){ + return stringResultBean; + } + String custId = stringResultBean.getData(); + if("0".equals(custId)){ + //新增客户 + ResultBean stringResultBean1 = sendCustomer(bdCustomer); + if(!stringResultBean1.getSuccess()){ + return stringResultBean1; + } + custId =draftResultGetId(stringResultBean1.getData()); + } + ResultBean resultBean3=allocate(KingDeeBillId.BD_CUSTOMER.getID(),custId,bdCustomer.getTOrgIds()); + return resultBean3; + } catch (Exception e) { + e.printStackTrace(); + return rb.setMsg("保存客户信息失败!"); + } + } + private ResultBean sendCustomer(BdCustomer bdCustomer){ + ResultBean rb=ResultBean.fireFail(); + try { + //业务表的主表数据集合 + Map map_fEntityModel_= object2Map(bdCustomer); + //准备 客户列表的数据 ForEntryBill + map_fEntityModel_.put("FCUSTID","0"); + map_fEntityModel_.put("IsDeleteEntry", "True"); + String kingDeeData = BdCustomerCastToKingDeeBillFields.getKingDeeData(map_fEntityModel_); + ResultBean resultBean = accessKingDeeInterface(KingDeeBillId.BD_CUSTOMER.getID(), + kingDeeData, KingDeeBillUrl.DRAFT_URL.getURL()); + String submitKD = getSubmitKD(resultBean.getData(),KingDeeBillId.BD_CUSTOMER.getID()); + rb= accessKingDeeInterface(KingDeeBillId.BD_CUSTOMER.getID(), submitKD,KingDeeBillUrl.SUBMIT_URL.getURL()); + if(!rb.getSuccess()){ + log.info("客户提交失败!"); + return rb.setMsg("客户提交失败!"); + } + log.info("客户提交成功!"); + String auditKD = getAuditKD(resultBean.getData(),KingDeeBillId.BD_CUSTOMER.getID()); + rb = accessKingDeeInterface(KingDeeBillId.BD_CUSTOMER.getID(), auditKD,KingDeeBillUrl.AUDIT_URL.getURL()); + if(!rb.getSuccess()){ + log.info("客户审核失败!"); + return rb.setMsg("客户审核失败!"); + } + log.info("客户审核成功!"); + return rb; + }catch (Exception e){ + e.printStackTrace(); + return rb; + } + } + + /** + * 批量修改客户 list + * @return + */ + public ResultBean saveBdCustomers(List bdCustomers) { + ResultBean rb=ResultBean.fireFail(); + List list_r=new ArrayList<>(); + for(BdCustomer b:bdCustomers) { + ResultBean stringResultBean = viewGetId(KingDeeBillId.BD_CUSTOMER.getID(), b.getFNumber()); + if(!stringResultBean.getSuccess()&&!"0".equals(stringResultBean.getData())){ + return stringResultBean; + } + String custId = stringResultBean.getData(); + if("0".equals(custId)){ + ResultBean stringResultBean1 = sendCustomer(b); + if(!stringResultBean1.getSuccess()){ + return stringResultBean1; + } + custId =draftResultGetId(stringResultBean1.getData()); + } + stringResultBean = unAudit(KingDeeBillId.BD_CUSTOMER.getID(),b.getFNumber()); + if(!stringResultBean.getSuccess()){ + return rb.setMsg("反审核失败!"); + } + try{ + ResultBean save = save(b,custId); + if(!save.getSuccess()){ + log.info("客户保存失败!:{}"); + return rb.setMsg("客户保存失败!"); + } + String submitKD =getSubmitKDTempJson(KingDeeBillId.BD_CUSTOMER.getID(),custId);// getSubmitKD(getSubmitKDTempJson(KingDeeBillId.BD_CUSTOMER.getID(),custId),KingDeeBillId.BD_CUSTOMER.getID()); ResultBean resultBean1 = accessKingDeeInterface(KingDeeBillId.BD_CUSTOMER.getID(), submitKD,KingDeeBillUrl.SUBMIT_URL.getURL()); if(!resultBean1.getSuccess()){ log.info("客户提交失败!"); @@ -79,46 +139,66 @@ public class BdCustomerService extends FinKingDeeService { } log.info("客户提交成功!"); - String auditKD = getAuditKD(resultBean.getData(),KingDeeBillId.BD_CUSTOMER.getID()); + String auditKD = getAuditKDTempJson(KingDeeBillId.BD_CUSTOMER.getID(),custId); ResultBean resultBean2 = accessKingDeeInterface(KingDeeBillId.BD_CUSTOMER.getID(), auditKD,KingDeeBillUrl.AUDIT_URL.getURL()); if(!resultBean2.getSuccess()){ log.info("客户审核失败!"); return rb.setMsg("客户审核失败!"); } log.info("客户审核成功!"); + ResultBean resultBean3=allocate(KingDeeBillId.ORG_ORGANIZATIONS.getID(),custId,b.getTOrgIds()); + if(!resultBean3.getSuccess()){ + log.info("客户分配失败!"); + return rb.setMsg("客户分配失败!"); + } + log.info("客户分配成功!"); + list_r.add(save.getData()); + }catch (Exception e){ + e.printStackTrace(); } + } + return rb.success().setData(JSONObject.toJSONString(list_r)); + } - getKDForNumbers = getGetKDForNumbers(KingDeeBillId.ORG_ORGANIZATIONS.getID(), bdCustomer.getTOrgIds()); - kingDataInfoByNumber = accessKingDeeInterface(KingDeeBillId.ORG_ORGANIZATIONS.getID(), getKDForNumbers, KingDeeConfig.userName_administrator,KingDeeConfig.password_administrator, - KingDeeBillUrl.VIEW_URL.getURL()); - jsonObject = JSONObject.parseObject(kingDataInfoByNumber.getData().toString()); - result = (JSONObject)jsonObject.get("Result"); - responseStatus = (JSONObject)result.get("ResponseStatus"); - if(responseStatus!=null){//不存在分公司 //新增分公司 - return rb.setCode(KingDeeCode.NOTEXIST.getCode()).setMsg(KingDeeCode.NOTEXIST.getMsg()); - } - String vie_result =kingDataInfoByNumber.getData(); - jsonObject = JSONObject.parseObject(vie_result); - JSONObject result1 = (JSONObject)jsonObject.get("Result"); - JSONObject Result2 = (JSONObject)result1.get("Result"); - Integer Id = (Integer)Result2.get("Id"); - String id= Id+""; - String allocate =getAllocateTempJson(KingDeeBillId.BD_CUSTOMER.getID(),custId,id); - /* getAllocate(getSubmitKDTempJson(KingDeeBillId.BD_CUSTOMER.getID(),id), - bdCustomer.getTOrgIds(),KingDeeBillId.BD_CUSTOMER.getID());*/ - ResultBean resultBean3 = accessKingDeeInterface(KingDeeBillId.BD_MATERIAL.getID(),allocate,KingDeeBillUrl.ALLOCATE_URL.getURL()); - - if(!resultBean3.getSuccess()){ - log.info("客户分配失败!"); - return rb.setMsg("客户分配失败!"); - } - log.info("客户分配成功!"); + /** + * 修改客户的信息 + * @param b 客户 + * @return + * @throws Exception + */ + private ResultBean save(BdCustomer b,String fcustid) { + Map stringObjectMap = BeanUtil.beanToMap(b); - return resultBean3; + Map mapParams = createMapParams(stringObjectMap); + mapParams.put("IsDeleteEntry","False"); + mapParams.put("fields","FName,FNumber,FDescription"); + mapParams.put("FCUSTID",fcustid); + String kingDeeData = BdCustomerCastToKingDeeBillFields.getKingDeeData(mapParams); + ResultBean rb=ResultBean.fireFail(); + ResultBean stringResultBean = null; + try { + stringResultBean = accessKingDeeInterface(KingDeeBillId.BD_CUSTOMER.getID(), + kingDeeData, KingDeeBillUrl.SAVE_URL.getURL()); } catch (Exception e) { e.printStackTrace(); + return rb.setMsg("客户信息保存失败!"); + } + if(!stringResultBean.getSuccess()){ + log.info("客户保存失败!"); + return rb.setMsg("客户保存失败!"); } - return rb; + String data1 = stringResultBean.getData(); + JSONObject jsonObject = JSONObject.parseObject(data1); + JSONObject result = (JSONObject)jsonObject.get("Result"); + JSONObject responseStatus = (JSONObject)result.get("ResponseStatus"); + boolean isSuccess = (boolean) responseStatus.get("IsSuccess"); + if(!isSuccess){ + log.info("客户编码重复!"); + return rb.setCode(KingDeeCode.REPEAT.getCode()).setMsg(KingDeeCode.REPEAT.getMsg()); + } + log.info("客户保存成功!"); + return stringResultBean; } + } diff --git a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bdcustomer/data_data.json b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bdcustomer/data_data.json index f8b9dc071d..7318e63684 100644 --- a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bdcustomer/data_data.json +++ b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bdcustomer/data_data.json @@ -2,7 +2,7 @@ "Creator": "", "NeedUpDateFields": [], "NeedReturnFields": [], - "IsDeleteEntry": "True", + "IsDeleteEntry": "@KD_IsDeleteEntry", "SubSystemId": "", "IsVerifyBaseDataField": "false", "IsEntryBatchFill": "True", diff --git a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bdcustomer/data_model.json b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bdcustomer/data_model.json index 4867b140f4..2034b00b8c 100644 --- a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bdcustomer/data_model.json +++ b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bdcustomer/data_model.json @@ -1,5 +1,5 @@ { - "FCUSTID": 0, + "FCUSTID": @KD_FCUSTID, "FCreateOrgId": { "FNumber": "100" }, diff --git a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bdmaterial/BdMaterialService.java b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bdmaterial/BdMaterialService.java index f1417949d6..bc28d6fc54 100644 --- a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bdmaterial/BdMaterialService.java +++ b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/kingdee/bdmaterial/BdMaterialService.java @@ -103,7 +103,7 @@ public class BdMaterialService extends FinKingDeeService { } ResultBean stringResultBean = null; try { - stringResultBean = unAudit(b); + stringResultBean = unAudit(KingDeeBillId.BD_MATERIAL.getID(),b.getOldFName()); } catch (Exception e) { e.printStackTrace(); } @@ -137,57 +137,16 @@ public class BdMaterialService extends FinKingDeeService { ResultBean rb=ResultBean.fireFail(); String kingDeeData = BdMaterialCastToKingDeeBillFields.getKingDeeData(map_fEntityModel_); try { - //车辆类型 - String F_PAEZ_Base = map_fEntityModel_.get("F_PAEZ_Base"); - JSONObject result_F_PAEZ_Base = view(KingDeeBillId.PAEZ_CLLX.getID(),F_PAEZ_Base); - log.info(JSONObject.toJSONString(result_F_PAEZ_Base)); - if(result_F_PAEZ_Base.get("Result")==null){ - PaezCllx p=new PaezCllx(); - String TOrgIds = map_fEntityModel_.get("TOrgIds"); - p.setFUseOrgId(TOrgIds); - p.setFCreateOrgId(TOrgIds); - String F_PAEZ_BaseName = map_fEntityModel_.get("F_PAEZ_BaseName"); - p.setFName(F_PAEZ_BaseName); - p.setFNumber(F_PAEZ_Base); - paezCllxService.draftPaezCllx(p); - } - //存货类别 - String FCategoryID = map_fEntityModel_.get("FCategoryID"); - JSONObject result_FCategory = view(KingDeeBillId.BD_MATERIALCATEGORY.getID(),FCategoryID); - log.info(JSONObject.toJSONString(result_FCategory)); - if(result_FCategory.get("Result")==null){ - BDMaterialcategory b=new BDMaterialcategory(); - String TOrgIds = map_fEntityModel_.get("TOrgIds"); - b.setFUseOrgId(TOrgIds); - b.setFCreateOrgId(TOrgIds); - String F_PAEZ_BaseName = map_fEntityModel_.get("FCategoryIDName"); - b.setFName(F_PAEZ_BaseName); - b.setFNumber(FCategoryID); - bDMaterialcategoryService.draftBDMaterialcategory(b); - } + draftFPaezBase(map_fEntityModel_); + draftFCategoryId(map_fEntityModel_); ResultBean draft = draft(kingDeeData); String data = draft.getData(); - ResultBean submit = submitAuditAllocate(data); + ResultBean submit = submit(KingDeeBillId.BD_MATERIAL.getID(),data); if (!submit.getSuccess()) return rb.setCode(KingDeeCode.SUBMIT.getCode()).setData(submit.getData()); - ResultBean audit = audit(data); + ResultBean audit = audit(KingDeeBillId.BD_MATERIAL.getID(),data); if (!audit.getSuccess()) return rb.setCode(KingDeeCode.AUDIT.getCode()).setData(audit.getData()); - - String getKDForNumbers = getGetKDForNumbers(KingDeeBillId.ORG_ORGANIZATIONS.getID(), map_fEntityModel_.get("TOrgIds")); - ResultBean kingDataInfoByNumber = accessKingDeeInterface(KingDeeBillId.ORG_ORGANIZATIONS.getID(), getKDForNumbers, - KingDeeConfig.userName_administrator,KingDeeConfig.password_administrator,KingDeeBillUrl.VIEW_URL.getURL()); - JSONObject jsonObject = JSONObject.parseObject(kingDataInfoByNumber.getData().toString()); - JSONObject result2 = (JSONObject)jsonObject.get("Result"); - JSONObject responseStatus = (JSONObject)result2.get("ResponseStatus"); - if(responseStatus!=null){//不存在分公司 //新增分公司 - return rb.setCode(KingDeeCode.NOTEXIST.getCode()).setMsg(KingDeeCode.NOTEXIST.getMsg()); - } - String vie_result =kingDataInfoByNumber.getData(); - jsonObject = JSONObject.parseObject(vie_result); - JSONObject result3= (JSONObject)jsonObject.get("Result"); - JSONObject Result2 = (JSONObject)result3.get("Result"); - Integer Id = (Integer)Result2.get("Id"); - String id= Id+""; - ResultBean allocate = allocate(id, data); + String id = draftResultGetId(draft.getData()); + ResultBean allocate = allocate(KingDeeBillId.BD_MATERIAL.getID(),id, map_fEntityModel_.get("TOrgIds")); if (!allocate.getSuccess()) return rb.setCode(KingDeeCode.ALLOCATE.getCode()).setData(allocate.getData()); return draft; } catch (Exception e) { @@ -196,6 +155,40 @@ public class BdMaterialService extends FinKingDeeService { return rb; } + private void draftFCategoryId(Map map_fEntityModel_) throws Exception { + //存货类别 + String FCategoryID = map_fEntityModel_.get("FCategoryID"); + JSONObject result_FCategory = view(KingDeeBillId.BD_MATERIALCATEGORY.getID(),FCategoryID); + log.info(JSONObject.toJSONString(result_FCategory)); + if(result_FCategory.get("Result")==null){ + BDMaterialcategory b=new BDMaterialcategory(); + String TOrgIds = map_fEntityModel_.get("TOrgIds"); + b.setFUseOrgId(TOrgIds); + b.setFCreateOrgId(TOrgIds); + String F_PAEZ_BaseName = map_fEntityModel_.get("FCategoryIDName"); + b.setFName(F_PAEZ_BaseName); + b.setFNumber(FCategoryID); + bDMaterialcategoryService.draftBDMaterialcategory(b); + } + } + + private void draftFPaezBase(Map map_fEntityModel_) throws Exception { + //车辆类型 + String F_PAEZ_Base = map_fEntityModel_.get("F_PAEZ_Base"); + JSONObject result_F_PAEZ_Base = view(KingDeeBillId.PAEZ_CLLX.getID(),F_PAEZ_Base); + log.info(JSONObject.toJSONString(result_F_PAEZ_Base)); + if(result_F_PAEZ_Base.get("Result")==null){ + PaezCllx p=new PaezCllx(); + String TOrgIds = map_fEntityModel_.get("TOrgIds"); + p.setFUseOrgId(TOrgIds); + p.setFCreateOrgId(TOrgIds); + String F_PAEZ_BaseName = map_fEntityModel_.get("F_PAEZ_BaseName"); + p.setFName(F_PAEZ_BaseName); + p.setFNumber(F_PAEZ_Base); + paezCllxService.draftPaezCllx(p); + } + } + /** * 修改物料的信息 * @return @@ -207,9 +200,9 @@ public class BdMaterialService extends FinKingDeeService { try{ ResultBean save = save(map_fEntityModel_); String data = save.getData(); - ResultBean submit = submitAuditAllocate( data); + ResultBean submit = submit(KingDeeBillId.BD_MATERIAL.getID(), data); if (!submit.getSuccess()) return rb.setCode(KingDeeCode.SUBMIT.getCode()).setMsg(KingDeeCode.SUBMIT.getMsg()); - ResultBean audit = audit(data); + ResultBean audit = audit(KingDeeBillId.BD_MATERIAL.getID(),data); if (!audit.getSuccess()) return rb.setCode(KingDeeCode.AUDIT.getCode()).setMsg(KingDeeCode.AUDIT.getMsg()); return save; } catch (Exception e) { @@ -273,137 +266,5 @@ public class BdMaterialService extends FinKingDeeService { return stringResultBean; } - /** - * 提交审核分配 - * @param data - * @return - * @throws Exception - */ - private ResultBean submitAuditAllocate(String data) throws Exception { - ResultBean rb=ResultBean.fireFail(); - ResultBean submit = submit(data); - if (!submit.getSuccess()) return rb.setCode(KingDeeCode.SUBMIT.getCode()).setData(submit.getData()); - return rb.success(); - } - - /** - * 分配 - * @param tOrgIds - * @param data - * @return - * @throws Exception - */ - private ResultBean allocate(String tOrgIds, String data) throws Exception { - String allocate = getAllocate(data,tOrgIds,KingDeeBillId.BD_MATERIAL.getID()); - ResultBean resultBean3 =accessKingDeeInterface( - KingDeeBillId.BD_MATERIAL.getID(), allocate, - KingDeeBillUrl.ALLOCATE_URL.getURL());// allocateKingDeeBillData(KingDeeBillId.BD_MATERIAL.getID(), allocate); - if(!resultBean3.getSuccess()){ - log.info("物料分配失败!"); - } - log.info("物料分配成功!"); - return resultBean3; - } - - /** - * 审核 - * @param data - * @return - * @throws Exception - */ - private ResultBean audit( String data) throws Exception { - String auditKD = getAuditKD(data,KingDeeBillId.BD_MATERIAL.getID()); - ResultBean resultBean2 = accessKingDeeInterface( - KingDeeBillId.BD_MATERIAL.getID(), auditKD,KingDeeBillUrl.AUDIT_URL.getURL());//auditKingDeeBillData(KingDeeBillId.BD_MATERIAL.getID(), auditKD); - if(!resultBean2.getSuccess()){ - log.info("物料审核失败!"); - } - log.info("物料审核成功!"); - return resultBean2; - } - - /** - * 提交 - * @param data - * @return - * @throws Exception - */ - private ResultBean submit( String data) throws Exception { - String submitKD = getSubmitKD(data,KingDeeBillId.BD_MATERIAL.getID()); - ResultBean resultBean1 = accessKingDeeInterface(KingDeeBillId.BD_MATERIAL.getID(), - submitKD,KingDeeBillUrl.SUBMIT_URL.getURL());//submitKingDeeBillData(KingDeeBillId.BD_MATERIAL.getID(), submitKD); - if(!resultBean1.getSuccess()){ - log.info("物料提交失败!"); - } - log.info("物料提交成功!"); - return resultBean1; - } - - /** - * 反审核 - * @param bdMaterial - * @return - * @throws Exception - */ - public ResultBean unAudit(BdMaterial bdMaterial) throws Exception { - ResultBean rb=ResultBean.fireFail(); - JSONObject result = view(KingDeeBillId.BD_MATERIAL.getID(),bdMaterial.getOldFName()); - JSONObject responseStatus = (JSONObject)result.get("ResponseStatus"); - if(responseStatus!=null){//不存在该物料 //新增物料 - return rb.setCode(KingDeeCode.NOTEXIST.getCode()).setMsg(KingDeeCode.NOTEXIST.getMsg()); - }else{ //存在该物料 - JSONObject result2 = (JSONObject)result.get("Result"); - String DocumentStatus = (String)result2.get("DocumentStatus");//单据状态 A 创建, B 审核中,C 已审核 ,D 重新审核 - String Id=result2.get("Id").toString(); - boolean audit = isAudit(DocumentStatus, Id); - if(!audit){ - return rb.setCode(KingDeeCode.UNAUDIT.getCode()).setMsg(KingDeeCode.UNAUDIT.getMsg()); - } - log.info("Id:{}",Id); - return rb.success().setData(Id); - } - } - - /** - * 查看物料 - * @param formid - * @param Number - * @return - * @throws Exception - */ - /* private JSONObject viewBdMaterial(String formid,String oldFName) throws Exception { - String getKDForNumbers = getGetKDForNumbers(formid, oldFName); - return view(formid,getKDForNumbers); - }*/ - private JSONObject view(String formid,String Number) throws Exception { - String getKDForNumbers = getGetKDForNumbers(formid, Number); - ResultBean kingDataInfoByNumber = accessKingDeeInterface(formid, getKDForNumbers, - KingDeeConfig.userName_administrator,KingDeeConfig.password_administrator, KingDeeBillUrl.VIEW_URL.getURL()); - log.info("kingDataInfoByNumber:{}",kingDataInfoByNumber.getData()); - JSONObject jsonObject = JSONObject.parseObject(kingDataInfoByNumber.getData().toString()); - JSONObject result = (JSONObject)jsonObject.get("Result"); - return result; - } - /** - * 反审核 - * @param DocumentStatus - * @param oldFName - * @return - * @throws Exception - */ - private boolean isAudit(String DocumentStatus,String oldFName) throws Exception { - log.info("DocumentStatus:{}",DocumentStatus); - if("C".equals(DocumentStatus)){ - String auditKD = getUnAuditKD(oldFName,KingDeeBillId.BD_MATERIAL.getID()); - ResultBean rb1 = accessKingDeeInterface( - KingDeeBillId.BD_MATERIAL.getID(), auditKD,KingDeeBillUrl.UNAUDIT_URL.getURL());//auditKingDeeBillData(KingDeeBillId.BD_MATERIAL.getID(), auditKD); - if(!rb1.getSuccess()){ - log.info("物料反审核失败!"); - return false; - } - log.info("物料反审核成功!"); - } - return true; - } } diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/advanceInvoice/AddAdvanceInvoiceDto.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/advanceInvoice/AddAdvanceInvoiceDto.java new file mode 100644 index 0000000000..ff21ecd27e --- /dev/null +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/advanceInvoice/AddAdvanceInvoiceDto.java @@ -0,0 +1,21 @@ +package com.yxt.anrui.terminal.api.autoservice.advanceInvoice; + +import com.yxt.common.core.dto.Dto; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.List; + +@Data +public class AddAdvanceInvoiceDto implements Dto { + private static final long serialVersionUID = 4692713916775781841L; + + @ApiModelProperty("用户sid") + private String userSid; + + @ApiModelProperty("vin集合") + List vinList; + + @ApiModelProperty("合同sid") + private String contractSid; +} diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/advanceInvoice/AdvanceInvoiceDto.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/advanceInvoice/AdvanceInvoiceDto.java index 732e45e6fc..782c66ef19 100644 --- a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/advanceInvoice/AdvanceInvoiceDto.java +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/advanceInvoice/AdvanceInvoiceDto.java @@ -1,5 +1,7 @@ package com.yxt.anrui.terminal.api.autoservice.advanceInvoice; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.yxt.anrui.buscenter.api.busadvanceginvoiceapply.AdCarListVo; import com.yxt.common.core.dto.Dto; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -15,17 +17,20 @@ public class AdvanceInvoiceDto implements Dto { @ApiModelProperty("合同sid") private String contractSid; @ApiModelProperty("合同id") - private String contractId; + @JsonProperty("contractId") + private String contractNo; @ApiModelProperty("客户") private String customerName; @ApiModelProperty("申请日期") private String applyDate; @ApiModelProperty("车辆列表") - private String carList; + private List carList; @ApiModelProperty("欠款金额") - private String cumulativeArrearsPrice; + @JsonProperty("cumulativeArrearsPrice") + private String arrearsMoney; @ApiModelProperty("车型") - private String modelName; + @JsonProperty("modelName") + private String carModel; @ApiModelProperty("开票信息确认书") private List confirmFile; @ApiModelProperty("客户开票申请书") @@ -33,17 +38,22 @@ public class AdvanceInvoiceDto implements Dto { @ApiModelProperty("备注") private String remarks; @ApiModelProperty("手写原因") - private String reasonWrite; + @JsonProperty("reasonWrite") + private String otherReasons; @ApiModelProperty("承诺回款日期") - private String collectionDate; + @JsonProperty("collectionDate") + private String returnedMoneyDate; @ApiModelProperty("车辆登记合同") - private String registerFile; + private List registerFile; @ApiModelProperty("提前开票原因 0手写 1选择") - private String reasonType; + @JsonProperty("reasonType") + private String advGinReasonType; @ApiModelProperty("提前开票原因 0手写 1选择") - private String reasonKey; - @ApiModelProperty("选择原因") - private String reasonChoose; + @JsonProperty("reasonChoose") + private String advGinReasonValue; + @ApiModelProperty("提前开票原因 0手写 1选择") + @JsonProperty("reasonKey") + private String advGinReasonKey; @ApiModelProperty("任务id") private String taskId; @ApiModelProperty("流程实列id") diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/advanceInvoice/AdvanceInvoiceInfoVo.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/advanceInvoice/AdvanceInvoiceInfoVo.java index e70398c185..c0a991e702 100644 --- a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/advanceInvoice/AdvanceInvoiceInfoVo.java +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/advanceInvoice/AdvanceInvoiceInfoVo.java @@ -1,9 +1,11 @@ package com.yxt.anrui.terminal.api.autoservice.advanceInvoice; +import com.fasterxml.jackson.annotation.JsonProperty; import com.yxt.common.core.vo.Vo; import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import java.util.ArrayList; import java.util.List; @Data @@ -15,35 +17,45 @@ public class AdvanceInvoiceInfoVo implements Vo { @ApiModelProperty("合同sid") private String contractSid; @ApiModelProperty("合同id") - private String contractId; + @JsonProperty("contractId") + private String contractNo; @ApiModelProperty("客户") private String customerName; @ApiModelProperty("申请日期") private String applyDate; - @ApiModelProperty("车辆列表") - private List carList; + @ApiModelProperty("选择车辆列表") + private List carList = new ArrayList<>(); + @ApiModelProperty("所有车辆列表") + private List vinList = new ArrayList<>(); @ApiModelProperty("欠款金额") - private String cumulativeArrearsPrice; + @JsonProperty("cumulativeArrearsPrice") + private String arrearsMoney; @ApiModelProperty("车型") - private String modelName; + @JsonProperty("modelName") + private String carModel; @ApiModelProperty("开票信息确认书") - private List confirmFile; + private List confirmFile = new ArrayList<>(); @ApiModelProperty("客户开票申请书") - private List applyFile; + private List applyFile = new ArrayList<>(); @ApiModelProperty("备注") private String remarks; @ApiModelProperty("手写原因") - private String reasonWrite; + @JsonProperty("reasonWrite") + private String otherReasons; @ApiModelProperty("承诺回款日期") - private String collectionDate; + @JsonProperty("collectionDate") + private String returnedMoneyDate; @ApiModelProperty("车辆登记合同") - private String registerFile; + private List registerFile = new ArrayList<>(); @ApiModelProperty("提前开票原因 0手写 1选择") - private String reasonType; + @JsonProperty("reasonType") + private String advGinReasonType; @ApiModelProperty("提前开票原因 0手写 1选择") - private String reasonKey; - @ApiModelProperty("选择原因") - private String reasonChoose; + @JsonProperty("reasonChoose") + private String advGinReasonValue; + @ApiModelProperty("提前开票原因 0手写 1选择") + @JsonProperty("reasonKey") + private String advGinReasonKey; @ApiModelProperty("任务id") private String taskId; @ApiModelProperty("流程实列id") diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/advanceInvoice/AdvanceInvoiceQuery.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/advanceInvoice/AdvanceInvoicePageQuery.java similarity index 87% rename from anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/advanceInvoice/AdvanceInvoiceQuery.java rename to anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/advanceInvoice/AdvanceInvoicePageQuery.java index cd69319db9..f4a1aa4ae4 100644 --- a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/advanceInvoice/AdvanceInvoiceQuery.java +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/advanceInvoice/AdvanceInvoicePageQuery.java @@ -5,7 +5,7 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; @Data -public class AdvanceInvoiceQuery implements Query { +public class AdvanceInvoicePageQuery implements Query { private static final long serialVersionUID = -7435351433058437187L; @ApiModelProperty("用户sid") diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/advanceInvoice/AdvanceInvoicePageVo.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/advanceInvoice/AdvanceInvoicePageVo.java index 853840c129..6644f57c21 100644 --- a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/advanceInvoice/AdvanceInvoicePageVo.java +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/advanceInvoice/AdvanceInvoicePageVo.java @@ -30,8 +30,17 @@ public class AdvanceInvoicePageVo implements Vo { @JsonProperty("number") private String num; @ApiModelProperty("原因") - @JsonProperty("reason") + private String reason; + + @ApiModelProperty("选择 手写 key 0 1") + private String advGinReasonType; + @ApiModelProperty("选择value") + private String advGinReasonValue; + @ApiModelProperty("选择key") + private String advGinReasonKey; + @ApiModelProperty("手写") private String otherReasons; + @ApiModelProperty("创建日期") @JsonProperty("date") private String applyDate; diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/advanceInvoice/AdvanceInvoiceVinDto.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/advanceInvoice/AdvanceInvoiceVinDto.java new file mode 100644 index 0000000000..0c8f1d97e0 --- /dev/null +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/advanceInvoice/AdvanceInvoiceVinDto.java @@ -0,0 +1,21 @@ +package com.yxt.anrui.terminal.api.autoservice.advanceInvoice; + +import com.yxt.common.core.dto.Dto; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.List; + +@Data +public class AdvanceInvoiceVinDto implements Dto { + private static final long serialVersionUID = 4328057679297036712L; + + @ApiModelProperty("用户sid") + private String userSid; + + @ApiModelProperty("车架号集合") + private List vinList; + + @ApiModelProperty("合同sid") + private String contractSid; +} diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/advanceInvoice/AppBusAdvanceGinvoiceapplyFeign.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/advanceInvoice/AppBusAdvanceGinvoiceapplyFeign.java index b33ec5a7ce..426c3f94ab 100644 --- a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/advanceInvoice/AppBusAdvanceGinvoiceapplyFeign.java +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/advanceInvoice/AppBusAdvanceGinvoiceapplyFeign.java @@ -26,6 +26,10 @@ package com.yxt.anrui.terminal.api.autoservice.advanceInvoice; import com.yxt.anrui.buscenter.api.busadvanceginvoiceapply.*; +import com.yxt.anrui.terminal.api.autoservice.advanceInvoice.flowable.AdvanceInvoiceQuery; +import com.yxt.anrui.terminal.api.autoservice.advanceInvoice.flowable.AdvanceInvoiceTaskQuery; +import com.yxt.anrui.terminal.api.autoservice.advanceInvoice.flowable.CompleteAdvanceInvoiceDto; +import com.yxt.anrui.terminal.api.autoservice.advanceInvoice.flowable.SubmitAdvanceInvoiceDto; import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.vo.PagerVo; @@ -33,6 +37,7 @@ 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 javax.validation.Valid; @@ -62,7 +67,12 @@ public interface AppBusAdvanceGinvoiceapplyFeign { @ApiOperation("手机端-获取提前开票列表") @PostMapping("/getAdvanceInvoiceList") @ResponseBody - ResultBean> getAdvanceInvoiceList(@RequestBody PagerQuery pagerQuery); + ResultBean> getAdvanceInvoiceList(@RequestBody PagerQuery pagerQuery); + + @ApiOperation("移动端-新增提前开票申请") + @PostMapping("/addAdvanceInvoice") + @ResponseBody + public ResultBean addAdvanceInvoice(@Valid @RequestBody AdvanceInvoiceVinDto dto); @ApiOperation("手机端-初始化提前开票申请") @GetMapping("/initAdvanceInvoice/{contractSid}") @@ -75,7 +85,38 @@ public interface AppBusAdvanceGinvoiceapplyFeign { public ResultBean saveAdvanceInvoice(@Valid @RequestBody AdvanceInvoiceDto dto); @ApiOperation("手机端-删除提前开票") - @GetMapping("/deleteAdvanceInvoice/{contractSid}") + @DeleteMapping("/deleteAdvanceInvoice/{contractSid}") @ResponseBody public ResultBean deleteAdvanceInvoice(@PathVariable("contractSid") String contractSid); + + + @ApiOperation("提交流程") + @PostMapping("/submitAdvanceInvoiceInfo") + @ResponseBody + ResultBean submitAdvanceInvoiceInfo(@RequestBody SubmitAdvanceInvoiceDto dto); + + @ApiOperation("办理") + @PutMapping("/agreeAdvanceInvoiceInfo") + @ResponseBody + ResultBean agreeAdvanceInvoiceInfo(@RequestBody CompleteAdvanceInvoiceDto dto); + + @ApiOperation("驳回") + @PutMapping("/rejectAdvanceInvoiceInfo") + @ResponseBody + ResultBean rejectAdvanceInvoiceInfo(@RequestBody AdvanceInvoiceTaskQuery query); + + @ApiOperation("撤回") + @PutMapping("/recallAdvanceInvoiceInfo") + @ResponseBody + ResultBean recallAdvanceInvoiceInfo(@RequestBody AdvanceInvoiceTaskQuery query); + + @ApiOperation("终止") + @PutMapping("/stopAdvanceInvoiceInfo") + @ResponseBody + ResultBean stopAdvanceInvoiceInfo(@RequestBody AdvanceInvoiceTaskQuery query); + + @ApiOperation("获取流程操作标题") + @GetMapping("/getFlowOperateTitle") + @ResponseBody + ResultBean getFlowOperateTitle(@SpringQueryMap AdvanceInvoiceQuery query); } diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/advanceInvoice/AppBusAdvanceGinvoiceapplyFeignFallback.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/advanceInvoice/AppBusAdvanceGinvoiceapplyFeignFallback.java index cb8736ff01..adc0d37181 100644 --- a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/advanceInvoice/AppBusAdvanceGinvoiceapplyFeignFallback.java +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/advanceInvoice/AppBusAdvanceGinvoiceapplyFeignFallback.java @@ -25,7 +25,10 @@ *********************************************************/ package com.yxt.anrui.terminal.api.autoservice.advanceInvoice; -import com.yxt.anrui.buscenter.api.busadvanceginvoiceapply.*; +import com.yxt.anrui.terminal.api.autoservice.advanceInvoice.flowable.AdvanceInvoiceQuery; +import com.yxt.anrui.terminal.api.autoservice.advanceInvoice.flowable.AdvanceInvoiceTaskQuery; +import com.yxt.anrui.terminal.api.autoservice.advanceInvoice.flowable.CompleteAdvanceInvoiceDto; +import com.yxt.anrui.terminal.api.autoservice.advanceInvoice.flowable.SubmitAdvanceInvoiceDto; import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.vo.PagerVo; @@ -49,7 +52,12 @@ public class AppBusAdvanceGinvoiceapplyFeignFallback implements AppBusAdvanceGin @Override - public ResultBean> getAdvanceInvoiceList(PagerQuery pagerQuery) { + public ResultBean> getAdvanceInvoiceList(PagerQuery pagerQuery) { + return null; + } + + @Override + public ResultBean addAdvanceInvoice(AdvanceInvoiceVinDto dto) { return null; } @@ -67,4 +75,34 @@ public class AppBusAdvanceGinvoiceapplyFeignFallback implements AppBusAdvanceGin public ResultBean deleteAdvanceInvoice(String contractSid) { return null; } + + @Override + public ResultBean submitAdvanceInvoiceInfo(SubmitAdvanceInvoiceDto dto) { + return null; + } + + @Override + public ResultBean agreeAdvanceInvoiceInfo(CompleteAdvanceInvoiceDto dto) { + return null; + } + + @Override + public ResultBean rejectAdvanceInvoiceInfo(AdvanceInvoiceTaskQuery query) { + return null; + } + + @Override + public ResultBean recallAdvanceInvoiceInfo(AdvanceInvoiceTaskQuery query) { + return null; + } + + @Override + public ResultBean stopAdvanceInvoiceInfo(AdvanceInvoiceTaskQuery query) { + return null; + } + + @Override + public ResultBean getFlowOperateTitle(AdvanceInvoiceQuery 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/advanceInvoice/AppCarListDto.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/advanceInvoice/AppCarListDto.java new file mode 100644 index 0000000000..3d272d3f8d --- /dev/null +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/advanceInvoice/AppCarListDto.java @@ -0,0 +1,15 @@ +package com.yxt.anrui.terminal.api.autoservice.advanceInvoice; + +import com.yxt.common.core.dto.Dto; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +public class AppCarListDto implements Dto { + private static final long serialVersionUID = -7003788760351399800L; + + @ApiModelProperty("车架号") + private String vin; + @ApiModelProperty("成交价") + private String price; +} diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/advanceInvoice/flowable/AdvanceInvoiceQuery.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/advanceInvoice/flowable/AdvanceInvoiceQuery.java new file mode 100644 index 0000000000..d35992392d --- /dev/null +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/advanceInvoice/flowable/AdvanceInvoiceQuery.java @@ -0,0 +1,20 @@ +package com.yxt.anrui.terminal.api.autoservice.advanceInvoice.flowable; + +import com.yxt.common.core.query.Query; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotNull; + +@Data +public class AdvanceInvoiceQuery implements Query { + private static final long serialVersionUID = -3563282658560745370L; + + @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/advanceInvoice/flowable/AdvanceInvoiceTaskQuery.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/advanceInvoice/flowable/AdvanceInvoiceTaskQuery.java new file mode 100644 index 0000000000..c21f1d1816 --- /dev/null +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/advanceInvoice/flowable/AdvanceInvoiceTaskQuery.java @@ -0,0 +1,42 @@ +package com.yxt.anrui.terminal.api.autoservice.advanceInvoice.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; + +@Data +public class AdvanceInvoiceTaskQuery implements Query { + private static final long serialVersionUID = -6952737531036706114L; + + /** + * 终止、驳回、撤回 + */ + @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-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/advanceInvoice/flowable/CompleteAdvanceInvoiceDto.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/advanceInvoice/flowable/CompleteAdvanceInvoiceDto.java new file mode 100644 index 0000000000..2bf18bf9e9 --- /dev/null +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/advanceInvoice/flowable/CompleteAdvanceInvoiceDto.java @@ -0,0 +1,32 @@ +package com.yxt.anrui.terminal.api.autoservice.advanceInvoice.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; + +@Data +public class CompleteAdvanceInvoiceDto implements Dto { + private static final long serialVersionUID = 7978653524636034916L; + + @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/advanceInvoice/flowable/SubmitAdvanceInvoiceDto.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/advanceInvoice/flowable/SubmitAdvanceInvoiceDto.java new file mode 100644 index 0000000000..f47d1c12da --- /dev/null +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/advanceInvoice/flowable/SubmitAdvanceInvoiceDto.java @@ -0,0 +1,18 @@ +package com.yxt.anrui.terminal.api.autoservice.advanceInvoice.flowable; + +import com.fasterxml.jackson.annotation.JsonProperty; +import com.yxt.anrui.terminal.api.autoservice.advanceInvoice.AdvanceInvoiceDto; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +public class SubmitAdvanceInvoiceDto extends AdvanceInvoiceDto { + + private static final long serialVersionUID = 6134092944641545633L; + + @ApiModelProperty("流程实例id") + @JsonProperty("procInsId") + private String instanceId; + @ApiModelProperty("任务id") + private String taskId; +} diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/approval/AppRovalFeign.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/approval/AppRovalFeign.java new file mode 100644 index 0000000000..2fa613b939 --- /dev/null +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/approval/AppRovalFeign.java @@ -0,0 +1,37 @@ +package com.yxt.anrui.terminal.api.autoservice.approval; + +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.web.bind.annotation.*; + +/** + * Project: anrui-base(安瑞基础)
+ * File: CommonContractFeign.java
+ * Class: com.yxt.anrui.base.api.commoncontract.CommonContractFeign
+ * Description: 合同表.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2021-10-12 14:02:40
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Api(tags = "合同表") +@FeignClient( + contextId = "anrui-terminal-AppRoval", + name = "anrui-terminal", + path = "/autoservice/v1/approval", + fallback = AppRovalFeignFallback.class) +public interface AppRovalFeign { + + @ApiOperation("移动端-提前开票查询合同列表") + @PostMapping("/getApprovalContractList") + @ResponseBody + public ResultBean> getApprovalContractList(@RequestBody PagerQuery pagerQuery); + +} \ No newline at end of file diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/approval/AppRovalFeignFallback.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/approval/AppRovalFeignFallback.java new file mode 100644 index 0000000000..aa02f1141a --- /dev/null +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/approval/AppRovalFeignFallback.java @@ -0,0 +1,29 @@ +package com.yxt.anrui.terminal.api.autoservice.approval; + +import com.yxt.common.core.query.PagerQuery; +import com.yxt.common.core.result.ResultBean; +import com.yxt.common.core.vo.PagerVo; +import org.springframework.stereotype.Component; + +/** + * Project: anrui-base(安瑞基础)
+ * File: CommonContractFeignFallback.java
+ * Class: com.yxt.anrui.base.api.commoncontract.CommonContractFeignFallback
+ * Description: 合同表.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2021-10-12 14:02:40
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Component +public class AppRovalFeignFallback implements AppRovalFeign { + + + @Override + public ResultBean> getApprovalContractList(PagerQuery pagerQuery) { + 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/approval/RovalContractPageQuery.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/approval/RovalContractPageQuery.java new file mode 100644 index 0000000000..4cd00c40d5 --- /dev/null +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/approval/RovalContractPageQuery.java @@ -0,0 +1,17 @@ +package com.yxt.anrui.terminal.api.autoservice.approval; + +import com.yxt.common.core.query.Query; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +public class RovalContractPageQuery implements Query { + private static final long serialVersionUID = -1857847352706914720L; + + @ApiModelProperty("用户sid") + private String userSid; + + @ApiModelProperty("车架号 客户名称 合同编号") + private String name; + +} diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/approval/RovalContractPageVo.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/approval/RovalContractPageVo.java new file mode 100644 index 0000000000..e332ff8d4f --- /dev/null +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/approval/RovalContractPageVo.java @@ -0,0 +1,31 @@ +package com.yxt.anrui.terminal.api.autoservice.approval; + +import com.fasterxml.jackson.annotation.JsonProperty; +import com.yxt.common.core.vo.Vo; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +public class RovalContractPageVo implements Vo { + private static final long serialVersionUID = -8310834266355010490L; + + @ApiModelProperty("合同sid") + private String contractSid; + + @ApiModelProperty("合同编号") + private String contractId; + + @ApiModelProperty("车架号") + private String vin; + + @ApiModelProperty("销售订单sid") + private String busSid; + + @ApiModelProperty("客户名称") + private String customerName; + + @ApiModelProperty("车型名称") + private String modelName; + + +} diff --git a/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/arrearsTakeCar/AppBusArrearsCarryVehicleApplyService.java b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/arrearsTakeCar/AppBusArrearsCarryVehicleApplyService.java index 8d6347f271..8657de0fc5 100644 --- a/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/arrearsTakeCar/AppBusArrearsCarryVehicleApplyService.java +++ b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/arrearsTakeCar/AppBusArrearsCarryVehicleApplyService.java @@ -1,13 +1,9 @@ package com.yxt.anrui.terminal.biz.arrearsTakeCar; -import com.yxt.anrui.buscenter.api.busadvanceginvoiceapply.AppAdvanceInvoicePageVo; -import com.yxt.anrui.buscenter.api.busadvanceginvoiceapply.AppAdvanceInvoiceQuery; import com.yxt.anrui.buscenter.api.busarrearscarryvehicleapply.AppArrearsCarryVehiclePageVo; import com.yxt.anrui.buscenter.api.busarrearscarryvehicleapply.AppArrearsCarryVehicleQuery; import com.yxt.anrui.buscenter.api.busarrearscarryvehicleapply.BusArrearsCarryVehicleApplyFeign; -import com.yxt.anrui.terminal.api.autoservice.advanceInvoice.AdvanceInvoicePageVo; -import com.yxt.anrui.terminal.api.autoservice.advanceInvoice.AppBusAdvanceGinvoiceapplyFeign; import com.yxt.anrui.terminal.api.autoservice.arrearsTakeCar.ArrearsCarryVehiclePageVo; import com.yxt.anrui.terminal.api.autoservice.arrearsTakeCar.ArrearsCarryVehicleQuery; import com.yxt.anrui.terminal.config.CoverUtils; diff --git a/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/advanceInvoice/AppBusAdvanceGinvoiceapplyRest.java b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/advanceInvoice/AppBusAdvanceGinvoiceapplyRest.java index 97e51c2c45..4266e70cc5 100644 --- a/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/advanceInvoice/AppBusAdvanceGinvoiceapplyRest.java +++ b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/advanceInvoice/AppBusAdvanceGinvoiceapplyRest.java @@ -25,13 +25,15 @@ *********************************************************/ package com.yxt.anrui.terminal.biz.autoservice.advanceInvoice; -import com.yxt.anrui.buscenter.api.busadvanceginvoiceapply.*; import com.yxt.anrui.terminal.api.autoservice.advanceInvoice.*; +import com.yxt.anrui.terminal.api.autoservice.advanceInvoice.flowable.AdvanceInvoiceQuery; +import com.yxt.anrui.terminal.api.autoservice.advanceInvoice.flowable.AdvanceInvoiceTaskQuery; +import com.yxt.anrui.terminal.api.autoservice.advanceInvoice.flowable.CompleteAdvanceInvoiceDto; +import com.yxt.anrui.terminal.api.autoservice.advanceInvoice.flowable.SubmitAdvanceInvoiceDto; import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.vo.PagerVo; import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -57,10 +59,15 @@ public class AppBusAdvanceGinvoiceapplyRest implements AppBusAdvanceGinvoiceappl private AppBusAdvanceGinvoiceapplyService appBusAdvanceGinvoiceapplyService; @Override - public ResultBean> getAdvanceInvoiceList(PagerQuery pagerQuery) { + public ResultBean> getAdvanceInvoiceList(PagerQuery pagerQuery) { return appBusAdvanceGinvoiceapplyService.getAdvanceInvoiceList(pagerQuery); } + @Override + public ResultBean addAdvanceInvoice(AdvanceInvoiceVinDto dto) { + return appBusAdvanceGinvoiceapplyService.addAdvanceInvoice(dto); + } + @Override public ResultBean initAdvanceInvoice(String contractSid) { return appBusAdvanceGinvoiceapplyService.initAdvanceInvoice(contractSid); @@ -75,4 +82,36 @@ public class AppBusAdvanceGinvoiceapplyRest implements AppBusAdvanceGinvoiceappl public ResultBean deleteAdvanceInvoice(String contractSid) { return appBusAdvanceGinvoiceapplyService.deleteAdvanceInvoice(contractSid); } + + @Override + public ResultBean submitAdvanceInvoiceInfo(SubmitAdvanceInvoiceDto dto) { + return appBusAdvanceGinvoiceapplyService.submitAdvanceInvoiceInfo(dto); + } + + @Override + public ResultBean agreeAdvanceInvoiceInfo(CompleteAdvanceInvoiceDto dto) { + return appBusAdvanceGinvoiceapplyService.agreeAdvanceInvoiceInfo(dto); + } + + @Override + public ResultBean rejectAdvanceInvoiceInfo(AdvanceInvoiceTaskQuery query) { + return appBusAdvanceGinvoiceapplyService.rejectAdvanceInvoiceInfo(query); + } + + @Override + public ResultBean recallAdvanceInvoiceInfo(AdvanceInvoiceTaskQuery query) { + return appBusAdvanceGinvoiceapplyService.recallAdvanceInvoiceInfo(query); + } + + @Override + public ResultBean stopAdvanceInvoiceInfo(AdvanceInvoiceTaskQuery query) { + return appBusAdvanceGinvoiceapplyService.stopAdvanceInvoiceInfo(query); + } + + @Override + public ResultBean getFlowOperateTitle(AdvanceInvoiceQuery query) { + return appBusAdvanceGinvoiceapplyService.getFlowOperateTitle(query); + } + + } diff --git a/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/advanceInvoice/AppBusAdvanceGinvoiceapplyService.java b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/advanceInvoice/AppBusAdvanceGinvoiceapplyService.java index b48f8bb39c..b916377f8c 100644 --- a/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/advanceInvoice/AppBusAdvanceGinvoiceapplyService.java +++ b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/advanceInvoice/AppBusAdvanceGinvoiceapplyService.java @@ -27,16 +27,25 @@ package com.yxt.anrui.terminal.biz.autoservice.advanceInvoice; import cn.hutool.core.bean.BeanUtil; +import com.alibaba.fastjson.JSON; import com.yxt.anrui.buscenter.api.busadvanceginvoiceapply.*; -import com.yxt.anrui.fin.api.finbillapplication.AppBillApplicationIInfoDto; -import com.yxt.anrui.fin.api.finbillapplication.AppBillApplicationIInfoVo; -import com.yxt.anrui.fin.api.finbillapplication.AppBillApplicationPageQuery; -import com.yxt.anrui.terminal.api.autoservice.advanceInvoice.AdvanceInvoiceDto; -import com.yxt.anrui.terminal.api.autoservice.advanceInvoice.AdvanceInvoiceInfoVo; -import com.yxt.anrui.terminal.api.autoservice.advanceInvoice.AdvanceInvoicePageVo; -import com.yxt.anrui.terminal.api.autoservice.advanceInvoice.AdvanceInvoiceQuery; -import com.yxt.anrui.terminal.api.autoservice.invoiced.BillApplicationIInfoVo; -import com.yxt.anrui.terminal.api.autoservice.invoiced.BillApplicationPageVo; +import com.yxt.anrui.buscenter.api.busadvanceginvoiceapply.flowable.AppAdvanceInvoiceTaskQuery; +import com.yxt.anrui.buscenter.api.busadvanceginvoiceapply.flowable.AppCompleteAdvanceInvoiceDto; +import com.yxt.anrui.buscenter.api.busadvanceginvoiceapply.flowable.AppSubmitAdvanceInvoiceDto; +import com.yxt.anrui.buscenter.api.busadvanceginvoiceapply.flowable.GetNodeQuery; +import com.yxt.anrui.buscenter.api.busadvanceginvoiceapply.flowable.GetNodeVo; +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.scmvehiclegression.flowable.*; +import com.yxt.anrui.terminal.api.autoservice.advanceInvoice.*; +import com.yxt.anrui.terminal.api.autoservice.advanceInvoice.flowable.AdvanceInvoiceQuery; +import com.yxt.anrui.terminal.api.autoservice.advanceInvoice.flowable.AdvanceInvoiceTaskQuery; +import com.yxt.anrui.terminal.api.autoservice.advanceInvoice.flowable.CompleteAdvanceInvoiceDto; +import com.yxt.anrui.terminal.api.autoservice.advanceInvoice.flowable.SubmitAdvanceInvoiceDto; +import com.yxt.anrui.terminal.api.autoservice.intermediary.MiddlemanVo; +import com.yxt.anrui.terminal.api.autoservice.saleOrders.order.BusOrderSalesVo; import com.yxt.anrui.terminal.config.CoverUtils; import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.result.ResultBean; @@ -44,6 +53,12 @@ import com.yxt.common.core.vo.PagerVo; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.util.ArrayList; +import java.util.Collections; +import java.util.List; +import java.util.Optional; +import java.util.stream.Collectors; + /** * Project: anrui_buscenter(销售业务)
@@ -63,13 +78,27 @@ public class AppBusAdvanceGinvoiceapplyService { @Autowired BusAdvanceGinvoiceapplyFeign busAdvanceGinvoiceapplyFeign; + @Autowired + private SysUserFeign sysUserFeign; + @Autowired + private SysStaffOrgFeign sysStaffOrgFeign; - public ResultBean> getAdvanceInvoiceList(PagerQuery pagerQuery) { + public ResultBean> getAdvanceInvoiceList(PagerQuery pagerQuery) { ResultBean> rb = ResultBean.fireFail(); - PagerQuery pq = CoverUtils.getPagerQuery(pagerQuery); - ResultBean> advanceInvoiceList = busAdvanceGinvoiceapplyFeign.getAdvanceInvoiceList(pq); - PagerVo vo = CoverUtils.selectPagerVo(advanceInvoiceList.getData()); - return rb.success().setData(vo); + PagerQuery pq = CoverUtils.getPagerQuery(pagerQuery); + ResultBean> resultBean = busAdvanceGinvoiceapplyFeign.getAdvanceInvoiceList(pq); + List voList = Optional.ofNullable(resultBean.getData().getRecords()).orElse(new ArrayList<>()).stream().map(m -> JSON.parseObject(JSON.toJSONString(m), AdvanceInvoicePageVo.class)).collect(Collectors.toList()); + PagerVo v = new PagerVo<>(); + BeanUtil.copyProperties(resultBean.getData(), v); + v.setRecords(voList); + return rb.success().setData(v); + } + + public ResultBean addAdvanceInvoice(AdvanceInvoiceVinDto dto) { + AppAdvanceInvoiceVinDto appAdvanceInvoiceVinDto = new AppAdvanceInvoiceVinDto(); + BeanUtil.copyProperties(dto, appAdvanceInvoiceVinDto); + ResultBean resultBean = busAdvanceGinvoiceapplyFeign.addAdvanceInvoice(appAdvanceInvoiceVinDto); + return resultBean; } public ResultBean initAdvanceInvoice(String contractSid) { @@ -95,4 +124,101 @@ public class AppBusAdvanceGinvoiceapplyService { ResultBean resultBean = busAdvanceGinvoiceapplyFeign.deleteAdvanceInvoice(contractSid); return resultBean; } + + public ResultBean submitAdvanceInvoiceInfo(SubmitAdvanceInvoiceDto dto) { + ResultBean rb = ResultBean.fireFail(); + AppSubmitAdvanceInvoiceDto submitAdvanceInvoiceDto = new AppSubmitAdvanceInvoiceDto(); + BeanUtil.copyProperties(dto, submitAdvanceInvoiceDto); + ResultBean resultBean = busAdvanceGinvoiceapplyFeign.submitAdvanceInvoiceInfo(submitAdvanceInvoiceDto); + if (!resultBean.getSuccess()) { + return rb.setMsg(resultBean.getMsg()); + } + return rb.success(); + } + + public ResultBean agreeAdvanceInvoiceInfo(CompleteAdvanceInvoiceDto 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(); + AppCompleteAdvanceInvoiceDto completeAdvanceInvoiceDto = new AppCompleteAdvanceInvoiceDto(); + BeanUtil.copyProperties(dto, completeAdvanceInvoiceDto); + completeAdvanceInvoiceDto.setOrgSidPath(orgSidPath); + ResultBean resultBean = busAdvanceGinvoiceapplyFeign.complete(completeAdvanceInvoiceDto); + if (!resultBean.getSuccess()) { + return rb.setMsg(resultBean.getMsg()); + } + return rb.success().setData(resultBean.getData()); + } + + public ResultBean rejectAdvanceInvoiceInfo(AdvanceInvoiceTaskQuery query) { + ResultBean rb = ResultBean.fireFail(); + AppAdvanceInvoiceTaskQuery taskQuery = new AppAdvanceInvoiceTaskQuery(); + BeanUtil.copyProperties(query, taskQuery); + ResultBean resultBean = busAdvanceGinvoiceapplyFeign.taskReject(taskQuery); + if (!resultBean.getSuccess()) { + return rb.setMsg(resultBean.getMsg()); + } + return rb.success().setData(resultBean.getData()); + } + + public ResultBean recallAdvanceInvoiceInfo(AdvanceInvoiceTaskQuery query) { + ResultBean rb = ResultBean.fireFail(); + AppAdvanceInvoiceTaskQuery taskQuery = new AppAdvanceInvoiceTaskQuery(); + BeanUtil.copyProperties(query, taskQuery); + ResultBean resultBean = busAdvanceGinvoiceapplyFeign.revokeProcess(taskQuery); + if (!resultBean.getSuccess()) { + return rb.setMsg(resultBean.getMsg()); + } + return rb.success().setData(resultBean.getData()); + } + + public ResultBean stopAdvanceInvoiceInfo(AdvanceInvoiceTaskQuery query) { + ResultBean rb = ResultBean.fireFail(); + AppAdvanceInvoiceTaskQuery taskQuery = new AppAdvanceInvoiceTaskQuery(); + BeanUtil.copyProperties(query, taskQuery); + ResultBean resultBean = busAdvanceGinvoiceapplyFeign.breakProcess(taskQuery); + if (!resultBean.getSuccess()) { + return rb.setMsg(resultBean.getMsg()); + } + return rb.success().setData(resultBean.getData()); + } + + public ResultBean getFlowOperateTitle(AdvanceInvoiceQuery query) { + ResultBean rb = ResultBean.fireFail(); + //0 上一环节 1下一环节 + int next = query.getNext(); + GetNodeQuery getNodeQuery = new GetNodeQuery(); + BeanUtil.copyProperties(query, getNodeQuery); + String data = ""; + if (next == 0) { + ResultBean> getPreviousNodesForReject = busAdvanceGinvoiceapplyFeign.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 = busAdvanceGinvoiceapplyFeign.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 diff --git a/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/approval/AppRovalRest.java b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/approval/AppRovalRest.java new file mode 100644 index 0000000000..4f0a718988 --- /dev/null +++ b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/approval/AppRovalRest.java @@ -0,0 +1,65 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.terminal.biz.autoservice.approval; + +import com.yxt.anrui.terminal.api.autoservice.approval.AppRovalFeign; +import com.yxt.anrui.terminal.api.autoservice.approval.RovalContractPageQuery; +import com.yxt.anrui.terminal.api.autoservice.approval.RovalContractPageVo; +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 org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +/** + * Project: anrui_buscenter(销售业务)
+ * File: BusAdvanceGinvoiceapplyFeignFallback.java
+ * Class: com.yxt.anrui.buscenter.biz.busadvanceginvoiceapply.BusAdvanceGinvoiceapplyRest
+ * Description: 提前开票申请.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2022-03-17 16:02:10
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Api(tags = "提前开票申请") +@RestController() +@RequestMapping("/autoservice/v1/approval") +public class AppRovalRest implements AppRovalFeign { + + @Autowired + private AppRovalService appRovalService; + + + @Override + public ResultBean> getApprovalContractList(PagerQuery pagerQuery) { + return appRovalService.getApprovalContractList(pagerQuery); + } +} diff --git a/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/approval/AppRovalService.java b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/approval/AppRovalService.java new file mode 100644 index 0000000000..e1b1cdc030 --- /dev/null +++ b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/approval/AppRovalService.java @@ -0,0 +1,70 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.terminal.biz.autoservice.approval; + + + + +import com.yxt.anrui.buscenter.api.bussalesorder.BusSalesOrderFeign; +import com.yxt.anrui.buscenter.api.bussalesorder.contract.AppRovalContractPageQuery; +import com.yxt.anrui.buscenter.api.bussalesorder.contract.AppRovalContractPageVo; +import com.yxt.anrui.terminal.api.autoservice.approval.RovalContractPageQuery; +import com.yxt.anrui.terminal.api.autoservice.approval.RovalContractPageVo; +import com.yxt.anrui.terminal.config.CoverUtils; +import com.yxt.common.core.query.PagerQuery; +import com.yxt.common.core.result.ResultBean; +import com.yxt.common.core.vo.PagerVo; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + + +/** + * Project: anrui_buscenter(销售业务)
+ * File: BusAdvanceGinvoiceapplyService.java
+ * Class: com.yxt.anrui.buscenter.biz.busadvanceginvoiceapply.BusAdvanceGinvoiceapplyService
+ * Description: 提前开票申请 业务逻辑.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2022-03-17 16:02:10
+ * + * @author liupopo + * @version 1.0 + * @since 1.0 + */ +@Service +public class AppRovalService { + + @Autowired + BusSalesOrderFeign busSalesOrderFeign; + + public ResultBean> getApprovalContractList(PagerQuery pagerQuery) { + ResultBean> rb = ResultBean.fireFail(); + PagerQuery pq = CoverUtils.getPagerQuery(pagerQuery); + ResultBean> approvalContractList = busSalesOrderFeign.getApprovalContractList(pq); + PagerVo vo = CoverUtils.selectPagerVo(approvalContractList.getData()); + return rb.success().setData(vo); + } +} \ No newline at end of file