Browse Source

问题修改

master
God 2 years ago
parent
commit
d5d9a13c17
  1. 126
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicleout/BaseVehicleOutService.java

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

@ -212,7 +212,6 @@ public class BaseVehicleOutService extends MybatisBaseService<BaseVehicleOutMapp
return rb.success().setData(b);
}
}
}
//修改客户简称为合同编号
List<BdCustomer> bdCustomers = new ArrayList<>();
@ -522,6 +521,7 @@ public class BaseVehicleOutService extends MybatisBaseService<BaseVehicleOutMapp
bdCustomers.add(bdCustomer);
finKingDeeFeign.draftBdCustomers(bdCustomers);
}
BaseVehicle baseVehicle = baseVehicleService.fetchBySid(dto.getVinSid());
//查询出库的车辆是否满足出库条件
int count = baseMapper.selectCountByVinSid(dto.getVinSid());
if (count > 0) {
@ -534,6 +534,14 @@ public class BaseVehicleOutService extends MybatisBaseService<BaseVehicleOutMapp
}
BaseVehicleOut baseVehicleOut = new BaseVehicleOut();
BeanUtil.copyProperties(dto, baseVehicleOut, "sid");
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()));
}
@ -546,10 +554,63 @@ public class BaseVehicleOutService extends MybatisBaseService<BaseVehicleOutMapp
if (StringUtils.isNotBlank(dto.getRebateMoneyTwo())) {
baseVehicleOut.setRebateMoneyTwo(new BigDecimal(dto.getRebateMoneyTwo()));
}
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);
}
baseVehicleOut.setBillNo(billNo);
String trailerOrInstallName = baseVehicleOut.getTrailerOrInstallName();
if ("上装".equals(trailerOrInstallName)) {
baseVehicleOut.setTrailerOrInstallMGroupCode("99.02");
baseVehicleOut.setTrailerOrInstallMGroupName("挂车");
baseVehicleOut.setTrailerOrInstallCode(baseVehicleOut.getVinNo().substring(baseVehicleOut.getVinNo().length() - 8) + "SZ");
} else if ("挂车".equals(trailerOrInstallName)) {
baseVehicleOut.setTrailerOrInstallMGroupCode("99.02");
baseVehicleOut.setTrailerOrInstallMGroupName("挂车");
BaseTrailer baseTrailer = baseTrailerService.fetchBySid(baseVehicleOut.getSzOrGCSid());
baseVehicleOut.setTrailerOrInstallCode(baseTrailer.getVinNo().substring(baseTrailer.getVinNo().length() - 8) + "G");
}
//备注
String remarks1 = createRemarks(dto);
String remarks2 = baseVehicleOut.getRemarks();
String remarks3 = remarks2 + remarks1;
if ("null".equals(remarks3)){
remarks3 = "";
}
baseVehicleOut.setRemarks(remarks3);
BaseVehicleOutApply baseVehicleOutApply = new BaseVehicleOutApply();
baseVehicleOutApply.setBillNo(billNo);
baseVehicleOutApply.setSaleDate(dto.getSaleDate());
baseVehicleOutApply.setCustomerSid(dto.getCustomerSid());
baseVehicleOutApply.setCustomerName(dto.getCustomerName());
baseVehicleOutApply.setMobile(dto.getMobile());
baseVehicleOutApply.setOrgSid(dto.getOrgSid());
baseVehicleOutApply.setOrgName(dto.getOrgName());
baseVehicleOutApply.setStaffSid(dto.getStaffSid());
baseVehicleOutApply.setStaffName(dto.getStaffName());
baseVehicleOutApply.setMakeListSid(dto.getCreateBySid());
baseVehicleOutApply.setMakeListName(dto.getCreateByName());
baseVehicleOutApply.setMakeListDate(DateUtil.format(new Date(),"yyyy-MM-dd"));
baseVehicleOutApply.setSaleTypeKey(dto.getTypeKey());
baseVehicleOutApply.setSaleTypeValue(dto.getType());
baseVehicleOutApply.setCreateOrgSid(dto.getCreateOrgSid());
baseVehicleOutApply.setCreateBySid(dto.getCreateBySid());
//保存车辆出库单主表
baseVehicleOutApplyService.save(baseVehicleOutApply);
//出库单子表关联主表sid
baseVehicleOut.setMainSid(baseVehicleOutApply.getSid());
baseVehicleOut.setCreateBySid(dto.getCreateBySid());
baseVehicleOut.setCreateByName(dto.getCreateByName());
//保存车辆出库单子表
baseMapper.insert(baseVehicleOut);
dto.setBillNo(billNo);
//更新车辆台账的出库状态等值,库存状态修改为出库,销售日期修改为当天,成交价,备注
String remarks = baseVehicleOut.getConcatNo() + baseVehicleOut.getType();
BaseVehicle baseVehicle = baseVehicleService.fetchBySid(dto.getVinSid());
baseVehicle.setRemarks(remarks);
baseVehicle.setVehicleState(VehicleState.StockEnum.OUT_STOCK.getCode());
baseVehicle.setVehicleStateValue(VehicleState.StockEnum.OUT_STOCK.getRemarks());
@ -563,14 +624,65 @@ public class BaseVehicleOutService extends MybatisBaseService<BaseVehicleOutMapp
//推送财务中介人
if (StringUtils.isNotBlank(dto.getMiddleOne())) {
BdCustomer bdMiddle = createBdMiddle(baseVehicle, dto);
ResultBean resultBeanMiddle = finKingDeeFeign.draftBdCustomer(bdMiddle);
finKingDeeFeign.draftBdCustomer(bdMiddle);
}
//创建出库单数据对象前 需要将客户的编码修改为新生成的客户的编码。
dto.setCustomerNo(bdCustomer.getFNumber());
if (StringUtils.isNotBlank(bdCustomer.getFNumber())) {
dto.setCustomerNo(bdCustomer.getFNumber());
}
SalOutStock salOutStock = createSalOutStock(baseVehicle, dto);
log.info("BaseVehicleOutService-vehicleOut-287:{}", JSONObject.toJSONString(salOutStock));
finKingDeeFeign.draftSalOutStock(salOutStock);
log.info("BaseVehicleOutService-vehicleOut-289:{}", JSONObject.toJSONString(salOutStock));
//推送销售专员信息
BDEmpinfo bdEmpinfo = new BDEmpinfo();
String staffSid = dto.getStaffSid();
SysStaffinfoDetailsVo sysStaffinfoDetailsVo = sysStaffinfoFeign.fetchBySid(staffSid).getData();
bdEmpinfo.setFName(dto.getStaffName());
bdEmpinfo.setFNumber(sysStaffinfoDetailsVo.getJobNumber());
bdEmpinfo.setFAddress(sysStaffinfoDetailsVo.getAddress());
BasePurchaseSystemDetailsVo data = basePurchaseSystemService.fetchDetailsByDeptSid(baseVehicle.getPurchaseSystemSid()).getData();
if (data != null){
bdEmpinfo.setFCreateOrgId(data.getOrgCode());
bdEmpinfo.setFUseOrgId(data.getOrgCode());
}else {
bdEmpinfo.setFCreateOrgId(sysOrganizationVo.getOrgCode());
bdEmpinfo.setFUseOrgId(sysOrganizationVo.getOrgCode());
}
bdEmpinfo.setFMobile(sysStaffinfoDetailsVo.getMobile());
finKingDeeFeign.saveBDEmpinfo(bdEmpinfo);
} catch (Exception e) {
log.error(e.getMessage());
e.printStackTrace();
}
//推送金蝶上装/挂车销售出库单
String trailerOrInstall = dto.getTrailerOrInstall();
if (StringUtils.isNotBlank(trailerOrInstall)) {
SalOutStock salOutStock = createSzOrGcSalOutStock(baseVehicle, dto);
log.info("BaseVehicleOutService-vehicleOut-313:{}", JSONObject.toJSONString(salOutStock));
finKingDeeFeign.draftSalOutStock(salOutStock);
log.info("BaseVehicleOutService-vehicleOut-316:{}", JSONObject.toJSONString(salOutStock));
List<SalOutStock.FEntity> fEntity = salOutStock.getFEntity();
for (SalOutStock.FEntity entity : fEntity) {
String substring = entity.getFMaterialID().substring(entity.getFMaterialID().length() - 1);
if ("G".equals(substring)) {
String gcSid = dto.getSzOrGCSid();
BaseTrailer baseTrailer = baseTrailerService.fetchBySid(gcSid);
baseTrailer.setStockStateKey(VehicleState.StockEnum.OUT_STOCK.getCode());
baseTrailer.setStockStateValue(VehicleState.StockEnum.OUT_STOCK.getRemarks());
BigDecimal dealPrice = new BigDecimal(dto.getTrailerOrInstallDealPrice());
baseTrailer.setDealPrice(dealPrice);
baseTrailer.setIssueDate(DateUtil.formatDate(new Date()));
baseTrailerService.saveOrUpdate(baseTrailer);
} else if ("Z".equals(substring)) {
String szSid = dto.getSzOrGCSid();
BaseVehinstall baseVehinstall = baseVehinstallService.fetchBySid(szSid);
baseVehinstall.setVehicleStateKey(VehicleState.StockEnum.OUT_STOCK.getCode());
baseVehinstall.setVehicleStateValue(VehicleState.StockEnum.OUT_STOCK.getRemarks());
baseVehinstall.setSalesDate(DateUtil.formatDate(new Date()));
baseVehinstallService.saveOrUpdate(baseVehinstall);
}
}
}
return rb.success();
}
@ -906,7 +1018,13 @@ public class BaseVehicleOutService extends MybatisBaseService<BaseVehicleOutMapp
baseVehicleOutMaterialZC.setPrice(baseVehicleOut.getPrice().toString());
baseVehicleOutMaterialZC.setFlr(baseVehicleOut.getMiddleOne());
BigDecimal rebateMoneyOne = baseVehicleOut.getRebateMoneyOne();
if (rebateMoneyOne == null){
rebateMoneyOne = new BigDecimal(0);
}
BigDecimal rebateMoneyTwo = baseVehicleOut.getRebateMoneyTwo();
if (rebateMoneyTwo == null){
rebateMoneyTwo = new BigDecimal(0);
}
BigDecimal rebateMoney = rebateMoneyOne.add(rebateMoneyTwo);
baseVehicleOutMaterialZC.setFlje(rebateMoney.toString());
tRebateMoney = tRebateMoney.add(rebateMoney);

Loading…
Cancel
Save