|
|
@ -471,86 +471,19 @@ public class ScmApplyInboundService extends MybatisBaseService<ScmApplyInboundMa |
|
|
|
ScmApplyInbound scmApplyInbound = scmApplyInboundService.fetchBySid(businessSid); |
|
|
|
List<ScmApplyInboundVehicleDto> scmApplyInboundVehicleDtos = scmApplyInboundVehicleService.fetchByMainSid(businessSid); |
|
|
|
List<BaseVehicleDto> baseVehicleDtos = new ArrayList<>(); |
|
|
|
ResultBean<List<String>> resultBean1 = saveEntryCarInspectedInfo(bv, businessSid, booad, scmApplyInbound, scmApplyInboundVehicleDtos); |
|
|
|
if (!resultBean1.getSuccess()) { |
|
|
|
return rb.setMsg("验车业务模块的数据推送失败!"); |
|
|
|
} |
|
|
|
for (ScmApplyInboundVehicleDto scmApplyInboundVehicleDto : scmApplyInboundVehicleDtos) { |
|
|
|
//验车数据推送
|
|
|
|
ScmEntryVehicleExamineDto scmEntryVehicleExamineDto = new ScmEntryVehicleExamineDto(); |
|
|
|
scmEntryVehicleExamineDto.setBusinessSid(businessSid); |
|
|
|
//配置的名称
|
|
|
|
scmEntryVehicleExamineDto.setConfigName(booad.getConfigName()); |
|
|
|
scmEntryVehicleExamineDto.setConfigSid(booad.getConfigSid()); |
|
|
|
scmEntryVehicleExamineDto.setModelName(booad.getModelName()); |
|
|
|
scmEntryVehicleExamineDto.setModelSid(booad.getModelSid()); |
|
|
|
//订单类型
|
|
|
|
scmEntryVehicleExamineDto.setPurchaseTypeKey(ManPurOrderType.ManOrderType.PC_ORDER.getCode()); |
|
|
|
scmEntryVehicleExamineDto.setPurchaseType(ManPurOrderType.ManOrderType.PC_ORDER.getRemarks()); |
|
|
|
scmEntryVehicleExamineDto.setUserSid(bv.getUserSid()); |
|
|
|
scmEntryVehicleExamineDto.setVinNo(scmApplyInboundVehicleDto.getVinNo()); |
|
|
|
scmEntryVehicleExamineDto.setInspectionResult("1"); |
|
|
|
scmEntryVehicleExamineDto.setPrice(""); |
|
|
|
scmEntryVehicleExamineDto.setDepartureDate(booad.getDepartureDate()); |
|
|
|
scmEntryVehicleExamineDto.setPurchaseTypeKey(booad.getManPurOrderTypeKey()); |
|
|
|
scmEntryVehicleExamineDto.setPurchaseType(booad.getManPurOrderTypeValue()); |
|
|
|
//厂家入库日期
|
|
|
|
scmEntryVehicleExamineDto.setInboundDate(scmApplyInbound.getPriceDate()); |
|
|
|
ResultBean<String> resultBean1 = scmVehicleExamineService.saveEntryCarInspectedInfo(scmEntryVehicleExamineDto); |
|
|
|
if (!resultBean1.getSuccess()) { |
|
|
|
return rb.setMsg("验车业务模块的数据推送失败!"); |
|
|
|
} |
|
|
|
ScmVehinspectItemDto scmVehinspectItemDto = new ScmVehinspectItemDto(); |
|
|
|
scmVehinspectItemDto.setVehInspectSid(resultBean1.getData()); |
|
|
|
scmVehinspectItemService.saveItem(scmVehinspectItemDto); |
|
|
|
//车辆台账推送数据
|
|
|
|
BaseVehicleDto baseVehicleDto = new BaseVehicleDto(); |
|
|
|
baseVehicleDto.setVinNo(scmApplyInboundVehicleDto.getVinNo()); |
|
|
|
baseVehicleDto.setModelSid(booad.getModelSid()); |
|
|
|
baseVehicleDto.setModelName(booad.getModelName()); |
|
|
|
String userSid = bv.getUserSid(); |
|
|
|
ResultBean<String> pathSidByUserSid = sysStaffOrgFeign.getPathSidByUserSid(userSid); |
|
|
|
String data = pathSidByUserSid.getData(); |
|
|
|
baseVehicleDto.setCreateOrgSid(booad.getUseOrgSid()); |
|
|
|
baseVehicleDto.setCreateOrgName(booad.getUseOrgName()); |
|
|
|
baseVehicleDto.setUseOrgSid(booad.getUseOrgSid()); |
|
|
|
baseVehicleDto.setUseOrgName(booad.getUseOrgName()); |
|
|
|
baseVehicleDto.setModelConfigSid(booad.getConfigSid()); |
|
|
|
baseVehicleDto.setConfigName(booad.getConfigName()); |
|
|
|
baseVehicleDto.setInsideCode(booad.getInsideCode()); |
|
|
|
baseVehicleDto.setOrderingNo(booad.getPurchaseOrderNo()); |
|
|
|
//厂家合同价
|
|
|
|
baseVehicleDto.setContractPrice(Integer.parseInt(booad.getContractPrice().toString())); |
|
|
|
if (booad.getOnceFreight() == null && booad.getSecondaryFreight() == null) {//一次为空 二次为空
|
|
|
|
//运费合计
|
|
|
|
baseVehicleDto.setFreight(0); |
|
|
|
} else if (booad.getOnceFreight() != null && booad.getSecondaryFreight() != null) {//一次不为空 二次不空
|
|
|
|
baseVehicleDto.setFreight(Integer.parseInt(booad.getOnceFreight().add(booad.getSecondaryFreight()).toString())); |
|
|
|
} else if (booad.getOnceFreight() != null && booad.getSecondaryFreight() == null) {//一次不为空 二次空
|
|
|
|
baseVehicleDto.setFreight(Integer.parseInt(booad.getOnceFreight().toString())); |
|
|
|
} else if (booad.getOnceFreight() == null && booad.getSecondaryFreight() != null) { //一次为空 二次不空
|
|
|
|
baseVehicleDto.setFreight(Integer.parseInt(booad.getSecondaryFreight().toString())); |
|
|
|
} |
|
|
|
// baseVehicleDto.setFreight(Integer.parseInt(booad.getOnceFreight().add(booad.getSecondaryFreight()).toString()));
|
|
|
|
//厂家结算价
|
|
|
|
baseVehicleDto.setCostPrice(Integer.parseInt(booad.getCostPrice().toString())); |
|
|
|
|
|
|
|
baseVehicleDto.setPriceDate(booad.getPriceDate()); |
|
|
|
baseVehicleDto.setDepartureDate(booad.getDepartureDate()); |
|
|
|
baseVehicleDto.setInsideCode(booad.getInsideCode()); |
|
|
|
baseVehicleDto.setManPurOrderTypeKey(booad.getManPurOrderTypeKey()); |
|
|
|
baseVehicleDto.setManPurOrderTypeValue(booad.getManPurOrderTypeValue()); |
|
|
|
baseVehicleDtos.add(baseVehicleDto); |
|
|
|
saveItem(resultBean1); |
|
|
|
newBaseVehicleDto(bv, booad, baseVehicleDtos, scmApplyInboundVehicleDto); |
|
|
|
} |
|
|
|
baseVehicleFeign.saveOrUpdate(baseVehicleDtos, OperVehicleState.EventType.RZ_SAVEVEH.getCode()); |
|
|
|
// 入账审批通关修改采购订单状态 state = 1
|
|
|
|
if (booad.getManPurOrderTypeKey().equals(ManPurOrderType.ManOrderType.PC_ORDER.getCode())) { |
|
|
|
busVehicleOrderFeign.updateState(scmApplyInbound.getVehicleOrderSid()); |
|
|
|
} |
|
|
|
try { |
|
|
|
/*List<BdMaterial> bdMaterials= createBdMaterialList(scmApplyInbound,scmApplyInboundVehicleDtos); |
|
|
|
ResultBean r = finKingDeeFeign.draftBdMaterialList(bdMaterials);*/ |
|
|
|
/* StkInStock stkInStock=createStkInStock(scmApplyInbound,scmApplyInboundVehicleDtos); |
|
|
|
ResultBean r1 = finKingDeeFeign.draftStkInStock(stkInStock);*/ |
|
|
|
} catch (Exception e) { |
|
|
|
//return rb.setMsg("入账推送金蝶系统的应付单接口报错,主数据sid:" + scmApplyInbound.getSid());
|
|
|
|
} |
|
|
|
} |
|
|
|
return rb.success().setData(resultBean.getData()); |
|
|
|
} else { |
|
|
@ -558,6 +491,66 @@ public class ScmApplyInboundService extends MybatisBaseService<ScmApplyInboundMa |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
private void newBaseVehicleDto(BusinessVariables bv, ScmApplyInbound booad, List<BaseVehicleDto> baseVehicleDtos, ScmApplyInboundVehicleDto scmApplyInboundVehicleDto) { |
|
|
|
//车辆台账推送数据
|
|
|
|
BaseVehicleDto baseVehicleDto = new BaseVehicleDto(); |
|
|
|
baseVehicleDto.setVinNo(scmApplyInboundVehicleDto.getVinNo()); |
|
|
|
baseVehicleDto.setModelSid(booad.getModelSid()); |
|
|
|
baseVehicleDto.setModelName(booad.getModelName()); |
|
|
|
String userSid = bv.getUserSid(); |
|
|
|
ResultBean<String> pathSidByUserSid = sysStaffOrgFeign.getPathSidByUserSid(userSid); |
|
|
|
String data = pathSidByUserSid.getData(); |
|
|
|
baseVehicleDto.setCreateOrgSid(booad.getUseOrgSid()); |
|
|
|
baseVehicleDto.setCreateOrgName(booad.getUseOrgName()); |
|
|
|
baseVehicleDto.setUseOrgSid(booad.getUseOrgSid()); |
|
|
|
baseVehicleDto.setUseOrgName(booad.getUseOrgName()); |
|
|
|
baseVehicleDto.setModelConfigSid(booad.getConfigSid()); |
|
|
|
baseVehicleDto.setConfigName(booad.getConfigName()); |
|
|
|
baseVehicleDto.setInsideCode(booad.getInsideCode()); |
|
|
|
baseVehicleDto.setOrderingNo(booad.getPurchaseOrderNo()); |
|
|
|
//厂家合同价
|
|
|
|
baseVehicleDto.setContractPrice(Integer.parseInt(booad.getContractPrice().toString())); |
|
|
|
if (booad.getOnceFreight() == null && booad.getSecondaryFreight() == null) {//一次为空 二次为空
|
|
|
|
//运费合计
|
|
|
|
baseVehicleDto.setFreight(0); |
|
|
|
} else if (booad.getOnceFreight() != null && booad.getSecondaryFreight() != null) {//一次不为空 二次不空
|
|
|
|
baseVehicleDto.setFreight(Integer.parseInt(booad.getOnceFreight().add(booad.getSecondaryFreight()).toString())); |
|
|
|
} else if (booad.getOnceFreight() != null && booad.getSecondaryFreight() == null) {//一次不为空 二次空
|
|
|
|
baseVehicleDto.setFreight(Integer.parseInt(booad.getOnceFreight().toString())); |
|
|
|
} else if (booad.getOnceFreight() == null && booad.getSecondaryFreight() != null) { //一次为空 二次不空
|
|
|
|
baseVehicleDto.setFreight(Integer.parseInt(booad.getSecondaryFreight().toString())); |
|
|
|
} |
|
|
|
// baseVehicleDto.setFreight(Integer.parseInt(booad.getOnceFreight().add(booad.getSecondaryFreight()).toString()));
|
|
|
|
//厂家结算价
|
|
|
|
baseVehicleDto.setCostPrice(Integer.parseInt(booad.getCostPrice().toString())); |
|
|
|
|
|
|
|
baseVehicleDto.setPriceDate(booad.getPriceDate()); |
|
|
|
baseVehicleDto.setDepartureDate(booad.getDepartureDate()); |
|
|
|
baseVehicleDto.setInsideCode(booad.getInsideCode()); |
|
|
|
baseVehicleDto.setManPurOrderTypeKey(booad.getManPurOrderTypeKey()); |
|
|
|
baseVehicleDto.setManPurOrderTypeValue(booad.getManPurOrderTypeValue()); |
|
|
|
baseVehicleDtos.add(baseVehicleDto); |
|
|
|
} |
|
|
|
|
|
|
|
private void saveItem( ResultBean<List<String>> resultBean1) { |
|
|
|
List<ScmVehinspectItemDto> list=new ArrayList(); |
|
|
|
List<String> data = resultBean1.getData(); |
|
|
|
for(String s:data){ |
|
|
|
//推送验车检查表
|
|
|
|
ScmVehinspectItemDto scmVehinspectItemDto = new ScmVehinspectItemDto(); |
|
|
|
scmVehinspectItemDto.setVehInspectSid(s); |
|
|
|
list.add(scmVehinspectItemDto); |
|
|
|
} |
|
|
|
scmVehinspectItemService.saveItem(list); |
|
|
|
} |
|
|
|
|
|
|
|
private ResultBean<List<String>> saveEntryCarInspectedInfo(BusinessVariables bv, String businessSid, ScmApplyInbound booad, |
|
|
|
ScmApplyInbound scmApplyInbound, |
|
|
|
List<ScmApplyInboundVehicleDto> scmApplyInboundVehicleDtos) { |
|
|
|
ResultBean<List<String>> resultBean1 = scmVehicleExamineService.saveEntryCarInspectedInfoBatch(scmApplyInbound.getPriceDate(),bv.getUserSid(),booad,businessSid,scmApplyInboundVehicleDtos); |
|
|
|
return resultBean1; |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
* 创建采购入库单 |
|
|
|
* @param scmApplyInbound |
|
|
|