Browse Source

Merge remote-tracking branch 'origin/master'

master
yunuo970428 2 years ago
parent
commit
fcc4155678
  1. 8
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basedistributor/app/BaseDistributorsListVo.java
  2. 2
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basetrailer/BaseTrailer.java
  3. 3
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basetrailer/BaseTrailerDetailsVo.java
  4. 2
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basetrailer/BaseTrailerDto.java
  5. 4
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basetrailer/BaseTrailerFeign.java
  6. 5
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basetrailer/BaseTrailerFeignFallback.java
  7. 14
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basedistributor/BaseDistributorMapper.xml
  8. 20
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basedistributor/BaseDistributorService.java
  9. 3
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basetrailer/BaseTrailerMapper.java
  10. 5
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basetrailer/BaseTrailerRest.java
  11. 52
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basetrailer/BaseTrailerService.java
  12. 5
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicle/BaseVehicleService.java
  13. 8
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdelivered/AppBusDeliveredPageVo.java
  14. 4
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdelivered/AppDeliveredDetailsQuery.java
  15. 41
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdelivered/AppDeliveredDetailsVo.java
  16. 5
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdelivered/BusDeliveredFeign.java
  17. 4
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdelivered/BusDeliveredQuery.java
  18. 16
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdelivered/BusDeliveredVo.java
  19. 3
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdeliveredapply/AppDeliveredApplyDto.java
  20. 4
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdeliveredapply/BusDeliveredApply.java
  21. 7
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdeliveredapply/BusDeliveredApplyFeign.java
  22. 2
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdiscountpackagehandover/BusDiscountpackageHandoverDto.java
  23. 6
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdiscountpackagehandoverlist/BusDiscountpackageHandoverList.java
  24. 8
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdiscountpackagehandoverlist/BusDiscountpackageHandoverListDto.java
  25. 4
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdelivered/BusDeliveredMapper.java
  26. 37
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdelivered/BusDeliveredMapper.xml
  27. 84
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdelivered/BusDeliveredService.java
  28. 7
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyMapper.xml
  29. 172
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyService.java
  30. 2
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdelivereddetailsdiscount/BusDeliveredDetailsDiscountMapper.java
  31. 12
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdelivereddetailsdiscount/BusDeliveredDetailsDiscountMapper.xml
  32. 6
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdelivereddetailsdiscount/BusDeliveredDetailsDiscountService.java
  33. 1
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplication/AppBillApplicationIInfoDto.java
  34. 4
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplication/AppBillApplicationIInfoVo.java
  35. 9
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplication/AppVinListDto.java
  36. 6
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplication/AppVinListVo.java
  37. 3
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplication/FinBillApplicationVo.java
  38. 2
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbilltrailer/FinBillTrailerVo.java
  39. 29
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillvehicle/FinBillVehicleDetailsVo.java
  40. 2
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillvehicle/FinBillVehicleFeign.java
  41. 2
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillvehicle/FinBillVehicleFeignFallback.java
  42. 71
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finbillapplication/FinBillApplicationService.java
  43. 5
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finbillvehicle/FinBillVehicleMapper.java
  44. 6
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finbillvehicle/FinBillVehicleRest.java
  45. 2
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finbillvehicle/FinBillVehicleService.java
  46. 30
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/fincollectionconfirmation/FinCollectionConfirmationService.java
  47. 2
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finselectedreceivablesdetailed/FinSelectedReceivablesDetailedMapper.java
  48. 11
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finselectedreceivablesdetailed/FinSelectedReceivablesDetailedMapper.xml
  49. 4
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finselectedreceivablesdetailed/FinSelectedReceivablesDetailedService.java
  50. 5
      anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowtask/FlowTaskController.java
  51. 2
      anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowtask/FlowTaskMapper.xml
  52. 100
      anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowtask/FlowTaskService.java
  53. 4
      anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/flow/FlowTaskAllQuery.java
  54. 10
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/flow/FlowableRest.java
  55. 18
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/flow/FlowableService.java
  56. 37
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmapplyinbound/ScmApplyInboundService.java
  57. 14
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehicleexamine/ScmVehicleExamineService.java
  58. 133
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/invoiced/BillApplicationIInfoDto.java
  59. 137
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/invoiced/BillApplicationIInfoVo.java
  60. 6
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/invoiced/FinBillTrailerVo.java
  61. 27
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/invoiced/VinListDto.java
  62. 26
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/invoiced/VinListVo.java
  63. 2
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/retrieval/DeliveredApplyDto.java
  64. 18
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/retrieval/DeliveredDetailsVo.java
  65. 38
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/invoiced/InvoicedService.java
  66. 1
      doc/databases/bus-center_tables.sql
  67. 88
      工作内容需要的文档/单据模板/销售订单审批下载模板/xsddsp.ftl

8
anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basedistributor/app/BaseDistributorsListVo.java

@ -25,4 +25,12 @@ public class BaseDistributorsListVo implements Vo {
private String contract;
@ApiModelProperty(value = "联系电话")
private String mobile;
@ApiModelProperty(value = "开票信息")
private String billInfo;
private String registDetailAddress;//地址
private String invoPhone;//开票联系电话
private String invoBank;//开票开户行
private String invoBankNum;//开票银行账号
}

2
anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basetrailer/BaseTrailer.java

@ -87,4 +87,6 @@ public class BaseTrailer extends BaseEntity {
private String useOrgName;
@ApiModelProperty("单据编号")
private String billNo;
@ApiModelProperty("单台开票金额")
private BigDecimal oneBillMoney; // 单台开票金额
}

3
anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basetrailer/BaseTrailerDetailsVo.java

@ -34,6 +34,7 @@ import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
import java.util.List;
/**
@ -102,6 +103,8 @@ public class BaseTrailerDetailsVo implements Vo {
private String useOrgSid;
@ApiModelProperty("分公司名称")
private String useOrgName;
@ApiModelProperty("单台开票金额")
private String oneBillMoney; // 单台开票金额
@ApiModelProperty("发票照片")
private List<CommonAppendixVo> invoicePic;
@ApiModelProperty("合格证照片")

2
anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basetrailer/BaseTrailerDto.java

@ -92,6 +92,8 @@ public class BaseTrailerDto implements Dto {
private String billNo;
@ApiModelProperty("部门sid")
private String departmentSid;
@ApiModelProperty("单台开票金额")
private String oneBillMoney; // 单台开票金额
@ApiModelProperty("发票照片")
private List<CommonAppendixDto> invoicePic;
@ApiModelProperty("合格证照片")

4
anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basetrailer/BaseTrailerFeign.java

@ -117,4 +117,8 @@ public interface BaseTrailerFeign {
@ApiOperation("查询主车的挂车信息")
@GetMapping("/trailerList")
ResultBean<TraliveredVo> trailerList(@RequestParam("vinSid") String vinSid);
@ApiOperation("根据挂车车架号获取一条记录")
@GetMapping("/fetchByGcVinNo/{gcVinNo}")
ResultBean<BaseTrailerDetailsVo> fetchByGcVinNo(@PathVariable("gcVinNo") String gcVinNo);
}

5
anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basetrailer/BaseTrailerFeignFallback.java

@ -88,4 +88,9 @@ public class BaseTrailerFeignFallback implements BaseTrailerFeign {
public ResultBean<TraliveredVo> trailerList(String vinSid) {
return null;
}
@Override
public ResultBean<BaseTrailerDetailsVo> fetchByGcVinNo(String gcVinNo) {
return null;
}
}

14
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basedistributor/BaseDistributorMapper.xml

@ -112,7 +112,16 @@
</select>
<select id="getDistributorList" resultType="com.yxt.anrui.base.api.basedistributor.app.BaseDistributorsListVo">
select sid, disName, pDistributorName, registNum, contract, mobile
select sid,
disName,
pDistributorName,
registNum,
contract,
mobile,
registDetailAddress,
invoPhone,
invoBank,
invoBankNum
from base_distributor ${ew.customSqlSegment}
</select>
@ -217,8 +226,7 @@
<select id="selectAllDisList" resultType="com.yxt.anrui.base.api.basedistributor.BaseDistributorListVo">
SELECT sid,
disName AS 'name',
registNum,
disName AS 'name', registNum,
registDetailAddress,
invoPhone,
invoBank,

20
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basedistributor/BaseDistributorService.java

@ -537,6 +537,26 @@ public class BaseDistributorService extends MybatisBaseService<BaseDistributorMa
}
}
IPage<BaseDistributorsListVo> pagging = baseMapper.getDistributorList(page, qw);
List<BaseDistributorsListVo> baseDistributorListVos = pagging.getRecords();
for (BaseDistributorsListVo baseDistributorListVo : baseDistributorListVos) {
String openTickRemarks = "";
if (StringUtils.isNotBlank(openTickRemarks + baseDistributorListVo.getRegistNum())){
openTickRemarks = openTickRemarks + baseDistributorListVo.getRegistNum() + ";";
}
if (StringUtils.isNotBlank(baseDistributorListVo.getRegistDetailAddress())){
openTickRemarks = baseDistributorListVo.getRegistDetailAddress() + ";";
}
if (StringUtils.isNotBlank(baseDistributorListVo.getInvoPhone())){
openTickRemarks = baseDistributorListVo.getInvoPhone() + ";";
}
if (StringUtils.isNotBlank(baseDistributorListVo.getInvoBank())){
openTickRemarks = baseDistributorListVo.getInvoBank() + ";";
}
if (StringUtils.isNotBlank(baseDistributorListVo.getInvoBankNum())){
openTickRemarks = baseDistributorListVo.getInvoBankNum() + ";";
}
baseDistributorListVo.setBillInfo(openTickRemarks);
}
PagerVo<BaseDistributorsListVo> p = PagerUtil.pageToVo(pagging, null);
return p;
}

3
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basetrailer/BaseTrailerMapper.java

@ -90,4 +90,7 @@ public interface BaseTrailerMapper extends BaseMapper<BaseTrailer> {
int selectNumGCRK(String bill);
List<TrailerVo> trailerList(String vinSid);
@Select("select * from base_trailer where vinNo = #{gcVinNo}")
BaseTrailerDetailsVo fetchByGcVinNo(String gcVinNo);
}

5
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basetrailer/BaseTrailerRest.java

@ -114,4 +114,9 @@ public class BaseTrailerRest implements BaseTrailerFeign {
public ResultBean<TraliveredVo> trailerList(String vinSid) {
return baseTrailerService.trailerList(vinSid);
}
@Override
public ResultBean<BaseTrailerDetailsVo> fetchByGcVinNo(String gcVinNo) {
return baseTrailerService.fetchByGcVinNo(gcVinNo);
}
}

52
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basetrailer/BaseTrailerService.java

@ -67,6 +67,16 @@ import com.yxt.anrui.buscenter.api.bussalesorder.BusSalesOrderDetailsVo;
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.finbillapplication.FinBillApplicationDetailsVo;
import com.yxt.anrui.fin.api.finbillapplication.FinBillApplicationDto;
import com.yxt.anrui.fin.api.finbillapplication.FinBillApplicationFeign;
import com.yxt.anrui.fin.api.finbilltrailer.FinBillTrailerDto;
import com.yxt.anrui.fin.api.finbilltrailer.FinBillTrailerVo;
import com.yxt.anrui.fin.api.finbillvehicle.FinBillVehicleDetailsVo;
import com.yxt.anrui.fin.api.finbillvehicle.FinBillVehicleDto;
import com.yxt.anrui.fin.api.finbillvehicle.FinBillVehicleFeign;
import com.yxt.anrui.fin.api.finvehicleinvoice.FinVehicleInvoiceDto;
import com.yxt.anrui.fin.api.finvehicleinvoice.FinVehicleInvoiceFeign;
import com.yxt.anrui.fin.api.kingdee.FinKingDeeFeign;
import com.yxt.anrui.fin.api.kingdee.bdmaterial.BdMaterial;
import com.yxt.anrui.fin.api.kingdee.saloutstock.SalOutStock;
@ -93,6 +103,7 @@ import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.math.BigDecimal;
import java.nio.charset.StandardCharsets;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Date;
@ -146,6 +157,12 @@ public class BaseTrailerService extends MybatisBaseService<BaseTrailerMapper, Ba
private SysUserFeign sysUserFeign;
@Autowired
private ScmApplyInboundQueryFeign scmApplyInboundQueryFeign;
@Autowired
private FinBillVehicleFeign finBillVehicleFeign;
@Autowired
private FinBillApplicationFeign finBillApplicationFeign;
@Autowired
private FinVehicleInvoiceFeign finVehicleInvoiceFeign;
private QueryWrapper<BaseTrailer> createQueryWrapper(BaseTrailerQuery query) {
// 多字段Like示例:qw.and(wrapper -> wrapper.like("name", query.getName()).or().like("remark", query.getName()));
@ -510,9 +527,20 @@ public class BaseTrailerService extends MybatisBaseService<BaseTrailerMapper, Ba
}
String vehSid = baseTrailer.getVehSid();
BaseVehicle baseVehicle = baseVehicleService.fetchBySid(vehSid);
String vehicleState = baseVehicle.getVehicleState();
/*String vehicleState = baseVehicle.getVehicleState();
if (!vehicleState.equals("0002")) {
return rb.setMsg("此主车车辆库存状态不是出库,请重新选择");
}*/
FinBillVehicleDetailsVo finBillVehicleDetailsVo = finBillVehicleFeign.fetchByVehSid(vehSid).getData();
FinBillApplicationDetailsVo finBillApplicationDetailsVo = null;
if (finBillVehicleDetailsVo == null){
return rb.setMsg("关联的主车未开票,不可出库");
}else {
String billAppSid = finBillVehicleDetailsVo.getBillAppSid();
finBillApplicationDetailsVo = finBillApplicationFeign.fetchDetailsBySid(billAppSid).getData();
if (!finBillApplicationDetailsVo.getNodeState().equals("已办结")){
return rb.setMsg("关联的主车未开票,不可出库");
}
}
BaseVehicleOutDetailsVo baseVehicleOutDetailsVo = baseVehicleOutService.selByOrgSidAndVehSid(baseTrailer.getUseOrgSid(), vehSid);
BaseVehicleOut baseVehicleOut = new BaseVehicleOut();
@ -595,6 +623,22 @@ public class BaseTrailerService extends MybatisBaseService<BaseTrailerMapper, Ba
saveOrUpdate(baseTrailer);
}
}
FinVehicleInvoiceDto finVehicleInvoiceDto = new FinVehicleInvoiceDto();
finVehicleInvoiceDto.setInvoiceTitle(finBillApplicationDetailsVo.getOpenTickUnitName());
finVehicleInvoiceDto.setContractNo(finBillApplicationDetailsVo.getContractNo());
finVehicleInvoiceDto.setCustomerName(finBillApplicationDetailsVo.getCustomerName());
finVehicleInvoiceDto.setVIN(baseTrailer.getVinNo());
finVehicleInvoiceDto.setInvoiceTypeKey(finBillApplicationDetailsVo.getOpenTickTypeKey());
finVehicleInvoiceDto.setInvoiceType(finBillApplicationDetailsVo.getOpenTickTypeValue());
finVehicleInvoiceDto.setInvoiceAmount(baseTrailer.getOneBillMoney());
finVehicleInvoiceDto.setBillingStateKey("001");
finVehicleInvoiceDto.setBillingState("未开票");
finVehicleInvoiceDto.setInvoicingName(finBillApplicationDetailsVo.getOpenTickName());
finVehicleInvoiceDto.setCreateBySid(finBillApplicationDetailsVo.getCreateBySid());
finVehicleInvoiceDto.setBusinessStateKey(finBillApplicationDetailsVo.getBillStateKey());
finVehicleInvoiceDto.setBusinessState(finBillApplicationDetailsVo.getBillStateValue());
finVehicleInvoiceDto.setUseOrgSid(finBillApplicationDetailsVo.getUseOrgSid());
finVehicleInvoiceFeign.saveOrUpdate(finVehicleInvoiceDto);
return rb.success();
}
@ -684,4 +728,10 @@ public class BaseTrailerService extends MybatisBaseService<BaseTrailerMapper, Ba
traliveredVo.setList(voList);
return rb.success().setData(traliveredVo);
}
public ResultBean<BaseTrailerDetailsVo> fetchByGcVinNo(String gcVinNo) {
ResultBean rb = ResultBean.fireFail();
BaseTrailerDetailsVo baseTrailerDetailsVo = baseMapper.fetchByGcVinNo(gcVinNo);
return rb.success().setData(baseTrailerDetailsVo);
}
}

