物料优化
This commit is contained in:
@@ -37,7 +37,7 @@ import static com.zt.plat.framework.apilog.core.enums.OperateTypeEnum.*;
|
|||||||
|
|
||||||
@Tag(name = "管理后台 - 委托加工订单明细")
|
@Tag(name = "管理后台 - 委托加工订单明细")
|
||||||
@RestController
|
@RestController
|
||||||
@RequestMapping("/bse/entrust-order-detail")
|
@RequestMapping("/base/entrust-order-detail")
|
||||||
@Validated
|
@Validated
|
||||||
public class EntrustOrderDetailController implements BusinessControllerMarker {
|
public class EntrustOrderDetailController implements BusinessControllerMarker {
|
||||||
|
|
||||||
@@ -47,14 +47,14 @@ public class EntrustOrderDetailController implements BusinessControllerMarker {
|
|||||||
|
|
||||||
@PostMapping("/create")
|
@PostMapping("/create")
|
||||||
@Operation(summary = "创建委托加工订单明细")
|
@Operation(summary = "创建委托加工订单明细")
|
||||||
@PreAuthorize("@ss.hasPermission('bse:entrust-order-detail:create')")
|
@PreAuthorize("@ss.hasPermission('base:entrust-order-detail:create')")
|
||||||
public CommonResult<EntrustOrderDetailRespVO> createEntrustOrderDetail(@Valid @RequestBody EntrustOrderDetailSaveReqVO createReqVO) {
|
public CommonResult<EntrustOrderDetailRespVO> createEntrustOrderDetail(@Valid @RequestBody EntrustOrderDetailSaveReqVO createReqVO) {
|
||||||
return success(entrustOrderDetailService.createEntrustOrderDetail(createReqVO));
|
return success(entrustOrderDetailService.createEntrustOrderDetail(createReqVO));
|
||||||
}
|
}
|
||||||
|
|
||||||
@PutMapping("/update")
|
@PutMapping("/update")
|
||||||
@Operation(summary = "更新委托加工订单明细")
|
@Operation(summary = "更新委托加工订单明细")
|
||||||
@PreAuthorize("@ss.hasPermission('bse:entrust-order-detail:update')")
|
@PreAuthorize("@ss.hasPermission('base:entrust-order-detail:update')")
|
||||||
public CommonResult<Boolean> updateEntrustOrderDetail(@Valid @RequestBody EntrustOrderDetailSaveReqVO updateReqVO) {
|
public CommonResult<Boolean> updateEntrustOrderDetail(@Valid @RequestBody EntrustOrderDetailSaveReqVO updateReqVO) {
|
||||||
entrustOrderDetailService.updateEntrustOrderDetail(updateReqVO);
|
entrustOrderDetailService.updateEntrustOrderDetail(updateReqVO);
|
||||||
return success(true);
|
return success(true);
|
||||||
@@ -63,7 +63,7 @@ public class EntrustOrderDetailController implements BusinessControllerMarker {
|
|||||||
@DeleteMapping("/delete")
|
@DeleteMapping("/delete")
|
||||||
@Operation(summary = "删除委托加工订单明细")
|
@Operation(summary = "删除委托加工订单明细")
|
||||||
@Parameter(name = "id", description = "编号", required = true)
|
@Parameter(name = "id", description = "编号", required = true)
|
||||||
@PreAuthorize("@ss.hasPermission('bse:entrust-order-detail:delete')")
|
@PreAuthorize("@ss.hasPermission('base:entrust-order-detail:delete')")
|
||||||
public CommonResult<Boolean> deleteEntrustOrderDetail(@RequestParam("id") Long id) {
|
public CommonResult<Boolean> deleteEntrustOrderDetail(@RequestParam("id") Long id) {
|
||||||
entrustOrderDetailService.deleteEntrustOrderDetail(id);
|
entrustOrderDetailService.deleteEntrustOrderDetail(id);
|
||||||
return success(true);
|
return success(true);
|
||||||
@@ -72,7 +72,7 @@ public class EntrustOrderDetailController implements BusinessControllerMarker {
|
|||||||
@DeleteMapping("/delete-list")
|
@DeleteMapping("/delete-list")
|
||||||
@Parameter(name = "ids", description = "编号", required = true)
|
@Parameter(name = "ids", description = "编号", required = true)
|
||||||
@Operation(summary = "批量删除委托加工订单明细")
|
@Operation(summary = "批量删除委托加工订单明细")
|
||||||
@PreAuthorize("@ss.hasPermission('bse:entrust-order-detail:delete')")
|
@PreAuthorize("@ss.hasPermission('base:entrust-order-detail:delete')")
|
||||||
public CommonResult<Boolean> deleteEntrustOrderDetailList(@RequestBody BatchDeleteReqVO req) {
|
public CommonResult<Boolean> deleteEntrustOrderDetailList(@RequestBody BatchDeleteReqVO req) {
|
||||||
entrustOrderDetailService.deleteEntrustOrderDetailListByIds(req.getIds());
|
entrustOrderDetailService.deleteEntrustOrderDetailListByIds(req.getIds());
|
||||||
return success(true);
|
return success(true);
|
||||||
@@ -81,7 +81,7 @@ public class EntrustOrderDetailController implements BusinessControllerMarker {
|
|||||||
@GetMapping("/get")
|
@GetMapping("/get")
|
||||||
@Operation(summary = "获得委托加工订单明细")
|
@Operation(summary = "获得委托加工订单明细")
|
||||||
@Parameter(name = "id", description = "编号", required = true, example = "1024")
|
@Parameter(name = "id", description = "编号", required = true, example = "1024")
|
||||||
@PreAuthorize("@ss.hasPermission('bse:entrust-order-detail:query')")
|
@PreAuthorize("@ss.hasPermission('base:entrust-order-detail:query')")
|
||||||
public CommonResult<EntrustOrderDetailRespVO> getEntrustOrderDetail(@RequestParam("id") Long id) {
|
public CommonResult<EntrustOrderDetailRespVO> getEntrustOrderDetail(@RequestParam("id") Long id) {
|
||||||
EntrustOrderDetailDO entrustOrderDetail = entrustOrderDetailService.getEntrustOrderDetail(id);
|
EntrustOrderDetailDO entrustOrderDetail = entrustOrderDetailService.getEntrustOrderDetail(id);
|
||||||
return success(BeanUtils.toBean(entrustOrderDetail, EntrustOrderDetailRespVO.class));
|
return success(BeanUtils.toBean(entrustOrderDetail, EntrustOrderDetailRespVO.class));
|
||||||
@@ -89,7 +89,7 @@ public class EntrustOrderDetailController implements BusinessControllerMarker {
|
|||||||
|
|
||||||
@GetMapping("/page")
|
@GetMapping("/page")
|
||||||
@Operation(summary = "获得委托加工订单明细分页")
|
@Operation(summary = "获得委托加工订单明细分页")
|
||||||
@PreAuthorize("@ss.hasPermission('bse:entrust-order-detail:query')")
|
@PreAuthorize("@ss.hasPermission('base:entrust-order-detail:query')")
|
||||||
public CommonResult<PageResult<EntrustOrderDetailRespVO>> getEntrustOrderDetailPage(@Valid EntrustOrderDetailPageReqVO pageReqVO) {
|
public CommonResult<PageResult<EntrustOrderDetailRespVO>> getEntrustOrderDetailPage(@Valid EntrustOrderDetailPageReqVO pageReqVO) {
|
||||||
PageResult<EntrustOrderDetailDO> pageResult = entrustOrderDetailService.getEntrustOrderDetailPage(pageReqVO);
|
PageResult<EntrustOrderDetailDO> pageResult = entrustOrderDetailService.getEntrustOrderDetailPage(pageReqVO);
|
||||||
return success(BeanUtils.toBean(pageResult, EntrustOrderDetailRespVO.class));
|
return success(BeanUtils.toBean(pageResult, EntrustOrderDetailRespVO.class));
|
||||||
@@ -97,7 +97,7 @@ public class EntrustOrderDetailController implements BusinessControllerMarker {
|
|||||||
|
|
||||||
@GetMapping("/export-excel")
|
@GetMapping("/export-excel")
|
||||||
@Operation(summary = "导出委托加工订单明细 Excel")
|
@Operation(summary = "导出委托加工订单明细 Excel")
|
||||||
@PreAuthorize("@ss.hasPermission('bse:entrust-order-detail:export')")
|
@PreAuthorize("@ss.hasPermission('base:entrust-order-detail:export')")
|
||||||
@ApiAccessLog(operateType = EXPORT)
|
@ApiAccessLog(operateType = EXPORT)
|
||||||
public void exportEntrustOrderDetailExcel(@Valid EntrustOrderDetailPageReqVO pageReqVO,
|
public void exportEntrustOrderDetailExcel(@Valid EntrustOrderDetailPageReqVO pageReqVO,
|
||||||
HttpServletResponse response) throws IOException {
|
HttpServletResponse response) throws IOException {
|
||||||
|
|||||||
@@ -6,25 +6,28 @@ import com.zt.plat.framework.common.util.spring.SpringUtils;
|
|||||||
import com.zt.plat.module.base.api.materialinfomation.MaterialInfomationApi;
|
import com.zt.plat.module.base.api.materialinfomation.MaterialInfomationApi;
|
||||||
import com.zt.plat.module.base.api.materialinfomation.dto.MaterialInfomationPageReqDTO;
|
import com.zt.plat.module.base.api.materialinfomation.dto.MaterialInfomationPageReqDTO;
|
||||||
import com.zt.plat.module.base.api.materialinfomation.dto.MaterialInfomationRespDTO;
|
import com.zt.plat.module.base.api.materialinfomation.dto.MaterialInfomationRespDTO;
|
||||||
|
import com.zt.plat.module.base.dal.dataobject.base.ElementDO;
|
||||||
|
import com.zt.plat.module.base.service.base.ElementService;
|
||||||
import com.zt.plat.module.contractorder.controller.admin.entrustorder.vo.EntrustOrderDetailPageReqVO;
|
import com.zt.plat.module.contractorder.controller.admin.entrustorder.vo.EntrustOrderDetailPageReqVO;
|
||||||
import com.zt.plat.module.contractorder.controller.admin.entrustorder.vo.EntrustOrderDetailRespVO;
|
import com.zt.plat.module.contractorder.controller.admin.entrustorder.vo.EntrustOrderDetailRespVO;
|
||||||
import com.zt.plat.module.contractorder.controller.admin.entrustorder.vo.EntrustOrderDetailSaveReqVO;
|
import com.zt.plat.module.contractorder.controller.admin.entrustorder.vo.EntrustOrderDetailSaveReqVO;
|
||||||
import com.zt.plat.module.contractorder.dal.dataobject.entrustorder.EntrustOrderDetailDO;
|
import com.zt.plat.module.contractorder.dal.dataobject.entrustorder.EntrustOrderDetailDO;
|
||||||
import com.zt.plat.module.contractorder.dal.dataobject.entrustorder.EntrustOrderOrderDO;
|
import com.zt.plat.module.contractorder.dal.dataobject.entrustorder.EntrustOrderOrderDO;
|
||||||
|
import com.zt.plat.module.contractorder.dal.dataobject.purchaseorder.PrchOrdDtlDO;
|
||||||
import com.zt.plat.module.contractorder.dal.mysql.entrustorder.EntrustOrderDetailMapper;
|
import com.zt.plat.module.contractorder.dal.mysql.entrustorder.EntrustOrderDetailMapper;
|
||||||
import com.zt.plat.module.contractorder.dal.mysql.entrustorder.EntrustOrderOrderMapper;
|
import com.zt.plat.module.contractorder.dal.mysql.entrustorder.EntrustOrderOrderMapper;
|
||||||
import com.zt.plat.module.erp.controller.admin.erp.vo.ErpOrderUpdateReqVO;
|
import com.zt.plat.module.erp.controller.admin.erp.vo.ErpOrderUpdateReqVO;
|
||||||
|
import com.zt.plat.module.erp.service.erp.ErpOrderService;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import jakarta.annotation.Resource;
|
import jakarta.annotation.Resource;
|
||||||
import org.springframework.validation.annotation.Validated;
|
import org.springframework.validation.annotation.Validated;
|
||||||
import org.springframework.transaction.annotation.Transactional;
|
|
||||||
|
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
|
import java.util.concurrent.atomic.AtomicInteger;
|
||||||
import java.util.concurrent.atomic.AtomicReference;
|
import java.util.concurrent.atomic.AtomicReference;
|
||||||
|
|
||||||
import com.zt.plat.framework.common.pojo.PageResult;
|
import com.zt.plat.framework.common.pojo.PageResult;
|
||||||
import com.zt.plat.framework.common.pojo.PageParam;
|
|
||||||
import com.zt.plat.framework.common.util.object.BeanUtils;
|
import com.zt.plat.framework.common.util.object.BeanUtils;
|
||||||
|
|
||||||
|
|
||||||
@@ -44,6 +47,9 @@ import static com.zt.plat.module.contractorder.enums.purchaseorder.ErrorCodeCons
|
|||||||
@Slf4j
|
@Slf4j
|
||||||
public class EntrustOrderDetailServiceImpl implements EntrustOrderDetailService {
|
public class EntrustOrderDetailServiceImpl implements EntrustOrderDetailService {
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private ElementService elementService;
|
||||||
|
|
||||||
@Resource
|
@Resource
|
||||||
private EntrustOrderDetailMapper entrustOrderDetailMapper;
|
private EntrustOrderDetailMapper entrustOrderDetailMapper;
|
||||||
|
|
||||||
@@ -97,9 +103,15 @@ public class EntrustOrderDetailServiceImpl implements EntrustOrderDetailService
|
|||||||
log.warn("提交订单明细到erp,主订单为空,订单明细ID:{}", ids);
|
log.warn("提交订单明细到erp,主订单为空,订单明细ID:{}", ids);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
if (entrustOrderOrderDO.getOrderSAPNumber() == null || entrustOrderOrderDO.getOrderSAPNumber().isEmpty()) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
log.info("提交订单明细到erp,主订单:{}", entrustOrderOrderDO);
|
log.info("提交订单明细到erp,主订单:{}", entrustOrderOrderDO);
|
||||||
ErpOrderUpdateReqVO erpOrderUpdateReqVO = new ErpOrderUpdateReqVO();
|
ErpOrderUpdateReqVO erpOrderUpdateReqVO = new ErpOrderUpdateReqVO();
|
||||||
buildErp062Data(erpOrderUpdateReqVO, entrustOrderOrderDO, entrustOrderDetails);
|
buildErp062Data(erpOrderUpdateReqVO, entrustOrderOrderDO, entrustOrderDetails);
|
||||||
|
log.info("提交订单明细到erp,数据:{}", erpOrderUpdateReqVO);
|
||||||
|
String result = SpringUtils.getBean(ErpOrderService.class).submitOrderToErp062(erpOrderUpdateReqVO);
|
||||||
|
log.info("提交订单明细到erp,结果:{}", result);
|
||||||
}
|
}
|
||||||
private void buildErp062Data(ErpOrderUpdateReqVO erpOrderUpdateReqVO, EntrustOrderOrderDO order, List<EntrustOrderDetailDO> entrustOrderDetailList) {
|
private void buildErp062Data(ErpOrderUpdateReqVO erpOrderUpdateReqVO, EntrustOrderOrderDO order, List<EntrustOrderDetailDO> entrustOrderDetailList) {
|
||||||
erpOrderUpdateReqVO
|
erpOrderUpdateReqVO
|
||||||
@@ -136,8 +148,8 @@ public class EntrustOrderDetailServiceImpl implements EntrustOrderDetailService
|
|||||||
|
|
||||||
ErpOrderUpdateReqVO.comp comp = new ErpOrderUpdateReqVO.comp();
|
ErpOrderUpdateReqVO.comp comp = new ErpOrderUpdateReqVO.comp();
|
||||||
comp.setPo_item(Long.valueOf(detail.getLineNumber()));
|
comp.setPo_item(Long.valueOf(detail.getLineNumber()));
|
||||||
comp.setSched_line(index.get()); // 计划行号 -> 计划行号(保持一致)
|
// comp.setSched_line(index.get()); // 计划行号 -> 计划行号(保持一致)
|
||||||
comp.setItem_no(index.get()); // 项目编号 -> 项目编号
|
// comp.setItem_no(index.get()); // 项目编号 -> 项目编号
|
||||||
comp.setMaterial(detail.getSendMaterialNumber()); // 物料号 -> 物料号
|
comp.setMaterial(detail.getSendMaterialNumber()); // 物料号 -> 物料号
|
||||||
comp.setPlant(detail.getReceiveFactoryNumber()); // 收货工厂 -> 收货工厂
|
comp.setPlant(detail.getReceiveFactoryNumber()); // 收货工厂 -> 收货工厂
|
||||||
comp.setEntry_quantity(detail.getForecastQuantity()); // 委托加工需求数量 -> 委托加工需求数量
|
comp.setEntry_quantity(detail.getForecastQuantity()); // 委托加工需求数量 -> 委托加工需求数量
|
||||||
@@ -214,4 +226,18 @@ public class EntrustOrderDetailServiceImpl implements EntrustOrderDetailService
|
|||||||
}
|
}
|
||||||
return mtrlZhongtongCode;
|
return mtrlZhongtongCode;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// private void setElemInfo(EntrustOrderDetailDO entrustOrderDetailDO) {
|
||||||
|
// if (entrustOrderDetailDO.getElemAbbr() == null) {
|
||||||
|
// return;
|
||||||
|
// }
|
||||||
|
// ElementDO elementBySymbol = elementService.getElementBySymbol(entrustOrderDetailDO.getElemAbbr());
|
||||||
|
// if (elementBySymbol != null) {
|
||||||
|
// entrustOrderDetailDO.setElemName(elementBySymbol.getName());
|
||||||
|
// entrustOrderDetailDO.setElemCdg(elementBySymbol.getCoding());
|
||||||
|
// } else {
|
||||||
|
// log.warn("元素【{}】不存在,订单ID【{}】", entrustOrderDetailDO.getElemAbbr(), entrustOrderDetailDO.getOrdId());
|
||||||
|
// }
|
||||||
|
//
|
||||||
|
// }
|
||||||
}
|
}
|
||||||
@@ -94,6 +94,7 @@ public class PrchOrdDtlServiceImpl implements PrchOrdDtlService {
|
|||||||
validatePrchOrdDtlExists(updateReqVO.getId());
|
validatePrchOrdDtlExists(updateReqVO.getId());
|
||||||
// 更新
|
// 更新
|
||||||
PrchOrdDtlDO updateObj = BeanUtils.toBean(updateReqVO, PrchOrdDtlDO.class);
|
PrchOrdDtlDO updateObj = BeanUtils.toBean(updateReqVO, PrchOrdDtlDO.class);
|
||||||
|
setElemInfo(updateObj);
|
||||||
prchOrdDtlMapper.updateById(updateObj);
|
prchOrdDtlMapper.updateById(updateObj);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user