Browse Source

Merge remote-tracking branch 'origin/master'

master
dimengzhe 2 years ago
parent
commit
db7c779176
  1. 2
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicleout/BaseVehicleZSOutDto.java
  2. 3
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicleout/BaseVehicleOutMapper.java
  3. 305
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicleout/BaseVehicleOutService.java
  4. 10
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorder/contract/AppRovalContractPageVo.java
  5. 2
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderMapper.java
  6. 18
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderMapper.xml
  7. 40
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderService.java
  8. 5
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/approval/AppRovalFeign.java
  9. 23
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/approval/AppVehicleQKKPQuery.java
  10. 20
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/approval/AppVehicleQKKPTrailerVo.java
  11. 31
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/approval/AppVehicleQKKPVo.java
  12. 2
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/approval/RovalContractPageQuery.java
  13. 9
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/approval/RovalContractPageVo.java
  14. 9
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/approval/AppRovalRest.java
  15. 15
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/approval/AppRovalService.java

2
anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicleout/BaseVehicleZSOutDto.java

@ -59,4 +59,6 @@ public class BaseVehicleZSOutDto implements Dto {
private String materialTypeValue;
@ApiModelProperty("物料sid")
private String materialSid;
@ApiModelProperty("财务中客户编码")
private String cwCustomerNo; // 财务中客户编码
}

3
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicleout/BaseVehicleOutMapper.java

@ -40,4 +40,7 @@ public interface BaseVehicleOutMapper extends BaseMapper<BaseVehicleOut> {
BaseVehicleOutDetailsVo selByOrgSidAndVehSid(@Param("useOrgSid") String useOrgSid,@Param("vehSid") String vehSid);
List<BaseVehicleOutVoExecl> selByExcel(@Param(Constants.WRAPPER) Wrapper<BaseVehicleOutVoExecl> qw);
@Select("select * from base_vehicle_out where materialSid = #{vinSid}")
BaseVehicleOut setByVinSid(String vinSid);
}

305
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicleout/BaseVehicleOutService.java

