diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/common/enums/BillTypeEnum.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/common/enums/BillTypeEnum.java index 7224d3f2a1..315f7eeca6 100644 --- a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/common/enums/BillTypeEnum.java +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/common/enums/BillTypeEnum.java @@ -25,6 +25,7 @@ public enum BillTypeEnum { SKD("SKD","款项确认"), KPSQ("KPSQ","公司开票申请"), QKKP("QKKP","欠款开票"), + QKLP("QKLP","欠款领票"), GCRK("GCRK","挂车入库"), SZRK("SZRK","上装入库"), XSDDTCSQ("XSDDTCSQ","销售订单退车申请"), 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 a34c64f5a1..c47455fc7e 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 @@ -31,6 +31,8 @@ import com.yxt.anrui.base.biz.commoncontract.CommonContractService; import com.yxt.anrui.base.common.enums.VehicleState; import com.yxt.anrui.base.common.utils.Rule; import com.yxt.anrui.buscenter.api.bussalesorder.BusSalesOrderFeign; +import com.yxt.anrui.buscenter.api.bussalesordervehicle.BusSalesOrderVehicle; +import com.yxt.anrui.buscenter.api.bussalesordervehicle.BusSalesOrderVehicleFeign; import com.yxt.anrui.fin.api.fincollectionconfirmation.FinCollectionConfirmationFeign; import com.yxt.anrui.fin.api.kingdee.FinKingDeeFeign; import com.yxt.anrui.fin.api.kingdee.bdcustomer.BdCustomer; @@ -87,6 +89,8 @@ public class BaseVehicleOutService extends MybatisBaseService commonContract = commonContractService.selectByNo(baseVehicleZSOutApplyDto.getContractNo()); - if (commonContract.getSuccess()) { - //查询合同编号和车辆sid客户的临时编码 - ResultBean stringResultBean = busSalesOrderFeign.selectTemporaryNo(dto.getVinSid(), baseVehicleZSOutApplyDto.getContractNo()); - if (!stringResultBean.getSuccess()) { - return rb.setMsg("请检查合同是否存在"); - } - String temporaryNo = stringResultBean.getData(); - Boolean aBoolean1 = finKingDeeFeign.customerExistState(temporaryNo).getData(); - if (!aBoolean1) { - Boolean aBoolean2 = finKingDeeFeign.customerExistState(baseVehicleZSOutApplyDto.getCustomerNo()).getData(); - if (!aBoolean2) { - bdCustomer.setFName(baseVehicleZSOutApplyDto.getCustomerName() + dto.getVinNo().substring(dto.getVinNo().length() - 8)); - String FNumber1 = HanZiConverterPinYin.getPinYinFirst(baseVehicleZSOutApplyDto.getCustomerName()) + dto.getVinNo().substring(dto.getVinNo().length() - 8); - if (FNumber1.length() > 30) { - FNumber1 = FNumber1.substring(0, 30); - bdCustomer.setFNumber(FNumber1); - } else { - bdCustomer.setFNumber(FNumber1); - } - bdCustomer.setFShortName(baseVehicleZSOutApplyDto.getContractNo()); - } else { - b = true; - return rb.success().setData(b); - } - } else { - finCollectionConfirmationFeign.updateVin(dto.getVinNo(), baseVehicleZSOutApplyDto.getContractNo(), temporaryNo.substring(temporaryNo.length() - 2)); - } - } else { - Boolean aBoolean1 = finKingDeeFeign.customerExistState(baseVehicleZSOutApplyDto.getCustomerNo()).getData(); - if (!aBoolean1) { - bdCustomer.setFName(baseVehicleZSOutApplyDto.getCustomerName() + dto.getVinNo().substring(dto.getVinNo().length() - 8)); - String FNumber1 = HanZiConverterPinYin.getPinYinFirst(baseVehicleZSOutApplyDto.getCustomerName()) + dto.getVinNo().substring(dto.getVinNo().length() - 8); - if (FNumber1.length() > 30) { - FNumber1 = FNumber1.substring(0, 30); - bdCustomer.setFNumber(FNumber1); - } else { - bdCustomer.setFNumber(FNumber1); - } - bdCustomer.setFShortName(baseVehicleZSOutApplyDto.getContractNo()); - } else { - b = true; - return rb.success().setData(b); - } - } + bdCustomer.setFName(baseVehicleZSOutApplyDto.getCustomerName() + dto.getVinNo().substring(dto.getVinNo().length() - 8)); + bdCustomer.setFNumber(FNumber); + bdCustomer.setFShortName(baseVehicleZSOutApplyDto.getContractNo()); + } else { + BusSalesOrderVehicle busSalesOrderVehicle = busSalesOrderVehicleFeign.fetchByLSBM(FNumber).getData(); + //修改客户简称为合同编号 + bdCustomer.setFName(baseVehicleZSOutApplyDto.getCustomerName() + busSalesOrderVehicle.getLinkNo().substring(busSalesOrderVehicle.getLinkNo().length() - 8)); + bdCustomer.setFShortName(baseVehicleZSOutApplyDto.getContractNo()); + bdCustomer.setFNumber(FNumber); + bdCustomer.setOldFNumber(FNumber); + bdCustomers.add(bdCustomer); + finKingDeeFeign.saveBdCustomers(bdCustomers); } - //修改客户简称为合同编号 - bdCustomer.setFName(baseVehicleZSOutApplyDto.getCustomerName() + dto.getVinNo().substring(dto.getVinNo().length() - 8)); - bdCustomer.setFShortName(baseVehicleZSOutApplyDto.getContractNo()); - bdCustomer.setFNumber(FNumber); - bdCustomer.setOldFNumber(FNumber); - bdCustomers.add(bdCustomer); - finKingDeeFeign.saveBdCustomers(bdCustomers); } //查询出库的车辆是否满足出库条件 int count = baseMapper.selectCountByVinSid(dto.getVinSid()); diff --git a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesordervehicle/BusSalesOrderVehicleFeign.java b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesordervehicle/BusSalesOrderVehicleFeign.java index 810c3815b3..c32bfa98ba 100644 --- a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesordervehicle/BusSalesOrderVehicleFeign.java +++ b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesordervehicle/BusSalesOrderVehicleFeign.java @@ -93,4 +93,9 @@ public interface BusSalesOrderVehicleFeign { @ApiOperation("PC欠款提车选择车辆") @PostMapping("/getCanUseCarsPage") ResultBean>> getCanUseCarsPage(@RequestBody PagerQuery pagerQuery); + + @ApiOperation("根据临时编码查询车辆信息") + @GetMapping("/fetchByLSBM/{fNumber}") + @ResponseBody + ResultBean fetchByLSBM(@PathVariable("fNumber") String fNumber); } \ No newline at end of file diff --git a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesordervehicle/BusSalesOrderVehicleMapper.java b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesordervehicle/BusSalesOrderVehicleMapper.java index b7210791fe..d78d3194d6 100644 --- a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesordervehicle/BusSalesOrderVehicleMapper.java +++ b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesordervehicle/BusSalesOrderVehicleMapper.java @@ -120,4 +120,7 @@ public interface BusSalesOrderVehicleMapper extends BaseMapper getCanUseCars(@Param(Constants.WRAPPER)QueryWrapper qw); IPage selectPageVo(IPage page,@Param(Constants.WRAPPER) QueryWrapper qw); + + @Select("select * from bus_sales_order_vehicle where temporaryNo = #{fNumber}") + BusSalesOrderVehicle fetchByLSBM(String fNumber); } \ No newline at end of file diff --git a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesordervehicle/BusSalesOrderVehicleRest.java b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesordervehicle/BusSalesOrderVehicleRest.java index e4605ba161..776935cb26 100644 --- a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesordervehicle/BusSalesOrderVehicleRest.java +++ b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesordervehicle/BusSalesOrderVehicleRest.java @@ -101,5 +101,8 @@ public class BusSalesOrderVehicleRest implements BusSalesOrderVehicleFeign { return rb.success().setData(pv); } - + @Override + public ResultBean fetchByLSBM(String fNumber) { + return busSalesOrderVehicleService.fetchByLSBM(fNumber); + } } diff --git a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesordervehicle/BusSalesOrderVehicleService.java b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesordervehicle/BusSalesOrderVehicleService.java index 8cb58978e0..c2f083397e 100644 --- a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesordervehicle/BusSalesOrderVehicleService.java +++ b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesordervehicle/BusSalesOrderVehicleService.java @@ -402,4 +402,10 @@ public class BusSalesOrderVehicleService extends MybatisBaseService fetchByLSBM(String fNumber) { + ResultBean rb = ResultBean.fireFail(); + BusSalesOrderVehicle busSalesOrderVehicle = baseMapper.fetchByLSBM(fNumber); + return rb.success().setData(busSalesOrderVehicle); + } } \ No newline at end of file diff --git a/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplication/FinBillApplication.java b/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplication/FinBillApplication.java index 0a2ed04a2d..6853c1a5b0 100644 --- a/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplication/FinBillApplication.java +++ b/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplication/FinBillApplication.java @@ -140,4 +140,6 @@ public class FinBillApplication extends BaseEntity { private String modelName; // 车型名称 @ApiModelProperty("单据编号") private String billNo; // 单据编号 + @ApiModelProperty("提前领取发票原件原因") + private String reason; } diff --git a/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplication/FinBillApplicationDetailsVo.java b/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplication/FinBillApplicationDetailsVo.java index 920dfc03c3..4a18a74bdf 100644 --- a/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplication/FinBillApplicationDetailsVo.java +++ b/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplication/FinBillApplicationDetailsVo.java @@ -136,6 +136,8 @@ public class FinBillApplicationDetailsVo extends AppBillApplicationIInfoVo imple private String modelName; // 车型名称 @ApiModelProperty("单据编号") private String billNo; // 单据编号 + @ApiModelProperty("提前领取发票原件原因") + private String reason; @ApiModelProperty(value = "节点状态") private String nodeState; @@ -154,6 +156,8 @@ public class FinBillApplicationDetailsVo extends AppBillApplicationIInfoVo imple private List finBillVehicles; // 开票车辆信息 @ApiModelProperty("开票挂车信息") private List finBillTrailers; // 开票挂车信息 + @ApiModelProperty("附件") + private List fjApplicationAppendxs; @ApiModelProperty("证件") private List zjApplicationAppendxs; // 证件 @ApiModelProperty("客户开票申请书") diff --git a/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplication/FinBillApplicationDto.java b/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplication/FinBillApplicationDto.java index 44f5098066..eb3aff25cd 100644 --- a/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplication/FinBillApplicationDto.java +++ b/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplication/FinBillApplicationDto.java @@ -144,6 +144,8 @@ public class FinBillApplicationDto implements Dto { private String modelName; // 车型名称 @ApiModelProperty("单据编号") private String billNo; // 单据编号 + @ApiModelProperty("提前领取发票原件原因") + private String reason; @ApiModelProperty("开票车辆信息") private List finBillVehicles; // 开票车辆信息 @@ -156,5 +158,7 @@ public class FinBillApplicationDto implements Dto { @ApiModelProperty("车辆登记合同附件信息") private List cldjhtApplicationAppendxs = new ArrayList<>(); // 车辆登记合同附件信息 @ApiModelProperty("证件") - private List zjApplicationAppendxs = new ArrayList<>(); // 车辆登记合同附件信息 + private List zjApplicationAppendxs = new ArrayList<>(); + @ApiModelProperty("附件") + private List fjApplicationAppendxs = new ArrayList<>(); } \ No newline at end of file diff --git a/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplication/FinBillApplicationFeign.java b/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplication/FinBillApplicationFeign.java index f131f71c2b..bbe80ef12f 100644 --- a/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplication/FinBillApplicationFeign.java +++ b/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplication/FinBillApplicationFeign.java @@ -72,6 +72,11 @@ public interface FinBillApplicationFeign { @ResponseBody public ResultBean> listPageQK(@RequestBody PagerQuery pq); + @ApiOperation("欠款领票分页列表") + @PostMapping("/listPageQKLP") + @ResponseBody + public ResultBean> listPageQKLP(@RequestBody PagerQuery pq); + @ApiOperation("根据sid删除记录") @DeleteMapping("/delBySids") @ResponseBody @@ -87,6 +92,11 @@ public interface FinBillApplicationFeign { @ResponseBody public ResultBean saveQK(@RequestBody FinBillApplicationDto dto); + @ApiOperation("欠款领票新增或修改") + @PostMapping("/saveQKLP") + @ResponseBody + public ResultBean saveQKLP(@RequestBody FinBillApplicationDto dto); + @ApiOperation("根据SID获取一条记录") @GetMapping("/fetchDetailsBySid/{sid}") @ResponseBody @@ -136,9 +146,12 @@ public interface FinBillApplicationFeign { @PostMapping("/completeQK") public ResultBean completeQK(@Valid @RequestBody FinBillCompleteDto query); - /** - * 分公司到风控中心同意 - */ + //欠款开票销售内勤审批 + @ApiOperation(value = "办理(同意)") + @PostMapping("/completeBy") + ResultBean completeBy(@Valid @RequestBody FinBillCompleteDto query); + + //分公司到风控中心同意 @ApiOperation(value = "办理(同意)") @PostMapping("/companyToDivisionOperateQK") public ResultBean companyToDivisionOperateQK(@Valid @RequestBody FinBillCompleteDto query); @@ -190,5 +203,4 @@ public interface FinBillApplicationFeign { @PostMapping("/appQKFetchDetailsBySid") @ResponseBody public ResultBean appQKFetchDetailsBySid(@RequestBody AppBillApplicationDetailsQKQuery query); - } \ No newline at end of file diff --git a/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplication/FinBillApplicationFeignFallback.java b/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplication/FinBillApplicationFeignFallback.java index 9fec290f6d..6e43597432 100644 --- a/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplication/FinBillApplicationFeignFallback.java +++ b/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplication/FinBillApplicationFeignFallback.java @@ -65,6 +65,11 @@ public class FinBillApplicationFeignFallback implements FinBillApplicationFeign return null; } + @Override + public ResultBean> listPageQKLP(PagerQuery pq) { + return null; + } + @Override public ResultBean delBySids(String[] sids) { return null; @@ -80,6 +85,11 @@ public class FinBillApplicationFeignFallback implements FinBillApplicationFeign return null; } + @Override + public ResultBean saveQKLP(FinBillApplicationDto dto) { + return null; + } + @Override public ResultBean fetchDetailsBySid(String sid){ ResultBean rb = ResultBean.fireFail(); @@ -142,6 +152,11 @@ public class FinBillApplicationFeignFallback implements FinBillApplicationFeign return null; } + @Override + public ResultBean completeBy(FinBillCompleteDto query) { + return null; + } + @Override public ResultBean companyToDivisionOperateQK(FinBillCompleteDto query) { return null; diff --git a/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplication/FinBillApplicationVo.java b/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplication/FinBillApplicationVo.java index cad024673a..c60cd8f2f1 100644 --- a/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplication/FinBillApplicationVo.java +++ b/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplication/FinBillApplicationVo.java @@ -79,6 +79,12 @@ public class FinBillApplicationVo implements Vo { private String arrearsOpenYYValue; // 欠款开票原因value @ApiModelProperty("单据编号") private String billNo; // 单据编号 + + @ApiModelProperty("提前领取发票原件原因") + private String reason; + @ApiModelProperty("欠款开票单据编号") + private String qkkpBillNo; + @ApiModelProperty(value = "流程id") private String procDefId; @ApiModelProperty(value = "实例id") diff --git a/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplication/flowable/FinBillCompleteDto.java b/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplication/flowable/FinBillCompleteDto.java index 2ef02e60cd..1a7bbc8ba6 100644 --- a/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplication/flowable/FinBillCompleteDto.java +++ b/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplication/flowable/FinBillCompleteDto.java @@ -5,6 +5,7 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; import javax.validation.constraints.NotBlank; +import java.util.List; /** * @Author dimengzhe @@ -18,6 +19,9 @@ public class FinBillCompleteDto implements Dto { @ApiModelProperty(value = "用户sid") @NotBlank(message = "参数错误:userSid") private String userSid; + @ApiModelProperty(value = "用户全路径sid") + @NotBlank(message = "参数错误:orgSidPath") + private String orgSidPath; @ApiModelProperty(value = "节点id") @NotBlank(message = "参数错误:taskDefKey") private String taskDefKey; @@ -32,4 +36,13 @@ public class FinBillCompleteDto implements Dto { @ApiModelProperty(value = "业务sid") @NotBlank(message = "参数错误:businessSid") private String businessSid; + + @ApiModelProperty("证件") + private List idCardImages; + @ApiModelProperty("客户开票申请书") + private List customerInvoiceApplyImages; + @ApiModelProperty("车辆登记合同") + private List registerContractImages; + @ApiModelProperty("确认书") + private List invoiceApplyConfirmImages; } diff --git a/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillfile/FinAttachTypeEnum.java b/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillfile/FinAttachTypeEnum.java index 5f3fe3aa42..3640c4d1e1 100644 --- a/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillfile/FinAttachTypeEnum.java +++ b/anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillfile/FinAttachTypeEnum.java @@ -10,7 +10,8 @@ public enum FinAttachTypeEnum { KHKPSQS("001", "客户开票申请书"), KPXXQRS("002", "款项确认书"), CLDJHT("003", "车辆登记合同"), - ZJ("004", "证件"); + ZJ("004", "证件"), + FJ("005", "附件"); /** * 附件类型 diff --git a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finbillapplication/FinBillApplicationRest.java b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finbillapplication/FinBillApplicationRest.java index 69bd140ca6..2ad29ddd16 100644 --- a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finbillapplication/FinBillApplicationRest.java +++ b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finbillapplication/FinBillApplicationRest.java @@ -83,6 +83,13 @@ public class FinBillApplicationRest implements FinBillApplicationFeign { return rb.success().setData(pv); } + @Override + public ResultBean> listPageQKLP(PagerQuery pq) { + ResultBean rb = ResultBean.fireFail(); + PagerVo pv = finBillApplicationService.listPageQKLP(pq); + return rb.success().setData(pv); + } + @Override public ResultBean delBySids(String[] sids) { return finBillApplicationService.delAllBySids(sids); @@ -100,6 +107,11 @@ public class FinBillApplicationRest implements FinBillApplicationFeign { return finBillApplicationService.saveOrUpdateDtoQK(dto); } + @Override + public ResultBean saveQKLP(FinBillApplicationDto dto) { + return finBillApplicationService.saveQKLP(dto); + } + @Override @ApiOperation("根据SID获取一条记录") @GetMapping("/fetchDetailsBySid/{sid}") @@ -171,6 +183,14 @@ public class FinBillApplicationRest implements FinBillApplicationFeign { return finBillApplicationService.completeQK(bv); } + @Override + public ResultBean completeBy(FinBillCompleteDto query) { + BusinessVariables bv = new BusinessVariables(); + BeanUtil.copyProperties(query, bv); + bv.setModelId(ProcDefEnum.QKFINBILLAPPLICATION.getProDefId()); + return finBillApplicationService.completeBy(bv); + } + @Override public ResultBean companyToDivisionOperateQK(FinBillCompleteDto query) { BusinessVariables bv=new BusinessVariables(); diff --git a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finbillapplication/FinBillApplicationService.java b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finbillapplication/FinBillApplicationService.java index 57d844d8b9..5c678b43d4 100644 --- a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finbillapplication/FinBillApplicationService.java +++ b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finbillapplication/FinBillApplicationService.java @@ -128,8 +128,6 @@ public class FinBillApplicationService extends MybatisBaseService fjApplicationAppendxs = finBillFileService.fetchfjBySid(sid); + for (FinBillFileVo fjApplicationAppendx : fjApplicationAppendxs) { + String fileUrl = fjApplicationAppendx.getFileUrl(); + String urlPrefix = fileUploadComponent.getUrlPrefix(); + fileUrl = urlPrefix + fileUrl; + fjApplicationAppendx.setFileUrl(fileUrl); + } vo.setKhkpsqsApplicationAppendxs(khkpsqsApplicationAppendxs); vo.setKpxxqrsApplicationAppendxs(kpxxqrsApplicationAppendxs); vo.setCldjhtApplicationAppendxs(cldjhtApplicationAppendxs); vo.setZjApplicationAppendxs(zjApplicationAppendxs); + vo.setFjApplicationAppendxs(fjApplicationAppendxs); return vo; } @@ -492,134 +498,6 @@ public class FinBillApplicationService extends MybatisBaseService resultBean = saveOrUpdateDto(dto); - String businessSid = resultBean.getData(); - Map variables = new HashMap<>(); - variables.put("businessSid", businessSid); - variables.put("orgSid", orgSid); //部门sid - String contractSid = dto.getContractSid(); - String oneBillMoney = dto.getOneBillMoney(); - ResultBean commonContractVoResultBean = commonContractFeign.fetchBySid(contractSid); - CommonContractVo data1 = commonContractVoResultBean.getData(); - String busSid = data1.getBusSid(); - ResultBean priceByOrderSid = busSalesOrderPriceFeign.getPriceByOrderSid(busSid); - String price = priceByOrderSid.getData(); - if (price.equals(oneBillMoney)) { - variables.put("isHighAndLowOpen", false); - } else { - variables.put("isHighAndLowOpen", true); - } - if (StringUtils.isBlank(dto.getTaskId())) { // 新提交 - String proDefId = ProcDefEnum.SEALAPPLY.getProDefId(); - ResultBean resultBean1 = null; - //ResultBean resultBean1 = flowableFeign.businessStart(ProcDefEnum.FINBILLAPPLICATION.getProDefId(), dto.getUserSid(), variables); - if (resultBean1.getSuccess() && resultBean1.getData() != null) { - Map map = (Map) resultBean1.getData(); - //更新业务表中的流程状态 - Map paramMap = new HashMap<>(); - paramMap.put("sid", businessSid); - paramMap.put("procDefId", ProcDefEnum.SEALAPPLY.getProDefId()); - paramMap.put("nodeState", map.get("nodeState")); - paramMap.put("procInsId", map.get("procInsId")); - paramMap.put("taskDefKey", map.get("taskDefKey")); - updateFlowFiled(paramMap); - } - return resultBean1; - } else { // 驳回到发起人后再次提交 - variables.put("comment", StringUtils.isNotBlank(dto.getComment()) ? dto.getComment() : "重新提交"); - variables.put("instanceId", dto.getInstanceId()); - variables.put("taskId", dto.getTaskId()); - variables.put("userSid", dto.getUserSid()); - return complete(variables); - } - } -*/ - - /** - * 检查用户是否设置部门 - * - * @param staffSid - * @return 返回部门sid - */ - private String checkUserOrg(String staffSid) { - String orgSid = ""; - ResultBean resultBean = sysStaffOrgFeign.getSysStaffOrgSidListByStaffSid(staffSid); - if (resultBean.getSuccess()) { - orgSid = resultBean.getData(); - } - return orgSid; - } - - /** - * 保存流程业务关联表 数据 - * - * @param map - */ - /* private void submitFinBillApplication(Map map) { - String sid = map.get("sid"); - ResultBean resultBean = sysFormLinkFeign.selectByBusinessSid(sid); - if (!resultBean.getSuccess()) { // 新增 - SysFormLinkDto sysFormLinkDto = new SysFormLinkDto(); - sysFormLinkDto.setBusinessSid(map.get("sid")); - sysFormLinkDto.setProcInsId(map.get("procInsId")); - sysFormLinkDto.setTaskDefKey(map.get("taskDefKey")); - sysFormLinkDto.setNodeState(map.get("nodeState")); - sysFormLinkDto.setFormType(SysFormLinkTypeEnum.ORDER_DEPOSIT_VEHICLE.getCode()); - sysFormLinkDto.setFlowState(Integer.parseInt(SysFormLinkFlowStateEnum.PROCESSING.getCode())); - sysFormLinkFeign.save(sysFormLinkDto); - } else { // 更新 - Map updateMap = new HashMap<>(); - updateMap.put("businessSid", sid); - updateMap.put("nodeState", map.get("nodeState")); - updateMap.put("taskDefKey", map.get("taskDefKey")); - updateMap.put("flowState", SysFormLinkFlowStateEnum.PROCESSING.getCode()); - sysFormLinkFeign.updateFiled(updateMap); - } - }*/ - - /** - * 办理 - * - * @param variables - * @return - */ - /* public ResultBean complete(Map variables) { - BusinessVariables bv = BusinessVariables.builder().build(); - bv.setFormVariables(variables); - ResultBean resultBean = flowTaskFeign.businessComplete(bv); - if (!resultBean.getSuccess()) { - return resultBean; - } - String nodeState = ""; - String taskDefKey = ""; - Map paramMap = new HashMap<>(); - paramMap.put("sid", variables.get("businessSid").toString()); - if (resultBean.getData() != null) { - ResultBean> listResultBean = flowTaskFeign.getLatestTasks(resultBean.getData().getProcInsId()); - if (listResultBean.getSuccess() && listResultBean.getData() != null && listResultBean.getData().size() != 0) { - nodeState = listResultBean.getData().get(0).getName_(); - taskDefKey = listResultBean.getData().get(0).getTask_def_key_(); - } else { - nodeState = ProcessStateEnum.FINISHED.getStateName(); - taskDefKey = "Event_end"; - paramMap.put("flowState", FlowComment.SETTLE.getRemark()); - FinBillApplication finBillApplication = fetchBySid(variables.get("businessSid").toString()); - String oneBillMoney = finBillApplication.getOneBillMoney().toString(); - String sid1 = finBillApplication.getContractSid(); - ResultBean commonContractVoResultBean = commonContractFeign.fetchBySid(sid1); - CommonContractVo data = commonContractVoResultBean.getData(); - String orderSid = data.getBusSid(); - busSalesOrderFeign.updateOneBillMoneyByOrderSid(orderSid, oneBillMoney); - } - } - paramMap.put("nodeState", nodeState); - paramMap.put("taskDefKey", taskDefKey); - updateFlowFiled(paramMap); - return resultBean; - }*/ - /** * 更新流程相关的状态 * @@ -630,94 +508,6 @@ public class FinBillApplicationService extends MybatisBaseService> resultBean = flowTaskFeign.revokeProcess(fl); - if (!resultBean.getSuccess()) { - return resultBean; - } - String nodeState = resultBean.getData().get(0).getName_(); - String taskDefKey = resultBean.getData().get(0).getTask_def_key_(); - String incomingSourceRef = resultBean.getData().get(0).getIncomingSourceRef(); - Map paramMap = new HashMap<>(); - paramMap.put("sid", businessSid); - - paramMap.put("nodeState", nodeState); - paramMap.put("taskDefKey", taskDefKey); - updateFlowFiled(paramMap); - return resultBean; - }*/ - - /** - * 驳回 - * - * @param businessSid - * @param flowTaskVo - * @return - */ - /* public ResultBean taskReject(String businessSid, FlowTaskVo flowTaskVo) { - com.yxt.anrui.flowable.api.flowtask.FlowTaskVo fl = new com.yxt.anrui.flowable.api.flowtask.FlowTaskVo(); - BeanUtil.copyProperties(flowTaskVo, fl); - ResultBean> resultBean = flowTaskFeign.taskReject(fl); - if (!resultBean.getSuccess()) { - return resultBean; - } - String nodeState = resultBean.getData().get(0).getName_(); - String taskDefKey = resultBean.getData().get(0).getTask_def_key_(); - String incomingSourceRef = resultBean.getData().get(0).getIncomingSourceRef(); - Map paramMap = new HashMap<>(); - paramMap.put("sid", businessSid); - paramMap.put("nodeState", nodeState); - paramMap.put("taskDefKey", taskDefKey); - paramMap.put("flowState", nodeState); - updateFlowFiled(paramMap); - return resultBean; - }*/ - - /** - * 终止流程 - * - * @param businessSid - * @param flowTaskVo - * @return - */ - /* public ResultBean breakProcess(String businessSid, FlowTaskVo flowTaskVo) { - com.yxt.anrui.flowable.api.flowtask.FlowTaskVo fl = new com.yxt.anrui.flowable.api.flowtask.FlowTaskVo(); - BeanUtil.copyProperties(flowTaskVo, fl); - ResultBean resultBean = flowTaskFeign.breakProcess(fl); - if (!resultBean.getSuccess()) { - return resultBean; - } - Map paramMap = new HashMap<>(); - paramMap.put("sid", businessSid); - paramMap.put("nodeState", String.valueOf(resultBean.getData())); - paramMap.put("taskDefKey", "Event_end"); - paramMap.put("flowState", String.valueOf(resultBean.getData())); - updateFlowFiled(paramMap); - return resultBean; - }*/ - - /** - * 流程历史流转记录 - * - * @param procInsId - * @param deployId - * @return - */ - public ResultBean flowRecord(String procInsId, String deployId) { - return flowTaskFeign.businessFlowRecord(procInsId); - } - public ResultBean complete(BusinessVariables bv) { ResultBean rb = ResultBean.fireFail(); String businessSid = bv.getBusinessSid(); @@ -811,7 +601,7 @@ public class FinBillApplicationService extends MybatisBaseService stringResultBean = messageFeign.pushMessage(messageFlowableQuery); + messageFeign.pushMessage(messageFlowableQuery); } return rb.success().setData(resultBean.getData()); } else { @@ -930,7 +720,7 @@ public class FinBillApplicationService extends MybatisBaseService stringResultBean = messageFeign.pushMessage(messageFlowableQuery); + messageFeign.pushMessage(messageFlowableQuery); return rb.success(); } } @@ -1072,7 +862,7 @@ public class FinBillApplicationService extends MybatisBaseService stringResultBean = messageFeign.pushMessage(messageFlowableQuery); + messageFeign.pushMessage(messageFlowableQuery); return voResultBean; } if (r == 2) { @@ -1410,7 +1200,7 @@ public class FinBillApplicationService extends MybatisBaseService stringResultBean = messageFeign.pushMessage(messageFlowableQuery); + messageFeign.pushMessage(messageFlowableQuery); return voResultBean; } if (r == 2) { @@ -1667,6 +1457,122 @@ public class FinBillApplicationService extends MybatisBaseService finBillTrailers = dto.getFinBillTrailers(); + List finBillVehicles = dto.getFinBillVehicles(); + List fjApplicationAppendxs = dto.getFjApplicationAppendxs(); + if (StringUtils.isBlank(dtoSid)) {//新增 + FinBillApplication finBillApplication = new FinBillApplication(); + BeanUtil.copyProperties(dto, finBillApplication, "sid"); + finBillApplication.setNodeState("待提交"); + String billNo = getApplyCodeQKLP(dto.getUseOrgSid()); + finBillApplication.setBillNo(billNo); + finBillApplication.setBillStateKey("004"); + finBillApplication.setBillStateValue("欠款领票"); + finBillApplication.setNum(finBillVehicles.size()); + save(finBillApplication); + //主车开票信息 + for (FinBillVehicleDto finBillVehicleDto : finBillVehicles) { + FinBillVehicle finBillVehicle = new FinBillVehicle(); + BeanUtil.copyProperties(finBillVehicleDto, finBillVehicle, "sid"); + finBillVehicle.setBillAppSid(finBillApplication.getSid()); + finBillVehicleService.save(finBillVehicle); + } + //挂车开票信息 + for (FinBillTrailerDto finBillTrailerDto : finBillTrailers) { + FinBillTrailer finBillTrailer = new FinBillTrailer(); + BeanUtil.copyProperties(finBillTrailerDto, finBillTrailer, "sid"); + finBillTrailer.setBillAppSid(finBillApplication.getSid()); + for (FinBillVehicleDto finBillVehicle : finBillVehicles) { + if (finBillVehicle.getVinNo().equals(finBillTrailerDto.getVinNo())) { + finBillTrailer.setBillTypeKey(finBillVehicle.getBillTypeKey()); + finBillTrailer.setBillTypeValue(finBillVehicle.getBillTypeValue()); + finBillTrailer.setOpenTickSid(finBillVehicle.getOpenTickSid()); + finBillTrailer.setOpenTickName(finBillVehicle.getOpenTickName()); + } + } + finBillTrailerService.save(finBillTrailer); + } + //附件信息 + if (fjApplicationAppendxs.size() > 0) { + for (FinBillFileDto finBillFileDto : fjApplicationAppendxs) { + String filePath = finBillFileDto.getFileUrl(); + if (filePath.indexOf(fileUploadComponent.getUrlPrefix()) > -1) { + filePath = filePath.replace(fileUploadComponent.getUrlPrefix(), ""); + } + finBillFileDto.setFileUrl(filePath); + finBillFileDto.setBillAppSid(finBillApplication.getSid()); + finBillFileDto.setAttachType(FinAttachTypeEnum.FJ.getAttachType()); + finBillFileService.saveOrUpdateDto(finBillFileDto); + } + } + return rb.success().setMsg("保存成功").setData(finBillApplication.getSid()); + } + FinBillApplication finBillApplication = fetchBySid(dtoSid); + if (finBillApplication == null) { + rb.setMsg("该数据不存在"); + } + dto.setBillStateKey("004"); + dto.setBillStateValue("欠款领票"); + updateByDto(dto); + finBillFileService.deleteByFinAppSid(dtoSid); + //附件信息 + if (fjApplicationAppendxs.size() > 0) { + for (FinBillFileDto finBillFileDto : fjApplicationAppendxs) { + String filePath = finBillFileDto.getFileUrl(); + if (filePath.indexOf(fileUploadComponent.getUrlPrefix()) > -1) { + filePath = filePath.replace(fileUploadComponent.getUrlPrefix(), ""); + } + finBillFileDto.setFileUrl(filePath); + finBillFileDto.setBillAppSid(finBillApplication.getSid()); + finBillFileDto.setAttachType(FinAttachTypeEnum.FJ.getAttachType()); + finBillFileService.saveOrUpdateDto(finBillFileDto); + } + } + finBillVehicleService.delByBillAppSid(dtoSid); + for (FinBillVehicleDto finBillVehicleDto : finBillVehicles) { + FinBillVehicle finBillVehicle = new FinBillVehicle(); + BeanUtil.copyProperties(finBillVehicleDto, finBillVehicle, "sid"); + finBillVehicle.setBillAppSid(dtoSid); + finBillVehicleService.save(finBillVehicle); + } + finBillTrailerService.delByBillAppSid(dtoSid); + for (FinBillTrailerDto finBillTrailerDto : finBillTrailers) { + FinBillTrailer finBillTrailer = new FinBillTrailer(); + BeanUtil.copyProperties(finBillTrailerDto, finBillTrailer, "sid"); + finBillTrailer.setBillAppSid(dtoSid); + for (FinBillVehicleDto finBillVehicle : finBillVehicles) { + if (finBillVehicle.getVinNo().equals(finBillTrailerDto.getVinNo())) { + finBillTrailer.setBillTypeKey(finBillVehicle.getBillTypeKey()); + finBillTrailer.setBillTypeValue(finBillVehicle.getBillTypeValue()); + finBillTrailer.setOpenTickSid(finBillVehicle.getOpenTickSid()); + finBillTrailer.setOpenTickName(finBillVehicle.getOpenTickName()); + } + } + finBillTrailerService.save(finBillTrailer); + } + return rb.success().setMsg("修改成功").setData(dtoSid); + } + + private String getApplyCodeQKLP(String useOrgSid) { + ResultBean resultBean1 = sysOrganizationFeign.fetchBySid(useOrgSid); + String orgCode = resultBean1.getData().getOrgCode(); + BillNo b = new BillNo(); + b.setOrgCode(orgCode); + b.setBillType(BillTypeEnum.QKLP.getBillType()); + String bill = Rule.getBill(b); + String i = baseMapper.selectNum(bill); + String billNo = ""; + if (StringUtils.isNotBlank(i)) { + billNo = Rule.getBillNo(bill, Integer.valueOf(i).intValue()); + } else { + billNo = Rule.getBillNo(bill, 0); + } + return billNo; + } + public ResultBean submitFinBillApplicationQK(SubmitFinBillApplicationDto dto) { ResultBean rb = ResultBean.fireFail(); String contractNo = dto.getContractNo(); @@ -1746,7 +1652,7 @@ public class FinBillApplicationService extends MybatisBaseService stringResultBean = messageFeign.pushMessage(messageFlowableQuery); + messageFeign.pushMessage(messageFlowableQuery); return voResultBean; } if (r == 2) { @@ -1801,13 +1707,51 @@ public class FinBillApplicationService extends MybatisBaseService stringResultBean = messageFeign.pushMessage(messageFlowableQuery); + messageFeign.pushMessage(messageFlowableQuery); } return rb.success().setData(resultBean.getData()); } else { return rb.setMsg("操作失败!提交的数据不一致"); } + } + public ResultBean completeBy(BusinessVariables bv) { + ResultBean rb = ResultBean.fireFail(); + String businessSid = bv.getBusinessSid(); + FinBillApplication finBillApplication = fetchBySid(businessSid); + Map variables = new HashMap<>(); + Map appMap = new HashMap<>(); + appMap.put("sid", businessSid); + variables.put("app", appMap); + bv.setFormVariables(variables); + bv.setOrgSidPath(finBillApplication.getOrgSidPath()); + //判断是否领取发票原件,若是,则isTrue网关参数为true=============添加 + variables.put("isAdj", finBillApplication.getIsLQOrigInvoice().equals("是")); + if (bv.getTaskId().equals(finBillApplication.getTaskId())) { + ResultBean resultBean = flowableFeign.handleProsess(bv); + if (!resultBean.getSuccess()) { + return rb.setMsg(resultBean.getMsg()); + } + UpdateFlowFieldVo ufVo = resultBean.getData(); + updateFlowFiled(BeanUtil.beanToMap(resultBean.getData())); + //极光推送 + finBillApplication = fetchBySid(businessSid); + MessageFlowableQuery messageFlowableQuery = new MessageFlowableQuery(); + MessageFlowVo messageFlowVo = new MessageFlowVo(); + BeanUtil.copyProperties(ufVo, messageFlowVo); + ufVo.setProcDefId(finBillApplication.getProcDefId()); + ufVo.setProcInsId(finBillApplication.getProcInstSid()); + messageFlowableQuery.setUfVo(messageFlowVo); + messageFlowableQuery.setAppMap(appMap); + messageFlowableQuery.setBusinessSid(businessSid); + messageFlowableQuery.setModuleName("欠款开票"); + messageFlowableQuery.setMsgContent(finBillApplication.getCreateByName() + "提交的" + messageFlowableQuery.getModuleName() + ",请审批"); + messageFlowableQuery.setMsgTitle("欠款开票"); + messageFeign.pushMessage(messageFlowableQuery); + return rb.success().setData(resultBean.getData()); + } else { + return rb.setMsg("操作失败!提交的数据不一致"); + } } public ResultBean> getPreviousNodesForRejectQK(FinBillNodeQuery query) { @@ -1900,7 +1844,7 @@ public class FinBillApplicationService extends MybatisBaseService stringResultBean = messageFeign.pushMessage(messageFlowableQuery); + messageFeign.pushMessage(messageFlowableQuery); return rb.success(); } } @@ -2006,6 +1950,53 @@ public class FinBillApplicationService extends MybatisBaseService listPageQKLP(PagerQuery pq) { + FinBillApplicationQuery query = pq.getParams(); + QueryWrapper qw = new QueryWrapper<>(); + if (StringUtils.isNotBlank(query.getOrgPath())) { + String useOrgSid = sysStaffOrgFeign.getOrgSidByPath(query.getOrgPath()).getData(); + query.setUseOrgSid(useOrgSid); + } + qw.eq("fba.billStateKey", "004"); + qw.eq("fba.useOrgSid", query.getUseOrgSid()); + qw.eq("fba.createBySid", query.getCreateBySid()); + if ("1".equals(query.getType())) { + qw.eq("fba.nodeState", "待提交"); + } else if ("2".equals(query.getType())) { + qw.ne("fba.nodeState", "待提交"); + } + if (StringUtils.isNotBlank(query.getSaleTypeKey())) { + qw.eq("fba.saleTypeKey", query.getSaleTypeKey()); + } + if (StringUtils.isNotBlank(query.getContractNo())) { + qw.like("fba.contractNo", query.getContractNo()); + } + if (StringUtils.isNotBlank(query.getOpenTickUnitName())) { + qw.like("fba.openTickUnitName", query.getOpenTickUnitName()); + } + if (StringUtils.isNotBlank(query.getCustomerName())) { + qw.like("fba.customerName", query.getCustomerName()); + } + if (StringUtils.isNotBlank(query.getModelName())) { + qw.like("fba.modelName", query.getModelName()); + } + if (StringUtils.isNotBlank(query.getBillStateKey())) { + qw.eq("fba.billStateKey", query.getBillStateKey()); + } + if (StringUtils.isNotBlank(query.getCreateByName())) { + qw.like("fba.createByName", query.getCreateByName()); + } + String returnedMoneyStartDate = query.getReturnedMoneyStartDate(); + String returnedMoneyEndDate = query.getReturnedMoneyEndDate(); + qw.apply(StringUtils.isNotEmpty(returnedMoneyStartDate), "date_format (fba.returnedMoneyDate,'%Y-%m-%d') >= date_format('" + returnedMoneyStartDate + "','%Y-%m-%d')"). + apply(StringUtils.isNotEmpty(returnedMoneyEndDate), "date_format (fba.returnedMoneyDate,'%Y-%m-%d') <= date_format('" + returnedMoneyEndDate + "','%Y-%m-%d')" + ); + IPage page = PagerUtil.queryToPage(pq); + IPage pagging = baseMapper.selectPageVo(page, qw); + PagerVo p = PagerUtil.pageToVo(pagging, null); + return p; + } + public ResultBean companyToDivisionOperateQK(BusinessVariables bv) { ResultBean rb = ResultBean.fireFail(); FinBillApplication finBillApplication = fetchBySid(bv.getBusinessSid()); @@ -2056,7 +2047,7 @@ public class FinBillApplicationService extends MybatisBaseService stringResultBean = messageFeign.pushMessage(messageFlowableQuery); + messageFeign.pushMessage(messageFlowableQuery); return rb.success().setData(resultBean1.getData()); } else { return rb.setMsg("操作失败!提交的数据不一致"); @@ -2096,4 +2087,6 @@ public class FinBillApplicationService extends MybatisBaseService { @Select("select * from fin_bill_file where billAppSid = #{sid} and attachType = '004'") List fetchzjBySid(String sid); + + @Select("select * from fin_bill_file where billAppSid = #{sid} and attachType = '005'") + List fetchfjBySid(String sid); } \ No newline at end of file diff --git a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finbillfile/FinBillFileService.java b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finbillfile/FinBillFileService.java index 05bac9685d..1a6031e9ff 100644 --- a/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finbillfile/FinBillFileService.java +++ b/anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finbillfile/FinBillFileService.java @@ -161,4 +161,8 @@ public class FinBillFileService extends MybatisBaseService fetchzjBySid(String sid) { return baseMapper.fetchzjBySid(sid); } + + public List fetchfjBySid(String sid) { + return baseMapper.fetchfjBySid(sid); + } } \ No newline at end of file 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 40308652d3..2ece976e25 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 @@ -53,6 +53,8 @@ public class AdvanceInvoiceDto implements Dto { private String remarks; @ApiModelProperty("欠款开票挂车信息") private List finBillTrailers; + @ApiModelProperty("附件") + private List fjApplicationAppendxs; @ApiModelProperty("证件") private List idCardImages; @ApiModelProperty("客户开票申请书") @@ -81,4 +83,6 @@ public class AdvanceInvoiceDto implements Dto { private String modelSid; // 车型sid @ApiModelProperty("车型名称") private String modelName; // 车型名称 + @ApiModelProperty("提前领取发票原件原因") + private String reason; } 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 c278916c2d..a9cef62209 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 @@ -54,6 +54,8 @@ public class AdvanceInvoiceInfoVo implements Vo { private String remarks; @ApiModelProperty("欠款开票挂车信息") private List finBillTrailers; + @ApiModelProperty("附件") + private List fjApplicationAppendxs; @ApiModelProperty("证件") private List idCardImages; @ApiModelProperty("客户开票申请书") @@ -82,4 +84,6 @@ public class AdvanceInvoiceInfoVo implements Vo { private String modelSid; // 车型sid @ApiModelProperty("车型名称") private String modelName; // 车型名称 + @ApiModelProperty("提前领取发票原件原因") + private String reason; } 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 146e8abf86..597c466075 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 @@ -25,10 +25,10 @@ *********************************************************/ package 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.advanceInvoice.flowable.*; +import com.yxt.anrui.terminal.api.autoservice.contract.flowable.ContractDto; +import com.yxt.anrui.terminal.api.autoservice.contract.flowable.ContractFlowListVo; +import com.yxt.anrui.terminal.api.autoservice.contract.flowable.ContractQuery; import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.vo.PagerVo; @@ -66,6 +66,11 @@ public interface AppBusAdvanceGinvoiceapplyFeign { @ResponseBody ResultBean> getAdvanceInvoiceList(@RequestBody PagerQuery pagerQuery); + @ApiOperation("手机端-获取欠款领票列表") + @PostMapping("/getAdvanceInvoiceLPList") + @ResponseBody + ResultBean> getAdvanceInvoiceLPList(@RequestBody PagerQuery pagerQuery); + @ApiOperation("移动端-新增欠款开票申请") @PostMapping("/addAdvanceInvoice") @ResponseBody @@ -76,6 +81,11 @@ public interface AppBusAdvanceGinvoiceapplyFeign { @ResponseBody public ResultBean initAdvanceInvoice(@SpringQueryMap AdvanceInvoiceInfoQuery query); + @ApiOperation("手机端-初始化欠款领票申请") + @GetMapping("/initAdvanceInvoiceLP") + @ResponseBody + public ResultBean initAdvanceInvoiceLP(@SpringQueryMap AdvanceInvoiceInfoQuery query); + @ApiOperation("手机端-欠款开票详情") @GetMapping("/detailAdvanceInvoice") @ResponseBody @@ -86,6 +96,11 @@ public interface AppBusAdvanceGinvoiceapplyFeign { @ResponseBody public ResultBean saveAdvanceInvoice(@Valid @RequestBody AdvanceInvoiceDto dto); + @ApiOperation("移动端-保存欠款领票申请") + @PostMapping("/saveAdvanceInvoiceLP") + @ResponseBody + public ResultBean saveAdvanceInvoiceLP(@Valid @RequestBody AdvanceInvoiceDto dto); + @ApiOperation("手机端-删除欠款开票") @DeleteMapping("/deleteAdvanceInvoice") @ResponseBody @@ -101,6 +116,11 @@ public interface AppBusAdvanceGinvoiceapplyFeign { @ResponseBody ResultBean agreeAdvanceInvoiceInfo(@RequestBody CompleteAdvanceInvoiceDto dto); + @ApiOperation("办理") + @PutMapping("/completeBy") + @ResponseBody + ResultBean agreeQKKPInfoBy(@RequestBody qkkpDto dto); + @ApiOperation("办理 跨机构") @PutMapping("/initiatorToAnswerInfo") @ResponseBody @@ -125,4 +145,9 @@ public interface AppBusAdvanceGinvoiceapplyFeign { @GetMapping("/getFlowOperateTitle") @ResponseBody ResultBean getFlowOperateTitle(@SpringQueryMap AdvanceInvoiceQuery query); + + @ApiOperation("获取下一环节") + @GetMapping("/getFlowOperateTitleBy") + @ResponseBody + ResultBean getFlowOperateTitleBy(@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 f679e2fa0c..ec3e118f67 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,10 +25,7 @@ *********************************************************/ package 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.advanceInvoice.flowable.*; import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.vo.PagerVo; @@ -56,6 +53,11 @@ public class AppBusAdvanceGinvoiceapplyFeignFallback implements AppBusAdvanceGin return null; } + @Override + public ResultBean> getAdvanceInvoiceLPList(PagerQuery pagerQuery) { + return null; + } + @Override public ResultBean addAdvanceInvoice(AdvanceInvoiceVinDto dto) { return null; @@ -66,6 +68,11 @@ public class AppBusAdvanceGinvoiceapplyFeignFallback implements AppBusAdvanceGin return null; } + @Override + public ResultBean initAdvanceInvoiceLP(AdvanceInvoiceInfoQuery query) { + return null; + } + @Override public ResultBean detailAdvanceInvoice(String sid) { return null; @@ -76,6 +83,11 @@ public class AppBusAdvanceGinvoiceapplyFeignFallback implements AppBusAdvanceGin return null; } + @Override + public ResultBean saveAdvanceInvoiceLP(AdvanceInvoiceDto dto) { + return null; + } + @Override public ResultBean deleteAdvanceInvoice(AdvanceInvoiceInfoQuery query) { return null; @@ -91,6 +103,11 @@ public class AppBusAdvanceGinvoiceapplyFeignFallback implements AppBusAdvanceGin return null; } + @Override + public ResultBean agreeQKKPInfoBy(qkkpDto dto) { + return null; + } + @Override public ResultBean initiatorToAnswer(CompleteAdvanceInvoiceDto dto) { return null; @@ -115,4 +132,9 @@ public class AppBusAdvanceGinvoiceapplyFeignFallback implements AppBusAdvanceGin public ResultBean getFlowOperateTitle(AdvanceInvoiceQuery query) { return null; } + + @Override + public ResultBean getFlowOperateTitleBy(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/flowable/qkkpDto.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/advanceInvoice/flowable/qkkpDto.java new file mode 100644 index 0000000000..1cfef7fd57 --- /dev/null +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/advanceInvoice/flowable/qkkpDto.java @@ -0,0 +1,51 @@ +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; +import java.util.List; + +/** + * @Author dimengzhe + * @Date 2022/8/30 15:57 + * @Description + */ +@Data +public class qkkpDto implements Dto { + private static final long serialVersionUID = -2994642678989084467L; + + @ApiModelProperty(value = "任务id") + @NotBlank(message = "参数错误:taskId") + private String taskId; + @ApiModelProperty(value = "流程id") + @NotBlank(message = "参数错误:procInsId") + @JsonProperty("procInsId") + private String instanceId; + @ApiModelProperty(value = "意见") + private String comment; + @ApiModelProperty(value = "业务sid") + @NotBlank(message = "参数错误:businessSid") + private String businessSid; + @ApiModelProperty(value = "用户sid") + @NotBlank(message = "参数错误:userSid") + private String userSid; + @ApiModelProperty(value = "节点id") + @NotBlank(message = "参数错误:taskDefKey") + private String taskDefKey; + + @ApiModelProperty("证件") + private List idCardImages; + @ApiModelProperty("客户开票申请书") + private List customerInvoiceApplyImages; + @ApiModelProperty("车辆登记合同") + private List registerContractImages; + @ApiModelProperty("确认书") + private List invoiceApplyConfirmImages; + + private String orgPath; + + +} diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/advanceInvoice/flowable/qkkpFlowListVo.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/advanceInvoice/flowable/qkkpFlowListVo.java new file mode 100644 index 0000000000..9154def0aa --- /dev/null +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/advanceInvoice/flowable/qkkpFlowListVo.java @@ -0,0 +1,27 @@ +package com.yxt.anrui.terminal.api.autoservice.advanceInvoice.flowable; + +import com.yxt.common.core.vo.Vo; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.List; + +/** + * @Author dimengzhe + * @Date 2023/2/8 16:51 + * @Description + */ +@Data +public class qkkpFlowListVo implements Vo { + private static final long serialVersionUID = 835198618461779653L; + + private String title; + @ApiModelProperty("证件") + private List idCardImages; + @ApiModelProperty("客户开票申请书") + private List customerInvoiceApplyImages; + @ApiModelProperty("车辆登记合同") + private List registerContractImages; + @ApiModelProperty("确认书") + private List invoiceApplyConfirmImages; +} 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 1e3be1cc0d..c48bdc1eea 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 @@ -26,10 +26,7 @@ package com.yxt.anrui.terminal.biz.autoservice.advanceInvoice; 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.advanceInvoice.flowable.*; import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.vo.PagerVo; @@ -63,6 +60,11 @@ public class AppBusAdvanceGinvoiceapplyRest implements AppBusAdvanceGinvoiceappl return appBusAdvanceGinvoiceapplyService.getAdvanceInvoiceList(pagerQuery); } + @Override + public ResultBean> getAdvanceInvoiceLPList(PagerQuery pagerQuery) { + return appBusAdvanceGinvoiceapplyService.getAdvanceInvoiceLPList(pagerQuery); + } + @Override public ResultBean addAdvanceInvoice(AdvanceInvoiceVinDto dto) { return appBusAdvanceGinvoiceapplyService.addAdvanceInvoice(dto); @@ -73,6 +75,11 @@ public class AppBusAdvanceGinvoiceapplyRest implements AppBusAdvanceGinvoiceappl return appBusAdvanceGinvoiceapplyService.initAdvanceInvoice(query); } + @Override + public ResultBean initAdvanceInvoiceLP(AdvanceInvoiceInfoQuery query) { + return appBusAdvanceGinvoiceapplyService.initAdvanceInvoiceLP(query); + } + @Override public ResultBean detailAdvanceInvoice(String sid) { return appBusAdvanceGinvoiceapplyService.detailAdvanceInvoice(sid); @@ -83,6 +90,11 @@ public class AppBusAdvanceGinvoiceapplyRest implements AppBusAdvanceGinvoiceappl return appBusAdvanceGinvoiceapplyService.saveAdvanceInvoice(dto); } + @Override + public ResultBean saveAdvanceInvoiceLP(AdvanceInvoiceDto dto) { + return appBusAdvanceGinvoiceapplyService.saveAdvanceInvoiceLP(dto); + } + @Override public ResultBean deleteAdvanceInvoice(AdvanceInvoiceInfoQuery query) { return appBusAdvanceGinvoiceapplyService.deleteAdvanceInvoice(query); @@ -98,6 +110,11 @@ public class AppBusAdvanceGinvoiceapplyRest implements AppBusAdvanceGinvoiceappl return appBusAdvanceGinvoiceapplyService.agreeAdvanceInvoiceInfo(dto); } + @Override + public ResultBean agreeQKKPInfoBy(qkkpDto dto) { + return appBusAdvanceGinvoiceapplyService.agreeQKKPInfoBy(dto); + } + @Override public ResultBean initiatorToAnswer(CompleteAdvanceInvoiceDto dto) { return appBusAdvanceGinvoiceapplyService.initiatorToAnswer(dto); @@ -123,5 +140,10 @@ public class AppBusAdvanceGinvoiceapplyRest implements AppBusAdvanceGinvoiceappl return appBusAdvanceGinvoiceapplyService.getFlowOperateTitle(query); } + @Override + public ResultBean getFlowOperateTitleBy(AdvanceInvoiceQuery query) { + return appBusAdvanceGinvoiceapplyService.getFlowOperateTitleBy(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 15ffac8cf0..f5336b38fa 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 @@ -28,6 +28,10 @@ package com.yxt.anrui.terminal.biz.autoservice.advanceInvoice; import cn.hutool.core.bean.BeanUtil; import com.alibaba.fastjson.JSON; +import com.yxt.anrui.base.api.commoncontract.AppCommonContractInitVo; +import com.yxt.anrui.base.api.commoncontract.flowable.CommonContractCompleteDto; +import com.yxt.anrui.base.api.commoncontract.flowable.CommonContractNodeQuery; +import com.yxt.anrui.base.api.commoncontract.flowable.CommonContractNodeVo; import com.yxt.anrui.buscenter.api.busadvanceginvoiceapply.*; import com.yxt.anrui.buscenter.api.busadvanceginvoiceapply.flowable.AppAdvanceInvoiceTaskQuery; import com.yxt.anrui.buscenter.api.busadvanceginvoiceapply.flowable.AppCompleteAdvanceInvoiceDto; @@ -38,6 +42,8 @@ import com.yxt.anrui.buscenter.api.bussalesorder.BusSalesOrderFeign; import com.yxt.anrui.buscenter.api.bussalesorder.BusSalesOrderIsDTKPJVo; import com.yxt.anrui.fin.api.finbillapplication.*; import com.yxt.anrui.fin.api.finbillapplication.flowable.FinBillCompleteDto; +import com.yxt.anrui.fin.api.finbillapplication.flowable.FinBillNodeQuery; +import com.yxt.anrui.fin.api.finbillapplication.flowable.FinBillNodeVo; import com.yxt.anrui.fin.api.finbillapplication.flowable.FinBillTaskQuery; import com.yxt.anrui.fin.api.finbillfile.FinBillFileDto; import com.yxt.anrui.fin.api.finbillfile.FinBillFileVo; @@ -50,10 +56,8 @@ 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.FinBillTrailerDto; -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.advanceInvoice.flowable.*; +import com.yxt.anrui.terminal.api.autoservice.contract.flowable.ContractFlowListVo; import com.yxt.anrui.terminal.api.autoservice.intermediary.MiddlemanVo; import com.yxt.anrui.terminal.api.autoservice.invoiced.*; import com.yxt.anrui.terminal.api.autoservice.invoiced.FinBillTrailerVo; @@ -138,6 +142,47 @@ public class AppBusAdvanceGinvoiceapplyService { return rb.success().setData(v); } + public ResultBean> getAdvanceInvoiceLPList(PagerQuery pagerQuery) { + ResultBean> rb = ResultBean.fireFail(); + PagerQuery pq = new PagerQuery<>(); + AdvanceInvoicePageQuery params = pagerQuery.getParams(); + FinBillApplicationQuery params1 = new FinBillApplicationQuery(); + params1.setOrgPath(params.getOrgPath()); + params1.setCreateBySid(params.getUserSid()); + params1.setCustomerName(params.getName()); + params1.setType(params.getType()); + pq.setParams(params1); + ResultBean> resultBean = finBillApplicationFeign.listPageQKLP(pq); + List advanceInvoicePageVos = new ArrayList<>(); + PagerVo v = new PagerVo<>(); + List records = resultBean.getData().getRecords(); + for (FinBillApplicationVo record : records) { + AdvanceInvoicePageVo advanceInvoicePageVo = new AdvanceInvoicePageVo(); + advanceInvoicePageVo.setSid(record.getSid()); + advanceInvoicePageVo.setContractId(record.getContractNo()); + advanceInvoicePageVo.setArrearsMoney(record.getArrearsMoney()); + advanceInvoicePageVo.setPaymentDate(record.getReturnedMoneyDate()); + advanceInvoicePageVo.setApplicant(record.getCreateByName()); + advanceInvoicePageVo.setNumber(record.getNum().toString()); + advanceInvoicePageVo.setReason(record.getReason()); + advanceInvoicePageVo.setDate(record.getApplyDate()); + advanceInvoicePageVo.setCustomerName(record.getCustomerName()); + advanceInvoicePageVo.setModel(record.getModelName()); + advanceInvoicePageVo.setType(record.getSaleTypeValue()); + advanceInvoicePageVo.setContractType(record.getNodeState()); + if (record.getNodeState().equals("待提交")){ + advanceInvoicePageVo.setShowUpdateBtn(true); + advanceInvoicePageVo.setShowDeleteBtn(true); + }else { + advanceInvoicePageVo.setShowUpdateBtn(false); + advanceInvoicePageVo.setShowDeleteBtn(false); + } + advanceInvoicePageVos.add(advanceInvoicePageVo); + } + v.setRecords(advanceInvoicePageVos); + return rb.success().setData(v); + } + public ResultBean addAdvanceInvoice(AdvanceInvoiceVinDto dto) { AppAdvanceInvoiceVinDto appAdvanceInvoiceVinDto = new AppAdvanceInvoiceVinDto(); BeanUtil.copyProperties(dto, appAdvanceInvoiceVinDto); @@ -254,6 +299,91 @@ public class AppBusAdvanceGinvoiceapplyService { return rb.success().setData(vo); } + public ResultBean initAdvanceInvoiceLP(AdvanceInvoiceInfoQuery query) { + ResultBean rb = ResultBean.fireFail(); + AdvanceInvoiceInfoVo vo = new AdvanceInvoiceInfoVo(); + AppBillApplicationDetailsQKQuery appBillApplicationDetailsQKQuery = new AppBillApplicationDetailsQKQuery(); + BeanUtil.copyProperties(query, appBillApplicationDetailsQKQuery); + ResultBean resultBean = finBillApplicationFeign.appQKFetchDetailsBySid(appBillApplicationDetailsQKQuery); + if (!resultBean.getSuccess()) { + return rb.setMsg(resultBean.getMsg()); + } + FinBillApplicationDetailsVo finBillApplicationDetailsVo = resultBean.getData(); + BeanUtil.copyProperties(finBillApplicationDetailsVo, vo); + vo.setReasonKey(finBillApplicationDetailsVo.getArrearsOpenYYKey()); + vo.setReasonValue(finBillApplicationDetailsVo.getArrearsOpenYYValue()); + vo.setCollectionDate(finBillApplicationDetailsVo.getReturnedMoneyDate()); + vo.setGetOriginalValue(finBillApplicationDetailsVo.getIsLQOrigInvoice()); + vo.setProcInsId(finBillApplicationDetailsVo.getProcInstSid()); + vo.setInvoiceTotal(finBillApplicationDetailsVo.getTotalBillMoney()); + vo.setOrgPath(finBillApplicationDetailsVo.getOrgSidPath()); + vo.setSaleType(finBillApplicationDetailsVo.getSaleTypeValue()); + vo.setSellerDept(finBillApplicationDetailsVo.getSaleDeptName()); + vo.setSellerName(finBillApplicationDetailsVo.getStaffName()); + vo.setInvoicingUnit(finBillApplicationDetailsVo.getOpenTickUnitName()); + vo.setName(finBillApplicationDetailsVo.getCustomerName()); + vo.setInvoiceMoney(finBillApplicationDetailsVo.getOneBillMoney()); + vo.setOpenTickSid(finBillApplicationDetailsVo.getOpenTickSid()); + vo.setOpenTickName(finBillApplicationDetailsVo.getOpenTickName()); + vo.setContractId(finBillApplicationDetailsVo.getContractNo()); + vo.setDate(finBillApplicationDetailsVo.getApplyDate()); + vo.setUserSid(finBillApplicationDetailsVo.getCreateBySid()); + vo.setModelSid(finBillApplicationDetailsVo.getModelSid()); + vo.setModelName(finBillApplicationDetailsVo.getModelName()); + vo.setPublishInfo(finBillApplicationDetailsVo.getDeptName() + "-" + finBillApplicationDetailsVo.getCreateByName()); + //车辆信息 + List vinListVos = new ArrayList<>(); + List finBillVehicles = finBillApplicationDetailsVo.getFinBillVehicles(); + if (finBillVehicles != null){ + for (FinBillVehicleVo finBillVehicle : finBillVehicles) { + AppCarListVo vinListVo = new AppCarListVo(); + vinListVo.setVin(finBillVehicle.getVinNo()); + vinListVo.setVinSid(finBillVehicle.getVehSid()); + vinListVo.setCertificateStateKey(finBillVehicle.getCertificateStateKey()); + vinListVo.setCertificateState(finBillVehicle.getCertificateStateValue()); + vinListVo.setInvoiceTypeKey(finBillVehicle.getBillTypeKey()); + vinListVo.setInvoiceType(finBillVehicle.getBillTypeValue()); + vinListVo.setOpenTickSid(finBillVehicle.getOpenTickSid()); + vinListVo.setInvoiceName(finBillVehicle.getOpenTickName()); + vinListVo.setInvoiceInfo(finBillVehicle.getOpenTickRemarks()); + vinListVos.add(vinListVo); + } + } + vo.setVinList(vinListVos); + //挂车信息 + List finBillTrailers = finBillApplicationDetailsVo.getFinBillTrailers(); + List finBillTrailerVos = new ArrayList<>(); + if (finBillTrailers != null && finBillTrailers.size() > 0){ + for (com.yxt.anrui.fin.api.finbilltrailer.FinBillTrailerVo finBillTrailer : finBillTrailers) { + com.yxt.anrui.terminal.api.autoservice.invoiced.FinBillTrailerVo finBillTrailerVo = new FinBillTrailerVo(); + BeanUtil.copyProperties(finBillTrailer,finBillTrailerVo); + String hgzImageUrl = finBillTrailer.getHgzImageUrl(); + List files = new ArrayList<>(); + files.add(hgzImageUrl); + finBillTrailerVo.setFiles(files); + finBillTrailerVos.add(finBillTrailerVo); + } + } + vo.setFinBillTrailers(finBillTrailerVos); + //附件信息 + List fjApplicationAppendxs = finBillApplicationDetailsVo.getFjApplicationAppendxs(); + List fj = new ArrayList<>(); + if (fjApplicationAppendxs != null){ + for (FinBillFileVo fjApplicationAppendx : fjApplicationAppendxs) { + fj.add(fjApplicationAppendx.getFileUrl()); + } + } + vo.setFjApplicationAppendxs(fj); + BusSalesOrderIsDTKPJVo busSalesOrderIsDTKPJVo = busSalesOrderFeign.fetchByContractNo(finBillApplicationDetailsVo.getContractNo()).getData(); + if (StringUtils.isNotBlank(busSalesOrderIsDTKPJVo.getOneBillMoney())){ + vo.setIsCanEdit(false); + vo.setInvoiceMoney(busSalesOrderIsDTKPJVo.getOneBillMoney()); + }else { + vo.setIsCanEdit(true); + } + return rb.success().setData(vo); + } + public ResultBean saveAdvanceInvoice(AdvanceInvoiceDto dto) { FinBillApplicationDto finBillApplicationDto = new FinBillApplicationDto(); BeanUtil.copyProperties(dto, finBillApplicationDto); @@ -357,6 +487,79 @@ public class AppBusAdvanceGinvoiceapplyService { return resultBean; } + public ResultBean saveAdvanceInvoiceLP(AdvanceInvoiceDto dto) { + FinBillApplicationDto finBillApplicationDto = new FinBillApplicationDto(); + BeanUtil.copyProperties(dto, finBillApplicationDto); + String useOrgSid = sysStaffOrgFeign.getOrgSidByPath(dto.getOrgPath()).getData(); + finBillApplicationDto.setUseOrgSid(useOrgSid); + finBillApplicationDto.setCreateBySid(dto.getUserSid()); + finBillApplicationDto.setArrearsMoney(dto.getInvoiceTotal()); + finBillApplicationDto.setReturnedMoneyDate(dto.getCollectionDate()); + finBillApplicationDto.setArrearsOpenYYKey(dto.getReasonKey()); + finBillApplicationDto.setArrearsOpenYYValue(dto.getReasonValue()); + finBillApplicationDto.setIsLQOrigInvoice(dto.getGetOriginalValue()); + finBillApplicationDto.setOrgSidPath(dto.getOrgPath()); + finBillApplicationDto.setSaleTypeValue(dto.getSaleType()); + finBillApplicationDto.setSaleDeptName(dto.getSellerName()); + finBillApplicationDto.setStaffName(dto.getSellerName()); + finBillApplicationDto.setOpenTickUnitName(dto.getOpenTickName()); + finBillApplicationDto.setCustomerName(dto.getName()); + finBillApplicationDto.setOneBillMoney(dto.getInvoiceMoney()); + finBillApplicationDto.setOpenTickName(dto.getOpenTickName()); + finBillApplicationDto.setContractNo(dto.getContractId()); + finBillApplicationDto.setApplyDate(dto.getDate()); + finBillApplicationDto.setCreateBySid(dto.getUserSid()); + finBillApplicationDto.setNodeState(dto.getNodeState()); + finBillApplicationDto.setBillNo(dto.getBillNo()); + finBillApplicationDto.setModelSid(dto.getModelSid()); + finBillApplicationDto.setModelName(dto.getModelName()); + String publishInfo = dto.getPublishInfo(); + String[] split = publishInfo.split("-"); + finBillApplicationDto.setDeptName(split[0]); + finBillApplicationDto.setCreateByName(split[1]); + //开票车辆信息 + List vinList = dto.getVinList(); + List finBillVehicleDtos = new ArrayList<>(); + for (AppCarListDto vinListDto : vinList) { + FinBillVehicleDto finBillVehicleDto = new FinBillVehicleDto(); + finBillVehicleDto.setVinNo(vinListDto.getVin()); + finBillVehicleDto.setVehSid(vinListDto.getVinSid()); + finBillVehicleDto.setCertificateStateKey(vinListDto.getCertificateStateKey()); + finBillVehicleDto.setCertificateStateValue(vinListDto.getCertificateState()); + finBillVehicleDto.setBillTypeKey(vinListDto.getInvoiceTypeKey()); + finBillVehicleDto.setBillTypeValue(vinListDto.getInvoiceType()); + finBillVehicleDto.setOpenTickSid(vinListDto.getOpenTickSid()); + finBillVehicleDto.setOpenTickName(vinListDto.getInvoiceName()); + finBillVehicleDto.setOpenTickRemarks(vinListDto.getInvoiceInfo()); + finBillVehicleDtos.add(finBillVehicleDto); + } + finBillApplicationDto.setFinBillVehicles(finBillVehicleDtos); + //开票挂车信息 + List finBillTrailers = dto.getFinBillTrailers(); + List finBillTrailerDtos = new ArrayList<>(); + if (finBillTrailers != null && finBillTrailers.size() > 0){ + for (com.yxt.anrui.terminal.api.autoservice.advanceInvoice.FinBillTrailerDto finBillTrailer : finBillTrailers) { + com.yxt.anrui.fin.api.finbilltrailer.FinBillTrailerDto finBillTrailerDto = new com.yxt.anrui.fin.api.finbilltrailer.FinBillTrailerDto(); + BeanUtil.copyProperties(finBillTrailer, finBillTrailerDto); + finBillTrailerDtos.add(finBillTrailerDto); + } + } + finBillApplicationDto.setFinBillTrailers(finBillTrailerDtos); + //附件信息 + List fjApplicationAppendxs = dto.getFjApplicationAppendxs();//证件 + List fj = new ArrayList<>();//证件 + if (fjApplicationAppendxs != null){ + for (String fjApplicationAppendx : fjApplicationAppendxs) { + FinBillFileDto finBillFileDto = new FinBillFileDto(); + finBillFileDto.setFileUrl(fjApplicationAppendx); + fj.add(finBillFileDto); + } + } + finBillApplicationDto.setFjApplicationAppendxs(fj); + ResultBean resultBean = finBillApplicationFeign.saveQKLP(finBillApplicationDto); + return resultBean; + } + public ResultBean deleteAdvanceInvoice(AdvanceInvoiceInfoQuery query) { List stringList = new ArrayList<>(); stringList.add(query.getSid()); @@ -687,4 +890,106 @@ public class AppBusAdvanceGinvoiceapplyService { } return rb.success().setData(vo); } + + public ResultBean agreeQKKPInfoBy(qkkpDto dto) { + ResultBean rb = ResultBean.fireFail(); + String orgSidPath = ""; + if(StringUtils.isNotBlank(dto.getOrgPath())){ + orgSidPath = dto.getOrgPath(); + }else{ + //根据用户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()); + } + //用户的组织全路径 + orgSidPath = staffOrgResultBean.getData().getOrgSidPath(); + } + FinBillCompleteDto finBillCompleteDto = new FinBillCompleteDto(); + BeanUtil.copyProperties(dto, finBillCompleteDto); + finBillCompleteDto.setOrgSidPath(orgSidPath); + ResultBean resultBean = finBillApplicationFeign.completeBy(finBillCompleteDto); + if (!resultBean.getSuccess()) { + return rb.setMsg(resultBean.getMsg()); + } + return rb.success().setData(resultBean.getData()); + } + + public ResultBean getFlowOperateTitleBy(AdvanceInvoiceQuery query) { + ResultBean rb = ResultBean.fireFail(); + qkkpFlowListVo qkkpFlowListVo = new qkkpFlowListVo(); + //0 上一环节 1下一环节 + int next = query.getNext(); + FinBillNodeQuery getNodeQuery = new FinBillNodeQuery(); + BeanUtil.copyProperties(query, getNodeQuery); + String data = ""; + if (next == 0) { + ResultBean> previousNodesForReject = finBillApplicationFeign.getPreviousNodesForReject(getNodeQuery); + if (previousNodesForReject.getSuccess()) { + previousNodesForReject.getData().removeAll(Collections.singleton(null)); + data = previousNodesForReject.getData().get(0).getName(); + } else { + return rb.setMsg(previousNodesForReject.getMsg()); + } + } else if (next == 1) { + ResultBean> nextNodesForSubmit = finBillApplicationFeign.getNextNodesForSubmit(getNodeQuery); + if (nextNodesForSubmit.getSuccess()) { + nextNodesForSubmit.getData().removeAll(Collections.singleton(null)); + data = nextNodesForSubmit.getData().get(0).getName(); + } else { + return rb.setMsg(nextNodesForSubmit.getMsg()); + } + } else { + return rb.setMsg("参数错误:next"); + } + qkkpFlowListVo.setTitle(data); + AppBillApplicationDetailsQKQuery appBillApplicationDetailsQKQuery = new AppBillApplicationDetailsQKQuery(); + appBillApplicationDetailsQKQuery.setSid(query.getBusinessSid()); + ResultBean resultBean = finBillApplicationFeign.appQKFetchDetailsBySid(appBillApplicationDetailsQKQuery); + if (!resultBean.getSuccess()) { + return rb.setMsg(resultBean.getMsg()); + } + FinBillApplicationDetailsVo finBillApplicationDetailsVo = resultBean.getData(); + if(finBillApplicationDetailsVo != null){ + //附件信息 + List khkpsqsApplicationAppendxs = finBillApplicationDetailsVo.getKhkpsqsApplicationAppendxs(); + List kpxxqrsApplicationAppendxs = finBillApplicationDetailsVo.getKpxxqrsApplicationAppendxs(); + List cldjhtApplicationAppendxs = finBillApplicationDetailsVo.getCldjhtApplicationAppendxs(); + List zjApplicationAppendxs = finBillApplicationDetailsVo.getZjApplicationAppendxs(); + List customerInvoiceApplyImages = new ArrayList<>();//客户开票申请书 + List invoiceApplyConfirmImages = new ArrayList<>();//开票信息确认书 + List registerContractImages = new ArrayList<>();//车辆登记合同 + List idCardImages = new ArrayList<>(); + if (zjApplicationAppendxs != null){ + for (FinBillFileVo zjApplicationAppendx : zjApplicationAppendxs) { + idCardImages.add(zjApplicationAppendx.getFileUrl()); + } + } + if (khkpsqsApplicationAppendxs != null){ + for (FinBillFileVo khkpsqsApplicationAppendx : khkpsqsApplicationAppendxs) { + customerInvoiceApplyImages.add(khkpsqsApplicationAppendx.getFileUrl()); + } + } + if (kpxxqrsApplicationAppendxs != null){ + for (FinBillFileVo kpxxqrsApplicationAppendx : kpxxqrsApplicationAppendxs) { + invoiceApplyConfirmImages.add(kpxxqrsApplicationAppendx.getFileUrl()); + } + } + if (cldjhtApplicationAppendxs != null){ + for (FinBillFileVo cldjhtApplicationAppendx : cldjhtApplicationAppendxs) { + registerContractImages.add(cldjhtApplicationAppendx.getFileUrl()); + } + } + qkkpFlowListVo.setCustomerInvoiceApplyImages(customerInvoiceApplyImages); + qkkpFlowListVo.setInvoiceApplyConfirmImages(invoiceApplyConfirmImages); + qkkpFlowListVo.setRegisterContractImages(registerContractImages); + qkkpFlowListVo.setIdCardImages(idCardImages); + } + return rb.success().setData(qkkpFlowListVo); + } } \ No newline at end of file