Browse Source

问题优化

master
God 2 years ago
parent
commit
de2aa62a8e
  1. 5
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplication/FinBillApplicationFeign.java
  2. 8
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finbillapplication/FinBillApplicationRest.java
  3. 146
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finbillapplication/FinBillApplicationService.java
  4. 19
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/invoiced/InvoicedFeign.java
  5. 10
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/invoiced/flowable/InvoicedDto.java
  6. 1
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/invoiced/flowable/InvoicedQuery.java
  7. 14
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/invoiced/flowable/KpsqFlowListVo.java
  8. 15
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/invoiced/InvoicedRest.java
  9. 160
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/invoiced/InvoicedService.java

5
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplication/FinBillApplicationFeign.java

@ -116,6 +116,11 @@ public interface FinBillApplicationFeign {
@PostMapping("/complete")
public ResultBean complete(@Valid @RequestBody FinBillCompleteDto query);
//开票申请销售内勤审批
@ApiOperation(value = "办理(同意)")
@PostMapping("/completeByKP")
ResultBean completeByKP(@Valid @RequestBody FinBillCompleteDto query);
@ApiOperation(value = "获取上一个环节")
@GetMapping(value = "/getPreviousNodesForReject")
ResultBean<List<FinBillNodeVo>> getPreviousNodesForReject(@Valid @SpringQueryMap FinBillNodeQuery query);

8
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finbillapplication/FinBillApplicationRest.java

@ -145,6 +145,14 @@ public class FinBillApplicationRest implements FinBillApplicationFeign {
return finBillApplicationService.complete(bv);
}
@Override
public ResultBean completeByKP(FinBillCompleteDto query) {
BusinessVariables bv = new BusinessVariables();
BeanUtil.copyProperties(query, bv);
bv.setModelId(ProcDefEnum.FINBILLAPPLICATION.getProDefId());
return finBillApplicationService.completeByKP(bv,query);
}
@Override
public ResultBean<List<FinBillNodeVo>> getPreviousNodesForReject(FinBillNodeQuery query) {
return finBillApplicationService.getPreviousNodesForReject(query);

146
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finbillapplication/FinBillApplicationService.java

@ -560,12 +560,16 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
finVehicleInvoiceDto.setInvoiceTitle(finBillApplication.getOpenTickUnitName());
finVehicleInvoiceDto.setContractNo(finBillApplication.getContractNo());
finVehicleInvoiceDto.setCustomerName(finBillApplication.getCustomerName());
finVehicleInvoiceDto.setVehicleSid(finBillVehicleVo.getVehSid());
finVehicleInvoiceDto.setVIN(finBillVehicleVo.getVinNo());
finVehicleInvoiceDto.setInvoiceTypeKey(finBillVehicleVo.getBillTypeKey());
finVehicleInvoiceDto.setInvoiceType(finBillVehicleVo.getBillTypeValue());
finVehicleInvoiceDto.setInvoiceAmount(finBillApplication.getOneBillMoney());
finVehicleInvoiceDto.setBillingStateKey("001");
finVehicleInvoiceDto.setBillingState("未开票");
finVehicleInvoiceDto.setTransferStateKey("001");
finVehicleInvoiceDto.setTransferState("未移交");
finVehicleInvoiceDto.setVehicleType("主车");
finVehicleInvoiceDto.setInvoicingName(finBillVehicleVo.getOpenTickName());
finVehicleInvoiceDto.setCreateBySid(finBillApplication.getCreateBySid());
finVehicleInvoiceDto.setBusinessStateKey(finBillApplication.getBillStateKey());
@ -584,12 +588,18 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
finVehicleInvoiceDto.setInvoiceTitle(finBillApplication.getOpenTickUnitName());
finVehicleInvoiceDto.setContractNo(finBillApplication.getContractNo());
finVehicleInvoiceDto.setCustomerName(finBillApplication.getCustomerName());
finVehicleInvoiceDto.setVIN(finBillTrailerVo.getGcVinNo());
String gcVinNo = finBillTrailerVo.getGcVinNo();
BaseTrailerDetailsVo baseTrailerDetailsVo = baseTrailerFeign.fetchByGcVinNo(gcVinNo).getData();
finVehicleInvoiceDto.setVehicleSid(baseTrailerDetailsVo.getSid());
finVehicleInvoiceDto.setVIN(gcVinNo);
finVehicleInvoiceDto.setInvoiceTypeKey(finBillTrailerVo.getBillTypeKey());
finVehicleInvoiceDto.setInvoiceType(finBillTrailerVo.getBillTypeValue());
finVehicleInvoiceDto.setInvoiceAmount(new BigDecimal(finBillTrailerVo.getOneBillMoney()));
finVehicleInvoiceDto.setBillingStateKey("001");
finVehicleInvoiceDto.setBillingState("未开票");
finVehicleInvoiceDto.setTransferStateKey("001");
finVehicleInvoiceDto.setTransferState("未移交");
finVehicleInvoiceDto.setVehicleType("挂车");
finVehicleInvoiceDto.setInvoicingName(finBillTrailerVo.getOpenTickName());
finVehicleInvoiceDto.setCreateBySid(finBillApplication.getCreateBySid());
finVehicleInvoiceDto.setBusinessStateKey(finBillApplication.getBillStateKey());
@ -1347,19 +1357,21 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
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());
if (finBillTrailers != null){
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);
}
finBillTrailerService.save(finBillTrailer);
}
//附件信息
if (khkpsqsApplicationAppendxs.size() > 0) {
@ -1735,12 +1747,16 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
finVehicleInvoiceDto.setInvoiceTitle(finBillApplication.getOpenTickUnitName());
finVehicleInvoiceDto.setContractNo(finBillApplication.getContractNo());
finVehicleInvoiceDto.setCustomerName(finBillApplication.getCustomerName());
finVehicleInvoiceDto.setVehicleSid(finBillVehicleVo.getVehSid());
finVehicleInvoiceDto.setVIN(finBillVehicleVo.getVinNo());
finVehicleInvoiceDto.setInvoiceTypeKey(finBillVehicleVo.getBillTypeKey());
finVehicleInvoiceDto.setInvoiceType(finBillVehicleVo.getBillTypeValue());
finVehicleInvoiceDto.setInvoiceAmount(finBillApplication.getOneBillMoney());
finVehicleInvoiceDto.setBillingStateKey("001");
finVehicleInvoiceDto.setBillingState("未开票");
finVehicleInvoiceDto.setTransferStateKey("001");
finVehicleInvoiceDto.setTransferState("未移交");
finVehicleInvoiceDto.setVehicleType("主车");
finVehicleInvoiceDto.setInvoicingName(finBillVehicleVo.getOpenTickName());
finVehicleInvoiceDto.setCreateBySid(finBillApplication.getCreateBySid());
finVehicleInvoiceDto.setBusinessStateKey(finBillApplication.getBillStateKey());
@ -1759,12 +1775,18 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
finVehicleInvoiceDto.setInvoiceTitle(finBillApplication.getOpenTickUnitName());
finVehicleInvoiceDto.setContractNo(finBillApplication.getContractNo());
finVehicleInvoiceDto.setCustomerName(finBillApplication.getCustomerName());
finVehicleInvoiceDto.setVIN(finBillTrailerVo.getGcVinNo());
String gcVinNo = finBillTrailerVo.getGcVinNo();
BaseTrailerDetailsVo baseTrailerDetailsVo = baseTrailerFeign.fetchByGcVinNo(gcVinNo).getData();
finVehicleInvoiceDto.setVehicleSid(baseTrailerDetailsVo.getSid());
finVehicleInvoiceDto.setVIN(gcVinNo);
finVehicleInvoiceDto.setInvoiceTypeKey(finBillTrailerVo.getBillTypeKey());
finVehicleInvoiceDto.setInvoiceType(finBillTrailerVo.getBillTypeValue());
finVehicleInvoiceDto.setInvoiceAmount(new BigDecimal(finBillTrailerVo.getOneBillMoney()));
finVehicleInvoiceDto.setBillingStateKey("001");
finVehicleInvoiceDto.setBillingState("未开票");
finVehicleInvoiceDto.setTransferStateKey("001");
finVehicleInvoiceDto.setTransferState("未移交");
finVehicleInvoiceDto.setVehicleType("挂车");
finVehicleInvoiceDto.setInvoicingName(finBillTrailerVo.getOpenTickName());
finVehicleInvoiceDto.setCreateBySid(finBillApplication.getCreateBySid());
finVehicleInvoiceDto.setBusinessStateKey(finBillApplication.getBillStateKey());
@ -2639,4 +2661,102 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
}
return rb.setMsg("操作失败!提交的数据不一致!");
}
public ResultBean completeByKP(BusinessVariables bv, FinBillCompleteDto query) {
ResultBean rb = ResultBean.fireFail();
String businessSid = bv.getBusinessSid();
List<FinBillFileDto> khkpsqsApplicationAppendxs = query.getKhkpsqsApplicationAppendxs();
List<FinBillFileDto> kpxxqrsApplicationAppendxs = query.getKpxxqrsApplicationAppendxs();
List<FinBillFileDto> cldjhtApplicationAppendxs = query.getCldjhtApplicationAppendxs();
List<FinBillFileDto> zjApplicationAppendxs = query.getZjApplicationAppendxs();
if (zjApplicationAppendxs.size() == 0){
return rb.setMsg("证件不能为空");
}
if (khkpsqsApplicationAppendxs.size() == 0){
return rb.setMsg("客户开票申请书不能为空");
}
FinBillApplication finBillApplication = fetchBySid(businessSid);
Map<String, Object> variables = new HashMap<>();
Map<String, Object> appMap = new HashMap<>();
appMap.put("sid", businessSid);
variables.put("app", appMap);
bv.setFormVariables(variables);
bv.setOrgSidPath(finBillApplication.getOrgSidPath());
if (bv.getTaskId().equals(finBillApplication.getTaskId())) {
ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.handleProsess(bv);
if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg());
}
UpdateFlowFieldVo ufVo = resultBean.getData();
updateFlowFiled(BeanUtil.beanToMap(resultBean.getData()));
//更新图片
finBillFileService.deleteByFinAppSid(businessSid);
//附件信息
if (khkpsqsApplicationAppendxs.size() > 0) {
for (FinBillFileDto finBillFileDto : khkpsqsApplicationAppendxs) {
String filePath = finBillFileDto.getFileUrl();
if (filePath.indexOf(fileUploadComponent.getUrlPrefix()) > -1) {
filePath = filePath.replace(fileUploadComponent.getUrlPrefix(), "");
}
finBillFileDto.setFileUrl(filePath);
finBillFileDto.setBillAppSid(businessSid);
finBillFileDto.setAttachType(FinAttachTypeEnum.KHKPSQS.getAttachType());
finBillFileService.saveOrUpdateDto(finBillFileDto);
}
}
if (zjApplicationAppendxs.size() > 0) {
for (FinBillFileDto finBillFileDto : zjApplicationAppendxs) {
String filePath = finBillFileDto.getFileUrl();
if (filePath.indexOf(fileUploadComponent.getUrlPrefix()) > -1) {
filePath = filePath.replace(fileUploadComponent.getUrlPrefix(), "");
}
finBillFileDto.setFileUrl(filePath);
finBillFileDto.setBillAppSid(businessSid);
finBillFileDto.setAttachType(FinAttachTypeEnum.ZJ.getAttachType());
finBillFileService.saveOrUpdateDto(finBillFileDto);
}
}
if (kpxxqrsApplicationAppendxs.size() > 0) {
for (FinBillFileDto finBillFileDto : kpxxqrsApplicationAppendxs) {
String filePath = finBillFileDto.getFileUrl();
if (filePath.indexOf(fileUploadComponent.getUrlPrefix()) > -1) {
filePath = filePath.replace(fileUploadComponent.getUrlPrefix(), "");
}
finBillFileDto.setFileUrl(filePath);
finBillFileDto.setBillAppSid(businessSid);
finBillFileDto.setAttachType(FinAttachTypeEnum.KPXXQRS.getAttachType());
finBillFileService.saveOrUpdateDto(finBillFileDto);
}
}
if (cldjhtApplicationAppendxs.size() > 0) {
for (FinBillFileDto finBillFileDto : cldjhtApplicationAppendxs) {
String filePath = finBillFileDto.getFileUrl();
if (filePath.indexOf(fileUploadComponent.getUrlPrefix()) > -1) {
filePath = filePath.replace(fileUploadComponent.getUrlPrefix(), "");
}
finBillFileDto.setFileUrl(filePath);
finBillFileDto.setBillAppSid(businessSid);
finBillFileDto.setAttachType(FinAttachTypeEnum.CLDJHT.getAttachType());
finBillFileService.saveOrUpdateDto(finBillFileDto);
}
}
//极光推送
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("操作失败!提交的数据不一致");
}
}
}

