Browse Source

采购订单大更新

master
常熟吴彦祖 3 weeks ago
parent
commit
6813391588
  1. 11
      src/main/java/com/xujie/modules/order/controller/PODetailController.java
  2. 2
      src/main/java/com/xujie/modules/order/service/Iface/IPODetailService.java
  3. 18
      src/main/java/com/xujie/modules/order/service/Impl/PODetailServiceImpl.java

11
src/main/java/com/xujie/modules/order/controller/PODetailController.java

@ -222,6 +222,17 @@ public class PODetailController {
}
}
@PostMapping("/issuePoDetail")
@ApiOperation("下达PO订单行")
public R issuePoDetail(@RequestBody PODetail data) {
try {
baseService.issuePoDetail(data);
return R.ok();
} catch (RuntimeException ex) {
return R.error(ex.getMessage());
}
}
@PostMapping("/batchUpdatePoDetail")
@ApiOperation("保存")

2
src/main/java/com/xujie/modules/order/service/Iface/IPODetailService.java

@ -53,6 +53,8 @@ public interface IPODetailService extends IService<PODetail> {
void openPoDetail(PODetail model);
void issuePoDetail(PODetail model);
/**
* 手工新增 PO自动生成 header + 1 detail与导入单条逻辑一致order_no TransNoControl PO 类型
*/

18
src/main/java/com/xujie/modules/order/service/Impl/PODetailServiceImpl.java

@ -437,6 +437,16 @@ public class PODetailServiceImpl extends ServiceImpl<PODetailMapper, PODetail> i
updatePoDetailStatus(existingDetail, newStatus);
}
@Override
@Transactional
public void issuePoDetail(PODetail model) {
PODetail existingDetail = resolvePoDetail(model);
if (!"草稿".equals(existingDetail.getStatus())) {
throw new RuntimeException("只有草稿状态的订单可以下达");
}
updatePoDetailStatus(existingDetail, "已下达");
}
private PODetail resolvePoDetail(PODetail model) {
if (model == null) {
throw new RuntimeException("订单参数不能为空");
@ -807,7 +817,7 @@ public class PODetailServiceImpl extends ServiceImpl<PODetailMapper, PODetail> i
poHeader.setOrderType(resolveOrderTypeByCustomer(site, customer, importVo.getOrderType()));
poHeader.setCurrency("USA");
poHeader.setCurrencyRate(1.0);
poHeader.setStatus("已下达");
poHeader.setStatus("草稿");
poHeader.setOrderDate(importVo.getOrderDate());
poHeader.setEnquiry(importVo.getEnquiry());
poHeader.setConfirmed(importVo.getConfirmed());
@ -838,7 +848,7 @@ public class PODetailServiceImpl extends ServiceImpl<PODetailMapper, PODetail> i
poDetailVo.setShipQty(importVo.getShipQty());
poDetailVo.setPlanner(importVo.getPlanner());
poDetailVo.setRemark(importVo.getRemark());
poDetailVo.setStatus("已下达");
poDetailVo.setStatus("草稿");
poDetailVo.setWantReceiveDate(importVo.getWantReceiveDate());
poDetailVo.setExtValues(importVo.getExtValues());
poDetailVo.setCustomer(customer);
@ -892,7 +902,7 @@ public class PODetailServiceImpl extends ServiceImpl<PODetailMapper, PODetail> i
poHeader.setOrderType(resolveOrderTypeByCustomer(site, customer, vo.getOrderType()));
poHeader.setCurrency("USA");
poHeader.setCurrencyRate(1.0);
poHeader.setStatus("已下达");
poHeader.setStatus("草稿");
poHeader.setOrderDate(vo.getOrderDate());
poHeader.setEnquiry(vo.getEnquiry());
poHeader.setConfirmed(vo.getConfirmed());
@ -941,7 +951,7 @@ public class PODetailServiceImpl extends ServiceImpl<PODetailMapper, PODetail> i
poDetailVo.setDocSent(vo.getDocSent());
poDetailVo.setTelexRelease(vo.getTelexRelease());
poDetailVo.setAdvancePaid(vo.getAdvancePaid());
poDetailVo.setStatus(StringUtils.hasText(vo.getStatus()) ? vo.getStatus() : "已下达");
poDetailVo.setStatus("草稿");
String advancePayment = vo.getAdvancePayment();
if (StringUtils.hasText(advancePayment)) {

Loading…
Cancel
Save