@ -461,7 +461,7 @@ public class BaseVehicleOutService extends MybatisBaseService<BaseVehicleOutMapp
return null;
}
private SalOutStock createZSGCOutStock(BaseVehicle baseVehicle, BaseVehicleZSOutDto dto, BaseVehicleZSOutApplyDto appDto) {
private SalOutStock createZSGCOrSZOutStock(BaseVehicle baseVehicle, BaseVehicleOut dto, BaseVehicleZSOutApplyDto appDto) {
SalOutStock salOutStock = new SalOutStock();
//单据编号
salOutStock.setFBillNo(appDto.getBillNo() + "-1");
@ -472,49 +472,7 @@ public class BaseVehicleOutService extends MybatisBaseService<BaseVehicleOutMapp
BasePurchaseSystemDetailsVo basePurchaseSystemDetailsVo = basePurchaseSystemService.fetchDetailsByDeptSid(purchaseSystemSid).getData();
salOutStock.setFSaleOrgId(basePurchaseSystemDetailsVo.getOrgCode());
//客户
salOutStock.setFCustomerID(appDto.getCwCustomerNo());
//销售部门id
String orgDeptSid = appDto.getOrgSid();
ResultBean<SysOrganizationVo> resultBean = sysOrganizationFeign.fetchBySid(orgDeptSid);
if (resultBean.getSuccess()) {
SysOrganizationVo vo = resultBean.getData();
if (vo != null) {
salOutStock.setFSaleDeptID(vo.getOrgCode());
}
}
//项目类别key和项目类别type
salOutStock.setF_PAEZ_AssistantType("payType");
//销售类型-外采挂车映射
salOutStock.setF_PAEZ_AssistantKey("009");
//物料列表
List<SalOutStock.FEntity> fEntityList = new ArrayList<>();
SalOutStock.FEntity fEntity = new SalOutStock.FEntity();
//单价
fEntity.setFPrice(dto.getPrice());
//物料编码
fEntity.setFMaterialID(dto.getMaterialCode());
//仓库id
fEntity.setFStockID("ARZSCK");
fEntityList.add(fEntity);
if (fEntityList.size() > 0) {
salOutStock.setFEntity(fEntityList);
return salOutStock;
}
return null;
}
private SalOutStock createZSSZOutStock(BaseVehicle baseVehicle, BaseVehicleZSOutDto dto, BaseVehicleZSOutApplyDto appDto) {
SalOutStock salOutStock = new SalOutStock();
//单据编号
salOutStock.setFBillNo(appDto.getBillNo() + "-1");
//日期
salOutStock.setFDate(DateUtil.today());
//分公司id
String purchaseSystemSid = baseVehicle.getPurchaseSystemSid();
BasePurchaseSystemDetailsVo basePurchaseSystemDetailsVo = basePurchaseSystemService.fetchDetailsByDeptSid(purchaseSystemSid).getData();
salOutStock.setFSaleOrgId(basePurchaseSystemDetailsVo.getOrgCode());
//客户
salOutStock.setFCustomerID(appDto.getCwCustomerNo());
salOutStock.setFCustomerID(dto.getCwCustomerNo());
//销售部门id
String orgDeptSid = appDto.getOrgSid();
ResultBean<SysOrganizationVo> resultBean = sysOrganizationFeign.fetchBySid(orgDeptSid);
@ -532,7 +490,7 @@ public class BaseVehicleOutService extends MybatisBaseService<BaseVehicleOutMapp
List<SalOutStock.FEntity> fEntityList = new ArrayList<>();
SalOutStock.FEntity fEntity = new SalOutStock.FEntity();
//单价
fEntity.setFPrice(dto.getPrice());
fEntity.setFPrice(dto.getPrice().toString());
//物料编码
fEntity.setFMaterialID(dto.getMaterialCode());
//仓库id
@ -937,7 +895,7 @@ public class BaseVehicleOutService extends MybatisBaseService<BaseVehicleOutMapp
}
private SalOutStock createZSSalOutStock(BaseVehicle baseVehicle, BaseVehicleZSOutDto dto, BaseVehicleZSOutApplyDto appDto) {
private SalOutStock createZSSalOutStock(BaseVehicle baseVehicle, BaseVehicleOut dto, BaseVehicleZSOutApplyDto appDto) {
SalOutStock salOutStock = new SalOutStock();
//单据编号
salOutStock.setFBillNo(appDto.getBillNo());
@ -947,7 +905,7 @@ public class BaseVehicleOutService extends MybatisBaseService<BaseVehicleOutMapp
BasePurchaseSystemDetailsVo basePurchaseSystemDetailsVo = basePurchaseSystemService.fetchDetailsByDeptSid(baseVehicle.getPurchaseSystemSid()).getData();
salOutStock.setFSaleOrgId(basePurchaseSystemDetailsVo.getOrgCode());
//客户
salOutStock.setFCustomerID(appDto.getCwCustomerNo());
salOutStock.setFCustomerID(dto.getCwCustomerNo());
//销售部门id
String orgDeptSid = appDto.getOrgSid();
ResultBean<SysOrganizationVo> resultBean = sysOrganizationFeign.fetchBySid(orgDeptSid);
@ -971,14 +929,14 @@ public class BaseVehicleOutService extends MybatisBaseService<BaseVehicleOutMapp
List<SalOutStock.FEntity> fEntityList = new ArrayList<>();
SalOutStock.FEntity fEntity = new SalOutStock.FEntity();
//单价
fEntity.setFPrice(dto.getPrice());
fEntity.setFPrice(dto.getPrice().toString());
//物料编码
fEntity.setFMaterialID(dto.getVinNo().substring(dto.getVinNo().length() - 8));
//仓库id
fEntity.setFStockID("ARZSCK");
//销售折让
if (StringUtils.isNotBlank(dto.getSalesAllowance())) {
fEntity.setF_PAEZ_Decimal3(dto.getSalesAllowance());
if (StringUtils.isNotBlank(dto.getSalesAllowance().toString())) {
fEntity.setF_PAEZ_Decimal3(dto.getSalesAllowance().toString());
}
if (StringUtils.isNotBlank(dto.getGiftsDescription())) {
fEntity.setF_PAEZ_Decimal4(dto.getGiftsDescription());
@ -993,36 +951,36 @@ public class BaseVehicleOutService extends MybatisBaseService<BaseVehicleOutMapp
//备注
if (StringUtils.isNotBlank(dto.getMiddleOne())) {
if (StringUtils.isNotBlank(dto.getMiddleTwo())) {
if (StringUtils.isNotBlank(dto.getRebateMoneyOne())) {
if (StringUtils.isNotBlank(dto.getRebateMoneyTwo())) {
if (StringUtils.isNotBlank(dto.getRebateMoneyOne().toString())) {
if (StringUtils.isNotBlank(dto.getRebateMoneyTwo().toString())) {
note = note + " 返利情况:" + dto.getMiddleOne() + dto.getRebateMoneyOne() + "," + dto.getMiddleTwo() + dto.getRebateMoneyTwo() + "。";
//返利金额
fEntity.setF_PAEZ_Decimal(new BigDecimal(dto.getRebateMoneyOne()).add(new BigDecimal(dto.getRebateMoneyTwo())).toString());
fEntity.setF_PAEZ_Decimal(dto.getRebateMoneyOne().add(dto.getRebateMoneyTwo()).toString());
} else {
note = note + " 返利情况:" + dto.getMiddleOne() + dto.getRebateMoneyOne() + "。";
//返利金额
fEntity.setF_PAEZ_Decimal(new BigDecimal(dto.getRebateMoneyOne()).toString());
fEntity.setF_PAEZ_Decimal(dto.getRebateMoneyOne().toString());
}
} else {
if (StringUtils.isNotBlank(dto.getRebateMoneyTwo())) {
if (StringUtils.isNotBlank(dto.getRebateMoneyTwo().toString())) {
note = note + " 返利情况:" + dto.getMiddleTwo() + dto.getRebateMoneyTwo() + "。";
//返利金额
fEntity.setF_PAEZ_Decimal(new BigDecimal(dto.getRebateMoneyTwo()).toString());//dto.getRebateMoneyOne()
fEntity.setF_PAEZ_Decimal(dto.getRebateMoneyTwo().toString());
}
}
} else {
if (StringUtils.isNotBlank(dto.getRebateMoneyOne())) {
if (StringUtils.isNotBlank(dto.getRebateMoneyOne().toString())) {
note = note + " 返利情况:" + dto.getMiddleOne() + dto.getRebateMoneyOne() + "。";
//返利金额
fEntity.setF_PAEZ_Decimal(new BigDecimal(dto.getRebateMoneyOne()).toString());
fEntity.setF_PAEZ_Decimal(dto.getRebateMoneyOne().toString());
}
}
} else {
if (StringUtils.isNotBlank(dto.getMiddleTwo())) {
if (StringUtils.isNotBlank(dto.getRebateMoneyTwo())) {
if (StringUtils.isNotBlank(dto.getRebateMoneyTwo().toString())) {
note = note + " 返利情况:" + dto.getMiddleOne() + dto.getRebateMoneyOne() + "。";
//返利金额
fEntity.setF_PAEZ_Decimal(new BigDecimal(dto.getRebateMoneyOne()).toString());
fEntity.setF_PAEZ_Decimal(dto.getRebateMoneyOne().toString());
}
}
}
@ -1424,6 +1382,44 @@ public class BaseVehicleOutService extends MybatisBaseService<BaseVehicleOutMapp
List<BaseVehicleZSOutDto> zcDtos = baseVehicleZSOutApplyDto.getBaseVehicleZSOutDtos();
List<BaseVehicleZSOutDto> gcOrSzDtos = new ArrayList<>();
SysOrganizationVo sysOrganizationVo = sysOrganizationFeign.fetchBySid(baseVehicleZSOutApplyDto.getCreateOrgSid()).getData();
//生成出库单据编号
String billNo = "";
String date = DateUtil.format(DateUtil.date(), "yyyyMM");
billNo = "XSCKD" + sysOrganizationVo.getOrgCode() + date;
String i = baseMapper.selectNum(billNo);
if (StringUtils.isNotBlank(i)) {
billNo = Rule.getBillNo(billNo, Integer.valueOf(i).intValue());
} else {
billNo = Rule.getBillNo(billNo, 0);
}
//出库主表信息录入
BaseVehicleOutApply baseVehicleOutApply = new BaseVehicleOutApply();
baseVehicleOutApply.setBillNo(billNo);
baseVehicleOutApply.setSaleDate(baseVehicleZSOutApplyDto.getSaleDate());
baseVehicleOutApply.setCustomerSid(baseVehicleZSOutApplyDto.getCustomerSid());
baseVehicleOutApply.setCustomerName(baseVehicleZSOutApplyDto.getCustomerName());
baseVehicleOutApply.setMobile(baseVehicleZSOutApplyDto.getMobile());
baseVehicleOutApply.setOrgSid(baseVehicleZSOutApplyDto.getOrgSid());
baseVehicleOutApply.setOrgName(baseVehicleZSOutApplyDto.getOrgName());
baseVehicleOutApply.setStaffSid(baseVehicleZSOutApplyDto.getStaffSid());
baseVehicleOutApply.setStaffName(baseVehicleZSOutApplyDto.getStaffName());
baseVehicleOutApply.setMakeListSid(baseVehicleZSOutApplyDto.getCreateBySid());
baseVehicleOutApply.setMakeListName(baseVehicleZSOutApplyDto.getCreateByName());
baseVehicleOutApply.setMakeListDate(DateUtil.format(new Date(), "yyyy-MM-dd"));
baseVehicleOutApply.setSaleTypeKey(baseVehicleZSOutApplyDto.getSaleTypeKey());
baseVehicleOutApply.setSaleTypeValue(baseVehicleZSOutApplyDto.getSaleTypeValue());
baseVehicleOutApply.setCreateOrgSid(baseVehicleZSOutApplyDto.getCreateOrgSid());
baseVehicleOutApply.setCreateBySid(baseVehicleZSOutApplyDto.getCreateBySid());
//内部引荐人、内部引荐人sid
baseVehicleOutApply.setInnerName(baseVehicleZSOutApplyDto.getInnerName());
baseVehicleOutApply.setInnerUserSid(baseVehicleZSOutApplyDto.getInnerUserSid());
baseVehicleOutApply.setContractNo(baseVehicleZSOutApplyDto.getContractNo());
baseVehicleOutApply.setCustomerNo(baseVehicleZSOutApplyDto.getCustomerNo());
//baseVehicleOutApply.setCwCustomerNo(bdCustomer.getFNumber());
baseVehicleOutApply.setBusSid(baseVehicleZSOutApplyDto.getBusSid());
//保存车辆出库单主表
baseVehicleOutApplyService.save(baseVehicleOutApply);
//主车
for (BaseVehicleZSOutDto dto : zcDtos) {
Boolean b = false;
//获取主车sid
@ -1516,7 +1512,7 @@ public class BaseVehicleOutService extends MybatisBaseService<BaseVehicleOutMapp
if (baseTrailerVos.size() > 0) {
for (BaseTrailerVo baseTrailerVo : baseTrailerVos) {
baseVehicleZSOutDto.setPrice(baseTrailerVo.getDealPrice());
baseVehicleZSOutDto.setMaterialCode(baseTrailerVo.getVinNo() + "G");
baseVehicleZSOutDto.setMaterialCode(baseTrailerVo.getVinNo());
baseVehicleZSOutDto.setMaterialSid(baseTrailerVo.getSid());
baseVehicleZSOutDto.setMaterialName("挂车");
baseVehicleZSOutDto.setMaterialTypeKey("002");
@ -1529,77 +1525,27 @@ public class BaseVehicleOutService extends MybatisBaseService<BaseVehicleOutMapp
List<BaseVehinstall> baseVehinstalls = baseVehinstallService.selectByOrgSidAndVin(baseVehicleZSOutApplyDto.getCreateOrgSid(), dto.getVinNo());
for (BaseVehinstall baseVehinstall : baseVehinstalls) {
baseVehicleZSOutDto.setPrice(baseVehinstall.getGuidePrice());
baseVehicleZSOutDto.setMaterialCode(dto.getVinNo() + "SZ");
baseVehicleZSOutDto.setMaterialCode(dto.getMaterialCode());
baseVehicleZSOutDto.setMaterialSid(baseVehinstall.getSid());
baseVehicleZSOutDto.setMaterialName("上装");
baseVehicleZSOutDto.setMaterialTypeKey("003");
baseVehicleZSOutDto.setMaterialTypeValue("上装");
baseVehicleZSOutDto.setVinSid(materialSid);
baseVehicleZSOutDto.setVinNo(baseVehinstall.getVinNo());
baseVehicleZSOutDto.setVinNo(dto.getMaterialCode());
gcOrSzDtos.add(baseVehicleZSOutDto);
}
}
//生成出库单据编号
String billNo = "";
String date = DateUtil.format(DateUtil.date(), "yyyyMM");
billNo = "XSCKD" + sysOrganizationVo.getOrgCode() + date;
String i = baseMapper.selectNum(billNo);
if (StringUtils.isNotBlank(i)) {
billNo = Rule.getBillNo(billNo, Integer.valueOf(i).intValue());
} else {
billNo = Rule.getBillNo(billNo, 0);
}
//出库主表信息录入
BaseVehicleOutApply baseVehicleOutApply = new BaseVehicleOutApply();
baseVehicleOutApply.setBillNo(billNo);
baseVehicleOutApply.setSaleDate(baseVehicleZSOutApplyDto.getSaleDate());
baseVehicleOutApply.setCustomerSid(baseVehicleZSOutApplyDto.getCustomerSid());
baseVehicleOutApply.setCustomerName(baseVehicleZSOutApplyDto.getCustomerName());
baseVehicleOutApply.setMobile(baseVehicleZSOutApplyDto.getMobile());
baseVehicleOutApply.setOrgSid(baseVehicleZSOutApplyDto.getOrgSid());
baseVehicleOutApply.setOrgName(baseVehicleZSOutApplyDto.getOrgName());
baseVehicleOutApply.setStaffSid(baseVehicleZSOutApplyDto.getStaffSid());
baseVehicleOutApply.setStaffName(baseVehicleZSOutApplyDto.getStaffName());
baseVehicleOutApply.setMakeListSid(baseVehicleZSOutApplyDto.getCreateBySid());
baseVehicleOutApply.setMakeListName(baseVehicleZSOutApplyDto.getCreateByName());
baseVehicleOutApply.setMakeListDate(DateUtil.format(new Date(), "yyyy-MM-dd"));
baseVehicleOutApply.setSaleTypeKey(baseVehicleZSOutApplyDto.getSaleTypeKey());
baseVehicleOutApply.setSaleTypeValue(baseVehicleZSOutApplyDto.getSaleTypeValue());
baseVehicleOutApply.setCreateOrgSid(baseVehicleZSOutApplyDto.getCreateOrgSid());
baseVehicleOutApply.setCreateBySid(baseVehicleZSOutApplyDto.getCreateBySid());
//内部引荐人、内部引荐人sid
baseVehicleOutApply.setInnerName(baseVehicleZSOutApplyDto.getInnerName());
baseVehicleOutApply.setInnerUserSid(baseVehicleZSOutApplyDto.getInnerUserSid());
baseVehicleOutApply.setContractNo(baseVehicleZSOutApplyDto.getContractNo());
baseVehicleOutApply.setCustomerNo(bdCustomer.getFNumber());
baseVehicleOutApply.setCwCustomerNo(bdCustomer.getFNumber());
baseVehicleOutApply.setBusSid(baseVehicleZSOutApplyDto.getBusSid());
//保存车辆出库单主表
baseVehicleOutApplyService.save(baseVehicleOutApply);
//构建子表数据
BaseVehicleOut baseVehicleOut = new BaseVehicleOut();
BeanUtil.copyProperties(dto, baseVehicleOut, "sid");
//主车
if (dto.getMaterialTypeKey().equals("001")) {
if ("002".equals(baseVehicle.getManPurOrderTypeKey())) {
baseVehicleOut.setZcMGroupCode("99.01");
baseVehicleOut.setZcMGroupName("外采主车");
} else {
BaseVehicleBrand baseVehicleBrand = baseVehicleBrandService.fetchBySid(baseVehicle.getCarBrandSid());
baseVehicleOut.setZcMGroupCode(baseVehicleBrand.getBrandCode());
baseVehicleOut.setZcMGroupName(baseVehicleBrand.getBrandName());
}
} else if (dto.getMaterialTypeKey().equals("002")) {//挂车
baseVehicleOut.setZcMGroupCode("99.02");
baseVehicleOut.setZcMGroupName("挂车");
//BaseTrailer baseTrailer = baseTrailerService.fetchBySid(dto.getMaterialSid());
//baseVehicleOut.setMaterialCode(baseTrailer.getVinNo().substring(baseTrailer.getVinNo().length() - 8) + "G");
baseVehicleOut.setMaterialCode(dto.getMaterialCode());
} else if (dto.getMaterialTypeKey().equals("003")) {//上装
baseVehicleOut.setZcMGroupCode("99.02");
baseVehicleOut.setZcMGroupName("挂车");
//baseVehicleOut.setMaterialCode(baseVehicleOut.getVinNo().substring(baseVehicleOut.getVinNo().length() - 8) + "SZ");
baseVehicleOut.setMaterialCode(dto.getMaterialCode());
if ("002".equals(baseVehicle.getManPurOrderTypeKey())) {
baseVehicleOut.setZcMGroupCode("99.01");
baseVehicleOut.setZcMGroupName("外采主车");
} else {
BaseVehicleBrand baseVehicleBrand = baseVehicleBrandService.fetchBySid(baseVehicle.getCarBrandSid());
baseVehicleOut.setZcMGroupCode(baseVehicleBrand.getBrandCode());
baseVehicleOut.setZcMGroupName(baseVehicleBrand.getBrandName());
}
if (StringUtils.isNotBlank(dto.getPrice())) {
baseVehicleOut.setPrice(new BigDecimal(dto.getPrice()));
@ -1627,79 +1573,96 @@ public class BaseVehicleOutService extends MybatisBaseService<BaseVehicleOutMapp
baseVehicleOut.setCwCustomerNo(bdCustomer.getFNumber());
baseVehicleOut.setManPurOrderTypeKey(baseVehicle.getManPurOrderTypeKey());
baseVehicleOut.setManPurOrderTypeValue(baseVehicle.getManPurOrderTypeValue());
baseVehicleOut.setBillNo(billNo);
//baseVehicleOut.setBillNo(billNo);
//保存车辆出库单子表
baseMapper.insert(baseVehicleOut);
if (baseVehicle != null) {
//更新车辆台账的出库状态等值,库存状态修改为出库,销售日期修改为当天,成交价,备注
String remarks = baseVehicleZSOutApplyDto.getContractNo() + baseVehicleZSOutApplyDto.getSaleTypeValue();
baseVehicle.setRemarks(remarks);
baseVehicle.setVehicleState(VehicleState.StockEnum.OUT_STOCK.getCode());
baseVehicle.setVehicleStateValue(VehicleState.StockEnum.OUT_STOCK.getRemarks());
baseVehicle.setSalesDate(new Date());
if (StringUtils.isNotBlank(dto.getPrice())) {
baseVehicle.setSalePrice(Integer.valueOf(dto.getPrice()));
}
baseVehicleService.updateById(baseVehicle);
//更新车辆台账的出库状态等值,库存状态修改为出库,销售日期修改为当天,成交价,备注
String remarks = baseVehicleZSOutApplyDto.getContractNo() + baseVehicleZSOutApplyDto.getSaleTypeValue();
baseVehicle.setRemarks(remarks);
baseVehicle.setVehicleState(VehicleState.StockEnum.OUT_STOCK.getCode());
baseVehicle.setVehicleStateValue(VehicleState.StockEnum.OUT_STOCK.getRemarks());
baseVehicle.setSalesDate(new Date());
if (StringUtils.isNotBlank(dto.getPrice())) {
baseVehicle.setSalePrice(Integer.valueOf(dto.getPrice()));
}
baseVehicleService.updateById(baseVehicle);
////ToDo:推送财务中介单位、推送金蝶客户、推送金蝶出库单
try {
if (baseVehicle != null) {
//推送财务中介人
if (StringUtils.isNotBlank(dto.getMiddleOne())) {
BdCustomer bdMiddle = createZSBdMiddle(baseVehicle, dto);
finKingDeeFeign.draftBdCustomer(bdMiddle);
}
}
//创建出库单数据对象前 需要将客户的编码修改为新生成的客户的编码。
if (StringUtils.isNotBlank(bdCustomer.getFNumber())) {
baseVehicleZSOutApplyDto.setCustomerNo(bdCustomer.getFNumber());
//推送财务中介人
if (StringUtils.isNotBlank(dto.getMiddleOne())) {
BdCustomer bdMiddle = createZSBdMiddle(baseVehicle, dto);
finKingDeeFeign.draftBdCustomer(bdMiddle);
}
bdCustomers.add(bdCustomer);
finKingDeeFeign.draftBdCustomers(bdCustomers);
baseVehicleZSOutApplyDto.setCwCustomerNo(bdCustomer.getFNumber());
if (baseVehicle != null) {
//推送销售出库单
SalOutStock salOutStock = createZSSalOutStock(baseVehicle, dto, baseVehicleZSOutApplyDto);
log.info("BaseVehicleOutService-vehicleOut-287:{}", JSONObject.toJSONString(salOutStock));
finKingDeeFeign.draftSalOutStock(salOutStock);
log.info("BaseVehicleOutService-vehicleOut-289:{}", JSONObject.toJSONString(salOutStock));
//推送销售专员信息
BDEmpinfo bdEmpinfo = new BDEmpinfo();
BasePurchaseSystemDetailsVo basePurchaseSystemDetailsVo = basePurchaseSystemService.fetchDetailsByDeptSid(baseVehicle.getPurchaseSystemSid()).getData();
String staffSid = baseVehicleZSOutApplyDto.getStaffSid();
SysStaffinfoDetailsVo sysStaffinfoDetailsVo = sysStaffinfoFeign.fetchBySid(staffSid).getData();
bdEmpinfo.setFName(baseVehicleZSOutApplyDto.getStaffName());
bdEmpinfo.setFNumber(sysStaffinfoDetailsVo.getJobNumber());
bdEmpinfo.setFAddress(sysStaffinfoDetailsVo.getAddress());
bdEmpinfo.setFCreateOrgId(basePurchaseSystemDetailsVo.getOrgCode());
bdEmpinfo.setFUseOrgId(basePurchaseSystemDetailsVo.getOrgCode());
bdEmpinfo.setFMobile(sysStaffinfoDetailsVo.getMobile());
finKingDeeFeign.saveBDEmpinfo(bdEmpinfo);
}
//推送主车销售出库单
SalOutStock salOutStock = createZSSalOutStock(baseVehicle, baseVehicleOut, baseVehicleZSOutApplyDto);
log.info("BaseVehicleOutService-vehicleOut-287:{}", JSONObject.toJSONString(salOutStock));
finKingDeeFeign.draftSalOutStock(salOutStock);
log.info("BaseVehicleOutService-vehicleOut-289:{}", JSONObject.toJSONString(salOutStock));
//推送销售专员信息
BDEmpinfo bdEmpinfo = new BDEmpinfo();
BasePurchaseSystemDetailsVo basePurchaseSystemDetailsVo = basePurchaseSystemService.fetchDetailsByDeptSid(baseVehicle.getPurchaseSystemSid()).getData();
String staffSid = baseVehicleZSOutApplyDto.getStaffSid();
SysStaffinfoDetailsVo sysStaffinfoDetailsVo = sysStaffinfoFeign.fetchBySid(staffSid).getData();
bdEmpinfo.setFName(baseVehicleZSOutApplyDto.getStaffName());
bdEmpinfo.setFNumber(sysStaffinfoDetailsVo.getJobNumber());
bdEmpinfo.setFAddress(sysStaffinfoDetailsVo.getAddress());
bdEmpinfo.setFCreateOrgId(basePurchaseSystemDetailsVo.getOrgCode());
bdEmpinfo.setFUseOrgId(basePurchaseSystemDetailsVo.getOrgCode());
bdEmpinfo.setFMobile(sysStaffinfoDetailsVo.getMobile());
finKingDeeFeign.saveBDEmpinfo(bdEmpinfo);
} catch (Exception e) {
log.error(e.getMessage());
e.printStackTrace();
}
}
//挂车或上装子表实体类数据封装、推送挂车或上装的销售出库单
for (BaseVehicleZSOutDto gcOrSzDto : gcOrSzDtos) {
String vinSid = gcOrSzDto.getVinSid();
BaseVehicleOut baseVehicleOutZC = baseMapper.setByVinSid(vinSid);
//构建挂车或上装子表数据
BaseVehicleOut baseVehicleOut = new BaseVehicleOut();
BeanUtil.copyProperties(gcOrSzDto, baseVehicleOut, "sid");
//成交价
if (StringUtils.isNotBlank(gcOrSzDto.getPrice())) {
baseVehicleOut.setPrice(new BigDecimal(gcOrSzDto.getPrice()));
}
//出库单子表关联主表sid
baseVehicleOut.setMainSid(baseVehicleOutApply.getSid());
baseVehicleOut.setCreateBySid(baseVehicleOutApply.getCreateBySid());
baseVehicleOut.setCwCustomerNo(baseVehicleOutZC.getCwCustomerNo());
baseVehicleOut.setManPurOrderTypeKey(baseVehicleOutZC.getManPurOrderTypeKey());
baseVehicleOut.setManPurOrderTypeValue(baseVehicleOutZC.getManPurOrderTypeValue());
if (gcOrSzDto.getMaterialTypeKey().equals("002")) {//挂车
baseVehicleOut.setZcMGroupCode("99.02");
baseVehicleOut.setZcMGroupName("挂车");
baseVehicleOut.setMaterialCode(gcOrSzDto.getMaterialCode().substring(gcOrSzDto.getMaterialCode().length() - 8) + "G");
} else if (gcOrSzDto.getMaterialTypeKey().equals("003")) {//上装
baseVehicleOut.setZcMGroupCode("99.02");
baseVehicleOut.setZcMGroupName("挂车");
baseVehicleOut.setMaterialCode(gcOrSzDto.getMaterialCode().substring(gcOrSzDto.getMaterialCode().length() - 8) + "SZ");
}
//保存车辆出库单子表
baseMapper.insert(baseVehicleOut);
//推送金蝶上装/挂车销售出库单
String materialTypeKey = dto.getMaterialTypeKey();
BaseVehicle baseVehicle1 = baseVehicleService.fetchBySid(dto.getVinSid());
String materialTypeKey = gcOrSzDto.getMaterialTypeKey();
//推送挂车或上装销售出库单
BaseVehicle baseVehicle = baseVehicleService.fetchBySid(gcOrSzDto.getVinSid());
SalOutStock salOutStock = createZSGCOrSZOutStock(baseVehicle, baseVehicleOut, baseVehicleZSOutApplyDto);
finKingDeeFeign.draftSalOutStock(salOutStock);
if (materialTypeKey.equals("002")) {
SalOutStock salOutStock = createZSGCOutStock(baseVehicle1, dto, baseVehicleZSOutApplyDto);
finKingDeeFeign.draftSalOutStock(salOutStock);
String gcSid = dto.getMaterialSid();
String gcSid = gcOrSzDto.getMaterialSid();
BaseTrailer baseTrailer = baseTrailerService.fetchBySid(gcSid);
baseTrailer.setStockStateKey(VehicleState.StockEnum.OUT_STOCK.getCode());
baseTrailer.setStockStateValue(VehicleState.StockEnum.OUT_STOCK.getRemarks());
BigDecimal dealPrice = new BigDecimal(dto.getPrice());
BigDecimal dealPrice = new BigDecimal(gcOrSzDto.getPrice());
baseTrailer.setDealPrice(dealPrice);
baseTrailer.setIssueDate(DateUtil.formatDate(new Date()));
baseTrailerService.saveOrUpdate(baseTrailer);
}
if (materialTypeKey.equals("003")) {
SalOutStock salOutStock = createZSSZOutStock(baseVehicle1, dto, baseVehicleZSOutApplyDto);
finKingDeeFeign.draftSalOutStock(salOutStock);
String szSid = dto.getMaterialSid();
String szSid = gcOrSzDto.getMaterialSid();
BaseVehinstall baseVehinstall = baseVehinstallService.fetchBySid(szSid);
baseVehinstall.setVehicleStateKey(VehicleState.StockEnum.OUT_STOCK.getCode());
baseVehinstall.setVehicleStateValue(VehicleState.StockEnum.OUT_STOCK.getRemarks());

10
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesorder/contract/AppRovalContractPageVo.java

@ -11,20 +11,14 @@ public class AppRovalContractPageVo implements Vo {
@ApiModelProperty("合同sid")
private String contractSid;
@ApiModelProperty("合同编号")
private String contractId;
@ApiModelProperty("车架号")
private String vin;
@ApiModelProperty("销售订单sid")
private String busSid;
@ApiModelProperty("客户名称")
private String customerName;
@ApiModelProperty("车型名称")
private String modelName;
@ApiModelProperty("合同审核日期")
private String createDate;
}

2
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderMapper.java

@ -200,4 +200,6 @@ public interface BusSalesOrderMapper extends BaseMapper<BusSalesOrder> {
* @return
*/
BusSaleOrderVehicleOutVo selectOrderOne(String vinSid);
IPage<AppRovalContractPageVo> selectByStaffSid(IPage<AppRovalContractPageVo> page,@Param(Constants.WRAPPER) QueryWrapper<AppRovalContractPageVo> qw);
}

18
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderMapper.xml

@ -377,4 +377,22 @@
order by bo.createTime desc
limit 1
</select>
<select id="selectByStaffSid"
resultType="com.yxt.anrui.buscenter.api.bussalesorder.contract.AppRovalContractPageVo">
SELECT
sid as contractSid,
contractNo as contractId,
customerSid,
partyA,
partyB as customerName,
createDate,
modelSid,
modelName
FROM
anrui_base.common_contract
<where>
${ew.sqlSegment}
</where>
</select>
</mapper>

40
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderService.java

@ -26,6 +26,7 @@
package com.yxt.anrui.buscenter.biz.bussalesorder;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.date.DateTime;
import cn.hutool.core.date.DateUtil;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
@ -50,10 +51,7 @@ import com.yxt.anrui.base.api.busvehicleapplydetail.AppBusVehicleApplyListVo;
import com.yxt.anrui.base.api.busvehicleapplydetail.BusVehicleApplyDetailFeign;
import com.yxt.anrui.base.api.busvehicleorder.BusVehicleOrderFeign;
import com.yxt.anrui.base.api.busvehicleorder.BusVehicleOrderVo;
import com.yxt.anrui.base.api.commoncontract.CommonContract;
import com.yxt.anrui.base.api.commoncontract.CommonContractBuscenterVo;
import com.yxt.anrui.base.api.commoncontract.CommonContractFeign;
import com.yxt.anrui.base.api.commoncontract.CommonContractVo;
import com.yxt.anrui.base.api.commoncontract.*;
import com.yxt.anrui.base.common.enums.BillTypeEnum;
import com.yxt.anrui.base.common.enums.CommonContractEnum;
import com.yxt.anrui.base.common.enums.VehicleState;
@ -5303,33 +5301,19 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
AppRovalContractPageQuery params = pagerQuery.getParams();
SysUserVo sysUserVo = sysUserFeign.fetchBySid(params.getUserSid()).getData();
QueryWrapper<AppRovalContractPageVo> qw = new QueryWrapper<>();
qw.eq("bo.staffSid", sysUserVo.getStaffSid());
List<String> vinList = new ArrayList();
if (params.getStateType() == 1) {
List<BaseVehicleTempstateVo> data = baseVehicleTempstateFeign.selectAll(VehicleStateTempOrLast.PaymentEnum.ARREARS_CARRY_VEHICLE.getCode()).getData();
for (BaseVehicleTempstateVo datum : data) {
BaseVehicleSelectVo vehicleSelectVo = baseVehicleFeign.details(datum.getVehSid()).getData();
vinList.add(vehicleSelectVo.getVinNo());
}
} else if (params.getStateType() == 2) {
List<BaseVehicleTempstateVo> data = baseVehicleTempstateFeign.selectAll(VehicleStateTempOrLast.PaymentEnum.ARREARS_INVOICING.getCode()).getData();
for (BaseVehicleTempstateVo datum : data) {
BaseVehicleSelectVo vehicleSelectVo = baseVehicleFeign.details(datum.getVehSid()).getData();
vinList.add(vehicleSelectVo.getVinNo());
}
}
if (vinList.size() > 0) {
qw.notIn("bsov.linkNo", vinList);
qw.eq("staffSid",sysUserVo.getStaffSid());
qw.eq("orgSid",sysUserVo.getDepartmentSid());
if (StringUtils.isNotBlank(params.getName())){
qw.and(wrapper -> wrapper.like("partyB", params.getName()).or().like("contractNo", params.getName()));
}
qw.orderByDesc("createDate");
IPage<AppRovalContractPageVo> page = PagerUtil.queryToPage(pagerQuery);
IPage<AppRovalContractPageVo> iPage = baseMapper.getApprovalContractList(page, qw, params.getName());
IPage<AppRovalContractPageVo> iPage = baseMapper.selectByStaffSid(page, qw);
for (AppRovalContractPageVo record : iPage.getRecords()) {
String busSid = record.getBusSid();
CommonContractVo commonContract = commonContractFeign.getContractBySalesOrderSid(busSid).getData();
if (commonContract != null) {
record.setContractId(commonContract.getContractNo());
record.setContractSid(commonContract.getSid());
}
String createDate = record.getCreateDate();
DateTime dateTime = DateUtil.parse(createDate, "yyyy-MM-dd");
createDate = DateUtil.formatDate(dateTime);
record.setCreateDate(createDate);
}
return iPage;
}

5
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/approval/AppRovalFeign.java

@ -34,4 +34,9 @@ public interface AppRovalFeign {
@ResponseBody
public ResultBean<PagerVo<RovalContractPageVo>> getApprovalContractList(@RequestBody PagerQuery<RovalContractPageQuery> pagerQuery);
@ApiOperation("移动端-欠款开票选择车辆列表")
@PostMapping("/getVehicleQKKPList")
@ResponseBody
public ResultBean<PagerVo<AppVehicleQKKPVo>> getVehicleQKKPList(@RequestBody PagerQuery<AppVehicleQKKPQuery> pagerQuery);
}

23
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/approval/AppVehicleQKKPQuery.java

@ -0,0 +1,23 @@
package com.yxt.anrui.terminal.api.autoservice.approval;
import com.yxt.common.core.query.Query;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
/**
* @Author dimengzhe
* @Date 2022/4/22 8:49
* @Description
*/
@Data
public class AppVehicleQKKPQuery implements Query {
@ApiModelProperty(value = "合同编号")
private String contractNo;
@ApiModelProperty(value = "车辆sid")
private List<String> vinSids;
@ApiModelProperty("车架号")
private String vinNo; // 车架号
}

20
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/approval/AppVehicleQKKPTrailerVo.java

@ -0,0 +1,20 @@
package com.yxt.anrui.terminal.api.autoservice.approval;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @Author dimengzhe
* @Date 2022/4/22 8:49
* @Description
*/
@Data
public class AppVehicleQKKPTrailerVo implements Vo {
@ApiModelProperty("挂车车架号")
private String gcVinNo; // 挂车车架号
@ApiModelProperty("车架号")
private String vinNo; // 车架号
}

31
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/approval/AppVehicleQKKPVo.java

@ -0,0 +1,31 @@
package com.yxt.anrui.terminal.api.autoservice.approval;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
/**
* @Author dimengzhe
* @Date 2022/4/22 8:49
* @Description
*/
@Data
public class AppVehicleQKKPVo implements Vo {
@ApiModelProperty(value = "合同编号")
private String contractNo;
@ApiModelProperty("客户名称")
private String customerName; // 客户名称
@ApiModelProperty("车架号")
private String vinNo; // 车架号
@ApiModelProperty("车辆sid")
private String vehSid; // 车辆sid
@ApiModelProperty("合格证状态key")
private String certificateState; // 合格证状态key
@ApiModelProperty("合格证状态value")
private String certificateStateValue; // 合格证状态value
@ApiModelProperty(value = "挂车信息")
private List<AppVehicleQKKPTrailerVo> trailers;
}

2
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/approval/RovalContractPageQuery.java

@ -10,10 +10,8 @@ public class RovalContractPageQuery implements Query {
@ApiModelProperty("用户sid")
private String userSid;
@ApiModelProperty("车架号 客户名称 合同编号")
private String name;
@ApiModelProperty("状态")
private int stateType;
}

9
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/approval/RovalContractPageVo.java

@ -11,21 +11,16 @@ public class RovalContractPageVo implements Vo {
@ApiModelProperty("合同sid")
private String contractSid;
@ApiModelProperty("合同编号")
private String contractId;
@ApiModelProperty("车架号")
private String vin;
@ApiModelProperty("销售订单sid")
private String busSid;
@ApiModelProperty("客户名称")
private String customerName;
@ApiModelProperty("车型名称")
private String modelName;
@ApiModelProperty("合同审核日期")
private String createDate;
}

9
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/approval/AppRovalRest.java

@ -25,9 +25,7 @@
*********************************************************/
package com.yxt.anrui.terminal.biz.autoservice.approval;
import com.yxt.anrui.terminal.api.autoservice.approval.AppRovalFeign;
import com.yxt.anrui.terminal.api.autoservice.approval.RovalContractPageQuery;
import com.yxt.anrui.terminal.api.autoservice.approval.RovalContractPageVo;
import com.yxt.anrui.terminal.api.autoservice.approval.*;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
@ -62,4 +60,9 @@ public class AppRovalRest implements AppRovalFeign {
public ResultBean<PagerVo<RovalContractPageVo>> getApprovalContractList(PagerQuery<RovalContractPageQuery> pagerQuery) {
return appRovalService.getApprovalContractList(pagerQuery);
}
@Override
public ResultBean<PagerVo<AppVehicleQKKPVo>> getVehicleQKKPList(PagerQuery<AppVehicleQKKPQuery> pagerQuery) {
return appRovalService.getVehicleQKKPList(pagerQuery);
}
}

15
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/approval/AppRovalService.java

@ -28,9 +28,14 @@ package com.yxt.anrui.terminal.biz.autoservice.approval;
import com.yxt.anrui.base.api.basevehicle.BaseVehicleFeign;
import com.yxt.anrui.base.api.basevehicle.BaseVehicleQKKPQuery;
import com.yxt.anrui.base.api.basevehicle.BaseVehicleQKKPVo;
import com.yxt.anrui.buscenter.api.bussalesorder.BusSalesOrderFeign;
import com.yxt.anrui.buscenter.api.bussalesorder.contract.AppRovalContractPageQuery;
import com.yxt.anrui.buscenter.api.bussalesorder.contract.AppRovalContractPageVo;
import com.yxt.anrui.terminal.api.autoservice.approval.AppVehicleQKKPQuery;
import com.yxt.anrui.terminal.api.autoservice.approval.AppVehicleQKKPVo;
import com.yxt.anrui.terminal.api.autoservice.approval.RovalContractPageQuery;
import com.yxt.anrui.terminal.api.autoservice.approval.RovalContractPageVo;
import com.yxt.anrui.terminal.config.CoverUtils;
@ -59,6 +64,8 @@ public class AppRovalService {
@Autowired
BusSalesOrderFeign busSalesOrderFeign;
@Autowired
BaseVehicleFeign baseVehicleFeign;
public ResultBean<PagerVo<RovalContractPageVo>> getApprovalContractList(PagerQuery<RovalContractPageQuery> pagerQuery) {
ResultBean<PagerVo<RovalContractPageVo>> rb = ResultBean.fireFail();
@ -67,4 +74,12 @@ public class AppRovalService {
PagerVo<RovalContractPageVo> vo = CoverUtils.selectPagerVo(approvalContractList.getData());
return rb.success().setData(vo);
}
public ResultBean<PagerVo<AppVehicleQKKPVo>> getVehicleQKKPList(PagerQuery<AppVehicleQKKPQuery> pagerQuery) {
ResultBean<PagerVo<AppVehicleQKKPVo>> rb = ResultBean.fireFail();
PagerQuery<BaseVehicleQKKPQuery> pq = CoverUtils.getPagerQuery(pagerQuery);
ResultBean<PagerVo<BaseVehicleQKKPVo>> pagerVoResultBean = baseVehicleFeign.vehicleQKKPList(pq);
PagerVo<AppVehicleQKKPVo> vo = CoverUtils.selectPagerVo(pagerVoResultBean.getData());
return rb.success().setData(vo);
}
}
Loading…
Cancel
Save