19
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/invoiced/InvoicedFeign.java

@ -1,12 +1,6 @@
package com.yxt.anrui.terminal.api.autoservice.invoiced;
import com.yxt.anrui.terminal.api.autoservice.invoiced.flowable.InvoicedDto;
import com.yxt.anrui.terminal.api.autoservice.invoiced.flowable.InvoicedQuery;
import com.yxt.anrui.terminal.api.autoservice.invoiced.flowable.InvoicedTaskQuery;
import com.yxt.anrui.terminal.api.autoservice.invoiced.flowable.SubmitInvoicedInfoDto;
import com.yxt.anrui.terminal.api.autoservice.retrieval.DeliveredApplyInfoVo;
import com.yxt.anrui.terminal.api.autoservice.retrieval.DeliveredPageQuery;
import com.yxt.anrui.terminal.api.autoservice.retrieval.DeliveredPageVo;
import com.yxt.anrui.terminal.api.autoservice.invoiced.flowable.*;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
@ -54,6 +48,12 @@ public interface InvoicedFeign {
@ResponseBody
ResultBean agreeInvoicedInfo(@RequestBody InvoicedDto dto);
//开票申请销售内勤上传附件
@ApiOperation("办理")
@PutMapping("/agreeInvoicedInfoKP")
@ResponseBody
ResultBean agreeInvoicedInfoKP(@RequestBody InvoicedDto dto);
@ApiOperation("驳回")
@PutMapping("/rejectInvoicedInfo")
@ResponseBody
@ -74,5 +74,8 @@ public interface InvoicedFeign {
@ResponseBody
ResultBean<String> getFlowOperateTitle(@SpringQueryMap InvoicedQuery query);
@ApiOperation("获取下一环节")
@GetMapping("/getFlowOperateTitleByKP")
@ResponseBody
ResultBean<KpsqFlowListVo> getFlowOperateTitleByKP(@SpringQueryMap InvoicedQuery query);
}

10
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/invoiced/flowable/InvoicedDto.java

@ -6,6 +6,7 @@ import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import java.util.List;
/**
* @Author dimengzhe
@ -34,4 +35,13 @@ public class InvoicedDto implements Dto {
@ApiModelProperty(value = "节点id")
@NotBlank(message = "参数错误:taskDefKey")
private String taskDefKey;
@ApiModelProperty("证件")
private List<String> idCardImages;
@ApiModelProperty("客户开票申请书")
private List<String> customerInvoiceApplyImages;
@ApiModelProperty("车辆登记合同")
private List<String> registerContractImages;
@ApiModelProperty("确认书")
private List<String> invoiceApplyConfirmImages;
}

1
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/invoiced/flowable/InvoicedQuery.java

@ -20,6 +20,5 @@ public class InvoicedQuery implements Query {
@ApiModelProperty(value = "业务sid")
private String businessSid;
@ApiModelProperty(value = "0 上一环节 1下一环节")
@NotNull(message = "参数错误:next")
private Integer next;
}

14
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/invoiced/flowable/KpsqFlowListVo.java

@ -0,0 +1,14 @@
package com.yxt.anrui.terminal.api.autoservice.invoiced.flowable;
import com.yxt.anrui.terminal.api.autoservice.advanceInvoice.ItemEditTextInfo;
import lombok.Data;
import java.util.List;
@Data
public class KpsqFlowListVo {
private String title;
private List<ItemEditTextInfo> list;
}

15
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/invoiced/InvoicedRest.java

@ -1,10 +1,7 @@
package com.yxt.anrui.terminal.biz.autoservice.invoiced;
import com.yxt.anrui.terminal.api.autoservice.invoiced.*;
import com.yxt.anrui.terminal.api.autoservice.invoiced.flowable.InvoicedDto;
import com.yxt.anrui.terminal.api.autoservice.invoiced.flowable.InvoicedQuery;
import com.yxt.anrui.terminal.api.autoservice.invoiced.flowable.InvoicedTaskQuery;
import com.yxt.anrui.terminal.api.autoservice.invoiced.flowable.SubmitInvoicedInfoDto;
import com.yxt.anrui.terminal.api.autoservice.invoiced.flowable.*;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
@ -51,6 +48,11 @@ public class InvoicedRest implements InvoicedFeign {
return invoicedService.agreeInvoicedInfo(dto);
}
@Override
public ResultBean agreeInvoicedInfoKP(InvoicedDto dto) {
return invoicedService.agreeInvoicedInfoKP(dto);
}
@Override
public ResultBean rejectInvoicedInfo(InvoicedTaskQuery query) {
return invoicedService.rejectInvoicedInfo(query);
@ -70,4 +72,9 @@ public class InvoicedRest implements InvoicedFeign {
public ResultBean<String> getFlowOperateTitle(InvoicedQuery query) {
return invoicedService.getFlowOperateTitle(query);
}
@Override
public ResultBean<KpsqFlowListVo> getFlowOperateTitleByKP(InvoicedQuery query) {
return invoicedService.getFlowOperateTitleByKP(query);
}
}

160
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/invoiced/InvoicedService.java

@ -1,10 +1,6 @@
package com.yxt.anrui.terminal.biz.autoservice.invoiced;
import cn.hutool.core.bean.BeanUtil;
import com.alibaba.fastjson.JSON;
import com.yxt.anrui.base.api.commoncontract.flowable.AppSubmitContractInfoDto;
import com.yxt.anrui.buscenter.api.busadvanceginvoiceapply.AppAdvanceInvoicePageQuery;
import com.yxt.anrui.buscenter.api.busadvanceginvoiceapply.AppAdvanceInvoicePageVo;
import com.yxt.anrui.buscenter.api.bussalesorder.BusSalesOrderFeign;
import com.yxt.anrui.buscenter.api.bussalesorder.BusSalesOrderIsDTKPJVo;
import com.yxt.anrui.fin.api.finbillapplication.*;
@ -16,35 +12,22 @@ import com.yxt.anrui.fin.api.finbillfile.FinBillFileDto;
import com.yxt.anrui.fin.api.finbillfile.FinBillFileVo;
import com.yxt.anrui.fin.api.finbillvehicle.FinBillVehicleDto;
import com.yxt.anrui.fin.api.finbillvehicle.FinBillVehicleVo;
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.scmvehicleexamine.AppScmVehicleExamineInfoVo;
import com.yxt.anrui.scm.api.scmvehicleexamine.AppScmVehicleExaminePageQuery;
import com.yxt.anrui.terminal.api.autoservice.advanceInvoice.AdvanceInvoicePageVo;
import com.yxt.anrui.terminal.api.autoservice.advanceInvoice.ItemEditTextInfo;
import com.yxt.anrui.terminal.api.autoservice.advanceInvoice.flowable.qkkpFlowListVo;
import com.yxt.anrui.terminal.api.autoservice.invoiced.*;
import com.yxt.anrui.terminal.api.autoservice.invoiced.flowable.InvoicedDto;
import com.yxt.anrui.terminal.api.autoservice.invoiced.flowable.InvoicedQuery;
import com.yxt.anrui.terminal.api.autoservice.invoiced.flowable.InvoicedTaskQuery;
import com.yxt.anrui.terminal.api.autoservice.invoiced.flowable.SubmitInvoicedInfoDto;
import com.yxt.anrui.terminal.api.autoservice.retrieval.DeliveredApplyInfoVo;
import com.yxt.anrui.terminal.api.supplychain.scmvehicleexamine.AppExamineInfoVo;
import com.yxt.anrui.terminal.api.supplychain.scmvehicleexamine.AppExaminePageVo;
import com.yxt.anrui.terminal.config.CoverUtils;
import com.yxt.anrui.terminal.api.autoservice.invoiced.flowable.*;
import com.yxt.common.base.utils.StringUtils;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import io.swagger.annotations.ApiModelProperty;
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;
/**
* @Author dimengzhe
@ -478,4 +461,141 @@ public class InvoicedService {
}
return rb.success();
}
public ResultBean agreeInvoicedInfoKP(InvoicedDto dto) {
ResultBean rb = ResultBean.fireFail();
FinBillCompleteDto finBillCompleteDto = new FinBillCompleteDto();
BeanUtil.copyProperties(dto, finBillCompleteDto);
//附件信息
List<String> customerInvoiceApplyImages = dto.getCustomerInvoiceApplyImages();//客户开票申请书
List<String> invoiceApplyConfirmImages = dto.getInvoiceApplyConfirmImages();//开票信息确认书
List<String> registerContractImages = dto.getRegisterContractImages();//车辆登记合同
List<String> idCardImages = dto.getIdCardImages();//证件
List<FinBillFileDto> khkpsqsApplicationAppendxs = new ArrayList<>(); // 客户开票申请书附件信息
List<FinBillFileDto> kpxxqrsApplicationAppendxs = new ArrayList<>(); // 开票信息确认书附件信息
List<FinBillFileDto> cldjhtApplicationAppendxs = new ArrayList<>(); // 车辆登记合同附件信息
List<FinBillFileDto> idCardImagesPC = new ArrayList<>();//证件
if (customerInvoiceApplyImages != null){
for (String customerInvoiceApplyImage : customerInvoiceApplyImages) {
FinBillFileDto finBillFileDto = new FinBillFileDto();
finBillFileDto.setFileUrl(customerInvoiceApplyImage);
khkpsqsApplicationAppendxs.add(finBillFileDto);
}
}
if (invoiceApplyConfirmImages != null){
for (String invoiceApplyConfirmImage : invoiceApplyConfirmImages) {
FinBillFileDto finBillFileDto = new FinBillFileDto();
finBillFileDto.setFileUrl(invoiceApplyConfirmImage);
kpxxqrsApplicationAppendxs.add(finBillFileDto);
}
}
if (registerContractImages != null){
for (String registerContractImage : registerContractImages) {
FinBillFileDto finBillFileDto = new FinBillFileDto();
finBillFileDto.setFileUrl(registerContractImage);
cldjhtApplicationAppendxs.add(finBillFileDto);
}
}
if (idCardImages != null){
for (String idCardImage : idCardImages) {
FinBillFileDto finBillFileDto = new FinBillFileDto();
finBillFileDto.setFileUrl(idCardImage);
idCardImagesPC.add(finBillFileDto);
}
}
finBillCompleteDto.setKhkpsqsApplicationAppendxs(khkpsqsApplicationAppendxs);
finBillCompleteDto.setKpxxqrsApplicationAppendxs(kpxxqrsApplicationAppendxs);
finBillCompleteDto.setCldjhtApplicationAppendxs(cldjhtApplicationAppendxs);
finBillCompleteDto.setZjApplicationAppendxs(idCardImagesPC);
ResultBean resultBean = finBillApplicationFeign.completeByKP(finBillCompleteDto);
if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg());
}
return rb.success().setData(resultBean.getData());
}
public ResultBean<KpsqFlowListVo> getFlowOperateTitleByKP(InvoicedQuery query) {
ResultBean<KpsqFlowListVo> rb = ResultBean.fireFail();
KpsqFlowListVo kpsqFlowListVo = new KpsqFlowListVo();
FinBillNodeQuery getNodeQuery = new FinBillNodeQuery();
BeanUtil.copyProperties(query, getNodeQuery);
String data = "";
ResultBean<List<FinBillNodeVo>> 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());
}
kpsqFlowListVo.setTitle(data);
AppBillApplicationDetailsQKQuery appBillApplicationDetailsQKQuery = new AppBillApplicationDetailsQKQuery();
appBillApplicationDetailsQKQuery.setSid(query.getBusinessSid());
ResultBean<FinBillApplicationDetailsVo> resultBean = finBillApplicationFeign.appQKFetchDetailsBySid(appBillApplicationDetailsQKQuery);
if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg());
}
FinBillApplicationDetailsVo finBillApplicationDetailsVo = resultBean.getData();
if (finBillApplicationDetailsVo != null) {
//附件信息
List<FinBillFileVo> khkpsqsApplicationAppendxs = finBillApplicationDetailsVo.getKhkpsqsApplicationAppendxs();
List<FinBillFileVo> kpxxqrsApplicationAppendxs = finBillApplicationDetailsVo.getKpxxqrsApplicationAppendxs();
List<FinBillFileVo> cldjhtApplicationAppendxs = finBillApplicationDetailsVo.getCldjhtApplicationAppendxs();
List<FinBillFileVo> zjApplicationAppendxs = finBillApplicationDetailsVo.getZjApplicationAppendxs();
List<String> customerInvoiceApplyImages = new ArrayList<>();//客户开票申请书
List<String> invoiceApplyConfirmImages = new ArrayList<>();//开票信息确认书
List<String> registerContractImages = new ArrayList<>();//车辆登记合同
List<String> idCardImages = new ArrayList<>();
List<ItemEditTextInfo> itemEditTextInfos = new ArrayList<>();
if (zjApplicationAppendxs != null) {
for (FinBillFileVo zjApplicationAppendx : zjApplicationAppendxs) {
idCardImages.add(zjApplicationAppendx.getFileUrl());
}
ItemEditTextInfo itemEditTextInfo = new ItemEditTextInfo();
itemEditTextInfo.setTitle("证件");
itemEditTextInfo.setType(1);
itemEditTextInfo.setNullAble(false);
itemEditTextInfo.setKey("idCardImages");
itemEditTextInfo.setFilesPath(idCardImages);
itemEditTextInfos.add(itemEditTextInfo);
}
if (khkpsqsApplicationAppendxs != null) {
for (FinBillFileVo khkpsqsApplicationAppendx : khkpsqsApplicationAppendxs) {
customerInvoiceApplyImages.add(khkpsqsApplicationAppendx.getFileUrl());
}
ItemEditTextInfo itemEditTextInfo = new ItemEditTextInfo();
itemEditTextInfo.setTitle("客户开票申请书");
itemEditTextInfo.setType(1);
itemEditTextInfo.setNullAble(false);
itemEditTextInfo.setKey("customerInvoiceApplyImages");
itemEditTextInfo.setFilesPath(customerInvoiceApplyImages);
itemEditTextInfos.add(itemEditTextInfo);
}
if (kpxxqrsApplicationAppendxs != null) {
for (FinBillFileVo kpxxqrsApplicationAppendx : kpxxqrsApplicationAppendxs) {
invoiceApplyConfirmImages.add(kpxxqrsApplicationAppendx.getFileUrl());
}
ItemEditTextInfo itemEditTextInfo = new ItemEditTextInfo();
itemEditTextInfo.setTitle("款项确认书");
itemEditTextInfo.setType(1);
itemEditTextInfo.setNullAble(true);
itemEditTextInfo.setKey("invoiceApplyConfirmImages");
itemEditTextInfo.setFilesPath(invoiceApplyConfirmImages);
itemEditTextInfos.add(itemEditTextInfo);
}
if (cldjhtApplicationAppendxs != null) {
for (FinBillFileVo cldjhtApplicationAppendx : cldjhtApplicationAppendxs) {
registerContractImages.add(cldjhtApplicationAppendx.getFileUrl());
}
ItemEditTextInfo itemEditTextInfo = new ItemEditTextInfo();
itemEditTextInfo.setTitle("车辆登记合同");
itemEditTextInfo.setType(1);
itemEditTextInfo.setNullAble(true);
itemEditTextInfo.setKey("registerContractImages");
itemEditTextInfo.setFilesPath(registerContractImages);
itemEditTextInfos.add(itemEditTextInfo);
}
kpsqFlowListVo.setList(itemEditTextInfos);
}
return rb.success().setData(kpsqFlowListVo);
}
}

Loading…
Cancel
Save