5
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicle/BaseVehicleService.java

@ -50,6 +50,7 @@ import com.yxt.anrui.buscenter.api.bussalesordervehicle.BusSalesOrderVehicleFeig
import com.yxt.anrui.crm.api.crmcustomertemp.CrmCustomerTempDto;
import com.yxt.anrui.crm.api.crmcustomertemp.CrmCustomerTempFeign;
import com.yxt.anrui.fin.api.finbillvehicle.AppInvoicingInfoVinNoVo;
import com.yxt.anrui.fin.api.finbillvehicle.FinBillVehicleDetailsVo;
import com.yxt.anrui.fin.api.finbillvehicle.FinBillVehicleFeign;
import com.yxt.anrui.portal.api.appsubsetversion.AppSubVersionVo;
import com.yxt.anrui.portal.api.appsubsetversion.AppSubsetVersionFeign;
@ -3842,8 +3843,8 @@ public class BaseVehicleService extends MybatisBaseService<BaseVehicleMapper, Ba
List<BaseVehicleQKKPVo> records = page.getRecords();
List<BaseVehicleQKKPVo> recordsNew = new ArrayList<>();
for (BaseVehicleQKKPVo record : records) {
Integer count = finBillVehicleFeign.fetchByVehSid(record.getVehSid()).getData();
if (count == 0){
FinBillVehicleDetailsVo finBillVehicleDetailsVo = finBillVehicleFeign.fetchByVehSid(record.getVehSid()).getData();
if (finBillVehicleDetailsVo == null){
recordsNew.add(record);
}
}

8
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdelivered/AppBusDeliveredPageVo.java

@ -18,19 +18,19 @@ public class AppBusDeliveredPageVo implements Vo {
@JsonProperty("contractId")
private String contractNo;
@ApiModelProperty("类型 1 已认款 2 未认款")
@ApiModelProperty("业务状态")
@JsonProperty("subscription")
private String subscription;
@ApiModelProperty("类型 1 已认款 2 未认款")
@ApiModelProperty("业务状态")
@JsonProperty("subscriptionKey")
private String subscriptionKey;
@ApiModelProperty("付款方式 1 全款 2 贷款")
@ApiModelProperty("销售类型")
@JsonProperty("paymentMethod")
private String paymentMethod;
@ApiModelProperty("付款方式 1 全款 2 贷款")
@ApiModelProperty("销售类型")
@JsonProperty("paymentMethodKey")
private String paymentMethodKey;

4
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdelivered/AppDeliveredDetailsQuery.java

@ -4,13 +4,15 @@ import com.yxt.common.core.query.Query;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import java.util.ArrayList;
import java.util.List;
@Data
public class AppDeliveredDetailsQuery {
@ApiModelProperty("车辆sid")
private List<String> list;
private List<String> list = new ArrayList<>();
@ApiModelProperty("用户sid")
private String userSid;
@ApiModelProperty("机构全路径")

41
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdelivered/AppDeliveredDetailsVo.java

@ -17,7 +17,7 @@ public class AppDeliveredDetailsVo implements Vo {
//销售类型
private String paymentMethod;
private String paymentMethodKey;
@ApiModelProperty("发起信息:部门-人员名")
@ApiModelProperty("APP发起信息:部门-人员名")
private String publishInfo;
@ApiModelProperty("销售部门")
private String staffDeptSid;
@ -26,15 +26,17 @@ public class AppDeliveredDetailsVo implements Vo {
private String createTime;
@ApiModelProperty("销售专员")
private String staffName;
@ApiModelProperty("客户sid")
private String customerSid;
@ApiModelProperty("客户名称")
private String name;
@ApiModelProperty("客户电话")
private String mobile;
@ApiModelProperty("车型名称")
private String modelName;
@ApiModelProperty("单车中介人1")
@ApiModelProperty("APP单车中介人1")
private String distributorName;
@ApiModelProperty("单车中介人2")
@ApiModelProperty("APP单车中介人2")
private String distributorNameTwo;
@ApiModelProperty("车型sid")
private String modelSid;
@ -56,7 +58,7 @@ public class AppDeliveredDetailsVo implements Vo {
private String loanMobile;
@ApiModelProperty("总备注")
private String remarks;
@ApiModelProperty("剩余")
@ApiModelProperty("优惠包剩余")
private List<DeliveredLeavesVo> discountLeave = new ArrayList<>();
@ApiModelProperty("用户sid")
private String userSid;
@ -64,22 +66,35 @@ public class AppDeliveredDetailsVo implements Vo {
private String sid;
@ApiModelProperty("orgPath")
private String orgPath;
/* private String applyName;
private String applySid;
private String applyDeptSid;
private String staffUserSid;
private String applyDept;*/
@ApiModelProperty("车辆集合")
private List<AppCarListVo> carList;
@ApiModelProperty(value = "实例id")
private String procInstId;
@ApiModelProperty(value = "任务id")
private String taskId;
@ApiModelProperty("销售专员sid")
private String pcStaffSid;
@ApiModelProperty("PC发起人")
private String pcApplyName;
@ApiModelProperty("PC发起人sid")
private String pcApplySid;
@ApiModelProperty("PC发起人部门")
private String pcApplyDept;
@ApiModelProperty("PC发起人部门sid")
private String pcApplyDeptSid;
@ApiModelProperty("PC中介人1")
private String pcDistributorName;
@ApiModelProperty("PC服务费1")
private String pcDistributorPrice;
@ApiModelProperty("PC中介人2")
private String pcDistributorNameTwo;
@ApiModelProperty("PC服务费2")
private String pcDistributorPriceTwo;
@ApiModelProperty("PC服务费合计1")
private String pcDistributorPriceAll;
@ApiModelProperty("PC服务费合计2")
private String pcDistributorPriceTwoAll;
}

5
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdelivered/BusDeliveredFeign.java

@ -31,7 +31,6 @@ import com.yxt.common.core.vo.PagerVo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.cloud.openfeign.SpringQueryMap;
import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
@ -88,9 +87,9 @@ public interface BusDeliveredFeign {
public ResultBean<PagerVo<AppBusDeliveredPageVo>> getRetrievalNotList(@RequestBody PagerQuery<AppBusDeliveredPageQuery> pq);
@ApiOperation("移动端-初始化 出库申请 待出库进入")
@GetMapping("/getRetrievalApplyInfo")
@PostMapping("/getRetrievalApplyInfo")
@ResponseBody
public ResultBean<AppDeliveredDetailsVo> getRetrievalApplyInfo(@SpringQueryMap AppDeliveredDetailsQuery query);
public ResultBean<AppDeliveredDetailsVo> getRetrievalApplyInfo(@RequestBody AppDeliveredDetailsQuery query);
@ApiOperation("移动端-欠款提车推送待出库")
@PostMapping("/addRetrievalApply")

4
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdelivered/BusDeliveredQuery.java

@ -61,7 +61,7 @@ public class BusDeliveredQuery implements Query {
private String vinNo;
@ApiModelProperty("用户sid")
private String userSid;
@ApiModelProperty("车架号集合")
private List<String> vinNoList;
@ApiModelProperty("车辆sid集合")
private List<String> vinSid;
}

16
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdelivered/BusDeliveredVo.java

@ -50,19 +50,25 @@ import lombok.Data;
public class BusDeliveredVo implements Vo {
private static final long serialVersionUID = -9212919952192716940L;
private String sid;
// private String sid;
@ApiModelProperty("业务状态")
private String subscription;
@ApiModelProperty("业务状态key")
private String subscriptionKey;
/* @ApiModelProperty("业务状态key")
private String subscriptionKey;*/
@ApiModelProperty("合同编号")
private String contractNo;
@ApiModelProperty("客户名称")
private String name;
@ApiModelProperty("车架号")
private String vinNo;
@ApiModelProperty(value = "联系电话")
@ApiModelProperty("业务车辆sid")
private String busVinSid;
@ApiModelProperty("车辆sid")
private String vinSid;
@ApiModelProperty("销售类型")
private String paymentMethod;
/* @ApiModelProperty(value = "联系电话")
private String mobile;
@ApiModelProperty(value = "证件号码")
private String idNo;
@ -87,7 +93,7 @@ public class BusDeliveredVo implements Vo {
@ApiModelProperty("返利金额2")
private String distributorPriceTwo;
@ApiModelProperty("销售折让")
private String singleCarDiscountPrice;
private String singleCarDiscountPrice;*/
}

3
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdeliveredapply/AppDeliveredApplyDto.java

@ -24,7 +24,8 @@ public class AppDeliveredApplyDto implements Dto {
private String staffName;
@ApiModelProperty("发起日期")
private String createTime;
@ApiModelProperty("客户sid")
private String customerSid;
@ApiModelProperty("客户名称")
private String name;
@ApiModelProperty("客户电话")

4
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdeliveredapply/BusDeliveredApply.java

@ -54,6 +54,8 @@ public class BusDeliveredApply extends BaseEntity {
private String contractNo;
@ApiModelProperty("单据编号")
private String billNo;
@ApiModelProperty("客户sid")
private String customerSid;
@ApiModelProperty("客户名称")
private String name;
@ApiModelProperty("车型Sid")
@ -72,8 +74,6 @@ public class BusDeliveredApply extends BaseEntity {
private String applySid;
@ApiModelProperty(value = "分公司sid")
private String useOrgSid;
/* @ApiModelProperty("是否是终端:1是,0不是")
private Integer isTerminal;*/
@ApiModelProperty(value = "客户手机号")
private String mobile;
@ApiModelProperty(value = "节点状态")

7
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdeliveredapply/BusDeliveredApplyFeign.java

@ -34,6 +34,7 @@ import io.swagger.annotations.ApiOperation;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.cloud.openfeign.SpringQueryMap;
import org.springframework.web.bind.annotation.*;
import springfox.documentation.annotations.ApiIgnore;
import javax.validation.Valid;
import java.util.List;
@ -131,12 +132,14 @@ public interface BusDeliveredApplyFeign {
@ApiOperation("验证是否可出库")
@PostMapping("/checkingApply")
@ResponseBody
// @ResponseBody
@ApiIgnore
public ResultBean checkingApply(@RequestBody CheckingApplyQuery query);
@ApiOperation("审批")
@ResponseBody
// @ResponseBody
@PostMapping(value = "examine")
@ApiIgnore
ResultBean examine(@RequestBody BusDeExamineQuery busDeExamineQuery);
@ApiOperation("出库审核分页列表")

2
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdiscountpackagehandover/BusDiscountpackageHandoverDto.java

@ -21,6 +21,8 @@ public class BusDiscountpackageHandoverDto implements Dto {
@ApiModelProperty("sid")
private String sid; // sid
@ApiModelProperty("交接状态 1待准备2待交接3已交接")
private String state; // 交接状态 1待准备2待交接3已交接
@ApiModelProperty("合同编号")
private String contractNo; // 合同编号
@ApiModelProperty("车型名称")

6
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdiscountpackagehandoverlist/BusDiscountpackageHandoverList.java

@ -6,6 +6,8 @@ import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
/**
* @author Administrator
* @description
@ -21,13 +23,13 @@ public class BusDiscountpackageHandoverList extends BaseEntity {
@ApiModelProperty("交接表sid")
private String mainSid; // 交接表sid
@ApiModelProperty("价值")
private Integer price; // 价值
private BigDecimal price; // 价值
@ApiModelProperty("数量")
private String number; // 数量
@ApiModelProperty("优惠包说明")
private String explain; // 优惠包说明
@ApiModelProperty("总价值")
private Integer totalPrice; // 总价值
private BigDecimal totalPrice; // 总价值
@ApiModelProperty("优惠包名称")
private String discountName; // 优惠包名称

8
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busdiscountpackagehandoverlist/BusDiscountpackageHandoverListDto.java

@ -5,6 +5,8 @@ import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
/**
* @author Administrator
* @description
@ -17,16 +19,18 @@ public class BusDiscountpackageHandoverListDto implements Dto {
@ApiModelProperty("sid")
private String sid; // sid
@ApiModelProperty("交接状态 1待准备2待交接3已交接")
private String state; // 交接状态 1待准备2待交接3已交接
@ApiModelProperty("交接表sid")
private String mainSid; // 交接表sid
@ApiModelProperty("价值")
private Integer price; // 价值
private BigDecimal price; // 价值
@ApiModelProperty("数量")
private String number; // 数量
@ApiModelProperty("优惠包说明")
private String explain; // 优惠包说明
@ApiModelProperty("总价值")
private Integer totalPrice; // 总价值
private BigDecimal totalPrice; // 总价值
@ApiModelProperty("优惠包名称")
private String discountName; // 优惠包名称
@ApiModelProperty("备注")

4
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdelivered/BusDeliveredMapper.java

@ -61,7 +61,7 @@ public interface BusDeliveredMapper extends BaseMapper<BusDelivered> {
* @param qw 查询条件
* @return 待出库车辆分页列表数据
*/
IPage<BusDeliveredVo> selectPageVo(IPage<BusDelivered> page, @Param(Constants.WRAPPER) Wrapper<BusDelivered> qw);
// IPage<BusDeliveredVo> selectPageVo(IPage<BusDelivered> page, @Param(Constants.WRAPPER) Wrapper<BusDelivered> qw);
List<BusDeliveredVo> selectListAllVo(@Param(Constants.WRAPPER) Wrapper<BusDelivered> qw);
@ -90,4 +90,6 @@ public interface BusDeliveredMapper extends BaseMapper<BusDelivered> {
AppCarListVo getDeliveredPice(@Param("vin") String vin);
int updateStateByContractNo(@Param("contractNo") String contractNo, @Param("list") List<String> vinSidList, @Param("state") int i);
IPage<BusDeliveredVo> selectListsVo(IPage<BusDelivered> page,@Param(Constants.WRAPPER) QueryWrapper<BusDelivered> qw);
}

37
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdelivered/BusDeliveredMapper.xml

@ -3,13 +3,10 @@
<mapper namespace="com.yxt.anrui.buscenter.biz.busdelivered.BusDeliveredMapper">
<!-- <where> ${ew.sqlSegment} </where>-->
<!-- ${ew.customSqlSegment} -->
<select id="selectPageVo" resultType="com.yxt.anrui.buscenter.api.busdelivered.BusDeliveredVo">
<!-- <select id="selectPageVo" resultType="com.yxt.anrui.buscenter.api.busdelivered.BusDeliveredVo">
SELECT bd.sid,
<!--合同编号-->
bd.contractNo,
<!--客户名称-->
bd.name,
<!--车架号-->
bd.vinNo,
bd.subscription,
bd.subscriptionKey,
@ -28,7 +25,7 @@
bd.singleCarDiscountPrice
FROM bus_delivered bd
${ew.customSqlSegment}
</select>
</select>-->
<select id="selectListAllVo" resultType="com.yxt.anrui.buscenter.api.busdelivered.BusDeliveredVo">
SELECT *
@ -90,4 +87,34 @@
#{item}
</foreach>
</update>
<select id="selectListsVo" resultType="com.yxt.anrui.buscenter.api.busdelivered.BusDeliveredVo">
SELECT bd.sid,
bd.contractNo,
bd.name,
bd.busVinSid,
<!-- bd.vinNo,-->
bd.subscription,
<!--bd.subscriptionKey,
bd.paymentMethodKey,-->
bd.paymentMethod,<!--,
bd.modelName,
bd.price,
bd.mobile,
bd.idNo,
bd.address,
bd.price,
bd.distributorName,
bd.distributorPrice,
bd.distributorNameTwo,
bd.distributorPriceTwo,
bd.singleCarDiscountPrice-->
RIGHT(bv.linkNo, 8) as vinNo,bd.busVinSid,bv.linkSid as vinSid
FROM bus_delivered bd
left join bus_sales_order_vehicle bv on bv.sid = bd.busVinSid
<where>
${ew.sqlSegment}
and length(bv.linkSid)>0
</where>
</select>
</mapper>

84
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdelivered/BusDeliveredService.java

@ -71,10 +71,8 @@ import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Optional;
import java.math.BigDecimal;
import java.util.*;
import java.util.stream.Collectors;
/**
@ -125,12 +123,13 @@ public class BusDeliveredService extends MybatisBaseService<BusDeliveredMapper,
private BusDeliveredUseMessageService busDeliveredUseMessageService;
/**
* 构造出库车辆分页列表查询条件
* 待出库车辆分页列表
*
* @param query 查询条件
* @return
* @param pq 查询条件
* @return 待出库车辆分页列表的数据
*/
private QueryWrapper<BusDelivered> createQueryWrapper(BusDeliveredQuery query) {
public PagerVo<BusDeliveredVo> listPageVo(PagerQuery<BusDeliveredQuery> pq) {
BusDeliveredQuery query = pq.getParams();
QueryWrapper<BusDelivered> qw = new QueryWrapper<>();
if (query != null) {
//合同编号
@ -143,30 +142,17 @@ public class BusDeliveredService extends MybatisBaseService<BusDeliveredMapper,
}
//车架号
if (StringUtils.isNotBlank(query.getVinNo())) {
qw.like("bd.vinNo", query.getVinNo());
qw.like("bv.linkNo", query.getVinNo());
}
//车架号集合
if (query.getVinNoList().size() > 0) {
qw.notIn("bd.vinNo", query.getVinNoList());
if (query.getVinSid().size() > 0) {
qw.notIn("bv.linkSid", query.getVinSid());
}
//待出库:1,出库申请:0
qw.eq("bd.state", 1);
}
return qw;
}
/**
* 待出库车辆分页列表
*
* @param pq 查询条件
* @return 待出库车辆分页列表的数据
*/
public PagerVo<BusDeliveredVo> listPageVo(PagerQuery<BusDeliveredQuery> pq) {
BusDeliveredQuery query = pq.getParams();
QueryWrapper<BusDelivered> qw = createQueryWrapper(query);
IPage<BusDelivered> page = PagerUtil.queryToPage(pq);
IPage<BusDeliveredVo> pagging = baseMapper.selectPageVo(page, qw);
IPage<BusDeliveredVo> pagging = baseMapper.selectListsVo(page, qw);
PagerVo<BusDeliveredVo> p = PagerUtil.pageToVo(pagging, null);
return p;
}
@ -269,16 +255,23 @@ public class BusDeliveredService extends MybatisBaseService<BusDeliveredMapper,
deptSid = sysOrganization.getSid();
}
}
//销售部门
appDeliveredDetailsVo.setStaffDeptName(deptName);
appDeliveredDetailsVo.setStaffDeptSid(deptSid);
//根据用户sid查询人员姓名
ResultBean<SysUserVo> userVoResultBean = sysUserFeign.fetchBySid(userSid);
if (!userVoResultBean.getSuccess()) {
return rb.setMsg(userVoResultBean.getMsg());
}
//销售部门
appDeliveredDetailsVo.setStaffDeptName(deptName);
appDeliveredDetailsVo.setStaffDeptSid(deptSid);
//PC端发起人====
appDeliveredDetailsVo.setPcApplyName(userVoResultBean.getData().getName());
appDeliveredDetailsVo.setPcApplyDept(deptName);
appDeliveredDetailsVo.setPcApplyDeptSid(deptSid);
appDeliveredDetailsVo.setPcStaffSid(userVoResultBean.getData().getStaffSid());
//===================
deptName = deptName + "-" + userVoResultBean.getData().getName();
//发起人信息
//移动端发起人信息
appDeliveredDetailsVo.setPublishInfo(deptName);
appDeliveredDetailsVo.setContractId(contractNo);
//销售专员
@ -302,6 +295,7 @@ public class BusDeliveredService extends MybatisBaseService<BusDeliveredMapper,
appDeliveredDetailsVo.setModelName(appOrderModelInfoVo.getModelName());
appDeliveredDetailsVo.setModelSid(appOrderModelInfoVo.getModelSid());
appDeliveredDetailsVo.setConfigSid(appOrderModelInfoVo.getConfigSid());
appDeliveredDetailsVo.setCustomerSid(appOrderDetailsVo.getCustomerSid());
AppOrderPriceInfoVo appOrderPriceInfoVo = appOrderDetailsVo.getPriceInfo();
//主车成交价
appDeliveredDetailsVo.setPrice(appOrderPriceInfoVo.getTransactionPrice());
@ -362,6 +356,9 @@ public class BusDeliveredService extends MybatisBaseService<BusDeliveredMapper,
ResultBean<List<DictCommonVo>> listResultBean = dictCommonFeign.getTypeValues("buyerType", "0");
List<DictCommonVo> dictCommonVoList = listResultBean.getData();
List<DeliveredDictVo> voList = Optional.ofNullable(dictCommonVoList).orElse(new ArrayList<>()).stream().map(m -> JSON.parseObject(JSON.toJSONString(m), DeliveredDictVo.class)).collect(Collectors.toList());
if("1".equals(appOrderDetailsVo.getPayTypeKey())){//贷款
voList.remove(1);
}
appDeliveredDetailsVo.setBuyerType(voList);
//中介人
SubmitVo intermediary1 = appOrderDetailsVo.getIntermediary1();
@ -370,6 +367,9 @@ public class BusDeliveredService extends MybatisBaseService<BusDeliveredMapper,
String agencyFee = intermediary1.getAgencyFee();
if (StringUtils.isNotBlank(agencyFee)) {
intermediaryOne = intermediary1.getIntermediaryName() + ",单车中介费:" + intermediary1.getAgencyFee();
appDeliveredDetailsVo.setPcDistributorName(intermediary1.getIntermediaryName());
appDeliveredDetailsVo.setPcDistributorPrice(intermediary1.getAgencyFee());
appDeliveredDetailsVo.setPcDistributorPriceAll(new BigDecimal(intermediary1.getAgencyFee()).multiply(new BigDecimal(query.getList().size())).toString());
}
}
appDeliveredDetailsVo.setDistributorName(intermediaryOne);
@ -380,6 +380,9 @@ public class BusDeliveredService extends MybatisBaseService<BusDeliveredMapper,
String agencyFee = intermediary2.getAgencyFee();
if (StringUtils.isNotBlank(agencyFee)) {
intermediaryTwo = intermediary2.getIntermediaryName() + ",单车中介费:" + intermediary2.getAgencyFee();
appDeliveredDetailsVo.setPcDistributorNameTwo(intermediary2.getIntermediaryName());
appDeliveredDetailsVo.setPcDistributorPriceTwo(intermediary2.getAgencyFee());
appDeliveredDetailsVo.setPcDistributorPriceTwoAll(new BigDecimal(intermediary2.getAgencyFee()).multiply(new BigDecimal(query.getList().size())).toString());
}
}
appDeliveredDetailsVo.setDistributorNameTwo(intermediaryTwo);
@ -390,17 +393,35 @@ public class BusDeliveredService extends MybatisBaseService<BusDeliveredMapper,
if (busDeliveredApply == null) {
return rb.setMsg("该出库申请不存在");
}
BeanUtil.copyProperties(busDeliveredApply, appDeliveredDetailsVo, "sid");
ResultBean<SysUserVo> userVoResultBean = sysUserFeign.fetchBySid(busDeliveredApply.getStaffUserSid());
if (!userVoResultBean.getSuccess()) {
return rb.setMsg(userVoResultBean.getMsg());
}
//pc发起人
appDeliveredDetailsVo.setPcApplyName(busDeliveredApply.getApplyName());
appDeliveredDetailsVo.setPcApplySid(busDeliveredApply.getApplySid());
appDeliveredDetailsVo.setPcApplyDept(busDeliveredApply.getApplyDept());
appDeliveredDetailsVo.setPcApplyDeptSid(busDeliveredApply.getApplyDeptSid());
appDeliveredDetailsVo.setPcStaffSid(userVoResultBean.getData().getStaffSid());
appDeliveredDetailsVo.setUserSid(busDeliveredApply.getApplySid());
appDeliveredDetailsVo.setOrgPath(busDeliveredApply.getOrgSidPath());
appDeliveredDetailsVo.setSid(query.getOutboundSid());
BeanUtil.copyProperties(busDeliveredApply, appDeliveredDetailsVo, "sid");
appDeliveredDetailsVo.setContractId(busDeliveredApply.getContractNo());
appDeliveredDetailsVo.setPublishInfo(busDeliveredApply.getApplyDept() + "-" + busDeliveredApply.getApplyName());
appDeliveredDetailsVo.setCreateTime(DateUtil.format(busDeliveredApply.getCreateTime(), "yyyy-MM-dd"));
if (StringUtils.isNotBlank(busDeliveredApply.getDistributorPrice())) {
appDeliveredDetailsVo.setDistributorName(busDeliveredApply.getDistributorName() + ",单车中介费:" + busDeliveredApply.getDistributorPrice() + "元");
appDeliveredDetailsVo.setPcDistributorName(busDeliveredApply.getDistributorName());
appDeliveredDetailsVo.setPcDistributorPrice(busDeliveredApply.getDistributorPrice());
appDeliveredDetailsVo.setPcDistributorPriceAll(new BigDecimal(busDeliveredApply.getDistributorPrice()).multiply(new BigDecimal(query.getList().size())).toString());
}
if (StringUtils.isNotBlank(busDeliveredApply.getDistributorPriceTwo())) {
appDeliveredDetailsVo.setDistributorNameTwo(busDeliveredApply.getDistributorNameTwo() + ",单车中介费:" + busDeliveredApply.getDistributorPriceTwo() + "元");
appDeliveredDetailsVo.setDistributorNameTwo(busDeliveredApply.getDistributorNameTwo());
appDeliveredDetailsVo.setPcDistributorPriceTwo(busDeliveredApply.getDistributorPriceTwo());
appDeliveredDetailsVo.setPcDistributorPriceTwoAll(new BigDecimal(busDeliveredApply.getDistributorPriceTwo()).multiply(new BigDecimal(query.getList().size())).toString());
}
List<AppCarListVo> carList = new ArrayList<>();
List<BusDeliveredApplyDetails> detailsList = busDeliveredApplyDetailsService.selectByApplySid(query.getOutboundSid());
@ -462,6 +483,9 @@ public class BusDeliveredService extends MybatisBaseService<BusDeliveredMapper,
ResultBean<List<DictCommonVo>> listResultBean = dictCommonFeign.getTypeValues("buyerType", "0");
List<DictCommonVo> dictCommonVoList = listResultBean.getData();
List<DeliveredDictVo> voList = Optional.ofNullable(dictCommonVoList).orElse(new ArrayList<>()).stream().map(m -> JSON.parseObject(JSON.toJSONString(m), DeliveredDictVo.class)).collect(Collectors.toList());
if("1".equals(busDeliveredApply.getPaymentMethodKey())){//全款
voList.remove(1);
}
appDeliveredDetailsVo.setBuyerType(voList);

7
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyMapper.xml

@ -11,9 +11,12 @@
bd.taskId,
bd.procInstId,
bd.procDefId,
DATE_FORMAT(bd.applyDate, '%Y-%m-%d') as applyDate,
DATE_FORMAT(bd.createTime, '%Y-%m-%d') as applyDate,
bd.applyName,
bd.modelName
bd.modelName,
bd.billNo,
bd.paymentMethod,
(select count(*) from bus_delivered_apply_details bad where bad.applySid = bd.sid) as num
FROM bus_delivered_apply bd
<where>
${ew.sqlSegment}

172
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyService.java

@ -50,13 +50,20 @@ import com.yxt.anrui.buscenter.api.busdelivereddetailsdiscount.BusDeliveredDetai
import com.yxt.anrui.buscenter.api.busdeliveredusemessage.BusDeliveredUseMessage;
import com.yxt.anrui.buscenter.api.busdeliveredusemessage.BusDeliveredUseMessageVo;
import com.yxt.anrui.buscenter.api.busdeliveredusemessage.BusDeliveredUseMessagesVo;
import com.yxt.anrui.buscenter.api.busdiscountpackagehandover.BusDiscountpackageHandoverDto;
import com.yxt.anrui.buscenter.api.busdiscountpackagehandoverlist.BusDiscountpackageHandoverListDto;
import com.yxt.anrui.buscenter.api.bussalesorder.app.order.AppOrderDetailsVo;
import com.yxt.anrui.buscenter.api.bussalesorderdiscount.BusSalesOrderDiscount;
import com.yxt.anrui.buscenter.api.bussalesordersubmit.SubmitVo;
import com.yxt.anrui.buscenter.api.bussalesordervehicle.BusSalesOrderVehicle;
import com.yxt.anrui.buscenter.biz.busdelivered.BusDeliveredService;
import com.yxt.anrui.buscenter.biz.busdeliveredapplydetails.BusDeliveredApplyDetailsService;
import com.yxt.anrui.buscenter.biz.busdelivereddetailsdiscount.BusDeliveredDetailsDiscountService;
import com.yxt.anrui.buscenter.biz.busdeliveredusemessage.BusDeliveredUseMessageService;
import com.yxt.anrui.buscenter.biz.busdiscountpackagehandover.BusDiscountpackageHandoverService;
import com.yxt.anrui.buscenter.biz.bussalesorder.BusSalesOrderService;
import com.yxt.anrui.buscenter.biz.bussalesorderdiscount.BusSalesOrderDiscountService;
import com.yxt.anrui.buscenter.biz.bussalesordervehicle.BusSalesOrderVehicleService;
import com.yxt.anrui.crm.api.crmcustomertemp.CrmCustomerTempFeign;
import com.yxt.anrui.crm.api.crmcustomertemp.CrmCustomerTempVo;
import com.yxt.anrui.fin.api.finbillapplication.FinBillApplicationDto;
@ -148,6 +155,12 @@ public class BusDeliveredApplyService extends MybatisBaseService<BusDeliveredApp
private BaseVehicleCertificateFeign baseVehicleCertificateFeign;
@Autowired
private FinBillApplicationFeign finBillApplicationFeign;
@Autowired
private BusSalesOrderDiscountService busSalesOrderDiscountService;
@Autowired
private BusSalesOrderVehicleService busSalesOrderVehicleService;
@Autowired
private BusDiscountpackageHandoverService busDiscountpackageHandoverService;
/**
* 构造出库申请的查询条件
@ -167,7 +180,7 @@ public class BusDeliveredApplyService extends MybatisBaseService<BusDeliveredApp
qw.eq("bd.name", query.getName());
}
if (StringUtils.isNotBlank(query.getApplyDateStart()) && StringUtils.isNotBlank(query.getApplyDateEnd())) {
qw.between("bd.applyDate", query.getApplyDateStart(), query.getApplyDateEnd());
qw.between("bd.createTime", query.getApplyDateStart(), query.getApplyDateEnd());
}
if (StringUtils.isNotBlank(query.getApplyName())) {
qw.like("bd.applyName", query.getApplyName());
@ -593,7 +606,7 @@ public class BusDeliveredApplyService extends MybatisBaseService<BusDeliveredApp
}
if ("Event_end".equals(resultBean.getData().getTaskDefKey())) {
baseMapper.updateStateBySid(3, bv.getBusinessSid());
//推送开票申请
//推送开票申请=======
List<BusDeliveredApplyDetails> detailsList = busDeliveredApplyDetailsService.selectByApplySid(busDeliveredApply.getSid());
FinBillApplicationDto finBillApplicationDto = new FinBillApplicationDto();
finBillApplicationDto.setUseOrgSid(busDeliveredApply.getUseOrgSid());
@ -642,13 +655,58 @@ public class BusDeliveredApplyService extends MybatisBaseService<BusDeliveredApp
if (baseVehicleCertificate == null) {
finBillVehicleDto.setCertificateStateKey(baseVehicleCertificate.getCertificateState());
finBillVehicleDto.setCertificateStateValue(baseVehicleCertificate.getCertificateSituationValue());
}
finBillVehicles.add(finBillVehicleDto);
}
finBillApplicationDto.setFinBillVehicles(finBillVehicles);
finBillApplicationDto.setArrearsMoney("0");
ResultBean finBillResult = finBillApplicationFeign.save(finBillApplicationDto);
//====================推送开票结束
//推送优惠包待准备开始
//查询该是否有优惠包信息
List<BusDeliveredDetailsDiscount> discountList = busDeliveredDetailsDiscountService.selectByApplySid(busDeliveredApply.getSid());
BusDiscountpackageHandoverDto busDiscountpackageHandoverDto = new BusDiscountpackageHandoverDto();
//合同编号
busDiscountpackageHandoverDto.setContractNo(busDeliveredApply.getContractNo());
//车型名称
busDiscountpackageHandoverDto.setVehModel(busDeliveredApply.getModelName());
//出库台数
busDiscountpackageHandoverDto.setVehCount(String.valueOf(detailsList.size()));
List<String> vinList = detailsList.stream().map(v -> v.getVinNo()).collect(Collectors.toList());
String vins = String.join(",", vinList);
busDiscountpackageHandoverDto.setVins(vins);
busDiscountpackageHandoverDto.setRecUserSid(busDeliveredApply.getApplySid());
busDiscountpackageHandoverDto.setCustomerName(busDeliveredApply.getName());
busDiscountpackageHandoverDto.setRecName(busDeliveredApply.getApplyName());
busDiscountpackageHandoverDto.setRecTime(new Date());
//根据用户sid查询电话
ResultBean<SysUserVo> sysUserVoResultBean = sysUserFeign.fetchBySid(busDeliveredApply.getApplySid());
if (sysUserVoResultBean.getData() != null) {
busDiscountpackageHandoverDto.setRecPhone(sysUserVoResultBean.getData().getMobile());
}
busDiscountpackageHandoverDto.setBusSid(busDeliveredApply.getSid());
busDiscountpackageHandoverDto.setCreateOrgSid(busDeliveredApply.getUseOrgSid());
busDiscountpackageHandoverDto.setUseOrgSid(busDeliveredApply.getUseOrgSid());
ResultBean<SysOrganizationVo> sysOrganizationVoResultBean = sysOrganizationFeign.fetchBySid(busDeliveredApply.getUseOrgSid());
if (sysOrganizationVoResultBean.getData() != null) {
busDiscountpackageHandoverDto.setCreateOrgName(sysOrganizationVoResultBean.getData().getName());
busDiscountpackageHandoverDto.setUseOrgName(sysOrganizationVoResultBean.getData().getName());
}
List<BusDiscountpackageHandoverListDto> busDiscountpackageHandoverLists = new ArrayList<>();
for (int i = 0; i < discountList.size(); i++) {
BusDeliveredDetailsDiscount busDeliveredDetailsDiscount = discountList.get(i);
BusDiscountpackageHandoverListDto busDiscountpackageHandoverListDto = new BusDiscountpackageHandoverListDto();
busDiscountpackageHandoverListDto.setPrice(new BigDecimal(busDeliveredDetailsDiscount.getPrice()));
busDiscountpackageHandoverListDto.setNumber(String.valueOf(busDeliveredDetailsDiscount.getGiveNum()));
busDiscountpackageHandoverListDto.setDiscountName(busDeliveredDetailsDiscount.getName());
busDiscountpackageHandoverListDto.setExplain(busDeliveredDetailsDiscount.getDiscountExplain());
busDiscountpackageHandoverListDto.setRemarks(busDeliveredDetailsDiscount.getRemarks());
busDiscountpackageHandoverListDto.setTotalPrice(new BigDecimal(busDeliveredDetailsDiscount.getPrice()).multiply(new BigDecimal(busDeliveredDetailsDiscount.getGiveNum())));
busDiscountpackageHandoverLists.add(busDiscountpackageHandoverListDto);
}
busDiscountpackageHandoverDto.setBusDiscountpackageHandoverLists(busDiscountpackageHandoverLists);
busDiscountpackageHandoverService.saveOrUpdateDto(busDiscountpackageHandoverDto);
}
updateFlowFiled(BeanUtil.beanToMap(resultBean.getData()));
return rb.success().setData(resultBean.getData());
@ -879,6 +937,7 @@ public class BusDeliveredApplyService extends MybatisBaseService<BusDeliveredApp
return rb;
}
AppOrderDetailsVo appOrderDetailsVo = resultBean.getData();
busDeliveredApply.setCustomerSid(appOrderDetailsVo.getCustomerSid());
//销售类型
busDeliveredApply.setPaymentMethod(appOrderDetailsVo.getPayType());
busDeliveredApply.setPaymentMethodKey(appOrderDetailsVo.getPayTypeKey());
@ -955,6 +1014,49 @@ public class BusDeliveredApplyService extends MybatisBaseService<BusDeliveredApp
busDeliveredUseMessageService.insert(busDeliveredUseMessage);
busDeliveredApplyDetails.setUseMessageSid(busDeliveredUseMessage.getSid());
}
if ("0".equals(busDeliveredApply.getTypeKey())) {
//客户的信息
String customerSid = busDeliveredApply.getCustomerSid();
ResultBean<CrmCustomerTempVo> crmCustomerTempResultBean = crmCustomerTempFeign.fetchSid(customerSid);
if (crmCustomerTempResultBean.getData() != null) {
CrmCustomerTempVo crmCustomerTempVo = crmCustomerTempResultBean.getData();
BusDeliveredUseMessage busDeliveredUseMessage = new BusDeliveredUseMessage();
busDeliveredUseMessage.setAddress(crmCustomerTempVo.getAddress());
busDeliveredUseMessage.setName(crmCustomerTempVo.getName());
busDeliveredUseMessage.setMobile(crmCustomerTempVo.getMobile());
busDeliveredUseMessage.setIdNo(crmCustomerTempVo.getIDNumber());
busDeliveredUseMessage.setCustomerType(crmCustomerTempVo.getCustomerType());
busDeliveredUseMessage.setCustomerTypeKey(crmCustomerTempVo.getCustomerTypeKey());
busDeliveredUseMessage.setApplySid(busDeliveredApply.getSid());
busDeliveredUseMessage.setContacts(crmCustomerTempVo.getContacts());
busDeliveredUseMessage.setIsConfirmRealBuyer("1");
busDeliveredUseMessageService.insert(busDeliveredUseMessage);
busDeliveredApplyDetails.setUseMessageSid(busDeliveredUseMessage.getSid());
}
}
if ("1".equals(busDeliveredApply.getTypeKey())) {
//贷款人的信息
String loanSid = busDeliveredApply.getLoanSid();
ResultBean<CrmCustomerTempVo> crmCustomerTempResultBean = crmCustomerTempFeign.fetchSid(loanSid);
if (crmCustomerTempResultBean.getData() != null) {
CrmCustomerTempVo crmCustomerTempVo = crmCustomerTempResultBean.getData();
BusDeliveredUseMessage busDeliveredUseMessage = new BusDeliveredUseMessage();
busDeliveredUseMessage.setAddress(crmCustomerTempVo.getAddress());
busDeliveredUseMessage.setName(crmCustomerTempVo.getName());
busDeliveredUseMessage.setMobile(crmCustomerTempVo.getMobile());
busDeliveredUseMessage.setIdNo(crmCustomerTempVo.getIDNumber());
busDeliveredUseMessage.setCustomerType(crmCustomerTempVo.getCustomerType());
busDeliveredUseMessage.setCustomerTypeKey(crmCustomerTempVo.getCustomerTypeKey());
busDeliveredUseMessage.setApplySid(busDeliveredApply.getSid());
busDeliveredUseMessage.setContacts(crmCustomerTempVo.getContacts());
busDeliveredUseMessage.setIsConfirmRealBuyer("1");
busDeliveredUseMessageService.insert(busDeliveredUseMessage);
busDeliveredApplyDetails.setUseMessageSid(busDeliveredUseMessage.getSid());
}
}
busDeliveredApplyDetailsService.insert(busDeliveredApplyDetails);
@ -974,6 +1076,13 @@ public class BusDeliveredApplyService extends MybatisBaseService<BusDeliveredApp
if (StringUtils.isBlank(dto.getStaffUserSid())) {
dto.setStaffUserSid(busDeliveredApply.getStaffUserSid());
}
if (StringUtils.isBlank(dto.getCustomerSid())) {
dto.setCustomerSid(busDeliveredApply.getCustomerSid());
}
if (StringUtils.isBlank(dto.getPaymentMethodKey())) {
dto.setPaymentMethodKey(busDeliveredApply.getPaymentMethodKey());
}
BeanUtil.copyProperties(dto, busDeliveredApply, "sid");
//根据合同编号查询销售订单的信息
@ -1033,7 +1142,9 @@ public class BusDeliveredApplyService extends MybatisBaseService<BusDeliveredApp
//优惠包项目说明
busDeliveredDetailsDiscount.setDiscountExplain(busDeliveredDetailsDiscountsVo.getDiscountInfo());
//数量
busDeliveredDetailsDiscount.setNum(busDeliveredDetailsDiscountsVo.getTotalNum());
BusSalesOrderDiscount busSalesOrderDiscount = busSalesOrderDiscountService.fetchBySid(busDeliveredDetailsDiscountsVo.getDiscountSid());
// busDeliveredDetailsDiscount.setNum(busDeliveredDetailsDiscountsVo.getTotalNum());
busDeliveredDetailsDiscount.setNum(busSalesOrderDiscount.getNum());
//本次赠送数量
busDeliveredDetailsDiscount.setGiveNum(busDeliveredDetailsDiscountsVo.getDiscountNum());
//销售订单中主车优惠的sid
@ -1058,6 +1169,49 @@ public class BusDeliveredApplyService extends MybatisBaseService<BusDeliveredApp
busDeliveredUseMessageService.insert(busDeliveredUseMessage);
busDeliveredApplyDetails.setUseMessageSid(busDeliveredUseMessage.getSid());
}
if ("0".equals(busDeliveredApply.getTypeKey())) {
//客户的信息
String customerSid = busDeliveredApply.getCustomerSid();
ResultBean<CrmCustomerTempVo> crmCustomerTempResultBean = crmCustomerTempFeign.fetchSid(customerSid);
if (crmCustomerTempResultBean.getData() != null) {
CrmCustomerTempVo crmCustomerTempVo = crmCustomerTempResultBean.getData();
BusDeliveredUseMessage busDeliveredUseMessage = new BusDeliveredUseMessage();
busDeliveredUseMessage.setAddress(crmCustomerTempVo.getAddress());
busDeliveredUseMessage.setName(crmCustomerTempVo.getName());
busDeliveredUseMessage.setMobile(crmCustomerTempVo.getMobile());
busDeliveredUseMessage.setIdNo(crmCustomerTempVo.getIDNumber());
busDeliveredUseMessage.setCustomerType(crmCustomerTempVo.getCustomerType());
busDeliveredUseMessage.setCustomerTypeKey(crmCustomerTempVo.getCustomerTypeKey());
busDeliveredUseMessage.setApplySid(busDeliveredApply.getSid());
busDeliveredUseMessage.setContacts(crmCustomerTempVo.getContacts());
busDeliveredUseMessage.setIsConfirmRealBuyer("0");
busDeliveredUseMessageService.insert(busDeliveredUseMessage);
busDeliveredApplyDetails.setUseMessageSid(busDeliveredUseMessage.getSid());
}
}
if ("1".equals(busDeliveredApply.getTypeKey())) {
//贷款人的信息
String loanSid = busDeliveredApply.getLoanSid();
ResultBean<CrmCustomerTempVo> crmCustomerTempResultBean = crmCustomerTempFeign.fetchSid(loanSid);
if (crmCustomerTempResultBean.getData() != null) {
CrmCustomerTempVo crmCustomerTempVo = crmCustomerTempResultBean.getData();
BusDeliveredUseMessage busDeliveredUseMessage = new BusDeliveredUseMessage();
busDeliveredUseMessage.setAddress(crmCustomerTempVo.getAddress());
busDeliveredUseMessage.setName(crmCustomerTempVo.getName());
busDeliveredUseMessage.setMobile(crmCustomerTempVo.getMobile());
busDeliveredUseMessage.setIdNo(crmCustomerTempVo.getIDNumber());
busDeliveredUseMessage.setCustomerType(crmCustomerTempVo.getCustomerType());
busDeliveredUseMessage.setCustomerTypeKey(crmCustomerTempVo.getCustomerTypeKey());
busDeliveredUseMessage.setApplySid(busDeliveredApply.getSid());
busDeliveredUseMessage.setContacts(crmCustomerTempVo.getContacts());
busDeliveredUseMessage.setIsConfirmRealBuyer("0");
busDeliveredUseMessageService.insert(busDeliveredUseMessage);
busDeliveredApplyDetails.setUseMessageSid(busDeliveredUseMessage.getSid());
}
}
busDeliveredApplyDetailsService.insert(busDeliveredApplyDetails);
}
@ -1226,6 +1380,14 @@ public class BusDeliveredApplyService extends MybatisBaseService<BusDeliveredApp
//判断选择的优惠是否超出
List<AppCarListVo> carList = dto.getCarList();
if (!carList.isEmpty()) {
//判断合同编号是否一致
for (int a = 0; a < carList.size(); a++) {
BusSalesOrderVehicle busSalesOrderVehicle = busSalesOrderVehicleService.selectByNoAndVinSid(dto.getContractId(), carList.get(a).getVinSid());
if (busSalesOrderVehicle == null) {
return rb.setMsg("所选车辆与合同编号不匹配");
}
}
//判断已经选择的车辆是否已经提交
List<String> vinSid = carList.stream().map(AppCarListVo::getVinSid).collect(Collectors.toList());
List<String> vinNoList = baseMapper.selectVinNo(dto.getContractId(), vinSid);
@ -1295,7 +1457,7 @@ public class BusDeliveredApplyService extends MybatisBaseService<BusDeliveredApp
bv.setModelId(ProcDefEnum.BUSDELIVEREDAPPLY.getProDefId());
if (r == 1) {
ResultBean<UpdateFlowFieldVo> voResultBean = flowableFeign.startProcess(bv);
if(!voResultBean.getSuccess()){
if (!voResultBean.getSuccess()) {
return rb.setMsg(voResultBean.getMsg());
}
UpdateFlowFieldVo ufVo = voResultBean.getData();

2
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdelivereddetailsdiscount/BusDeliveredDetailsDiscountMapper.java

@ -32,4 +32,6 @@ public interface BusDeliveredDetailsDiscountMapper extends BaseMapper<BusDeliver
int selectGiveNum(@Param("discountSid") String discountSid, @Param("sid") String sid);
int selectGiveNumBySid(String sid);
List<BusDeliveredDetailsDiscount> selectByApplySid(String sid);
}

12
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdelivereddetailsdiscount/BusDeliveredDetailsDiscountMapper.xml

@ -37,9 +37,17 @@
</select>
<select id="selectGiveNumBySid" resultType="int">
select IFNULL(SUM(cast(giveNum as signed)), 0) as count
select IFNULL(SUM(cast(bd.giveNum as signed)), 0) as count
from bus_delivered_details_discount bd
left join bus_delivered_apply ba on ba.sid = bd.applySid
where ba.state = 2 or ba.state = 3
where ba.state = 2
or ba.state = 3
</select>
<select id="selectByApplySid"
resultType="com.yxt.anrui.buscenter.api.busdelivereddetailsdiscount.BusDeliveredDetailsDiscount">
select IFNULL(SUM(cast(giveNum as signed)), 0) as count,price,discountExplain,name,remarks
from bus_delivered_details_discount
where applySid = #{sid} group by discountSid
</select>
</mapper>

6
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdelivereddetailsdiscount/BusDeliveredDetailsDiscountService.java

@ -31,10 +31,14 @@ public class BusDeliveredDetailsDiscountService extends MybatisBaseService<BusDe
}
public int selectGiveNum(String discountSid, String sid) {
return baseMapper.selectGiveNum(discountSid,sid);
return baseMapper.selectGiveNum(discountSid, sid);
}
public int selectGiveNumBySid(String sid) {
return baseMapper.selectGiveNumBySid(sid);
}
public List<BusDeliveredDetailsDiscount> selectByApplySid(String sid) {
return baseMapper.selectByApplySid(sid);
}
}

1
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplication/AppBillApplicationIInfoDto.java

@ -67,5 +67,4 @@ public class AppBillApplicationIInfoDto implements Dto {
@ApiModelProperty("用户部门路径")
private String orgSidPath;
}

4
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplication/AppBillApplicationIInfoVo.java

@ -1,6 +1,7 @@
package com.yxt.anrui.fin.api.finbillapplication;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.yxt.anrui.fin.api.finbilltrailer.FinBillTrailerVo;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@ -41,6 +42,9 @@ public class AppBillApplicationIInfoVo implements Vo {
@ApiModelProperty("车辆集合")
private List<AppVinListVo> vinList;
@ApiModelProperty("开票挂车信息")
private List<FinBillTrailerVo> finBillTrailers; // 开票挂车信息
@ApiModelProperty("开票状态")
private String billState;

9
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplication/AppVinListDto.java

@ -33,11 +33,8 @@ public class AppVinListDto implements Dto {
private String openTickSid; // 开票名称sid
@ApiModelProperty("开票名称")
private String openTickName; // 开票名称
@ApiModelProperty("合格证状态key")
private String certificateStateKey; // 合格证状态key
@ApiModelProperty("合格证状态value")
private String certificateStateValue; // 合格证状态value
@ApiModelProperty("合格证")
private String certificateState; // 合格证
@ApiModelProperty("开票信息")
private String openTickRemarks; // 开票信息
private String invoiceInfo; // 开票信息
}

6
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplication/AppVinListVo.java

@ -24,4 +24,10 @@ public class AppVinListVo implements Vo {
@ApiModelProperty("开票类型")
private String billTypeKey;
@ApiModelProperty("开票信息")
private Boolean invoiceInfo;
@ApiModelProperty("合格证")
private Boolean certificateState;
}

3
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillapplication/FinBillApplicationVo.java

@ -77,7 +77,8 @@ public class FinBillApplicationVo implements Vo {
private String returnedMoneyDate; // 承诺回款日期
@ApiModelProperty("欠款开票原因value")
private String arrearsOpenYYValue; // 欠款开票原因value
@ApiModelProperty("单据编号")
private String billNo; // 单据编号
@ApiModelProperty(value = "流程id")
private String procDefId;
@ApiModelProperty(value = "实例id")

2
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbilltrailer/FinBillTrailerVo.java

@ -70,4 +70,6 @@ public class FinBillTrailerVo implements Vo {
@ApiModelProperty("单台开票金额")
private String oneBillMoney; // 单台开票金额
@ApiModelProperty("合格证图片")
private String hgzImageUrl; // 合格证图片
}

29
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillvehicle/FinBillVehicleDetailsVo.java

@ -51,23 +51,36 @@ public class FinBillVehicleDetailsVo implements Vo {
private String sid; // sid
@ApiModelProperty("创建人接口")
@ApiModelProperty("创建人接口")
private String createByName; // 创建人接口
@ApiModelProperty("分公司sid")
@ApiModelProperty("分公司sid")
private String useOrgSid; // 分公司sid
@ApiModelProperty("车辆sid")
private String vehSid; // 车辆sid
@ApiModelProperty("车架号")
@ApiModelProperty("车架号")
private String vinNo; // 车架号
@ApiModelProperty("开票类型key")
@ApiModelProperty("开票类型key")
private String billTypeKey; // 开票类型key
@ApiModelProperty("开票类型value")
@ApiModelProperty("开票类型value")
private String billTypeValue; // 开票类型value
@ApiModelProperty("挂靠公司sid")
@ApiModelProperty("挂靠公司sid")
private String billNameSid; // 挂靠公司sid
@ApiModelProperty("挂靠公司名称")
@ApiModelProperty("挂靠公司名称")
private String billName; // 挂靠公司名称
@ApiModelProperty("开票申请单sid")
@ApiModelProperty("开票申请单sid")
private String billAppSid; // 开票申请单sid
@ApiModelProperty("备注")
private String remarks; // 备注
@ApiModelProperty("开票名称sid")
private String openTickSid; // 开票名称sid
@ApiModelProperty("开票名称")
private String openTickName; // 开票名称
@ApiModelProperty("合格证状态key")
private String certificateStateKey; // 合格证状态key
@ApiModelProperty("合格证状态value")
private String certificateStateValue; // 合格证状态value
@ApiModelProperty("开票信息")
private String openTickRemarks; // 开票信息
}

2
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillvehicle/FinBillVehicleFeign.java

@ -84,5 +84,5 @@ public interface FinBillVehicleFeign {
@ApiOperation("根据车辆sid查询开票车辆")
@GetMapping("/fetchByVehSid/{vehSid}")
@ResponseBody
ResultBean<Integer> fetchByVehSid(@PathVariable("vehSid") String vehSid);
ResultBean<FinBillVehicleDetailsVo> fetchByVehSid(@PathVariable("vehSid") String vehSid);
}

2
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finbillvehicle/FinBillVehicleFeignFallback.java

@ -76,7 +76,7 @@ public class FinBillVehicleFeignFallback implements FinBillVehicleFeign {
}
@Override
public ResultBean<Integer> fetchByVehSid(String vehSid) {
public ResultBean<FinBillVehicleDetailsVo> fetchByVehSid(String vehSid) {
return null;
}
}

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

@ -31,6 +31,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yxt.anrui.base.api.baseinternalpurchase.BaseInternalPurchase;
import com.yxt.anrui.base.api.baseinternalpurchase.flow.GetNodeVo;
import com.yxt.anrui.base.api.basetrailer.BaseTrailerDetailsVo;
import com.yxt.anrui.base.api.basetrailer.BaseTrailerFeign;
import com.yxt.anrui.base.api.basetrailer.TrailerVo;
import com.yxt.anrui.base.api.basetrailer.TraliveredVo;
@ -224,6 +225,13 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
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.setOpenTickName(finBillVehicle.getOpenTickName());
}
}
finBillTrailerService.save(finBillTrailer);
}
//附件信息
@ -336,6 +344,13 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
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.setOpenTickName(finBillVehicle.getOpenTickName());
}
}
finBillTrailerService.save(finBillTrailer);
}
return rb.success().setMsg("修改成功").setData(dtoSid);
@ -363,7 +378,9 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
List<FinBillApplicationDetailsVo> finBillApplicationVos = baseMapper.selectByContractNo(contractNo);
if (finBillApplicationVos != null && finBillApplicationVos.size() > 0) {
FinBillApplicationDetailsVo finBillApplicationVo = finBillApplicationVos.get(0);
entity.setOneBillMoney(new BigDecimal(finBillApplicationVo.getOneBillMoney()));
if (StringUtils.isNotBlank(finBillApplicationVo.getOneBillMoney())){
entity.setOneBillMoney(new BigDecimal(finBillApplicationVo.getOneBillMoney()));
}
}
FinBillApplicationDetailsVo vo = new FinBillApplicationDetailsVo();
BeanUtil.copyProperties(entity, vo);
@ -371,6 +388,15 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
vo.setFinBillVehicles(finBillVehicleVos);
List<FinBillTrailerVo> finBillTrailerVos = finBillTrailerService.fetchByMainSid(sid);
if (finBillTrailerVos.size() > 0) {
for (FinBillTrailerVo finBillTrailerVo : finBillTrailerVos) {
BaseTrailerDetailsVo baseTrailerDetailsVo = baseTrailerFeign.fetchByGcVinNo(finBillTrailerVo.getGcVinNo()).getData();
List<CommonAppendixVo> commonAppendixVos = commonAppendixFeign.selByLinkSid(baseTrailerDetailsVo.getSid()).getData();
for (CommonAppendixVo commonAppendixVo : commonAppendixVos) {
if (commonAppendixVo.getAttachType().equals("挂车合格证照片")){
finBillTrailerVo.setHgzImageUrl(commonAppendixVo.getFileUrl());
}
}
}
vo.setFinBillTrailers(finBillTrailerVos);
} else {
for (FinBillVehicleVo finBillVehicleVo : finBillVehicleVos) {
@ -386,6 +412,14 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
finBillTrailerVo.setBillTypeValue(finBillVehicleVo.getBillTypeValue());
finBillTrailerVo.setOpenTickSid(finBillVehicleVo.getOpenTickSid());
finBillTrailerVo.setOpenTickName(finBillVehicleVo.getOpenTickName());
//根据挂车车架号查询挂车信息以及合格证照片路径
BaseTrailerDetailsVo baseTrailerDetailsVo = baseTrailerFeign.fetchByGcVinNo(trailerVo.getTrailerVinNo()).getData();
List<CommonAppendixVo> commonAppendixVos = commonAppendixFeign.selByLinkSid(baseTrailerDetailsVo.getSid()).getData();
for (CommonAppendixVo commonAppendixVo : commonAppendixVos) {
if (commonAppendixVo.getAttachType().equals("挂车合格证照片")){
finBillTrailerVo.setHgzImageUrl(commonAppendixVo.getFileUrl());
}
}
finBillTrailerVos.add(finBillTrailerVo);
}
}
@ -693,6 +727,7 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
updateFlowFiled(BeanUtil.beanToMap(resultBean.getData()));
if ("Event_end".equals(resultBean.getData().getTaskDefKey())) {
List<FinBillVehicleVo> finBillVehicleVos = finBillVehicleService.fetchVehBySid(businessSid);
List<FinBillTrailerVo> finBillTrailerVos = finBillTrailerService.fetchByMainSid(businessSid);
for (FinBillVehicleVo finBillVehicleVo : finBillVehicleVos) {
FinVehicleInvoiceDto finVehicleInvoiceDto = new FinVehicleInvoiceDto();
finVehicleInvoiceDto.setInvoiceTitle(finBillApplication.getOpenTickUnitName());
@ -711,6 +746,26 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
finVehicleInvoiceDto.setUseOrgSid(finBillApplication.getUseOrgSid());
finVehicleInvoiceService.mySave(finVehicleInvoiceDto);
}
if (finBillTrailerVos != null){
for (FinBillTrailerVo finBillTrailerVo : finBillTrailerVos) {
FinVehicleInvoiceDto finVehicleInvoiceDto = new FinVehicleInvoiceDto();
finVehicleInvoiceDto.setInvoiceTitle(finBillApplication.getOpenTickUnitName());
finVehicleInvoiceDto.setContractNo(finBillApplication.getContractNo());
finVehicleInvoiceDto.setCustomerName(finBillApplication.getCustomerName());
finVehicleInvoiceDto.setVIN(finBillTrailerVo.getGcVinNo());
finVehicleInvoiceDto.setInvoiceTypeKey(finBillTrailerVo.getBillTypeKey());
finVehicleInvoiceDto.setInvoiceType(finBillTrailerVo.getBillTypeValue());
finVehicleInvoiceDto.setInvoiceAmount(new BigDecimal(finBillTrailerVo.getOneBillMoney()));
finVehicleInvoiceDto.setBillingStateKey("001");
finVehicleInvoiceDto.setBillingState("未开票");
finVehicleInvoiceDto.setInvoicingName(finBillTrailerVo.getOpenTickName());
finVehicleInvoiceDto.setCreateBySid(finBillApplication.getCreateBySid());
finVehicleInvoiceDto.setBusinessStateKey(finBillApplication.getBillStateKey());
finVehicleInvoiceDto.setBusinessState(finBillApplication.getBillStateValue());
finVehicleInvoiceDto.setUseOrgSid(finBillApplication.getUseOrgSid());
finVehicleInvoiceService.mySave(finVehicleInvoiceDto);
}
}
BusSalesOrder busSalesOrder = busSalesOrderFeign.selectOrderByContractNo(finBillApplication.getContractNo()).getData();
BigDecimal oneBillMoney = busSalesOrder.getOneBillMoney();
if (oneBillMoney == null){
@ -1448,6 +1503,13 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
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.setOpenTickName(finBillVehicle.getOpenTickName());
}
}
finBillTrailerService.save(finBillTrailer);
}
//附件信息
@ -1568,6 +1630,13 @@ public class FinBillApplicationService extends MybatisBaseService<FinBillApplica
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.setOpenTickName(finBillVehicle.getOpenTickName());
}
}
finBillTrailerService.save(finBillTrailer);
}
return rb.success().setMsg("修改成功").setData(dtoSid);

5
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finbillvehicle/FinBillVehicleMapper.java

@ -30,6 +30,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.yxt.anrui.fin.api.finbillvehicle.AppInvoicingInfoVinNoVo;
import com.yxt.anrui.fin.api.finbillvehicle.FinBillVehicleDetailsVo;
import org.apache.ibatis.annotations.*;
import com.yxt.anrui.fin.api.finbillvehicle.FinBillVehicle;
import com.yxt.anrui.fin.api.finbillvehicle.FinBillVehicleVo;
@ -70,8 +71,8 @@ public interface FinBillVehicleMapper extends BaseMapper<FinBillVehicle> {
AppInvoicingInfoVinNoVo selDetailsByVinNo(@Param("vinNo") String vinNo);
@Select("select count(*) from fin_bill_vehicle where vehSid = #{vehSid} and state = '1'")
Integer fetchByVehSid(String vehSid);
@Select("select * from fin_bill_vehicle where vehSid = #{vehSid} and state = '1'")
FinBillVehicleDetailsVo fetchByVehSid(String vehSid);
@Update("UPDATE fin_bill_vehicle SET state = 0 WHERE billAppSid = #{sid}")
void updateByMainSid(String sid);

6
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finbillvehicle/FinBillVehicleRest.java

@ -101,9 +101,9 @@ public class FinBillVehicleRest implements FinBillVehicleFeign {
}
@Override
public ResultBean<Integer> fetchByVehSid(String vehSid) {
public ResultBean<FinBillVehicleDetailsVo> fetchByVehSid(String vehSid) {
ResultBean rb = ResultBean.fireFail();
Integer i = finBillVehicleService.fetchByVehSid(vehSid);
return rb.success().setData(i);
FinBillVehicleDetailsVo finBillVehicleDetailsVo = finBillVehicleService.fetchByVehSid(vehSid);
return rb.success().setData(finBillVehicleDetailsVo);
}
}

2
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finbillvehicle/FinBillVehicleService.java

@ -134,7 +134,7 @@ public class FinBillVehicleService extends MybatisBaseService<FinBillVehicleMapp
return vo;
}
public Integer fetchByVehSid(String vehSid) {
public FinBillVehicleDetailsVo fetchByVehSid(String vehSid) {
return baseMapper.fetchByVehSid(vehSid);
}

30
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/fincollectionconfirmation/FinCollectionConfirmationService.java

@ -1084,40 +1084,12 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
qw.notIn("sid", params.getSidList());
}
qw.gt("currentReceivableMoney", 0);//应收金额
/*ResultBean<List<BaseVehicleTempstate>> baseVehicleTempstateFeignList = baseVehicleTempstateFeign.getList(VehicleStateTempOrLast.PaymentEnum.FIN_PAYMENT.getCode());
List<BaseVehicleTempstate> baseVehicleTempstates = baseVehicleTempstateFeignList.getData();
if (baseVehicleTempstates.size() > 0) {
List<String> stringList = baseVehicleTempstates.stream().map(v -> v.getBusSid()).distinct().collect(Collectors.toList());
List<String> sidsList = getList(stringList, userSid, useOrgSid);
if (sidsList.size() > 0) {
//查询该申请下是否存在款项明细
List<FinSelectedReceivablesDetailed> finSelectedReceivablesDetaileds = finSelectedReceivablesDetailedService.getList(sidsList);
List<String> strings = finSelectedReceivablesDetaileds.stream().map(v -> v.getReceivablesSid()).distinct().collect(Collectors.toList());
if (strings.size() > 0) {
qw.notIn("sid", strings);
}
}
}*/
if (StringUtils.isNotBlank(pagerQuery.getParams().getPurchaseSystemSid())) {
qw.eq("purchaseSystemSid", pagerQuery.getParams().getPurchaseSystemSid());
} else {
qw.eq("purchaseSystemSid", "0");
}
//筛选
/* ResultBean<List<BaseVehicleTempstate>> resultBeanNew = baseVehicleTempstateFeign.getList(VehicleStateTempOrLast.PaymentEnum.FIN_PAYMENT.getCode());
List<BaseVehicleTempstate> list = resultBeanNew.getData();
if (list.size() > 0) {
List<String> stringList = list.stream().map(v -> v.getBusSid()).distinct().collect(Collectors.toList());
List<String> sidsList = getList(stringList, pagerQuery.getParams().getUserSid(), useOrgSid);
if (sidsList.size() > 0) {
//查询该申请下是否存在款项明细
List<FinSelectedReceivablesDetailed> finSelectedReceivablesDetaileds = finSelectedReceivablesDetailedService.getList(sidsList);
List<String> strings = finSelectedReceivablesDetaileds.stream().map(v -> v.getReceivablesSid()).distinct().collect(Collectors.toList());
if (strings.size() > 0) {
qw.notIn("sid", strings);
}
}
}*/
List<AppFinUncollectedReceivablesDetailedVo> collList = finSelectedReceivablesDetailedService.getPaymentList(qw, params.getName());
if (collList.isEmpty()) {
collList = finSelectedReceivablesDetailedService.getPaymentList(qw, "");
@ -1920,7 +1892,7 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
finSelectedReceivablesDetailedService.updateById(finSelectedReceivablesDetailed);
//ToDo:查询是否符合待出库的条件
//该合同编号下的该车架号的所有认款金额
List<FinSelectedReceivablesDetailedVo> voList = finSelectedReceivablesDetailedService.selectListByVin(v.getContractNo(), v.getVIN(), 3);
List<FinSelectedReceivablesDetailedVo> voList = finSelectedReceivablesDetailedService.selectListByVin(v.getContractNo(), finUncollectedReceivablesDetailed.getBusVinSid(), 3);
BigDecimal bigDecimalVinAll = voList.stream().map(FinSelectedReceivablesDetailedVo::getSubscriptionMoney).map(BigDecimal::new).reduce(BigDecimal.ZERO, BigDecimal::add);
//查询该合同编号下的销售订单的单车成交价
ResultBean<CommonContract> commonContractResultBean = commonContractFeign.selectByNo(v.getContractNo());

2
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finselectedreceivablesdetailed/FinSelectedReceivablesDetailedMapper.java

@ -104,7 +104,7 @@ public interface FinSelectedReceivablesDetailedMapper extends BaseMapper<FinSele
List<String> selectListByAuditState(@Param("i") int i, @Param("userSid") String userSid, @Param("useOrgSid") String useOrgSid);
List<FinSelectedReceivablesDetailedVo> selectListByVin(@Param("contractNo") String contractNo, @Param("vinNo") String vin, @Param("state") int state);
List<FinSelectedReceivablesDetailedVo> selectListByVin(@Param("contractNo") String contractNo, @Param("busVinSid") String busVinSid, @Param("state") int state);
List<FinSelectedReceivablesDetailed> getList(@Param("list") List<String> sidsList);

11
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finselectedreceivablesdetailed/FinSelectedReceivablesDetailedMapper.xml

@ -145,11 +145,12 @@
<select id="selectListByVin"
resultType="com.yxt.anrui.fin.api.finselectedreceivablesdetailed.FinSelectedReceivablesDetailedVo">
select *
from fin_selected_receivables_detailed
where contractNo = #{contractNo}
and VIN = #{vinNo}
and auditState = #{state}
select fd.*
from fin_selected_receivables_detailed fd
left join fin_uncollected_receivables_detailed fud on fud.sid = fd.receivablesSid
where fd.contractNo = #{contractNo}
and fud.busVinSid = #{busVinSid}
and fd.auditState = #{state}
</select>
<select id="getList"

4
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finselectedreceivablesdetailed/FinSelectedReceivablesDetailedService.java

@ -219,8 +219,8 @@ public class FinSelectedReceivablesDetailedService extends MybatisBaseService<Fi
return baseMapper.selectListByAuditState(i, userSid, useOrgSid);
}
public List<FinSelectedReceivablesDetailedVo> selectListByVin(String contractNo, String vin, int state) {
return baseMapper.selectListByVin(contractNo, vin, state);
public List<FinSelectedReceivablesDetailedVo> selectListByVin(String contractNo, String busVinSid, int state) {
return baseMapper.selectListByVin(contractNo, busVinSid, state);
}
public List<FinSelectedReceivablesDetailed> getList(List<String> sidsList) {

5
anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowtask/FlowTaskController.java

@ -89,11 +89,6 @@ public class FlowTaskController implements FlowTaskFeign {
int size = Integer.valueOf(businessTaskQuery.getSize() + "");
int current = Integer.valueOf(businessTaskQuery.getCurrent() + "");
List<BusinessTaskParam> fields = businessTaskQuery.getParams().getFields();
/* AtomicReference<String> orgPath= new AtomicReference<>("");
fields.forEach(f->{
if(f.getField().equals(BusinessVariables.ORGPATH))
orgPath.set(f.getValue());
});*/
String orgPath=null;
for(BusinessTaskParam b: fields){
if(b.getField().equals(BusinessVariables.ORGPATH)) {

2
anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowtask/FlowTaskMapper.xml

@ -163,7 +163,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
) flow
GROUP BY flow.PROC_INST_ID_
ORDER BY flow.START_TIME_ DESC
LIMIT #{page},#{size}
<!--LIMIT #{page},#{size}-->
</select>
<select id="finishedListCount" parameterType="java.util.Map" resultType="int">
SELECT COUNT(DISTINCT ahpi.PROC_INST_ID_)

100
anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowtask/FlowTaskService.java

@ -465,23 +465,13 @@ public class FlowTaskService extends MybatisBaseService<FlowTaskMapper, FlowTask
Page<FlowTaskDto> page = new Page<>();
TaskQuery taskQuery = taskService.createTaskQuery();
String startUserNameParams = "";
// 流程参数
Map<String, Object> paramMap = new HashMap<>();
// 挂载表单参数
for (BusinessTaskParam btq : params) {
paramMap.put(btq.getField(), btq.getValue());
// if(btq.getSqlOperationSymbol().equals(SQLOperationSymbol.EQUAL)){
// taskQuery.processVariableValueEquals(btq.getField(),btq.getValue());
// }
// if(btq.getSqlOperationSymbol().equals(SQLOperationSymbol.LIKE)){
// taskQuery.processVariableValueLike(btq.getField(),"%"+btq.getValue()+"%");
// }
// if(btq.getSqlOperationSymbol().equals(SQLOperationSymbol.NONE)){
// if("processDefinitionId".equals(btq.getField())){
// taskQuery.processDefinitionId(btq.getValue());
// }
// }
if (btq.getSqlOperationSymbol().equals(SQLOperationSymbol.NONE)) {
if ("orgSid".equals(btq.getField())) {
String value = btq.getValue();
@ -494,13 +484,12 @@ public class FlowTaskService extends MybatisBaseService<FlowTaskMapper, FlowTask
}
}
}
//发起人姓名查询
if("startUserName".equals(btq.getField())){
startUserNameParams = btq.getValue();
}
}
}
// 用户角色sid
// List<String> roleSidList = sysUserRoleFeign.getUserRoleSidByUserSid(userSid).getData();
/* if (CollectionUtils.isEmpty(roleSidList)) {
return new ResultBean().fail().setMsg("请先设置用户角色");
}*/
TaskQuery or = taskQuery.active()
.includeProcessVariables()
.includeTaskLocalVariables();
@ -520,12 +509,12 @@ public class FlowTaskService extends MybatisBaseService<FlowTaskMapper, FlowTask
if (paramMap.get("proDefName") != null && StringUtils.isNotBlank(paramMap.get("proDefName").toString())) {
taskQuery.processDefinitionNameLike("%" + paramMap.get("proDefName") + "%");
}
page.setTotal(taskQuery.count());
int p = (pageNum - 1) * pageSize;
List<Task> taskList = taskQuery.listPage(p, pageSize);
/* page.setTotal(taskQuery.count());
int p = (pageNum - 1) * pageSize;*/
// List<Task> taskList = taskQuery.listPage(p, pageSize);
List<Task> taskList = taskQuery.list();
List<FlowTaskDto> flowList = new ArrayList<>();
for (Task task : taskList) {
FlowTaskDto flowTask = new FlowTaskDto();
Map<String, Object> processVariables = task.getProcessVariables();
flowTask.setProcessVariables(processVariables);
@ -579,15 +568,16 @@ public class FlowTaskService extends MybatisBaseService<FlowTaskMapper, FlowTask
flowTask.setAssigneeName(sysUserVoResultBean2.getData().getName());
flowTask.setAssigneeSid(sysUserVoResultBean2.getData().getSid());
flowTask.setDeptName(sysUserVoResultBean2.getData().getOrganizationName());
// 设置手机端参数
// Map<String, Map<String, Object>> variablesMap = getAppOrPcVariables(flowTask);
// flowTask.setAppVariables(variablesMap.get("appVariables"));
// // 设置pc端参数
// flowTask.setPcVariables(variablesMap.get("pcVariables"));
flowList.add(flowTask);
}
//筛选发起人
if (StringUtils.isNotBlank(startUserNameParams)) {
String finalStartUserNameParams = startUserNameParams;
flowList = flowList.stream().filter(v -> v.getStartUserName().contains(finalStartUserNameParams)).collect(Collectors.toList());
}
page.setTotal(taskQuery.count());
flowList = flowList.stream().skip((pageNum - 1) * pageSize).limit(pageSize).
collect(Collectors.toList());
page.setRecords(flowList);
ResultBean<Page<FlowTaskDto>> rb = new ResultBean<Page<FlowTaskDto>>();
return rb.success().setData(page);
@ -695,13 +685,12 @@ public class FlowTaskService extends MybatisBaseService<FlowTaskMapper, FlowTask
* @return
*/
public ResultBean<Page<FlowTaskDto>> businessFinishedList(String userSid, List<BusinessTaskParam> params, Integer pageNum, Integer pageSize) {
Page<FlowTaskDto> page = new Page<>();
Map<String, Object> paraMap = new HashMap<>();
List<Map<String, Object>> ll = new ArrayList<>();
String startUserNameParams = "";
for (BusinessTaskParam btq : params) {
paraMap.put(btq.getField(), btq.getValue());
Map<String, Object> mapss = new HashMap<>();
if (btq.getSqlOperationSymbol().equals(SQLOperationSymbol.EQUAL)) {
mapss.put("symbol", "=");
@ -713,22 +702,20 @@ public class FlowTaskService extends MybatisBaseService<FlowTaskMapper, FlowTask
mapss.put("value", "%" + btq.getValue() + "%");
mapss.put("filed", btq.getField());
}
/* if(btq.getSqlOperationSymbol().equals(SQLOperationSymbol.NONE)){
if("processDefinitionId".equals(btq.getField())){
taskInstanceQuery.processDefinitionId(btq.getValue());
}
}*/
ll.add(mapss);
}
//查询条件发起人
if("startUserName".equals(btq.getField())){
paraMap.remove("startUserName");
startUserNameParams = btq.getValue();
}
}
paraMap.put("userSid", userSid);
paraMap.put("list", ll);
paraMap.put("page", (pageNum - 1) * pageSize);
paraMap.put("size", pageSize);
// List<Map<String, Object>> maps = baseMapper.finishedList(userSid, ll ,(pageNum-1)*pageSize,pageSize);
/* paraMap.put("page", (pageNum - 1) * pageSize);
paraMap.put("size", pageSize);*/
List<Map<String, Object>> maps = baseMapper.finishedList1(paraMap);
int count = baseMapper.finishedListCount(paraMap);
List<FlowTaskDto> hisTaskList = new ArrayList();
for (Map<String, Object> histTask : maps) {
FlowTaskDto flowTask = new FlowTaskDto();
@ -751,47 +738,22 @@ public class FlowTaskService extends MybatisBaseService<FlowTaskMapper, FlowTask
userName_str=userName.substring(0,userName.length()-1);
flowTask.setAssigneeName(userName_str);
}
flowTask.setHasRevokeButton(userSid.equals(flowTask.getAssigneeSid()) ? true : false);
flowTask.setProcDefId(histTask.get("PROC_DEF_ID_") == null ? "" : histTask.get("PROC_DEF_ID_").toString());
flowTask.setTaskDefKey(histTask.get("taskDefKey") == null ? "" : histTask.get("taskDefKey").toString());
flowTask.setTaskName(histTask.get("NAME_") == null ? "" : histTask.get("NAME_").toString());
// 判断是否办结
/*Object end_act_id_ = histTask.get("END_ACT_ID_");
if (end_act_id_ != null) {
flowTask.setTaskName(ProcessStateEnum.FINISHED.getStateName());
}*/
// 流程定义信息
// ProcessDefinition pd = repositoryService.createProcessDefinitionQuery()
// .processDefinitionId(histTask.get("PROC_DEF_ID_").toString())
// .singleResult();
flowTask.setDeployId(histTask.get("DEPLOYMENT_ID_") == null ? "" : histTask.get("DEPLOYMENT_ID_").toString());
flowTask.setProcDefName(histTask.get("PROC_DEF_NAME_") == null ? "" : histTask.get("PROC_DEF_NAME_").toString());
flowTask.setProcDefVersion(histTask.get("PROC_DEF_VERSION_") == null ? 0 : Integer.parseInt(histTask.get("PROC_DEF_VERSION_").toString()));
flowTask.setProcInsId(histTask.get("PROC_INST_ID_").toString());
flowTask.setHisProcInsId(histTask.get("PROC_INST_ID_").toString());
// 流程发起人信息
// HistoricProcessInstance hi = historyService.createHistoricProcessInstanceQuery()
// .processInstanceId(histTask.get("PROC_INST_ID_").toString())
// .singleResult();
ResultBean<SysUserVo> sysUserVoResultBean = sysUserFeign.fetchBySid(histTask.get("START_USER_ID_").toString());
flowTask.setStartUserSid(sysUserVoResultBean.getData().getSid());
flowTask.setStartUserName(sysUserVoResultBean.getData().getName());
// ResultBean<SysUserVo> sysUserVoResultBean = sysUserFeign.fetchBySid(historicProcessInstance.getStartUserId());
if(sysUserVoResultBean.getData()!=null){
flowTask.setStartUserSid(sysUserVoResultBean.getData().getSid());
flowTask.setStartUserName(sysUserVoResultBean.getData().getName());
/*ResultBean<String> pathSidByUserSid = sysStaffOrgFeign.getPathSidByUserSid(sysUserVoResultBean.getData().getSid());
String ogrName="";
if(pathSidByUserSid.getData()!=null){
ResultBean<SysOrganizationVo> sysOrganizationVoResultBean = sysOrganizationFeign.fetchBySid(pathSidByUserSid.getData());
ogrName=sysOrganizationVoResultBean.getData().getName();
}
flowTask.setStartDeptName(ogrName+"-"+sysUserVoResultBean.getData().getOrganizationName());*/
}
// flowTask.setStartDeptName(sysUserVoResultBean.getData().getOrganizationName());
HistoricTaskInstance historicTaskInstance = historyService.createHistoricTaskInstanceQuery().includeProcessVariables().taskId(flowTask.getTaskId()).singleResult();
flowTask.setProcessVariables(historicTaskInstance.getProcessVariables());
Object end_act_id = histTask.get("end_act_id_");
@ -836,7 +798,15 @@ public class FlowTaskService extends MybatisBaseService<FlowTaskMapper, FlowTask
}
hisTaskList.add(flowTask);
}
page.setTotal(count);
//对hisTaskList进行筛选发起人
if (StringUtils.isNotBlank(startUserNameParams)) {
String finalStartUserNameParams = startUserNameParams;
hisTaskList = hisTaskList.stream().filter(v -> v.getStartUserName().contains(finalStartUserNameParams)).collect(Collectors.toList());
}
page.setTotal(hisTaskList.size());
hisTaskList = hisTaskList.stream().skip((pageNum - 1) * pageSize).limit(pageSize).
collect(Collectors.toList());
// page.setTotal(count);
page.setRecords(hisTaskList);
ResultBean<Page<FlowTaskDto>> rb = new ResultBean<Page<FlowTaskDto>>();
return rb.success().setData(page);

4
anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/flow/FlowTaskAllQuery.java

@ -1,6 +1,7 @@
package com.yxt.anrui.portal.api.flow;
import com.yxt.common.core.query.Query;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
@ -16,4 +17,7 @@ public class FlowTaskAllQuery implements Query {
private String startDate;//开始日期
private String endDate;//结束日期
private String orgSid;//部门sid
@ApiModelProperty(value = "发起人姓名")
private String startUserName;
}

10
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/flow/FlowableRest.java

@ -37,9 +37,6 @@ import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgVo;
import com.yxt.anrui.portal.api.sysuser.SysUser;
import com.yxt.anrui.portal.biz.sysstafforg.SysStaffOrgService;
import com.yxt.anrui.portal.biz.sysuser.SysUserService;
import com.yxt.anrui.terminal.api.app.flowable.AppFlowableRecordAndCommentVo;
import com.yxt.anrui.terminal.api.app.flowable.AppFlowableRecordQuery;
import com.yxt.anrui.terminal.api.app.flowable.AppFlowableRecordVo;
import com.yxt.anrui.terminal.api.app.flowable.ProcessCommentVo;
import com.yxt.common.base.utils.StringUtils;
import com.yxt.common.core.query.PagerQuery;
@ -51,7 +48,10 @@ import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.text.SimpleDateFormat;
import java.util.*;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Map;
/**
* Project: anrui-parent <br/>
@ -270,9 +270,7 @@ public class FlowableRest implements FlowableFeign {
public ResultBean<Page<FlowTaskDto>> doneAllTaskList(String userSid, PagerQuery<FlowTaskAllQuery> pQuery) {//已办列表
ResultBean<Page<com.yxt.anrui.flowable.api.flowtask.FlowTaskDto>> pageResultBean = flowableService.doneAllTaskList(userSid, pQuery);
Page<FlowTaskDto> page = new Page<>();
BeanUtil.copyProperties(pageResultBean.getData(),page);
ResultBean< Page<FlowTaskDto>> success = new ResultBean< Page<FlowTaskDto>>().success();
success.setData(page);
return success;

18
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/flow/FlowableService.java

@ -31,7 +31,6 @@ import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yxt.anrui.flowable.api.flow.UserAndOrgPath;
import com.yxt.anrui.flowable.api.flowdefinition.FlowDefinitionFeign;
import com.yxt.anrui.flowable.api.flowdefinition.FlowDefinitionFeignBusinessStartDTO;
import com.yxt.anrui.flowable.api.flowtask.FlowRecordVo;
import com.yxt.anrui.flowable.api.flowtask.FlowTaskDto;
import com.yxt.anrui.flowable.api.flowtask.FlowTaskFeign;
@ -56,11 +55,8 @@ 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.ApiParam;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import java.util.*;
import java.util.stream.Collectors;
@ -383,6 +379,13 @@ public class FlowableService extends MybatisBaseService<FlowableMapper, Flowable
taskParam.setValue(orgSid);
taskParamList.add(taskParam);
}
if(StringUtils.isNotBlank(params.getStartUserName())){
BusinessTaskParam taskParam = new BusinessTaskParam();
taskParam.setField("startUserName");
taskParam.setSqlOperationSymbol(SQLOperationSymbol.NONE);
taskParam.setValue(params.getStartUserName());
taskParamList.add(taskParam);
}
taskQuery.setFields(taskParamList);
taskQueryPagerQuery.setParams(taskQuery);
@ -446,6 +449,13 @@ public class FlowableService extends MybatisBaseService<FlowableMapper, Flowable
taskParam.setValue(processDefinitionId);
taskParamList.add(taskParam);
}
if(StringUtils.isNotBlank(params.getStartUserName())){
BusinessTaskParam taskParam = new BusinessTaskParam();
taskParam.setField("startUserName");
taskParam.setSqlOperationSymbol(SQLOperationSymbol.NONE);
taskParam.setValue(params.getStartUserName());
taskParamList.add(taskParam);
}
taskQuery.setFields(taskParamList);
taskQueryPagerQuery.setParams(taskQuery);
return flowTaskFeign.businessDoneList(userSid, taskQueryPagerQuery);

37
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmapplyinbound/ScmApplyInboundService.java

@ -199,28 +199,20 @@ public class ScmApplyInboundService extends MybatisBaseService<ScmApplyInboundMa
@Transactional(rollbackFor = Exception.class)
public ResultBean<String> saveOrUpdateApplyInBound(ScmApplyInboundDto dto) {
List<ScmFileDto> scmFiles = dto.getScmFiles();
List<ScmApplyInboundVehicleDto> vehicleList = dto.getVehicleList();
if (vehicleList.size() == 0) {
return new ResultBean().fail().setMsg("车辆列表不能为空");
}
for (ScmApplyInboundVehicleDto scmApplyInboundVehicleDto : vehicleList) {
String vinNo = scmApplyInboundVehicleDto.getVinNo();
vinNo = vinNo.trim();
vinNo = vinNo.replace(" ","");
if (vinNo.length() != 17 || vinNo.length() != 8){
return new ResultBean().fail().setMsg(scmApplyInboundVehicleDto.getVinNo()+"车架号输入不正确");
}
}
String orgPath = "";
if (StringUtils.isNotBlank(dto.getOrgPath())) {
orgPath = dto.getOrgPath();
} else {
//根据用户sid获取staffSid
SysOrganizationVo sysOrganizationVo = sysOrganizationFeign.fetchBySid(dto.getOrgSid()).getData();
if (sysOrganizationVo != null) {
orgPath = sysOrganizationVo.getOrgSidPath();
}
/*//根据用户sid获取staffSid
ResultBean<SysUserVo> userVoResultBean = sysUserFeign.fetchBySid(dto.getUserSid());
//根据staffSid获取用户的组织全路径
ResultBean<SysStaffOrg> orgByStaffSid = sysStaffOrgFeign.getOrgByStaffSid(userVoResultBean.getData().getStaffSid());
//用户的组织全路径
orgPath = orgByStaffSid.getData().getOrgSidPath();
orgPath = orgByStaffSid.getData().getOrgSidPath();*/
}
if (StringUtils.isBlank(dto.getSid())) { // 新增
ScmApplyInbound inboundVehicle = new ScmApplyInbound();
@ -256,6 +248,22 @@ public class ScmApplyInboundService extends MybatisBaseService<ScmApplyInboundMa
if (StringUtils.isBlank(dto.getDepartureDate())) {
return new ResultBean().fail().setMsg("请填写厂家发车日期");
}
List<ScmApplyInboundVehicleDto> vehicleList = dto.getVehicleList();
if (vehicleList == null) {
return new ResultBean().fail().setMsg("车辆列表不能为空");
}
for (ScmApplyInboundVehicleDto scmApplyInboundVehicleDto : vehicleList) {
if (StringUtils.isNotBlank(scmApplyInboundVehicleDto.getVinNo())) {
String vinNo = scmApplyInboundVehicleDto.getVinNo();
vinNo = vinNo.trim();
vinNo = vinNo.replace(" ", "");
if (vinNo.length() != 17) {
if (vinNo.length() != 8) {
return new ResultBean().fail().setMsg(scmApplyInboundVehicleDto.getVinNo() + "车架号输入不正确");
}
}
}
}
List<String> vinNoList = vehicleList.stream().filter(vehicle -> StringUtils.isNotBlank(vehicle.getVinNo())).map(vehicle -> vehicle.getVinNo()).collect(Collectors.toList());
// 采购订单下线日期一旦维护,二次确认,则不能修改 TODO
// 验证填写的车架号是否重复
@ -282,6 +290,7 @@ public class ScmApplyInboundService extends MybatisBaseService<ScmApplyInboundMa
}
ScmApplyInbound scmApplyInbound = fetchBySid(dto.getSid());
BeanUtil.copyProperties(dto, scmApplyInbound);
scmApplyInbound.setOrgSidPath(dto.getOrgPath());
updateById(scmApplyInbound);
scmFileService.delByMainSid(dto.getSid());
if (scmFiles.size() > 0) {

14
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehicleexamine/ScmVehicleExamineService.java

@ -551,11 +551,15 @@ public class ScmVehicleExamineService extends MybatisBaseService<ScmVehicleExami
if (StringUtils.isBlank(dto.getInboundDate())) {
return rb.setMsg("厂家入库日期不能为空");
}
String vinNo = dto.getVin();
vinNo = vinNo.trim();
vinNo = vinNo.replace(" ", "");
if (vinNo.length() != 17 || vinNo.length() != 8) {
return new ResultBean().fail().setMsg(dto.getVin() + "车架号输入不正确");
if (StringUtils.isNotBlank(dto.getVin())){
String vinNo = dto.getVin();
vinNo = vinNo.trim();
vinNo = vinNo.replace(" ", "");
if (vinNo.length() != 17) {
if (vinNo.length() != 8){
return new ResultBean().fail().setMsg(dto.getVin() + "车架号输入不正确");
}
}
}
String staffSid = sysUserFeign.getUserOrgInfoByUserSid(dto.getUserSid()).getData().getStaffSid();
SysStaffinfoVo data = sysUserFeign.getSysUserByMobile(staffSid).getData();

133
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/invoiced/BillApplicationIInfoDto.java

@ -11,115 +11,64 @@ import java.util.List;
public class BillApplicationIInfoDto implements Dto {
private static final long serialVersionUID = -3912119646277339550L;
@ApiModelProperty("业务sid")
private String sid;
@ApiModelProperty("用户sid")
@JsonProperty("userSid")
private String userSid;
@ApiModelProperty("合同编号")
@JsonProperty("contractId")
private String contractNo;
@ApiModelProperty("开票总价")
@JsonProperty("invoiceTotal")
private String totalBillMoney;
@ApiModelProperty("单台开票价")
@JsonProperty("invoiceMoney")
private String oneBillMoney;
@ApiModelProperty("客户名称")
@JsonProperty("customer")
private String customerName;
@ApiModelProperty(value = "销售类型value")
private String saleType;
@ApiModelProperty("部门-人员名")
private String publishInfo;
@ApiModelProperty(value = "销售部门名称")
private String sellerDept;
@ApiModelProperty(value = "销售专员名称")
private String sellerName;
@ApiModelProperty("申请日期")
@JsonProperty("date")
private String applyDate;
@ApiModelProperty("备注")
private String remarks;
private String date;
@ApiModelProperty("客户名称")
private String name;
@ApiModelProperty(value = "开票单位名称")
private String invoicingUnit;
@ApiModelProperty(value = "开票类型key")
private String openTickTypeKey;
@ApiModelProperty(value = "开票类型value")
private String openTickTypeValue;
@ApiModelProperty(value = "开票名称")
private String openTickName;
@ApiModelProperty("单台开票价")
private String invoiceMoney;
@ApiModelProperty("车辆集合")
private List<VinListDto> vinList;
@ApiModelProperty("开票总价")
private String invoiceTotal;
@ApiModelProperty("开票状态")
@JsonProperty("invoiceState")
private String billState; // 开票状态
private String invoiceState;
@ApiModelProperty("开票状态")
@JsonProperty("invoiceStateKey")
private String billStateKey;// 开票状态key
private String invoiceStateKey;
@ApiModelProperty("备注")
private String remarks;
@ApiModelProperty("开票挂车信息")
private List<FinBillTrailerDto> finBillTrailers; // 开票挂车信息
@ApiModelProperty("证件")
private List<String> idCardImages;
@ApiModelProperty("客户开票申请书")
private List<String> customerInvoiceApplyImages;
@ApiModelProperty("车辆登记合同")
private List<String> registerContractImages;
@ApiModelProperty("开票信息确认书")
@ApiModelProperty("确认书")
private List<String> invoiceApplyConfirmImages;
@ApiModelProperty("任务id")
private String taskId;
@ApiModelProperty("用户sid")
private String userSid;
@ApiModelProperty("组织全路径")
private String orgPath;
@ApiModelProperty("流程实列id")
@JsonProperty("procInsId")
private String procInstSid;
private String procInsId;
@ApiModelProperty("合同sid")
@JsonProperty("contractSid")
private String contractSid;
@ApiModelProperty("发起人姓名")
private String createByName;
@ApiModelProperty(value = "发起部门sid")
private String deptSid;
@ApiModelProperty(value = "发起部门名称")
private String deptName;
@ApiModelProperty(value = "销售专员sid")
private String staffSid;
@ApiModelProperty(value = "销售专员名称")
private String staffName;
@ApiModelProperty(value = "销售部门sid")
private String saleDeptSid;
@ApiModelProperty(value = "销售部门名称")
private String saleDeptName;
@ApiModelProperty(value = "销售类型key")
private String saleTypeKey;
@ApiModelProperty(value = "销售类型value")
private String saleTypeValue;
@ApiModelProperty(value = "开票单位sid")
private String openTickUnitSid;
@ApiModelProperty(value = "开票单位名称")
private String openTickUnitName;
@ApiModelProperty(value = "是否领取发票原件")
private String isLQOrigInvoice;
@ApiModelProperty(value = "开票类型key")
private String openTickTypeKey;
@ApiModelProperty(value = "开票类型value")
private String openTickTypeValue;
@ApiModelProperty(value = "开票名称sid")
private String openTickSid;
@ApiModelProperty(value = "开票名称")
private String openTickName;
@ApiModelProperty(value = "欠款金额")
private String arrearsMoney;
@ApiModelProperty(value = "承诺回款日期")
private String returnedMoneyDate;
@ApiModelProperty(value = "欠款开票原因key")
private String arrearsOpenYYKey;
@ApiModelProperty(value = "欠款开票原因value")
private String arrearsOpenYYValue;
@ApiModelProperty("车型sid")
private String modelSid; // 车型sid
@ApiModelProperty("车型名称")
private String modelName; // 车型名称
@ApiModelProperty("合同编号")
private String contractId;
@ApiModelProperty("单据编号")
private String billNo; // 单据编号
@ApiModelProperty("开票挂车信息")
private List<FinBillTrailerDto> finBillTrailers; // 开票挂车信息
@ApiModelProperty("是否可以编辑开票价")
private Boolean isCanEdit; // 是否可以编辑开票价
}

137
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/invoiced/BillApplicationIInfoVo.java

@ -13,117 +13,62 @@ public class BillApplicationIInfoVo implements Vo {
@ApiModelProperty("业务sid")
private String sid;
@ApiModelProperty("用户sid")
@JsonProperty("userSid")
private String createBySid;
@ApiModelProperty("合同编号")
@JsonProperty("contractId")
private String contractNo;
@ApiModelProperty("开票总价")
@JsonProperty("invoiceTotal")
private String totalBillMoney;
@ApiModelProperty("单台开票价")
@JsonProperty("invoiceMoney")
private String oneBillMoney;
@ApiModelProperty("客户名称")
@JsonProperty("customer")
private String customerName;
@ApiModelProperty(value = "销售类型value")
private String saleType;
@ApiModelProperty("部门-人员名")
private String publishInfo;
@ApiModelProperty(value = "销售部门名称")
private String sellerDept;
@ApiModelProperty(value = "销售专员名称")
private String sellerName;
@ApiModelProperty("申请日期")
@JsonProperty("date")
private String applyDate;
@ApiModelProperty("备注")
private String remarks;
private String date;
@ApiModelProperty("客户名称")
private String name;
@ApiModelProperty(value = "开票单位名称")
private String invoicingUnit;
@ApiModelProperty(value = "开票类型key")
private String openTickTypeKey;
@ApiModelProperty(value = "开票类型value")
private String openTickTypeValue;
@ApiModelProperty(value = "开票名称")
private String openTickName;
@ApiModelProperty("单台开票价")
private String invoiceMoney;
@ApiModelProperty("车辆集合")
private List<VinListVo> vinList;
@ApiModelProperty("开票总价")
private String invoiceTotal;
@ApiModelProperty("开票状态")
@JsonProperty("invoiceState")
private String billState;
private String invoiceState;
@ApiModelProperty("开票状态")
@JsonProperty("invoiceStateKey")
private String billStateKey;
private String invoiceStateKey;
@ApiModelProperty("备注")
private String remarks;
@ApiModelProperty("开票挂车信息")
private List<FinBillTrailerVo> finBillTrailers; // 开票挂车信息
@ApiModelProperty("证件")
private List<String> idCardImages;
@ApiModelProperty("客户开票申请书")
private List<String> customerInvoiceApplyImages;
@ApiModelProperty("车辆登记合同")
private List<String> registerContractImages;
@ApiModelProperty("开票信息确认书")
@ApiModelProperty("确认书")
private List<String> invoiceApplyConfirmImages;
@ApiModelProperty("任务id")
@JsonProperty("")
private String taskId;
@ApiModelProperty("用户sid")
private String userSid;
@ApiModelProperty("组织全路径")
private String orgPath;
@ApiModelProperty("流程实列id")
@JsonProperty("procInsId")
private String procInstId;
private String procInsId;
@ApiModelProperty("合同sid")
@JsonProperty("contractSid")
private String contractSid;
@ApiModelProperty("是否能填写开票价")
private Boolean canEdit;
@ApiModelProperty("发起人姓名")
private String createByName;
@ApiModelProperty(value = "发起部门sid")
private String deptSid;
@ApiModelProperty(value = "发起部门名称")
private String deptName;
@ApiModelProperty(value = "销售专员sid")
private String staffSid;
@ApiModelProperty(value = "销售专员名称")
private String staffName;
@ApiModelProperty(value = "销售部门sid")
private String saleDeptSid;
@ApiModelProperty(value = "销售部门名称")
private String saleDeptName;
@ApiModelProperty(value = "销售类型key")
private String saleTypeKey;
@ApiModelProperty(value = "销售类型value")
private String saleTypeValue;
@ApiModelProperty(value = "开票单位sid")
private String openTickUnitSid;
@ApiModelProperty(value = "开票单位名称")
private String openTickUnitName;
@ApiModelProperty(value = "是否领取发票原件")
private String isLQOrigInvoice;
@ApiModelProperty(value = "开票类型key")
private String openTickTypeKey;
@ApiModelProperty(value = "开票类型value")
private String openTickTypeValue;
@ApiModelProperty(value = "开票名称sid")
private String openTickSid;
@ApiModelProperty(value = "开票名称")
private String openTickName;
@ApiModelProperty(value = "欠款金额")
private String arrearsMoney;
@ApiModelProperty(value = "承诺回款日期")
private String returnedMoneyDate;
@ApiModelProperty(value = "欠款开票原因key")
private String arrearsOpenYYKey;
@ApiModelProperty(value = "欠款开票原因value")
private String arrearsOpenYYValue;
@ApiModelProperty("车型sid")
private String modelSid; // 车型sid
@ApiModelProperty("车型名称")
private String modelName; // 车型名称
@ApiModelProperty("合同编号")
private String contractId;
@ApiModelProperty("单据编号")
private String billNo; // 单据编号
@ApiModelProperty("开票挂车信息")
private List<FinBillTrailerVo> finBillTrailers; // 开票挂车信息
@ApiModelProperty("是否可以编辑开票价")
private Boolean isCanEdit; // 是否可以编辑开票价
}

6
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/invoiced/FinBillTrailerVo.java

@ -48,10 +48,6 @@ import lombok.Data;
@ApiModel(value = "开票挂车信息表 视图数据对象", description = "开票挂车信息表 视图数据对象")
public class FinBillTrailerVo implements Vo {
private String sid; // sid
@ApiModelProperty("创建人接口")
private String createByName; // 创建人接口
@ApiModelProperty("主车车架号")
private String vinNo; // 主车车架号
@ApiModelProperty("挂车车架号")
@ -60,8 +56,6 @@ public class FinBillTrailerVo implements Vo {
private String billTypeKey; // 开票类型key
@ApiModelProperty("开票类型value")
private String billTypeValue; // 开票类型value
@ApiModelProperty("开票名称sid")
private String openTickSid; // 开票名称sid
@ApiModelProperty("开票名称")
private String openTickName; // 开票名称
@ApiModelProperty("开票申请单sid")

27
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/invoiced/VinListDto.java

@ -10,28 +10,17 @@ public class VinListDto implements Dto {
private static final long serialVersionUID = 1941205415631089700L;
@ApiModelProperty("车架号")
@JsonProperty("vin")
private String VIN;
@ApiModelProperty("开票名称")
private String invoiceName;
@ApiModelProperty("开票名称")
private String invoiceNameKey;
private String vin;
@ApiModelProperty("开票类型")
@JsonProperty("invoiceType")
private String billTypeValue;
private String invoiceTypeKey;
@ApiModelProperty("开票类型")
@JsonProperty("invoiceTypeKey")
private String billTypeKey;
private String invoiceType;
@ApiModelProperty("开票名称")
private String invoiceName;
@ApiModelProperty("开票信息")
private String invoiceInfo; // 开票信息
@ApiModelProperty("合格证状态key")
private String certificateStateKey; // 合格证状态key
@ApiModelProperty("合格证状态value")
private String certificateStateValue; // 合格证状态value
@ApiModelProperty("开票信息")
private String openTickRemarks; // 开票信息
private String certificateState; // 合格证状态value
}

26
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/invoiced/VinListVo.java

@ -11,27 +11,17 @@ public class VinListVo implements Vo {
private static final long serialVersionUID = -8613016702728614645L;
@ApiModelProperty("车架号")
@JsonProperty("vin")
private String VIN;
@ApiModelProperty("开票名称")
private String invoiceName;
@ApiModelProperty("开票名称")
private String invoiceNameKey;
private String vin;
@ApiModelProperty("开票类型")
@JsonProperty("invoiceType")
private String billTypeValue;
private String invoiceTypeKey;
@ApiModelProperty("开票类型")
@JsonProperty("invoiceTypeKey")
private String billTypeKey;
private String invoiceType;
@ApiModelProperty("开票名称")
private String invoiceName;
@ApiModelProperty("开票信息")
private String invoiceInfo; // 开票信息
@ApiModelProperty("合格证状态key")
private String certificateStateKey; // 合格证状态key
@ApiModelProperty("合格证状态value")
private String certificateStateValue; // 合格证状态value
@ApiModelProperty("开票信息")
private String openTickRemarks; // 开票信息
private String certificateState; // 合格证状态value
}

2
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/retrieval/DeliveredApplyDto.java

@ -34,6 +34,8 @@ public class DeliveredApplyDto implements Dto {
@ApiModelProperty("发起日期")
@JsonProperty("date")
private String createTime;
@ApiModelProperty("客户sid")
private String customerSid;
@ApiModelProperty("客户名称")
private String name;
@ApiModelProperty("客户电话")

18
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/retrieval/DeliveredDetailsVo.java

@ -26,6 +26,18 @@ public class DeliveredDetailsVo implements Vo {
@ApiModelProperty("销售部门")
@JsonProperty("sellerDept")
private String staffDeptName;
@ApiModelProperty("销售专员sid")
@JsonProperty("staffSid")
private String pcStaffSid;
@ApiModelProperty("PC发起人sid")
@JsonProperty("applySid")
private String pcApplySid;
@ApiModelProperty("PC发起人部门")
@JsonProperty("applyDept")
private String pcApplyDept;
@JsonProperty("applyDeptSid")
@ApiModelProperty("PC发起人部门sid")
private String pcApplyDeptSid;
@ApiModelProperty("销售专员")
@JsonProperty("sellerName")
@ -34,6 +46,8 @@ public class DeliveredDetailsVo implements Vo {
@ApiModelProperty("发起日期")
@JsonProperty("date")
private String createTime;
@ApiModelProperty("客户sid")
private String customerSid;
@ApiModelProperty("客户名称")
private String name;
@ApiModelProperty("客户电话")
@ -72,8 +86,8 @@ public class DeliveredDetailsVo implements Vo {
private String loanMobile;
@ApiModelProperty("总备注")
private String remarks;
/* @ApiModelProperty("用户sid")
private String userSid;*/
@ApiModelProperty("用户sid")
private String userSid;
@ApiModelProperty("记录sid")
private String sid;
@ApiModelProperty("orgPath")

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

@ -5,6 +5,8 @@ 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.*;
import com.yxt.anrui.fin.api.finbillapplication.flowable.FinBillCompleteDto;
import com.yxt.anrui.fin.api.finbillapplication.flowable.FinBillNodeQuery;
@ -58,6 +60,8 @@ public class InvoicedService {
private SysUserFeign sysUserFeign;
@Autowired
private SysStaffOrgFeign sysStaffOrgFeign;
@Autowired
private BusSalesOrderFeign busSalesOrderFeign;
public ResultBean<PagerVo<BillApplicationPageVo>> getInvoicedApplyList(PagerQuery<BillApplicationPageQuery> pagerQuery) {
@ -80,19 +84,20 @@ public class InvoicedService {
}
FinBillApplicationDetailsVo finBillApplicationDetailsVo = resultBean.getData();
BeanUtil.copyProperties(finBillApplicationDetailsVo, vo);
vo.setCreateBySid(finBillApplicationDetailsVo.getCreateBySid());
vo.setUserSid(finBillApplicationDetailsVo.getCreateBySid());
vo.setPublishInfo(finBillApplicationDetailsVo.getDeptName() + "-" + finBillApplicationDetailsVo.getCreateByName());
//车辆信息
List<VinListVo> vinListVos = new ArrayList<>();
List<FinBillVehicleVo> finBillVehicles = finBillApplicationDetailsVo.getFinBillVehicles();
for (FinBillVehicleVo finBillVehicle : finBillVehicles) {
VinListVo vinListVo = new VinListVo();
vinListVo.setVIN(finBillVehicle.getVinNo());
vinListVo.setVin(finBillVehicle.getVinNo());
vinListVo.setCertificateStateKey(finBillVehicle.getCertificateStateKey());
vinListVo.setCertificateStateValue(finBillVehicle.getCertificateStateValue());
vinListVo.setBillTypeKey(finBillVehicle.getBillTypeKey());
vinListVo.setBillTypeValue(finBillVehicle.getBillTypeValue());
vinListVo.setCertificateState(finBillVehicle.getCertificateStateValue());
vinListVo.setInvoiceTypeKey(finBillVehicle.getBillTypeKey());
vinListVo.setInvoiceType(finBillVehicle.getBillTypeValue());
vinListVo.setInvoiceName(finBillVehicle.getOpenTickName());
vinListVo.setOpenTickRemarks(finBillVehicle.getOpenTickRemarks());
vinListVo.setInvoiceInfo(finBillVehicle.getOpenTickRemarks());
vinListVos.add(vinListVo);
}
vo.setVinList(vinListVos);
@ -129,6 +134,14 @@ public class InvoicedService {
registerContractImages.add(cldjhtApplicationAppendx.getFileUrl());
}
}
BusSalesOrderIsDTKPJVo busSalesOrderIsDTKPJVo = busSalesOrderFeign.fetchByContractNo(finBillApplicationDetailsVo.getContractNo()).getData();
if (StringUtils.isNotBlank(busSalesOrderIsDTKPJVo.getOneBillMoney())){
vo.setIsCanEdit(false);
vo.setInvoiceMoney(busSalesOrderIsDTKPJVo.getOneBillMoney());
}else {
vo.setIsCanEdit(true);
vo.setInvoiceMoney(busSalesOrderIsDTKPJVo.getOneBillMoney());
}
return rb.success().setData(vo);
}
@ -136,18 +149,21 @@ public class InvoicedService {
FinBillApplicationDto finBillApplicationDto = new FinBillApplicationDto();
BeanUtil.copyProperties(dto, finBillApplicationDto);
finBillApplicationDto.setCreateBySid(dto.getUserSid());
String publishInfo = dto.getPublishInfo();
finBillApplicationDto.setDeptName(publishInfo.substring(0,publishInfo.lastIndexOf("-")));
finBillApplicationDto.setCreateByName(publishInfo.substring(publishInfo.lastIndexOf("-")));
//开票车辆信息
List<VinListDto> vinList = dto.getVinList();
List<FinBillVehicleDto> finBillVehicleDtos = new ArrayList<>();
for (VinListDto vinListDto : vinList) {
FinBillVehicleDto finBillVehicleDto = new FinBillVehicleDto();
finBillVehicleDto.setVinNo(vinListDto.getVIN());
finBillVehicleDto.setVinNo(vinListDto.getVin());
finBillVehicleDto.setCertificateStateKey(vinListDto.getCertificateStateKey());
finBillVehicleDto.setCertificateStateValue(vinListDto.getCertificateStateValue());
finBillVehicleDto.setBillTypeKey(vinListDto.getBillTypeKey());
finBillVehicleDto.setBillTypeValue(vinListDto.getBillTypeValue());
finBillVehicleDto.setCertificateStateValue(vinListDto.getCertificateState());
finBillVehicleDto.setBillTypeKey(vinListDto.getInvoiceTypeKey());
finBillVehicleDto.setBillTypeValue(vinListDto.getInvoiceType());
finBillVehicleDto.setOpenTickName(vinListDto.getInvoiceName());
finBillVehicleDto.setOpenTickRemarks(vinListDto.getOpenTickRemarks());
finBillVehicleDto.setOpenTickRemarks(vinListDto.getInvoiceInfo());
finBillVehicleDtos.add(finBillVehicleDto);
}
finBillApplicationDto.setFinBillVehicles(finBillVehicleDtos);

1
doc/databases/bus-center_tables.sql

@ -327,6 +327,7 @@ CREATE TABLE `bus_delivered_use_message`
`remarks` varchar(255) DEFAULT NULL COMMENT '备注',
`createBySid` varchar(64) DEFAULT NULL COMMENT '创建人sid',
`updateBySid` varchar(64) DEFAULT NULL COMMENT '修改人sid',
`customerSid` varchar(64) DEFAULT NULL COMMENT '客户sid',
`name` varchar(64) DEFAULT NULL COMMENT '客户名称',
`mobile` VARCHAR(200) DEFAULT NULL COMMENT '联系电话',
`idNo` VARCHAR(200) DEFAULT NULL COMMENT '证件号码',

88
工作内容需要的文档/单据模板/销售订单审批下载模板/xsddsp.ftl

@ -2506,50 +2506,6 @@
</#if>
</#list>
</w:tbl>
<#list photoPath64 as photo>
<w:p wsp:rsidR="00B25CE6" wsp:rsidRDefault="00195CBF">
<w:r wsp:rsidRPr="00956103">
<w:rPr>
<w:noProof/>
</w:rPr>
<w:pict>
<v:shapetype id="_x0000_t75" coordsize="21600,21600" o:spt="75" o:preferrelative="t"
path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f">
<v:stroke joinstyle="miter"/>
<v:formulas>
<v:f eqn="if lineDrawn pixelLineWidth 0"/>
<v:f eqn="sum @0 1 0"/>
<v:f eqn="sum 0 0 @1"/>
<v:f eqn="prod @2 1 2"/>
<v:f eqn="prod @3 21600 pixelWidth"/>
<v:f eqn="prod @3 21600 pixelHeight"/>
<v:f eqn="sum @0 0 1"/>
<v:f eqn="prod @6 1 2"/>
<v:f eqn="prod @7 21600 pixelWidth"/>
<v:f eqn="sum @8 21600 0"/>
<v:f eqn="prod @7 21600 pixelHeight"/>
<v:f eqn="sum @10 21600 0"/>
</v:formulas>
<v:path o:extrusionok="f" gradientshapeok="t" o:connecttype="rect"/>
<o:lock v:ext="edit" aspectratio="t"/>
</v:shapetype>
<w:binData w:name="wordml://${photo_index}.png" xml:space="preserve">${photo}</w:binData>
<v:shape id="${photo_index}" o:spid="_x0000_i1025" type="#_x0000_t75" alt="1"
style="width:450pt;height:750pt;visibility:visible;mso-wrap-style:square">
<v:imagedata src="wordml://${photo_index}.png" o:title="1"/>
</v:shape>
</w:pict>
</w:r>
</w:p>
</#list>
<w:p wsp:rsidR="000E03BD" wsp:rsidRPr="000E03BD" wsp:rsidRDefault="000E03BD" wsp:rsidP="000E03BD">
<w:pPr>
<w:rPr>
<w:vanish/>
</w:rPr>
</w:pPr>
</w:p>
<w:tbl>
<w:tblPr>
<w:tblW w:w="0" w:type="auto"/>
@ -2697,6 +2653,50 @@
</w:tc>
</w:tr>
</w:tbl>
<#list photoPath64 as photo>
<w:p wsp:rsidR="00B25CE6" wsp:rsidRDefault="00195CBF">
<w:r wsp:rsidRPr="00956103">
<w:rPr>
<w:noProof/>
</w:rPr>
<w:pict>
<v:shapetype id="_x0000_t75" coordsize="21600,21600" o:spt="75" o:preferrelative="t"
path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f">
<v:stroke joinstyle="miter"/>
<v:formulas>
<v:f eqn="if lineDrawn pixelLineWidth 0"/>
<v:f eqn="sum @0 1 0"/>
<v:f eqn="sum 0 0 @1"/>
<v:f eqn="prod @2 1 2"/>
<v:f eqn="prod @3 21600 pixelWidth"/>
<v:f eqn="prod @3 21600 pixelHeight"/>
<v:f eqn="sum @0 0 1"/>
<v:f eqn="prod @6 1 2"/>
<v:f eqn="prod @7 21600 pixelWidth"/>
<v:f eqn="sum @8 21600 0"/>
<v:f eqn="prod @7 21600 pixelHeight"/>
<v:f eqn="sum @10 21600 0"/>
</v:formulas>
<v:path o:extrusionok="f" gradientshapeok="t" o:connecttype="rect"/>
<o:lock v:ext="edit" aspectratio="t"/>
</v:shapetype>
<w:binData w:name="wordml://${photo_index}.png" xml:space="preserve">${photo}</w:binData>
<v:shape id="${photo_index}" o:spid="_x0000_i1025" type="#_x0000_t75" alt="1"
style="width:400pt;height:650pt;visibility:visible;mso-wrap-style:square">
<v:imagedata src="wordml://${photo_index}.png" o:title="1"/>
</v:shape>
</w:pict>
</w:r>
</w:p>
</#list>
<w:p wsp:rsidR="000E03BD" wsp:rsidRPr="000E03BD" wsp:rsidRDefault="000E03BD" wsp:rsidP="000E03BD">
<w:pPr>
<w:rPr>
<w:vanish/>
</w:rPr>
</w:pPr>
</w:p>
<w:p wsp:rsidR="00F15DA9" wsp:rsidRDefault="00F15DA9"/>
<w:sectPr wsp:rsidR="00F15DA9">
<w:pgSz w:w="11906" w:h="16838"/>

Loading…
Cancel
Save