|
|
@@ -1,188 +1,238 @@
|
|
|
-package com.jeesite.modules.mes.web;
|
|
|
-
|
|
|
-import com.jeesite.common.config.Global;
|
|
|
-import com.jeesite.common.entity.Page;
|
|
|
-import com.jeesite.common.lang.StringUtils;
|
|
|
-import com.jeesite.common.web.BaseController;
|
|
|
-import com.jeesite.modules.mes.erp.ErpPrdInStock;
|
|
|
-import com.jeesite.modules.mes.erp.ErpPrdInStockService;
|
|
|
-import com.jeesite.modules.mes.erp.ErpProductionOrder;
|
|
|
-import com.jeesite.modules.mes.erp.ErpProductionOrderService;
|
|
|
-import com.jeesite.modules.mes.erp.ErpStockLocOption;
|
|
|
-import com.jeesite.modules.mes.erp.ErpStockLocService;
|
|
|
-import com.jeesite.modules.mes.erp.ErpStockOption;
|
|
|
-import com.jeesite.modules.mes.erp.ErpStockService;
|
|
|
-import com.jeesite.modules.mes.erp.ErpTransferDirect;
|
|
|
-import com.jeesite.modules.mes.erp.ErpTransferDirectResult;
|
|
|
-import com.jeesite.modules.mes.erp.ErpTransferDirectSaveService;
|
|
|
-import com.jeesite.modules.mes.erp.ErpTransferDirectService;
|
|
|
-import com.jeesite.modules.mes.erp.ErpTransferDirectSubmitRequest;
|
|
|
-import com.jeesite.modules.mes.erp.KingdeeErpProperties;
|
|
|
-import org.apache.shiro.authz.annotation.RequiresPermissions;
|
|
|
-import org.springframework.stereotype.Controller;
|
|
|
-import org.springframework.ui.Model;
|
|
|
-import org.springframework.web.bind.annotation.GetMapping;
|
|
|
-import org.springframework.web.bind.annotation.PostMapping;
|
|
|
-import org.springframework.web.bind.annotation.RequestBody;
|
|
|
-import org.springframework.web.bind.annotation.RequestMapping;
|
|
|
-import org.springframework.web.bind.annotation.ResponseBody;
|
|
|
-
|
|
|
-import javax.servlet.http.HttpServletRequest;
|
|
|
-import javax.servlet.http.HttpServletResponse;
|
|
|
-import java.util.HashMap;
|
|
|
-import java.util.List;
|
|
|
-import java.util.Map;
|
|
|
-
|
|
|
-/**
|
|
|
- * ERP 直接调拨单查询与新增。
|
|
|
- */
|
|
|
-@Controller
|
|
|
-@RequestMapping(value = "${adminPath}/mes/erpTransferDirect")
|
|
|
-public class ErpTransferDirectController extends BaseController {
|
|
|
-
|
|
|
- private final ErpTransferDirectService erpTransferDirectService;
|
|
|
- private final ErpTransferDirectSaveService erpTransferDirectSaveService;
|
|
|
- private final ErpProductionOrderService erpProductionOrderService;
|
|
|
- private final ErpPrdInStockService erpPrdInStockService;
|
|
|
- private final ErpStockService erpStockService;
|
|
|
- private final ErpStockLocService erpStockLocService;
|
|
|
- private final KingdeeErpProperties erpProperties;
|
|
|
-
|
|
|
- public ErpTransferDirectController(ErpTransferDirectService erpTransferDirectService,
|
|
|
- ErpTransferDirectSaveService erpTransferDirectSaveService,
|
|
|
- ErpProductionOrderService erpProductionOrderService,
|
|
|
- ErpPrdInStockService erpPrdInStockService,
|
|
|
- ErpStockService erpStockService,
|
|
|
- ErpStockLocService erpStockLocService,
|
|
|
- KingdeeErpProperties erpProperties) {
|
|
|
- this.erpTransferDirectService = erpTransferDirectService;
|
|
|
- this.erpTransferDirectSaveService = erpTransferDirectSaveService;
|
|
|
- this.erpProductionOrderService = erpProductionOrderService;
|
|
|
- this.erpPrdInStockService = erpPrdInStockService;
|
|
|
- this.erpStockService = erpStockService;
|
|
|
- this.erpStockLocService = erpStockLocService;
|
|
|
- this.erpProperties = erpProperties;
|
|
|
- }
|
|
|
-
|
|
|
- @RequiresPermissions("mes:erpTransferDirect:view")
|
|
|
- @RequestMapping(value = {"list", ""})
|
|
|
- public String list(ErpTransferDirect erpTransferDirect, Model model) {
|
|
|
- model.addAttribute("erpTransferDirect", erpTransferDirect);
|
|
|
- return "modules/mes/erpTransferDirectList";
|
|
|
- }
|
|
|
-
|
|
|
- @RequiresPermissions("mes:erpTransferDirect:view")
|
|
|
- @RequestMapping(value = "listData")
|
|
|
- @ResponseBody
|
|
|
- public Page<ErpTransferDirect> listData(ErpTransferDirect erpTransferDirect,
|
|
|
- HttpServletRequest request, HttpServletResponse response) {
|
|
|
- Page<ErpTransferDirect> page = new Page<>(request, response);
|
|
|
- int pageSize = page.getPageSize() > 0 ? page.getPageSize() : 20;
|
|
|
- int pageNo = page.getPageNo() > 0 ? page.getPageNo() : 1;
|
|
|
- int startRow = (pageNo - 1) * pageSize;
|
|
|
- List<ErpTransferDirect> list = erpTransferDirectService.findPageList(erpTransferDirect, startRow, pageSize);
|
|
|
- page.setList(list);
|
|
|
- page.setCount(startRow + list.size() + (list.size() == pageSize ? 1 : 0));
|
|
|
- return page;
|
|
|
- }
|
|
|
-
|
|
|
- @RequiresPermissions("mes:erpTransferDirect:view")
|
|
|
- @RequestMapping(value = "detail")
|
|
|
- public String detail(ErpTransferDirect erpTransferDirect, Model model) {
|
|
|
- model.addAttribute("erpTransferDirect", erpTransferDirect);
|
|
|
- return "modules/mes/erpTransferDirectDetail";
|
|
|
- }
|
|
|
-
|
|
|
- @RequiresPermissions("mes:erpTransferDirect:view")
|
|
|
- @RequestMapping(value = "detailData")
|
|
|
- @ResponseBody
|
|
|
- public Page<ErpTransferDirect> detailData(ErpTransferDirect erpTransferDirect,
|
|
|
- HttpServletRequest request, HttpServletResponse response) {
|
|
|
- Page<ErpTransferDirect> page = new Page<>(request, response);
|
|
|
- List<ErpTransferDirect> list = erpTransferDirectService.findDetailList(erpTransferDirect.getBillNo());
|
|
|
- page.setList(list);
|
|
|
- page.setCount(list.size());
|
|
|
- return page;
|
|
|
- }
|
|
|
-
|
|
|
- @RequiresPermissions("mes:erpTransferDirect:view")
|
|
|
- @RequestMapping(value = "selectOrder")
|
|
|
- public String selectOrder(ErpProductionOrder erpProductionOrder, Model model) {
|
|
|
- model.addAttribute("erpProductionOrder", erpProductionOrder);
|
|
|
- return "modules/mes/erpTransferDirectSelectOrder";
|
|
|
- }
|
|
|
-
|
|
|
- @RequiresPermissions("mes:erpTransferDirect:view")
|
|
|
- @RequestMapping(value = "selectOrderData")
|
|
|
- @ResponseBody
|
|
|
- public Page<ErpProductionOrder> selectOrderData(ErpProductionOrder erpProductionOrder,
|
|
|
- HttpServletRequest request, HttpServletResponse response) {
|
|
|
- Page<ErpProductionOrder> page = new Page<>(request, response);
|
|
|
- int pageSize = page.getPageSize() > 0 ? page.getPageSize() : 20;
|
|
|
- int pageNo = page.getPageNo() > 0 ? page.getPageNo() : 1;
|
|
|
- int startRow = (pageNo - 1) * pageSize;
|
|
|
- List<ErpProductionOrder> list = erpProductionOrderService.findPageList(
|
|
|
- erpProductionOrder.getBillNo(), startRow, pageSize);
|
|
|
- page.setList(list);
|
|
|
- page.setCount(startRow + list.size() + (list.size() == pageSize ? 1 : 0));
|
|
|
- return page;
|
|
|
- }
|
|
|
-
|
|
|
- @RequiresPermissions("mes:erpTransferDirect:view")
|
|
|
- @RequestMapping(value = "form")
|
|
|
- public String form(String moBillNo, Model model) {
|
|
|
- String billNo = StringUtils.trim(moBillNo);
|
|
|
- List<ErpPrdInStock> sourceList = erpPrdInStockService.findTransferSourceByMoBillNo(billNo);
|
|
|
- List<ErpStockOption> stockList = erpStockService.findUsableStockList();
|
|
|
- model.addAttribute("moBillNo", billNo);
|
|
|
- model.addAttribute("sourceList", sourceList);
|
|
|
- model.addAttribute("stockList", stockList);
|
|
|
- model.addAttribute("defaultSrcStockNumber", erpStockService.resolveDefaultStockNumber(stockList));
|
|
|
- model.addAttribute("defaultDestStockNumber", StringUtils.trim(erpProperties.getTransferDirectDefaultDestStockNumber()));
|
|
|
- if (sourceList.isEmpty()) {
|
|
|
- model.addAttribute("message", "该生产订单暂无 HEV/115 生产入库行,请先完成生产入库");
|
|
|
- }
|
|
|
- return "modules/mes/erpTransferDirectForm";
|
|
|
- }
|
|
|
-
|
|
|
- @RequiresPermissions("mes:erpTransferDirect:view")
|
|
|
- @RequestMapping(value = "instockSourceData")
|
|
|
- @ResponseBody
|
|
|
- public Page<ErpPrdInStock> instockSourceData(String moBillNo,
|
|
|
- HttpServletRequest request, HttpServletResponse response) {
|
|
|
- Page<ErpPrdInStock> page = new Page<>(request, response);
|
|
|
- List<ErpPrdInStock> list = erpPrdInStockService.findTransferSourceByMoBillNo(moBillNo);
|
|
|
- page.setList(list);
|
|
|
- page.setCount(list.size());
|
|
|
- return page;
|
|
|
- }
|
|
|
-
|
|
|
- @RequiresPermissions("mes:erpTransferDirect:view")
|
|
|
- @GetMapping(value = "stockLocOptions")
|
|
|
- @ResponseBody
|
|
|
- public Map<String, Object> stockLocOptions(String stockNumber) {
|
|
|
- List<ErpStockLocOption> locations = erpStockLocService.findLocationsByStock(stockNumber);
|
|
|
- Map<String, Object> result = new HashMap<>(4);
|
|
|
- boolean required = !locations.isEmpty();
|
|
|
- result.put("required", required);
|
|
|
- result.put("locations", locations);
|
|
|
- result.put("defaultLocNumber", erpStockLocService.resolveDefaultLocNumber(stockNumber, locations));
|
|
|
- if (locations.isEmpty()) {
|
|
|
- result.put("locHint", "该仓库未启用仓位或未配置仓位值集");
|
|
|
- } else {
|
|
|
- result.put("locHint", "共 " + locations.size() + " 个仓位");
|
|
|
- }
|
|
|
- return result;
|
|
|
- }
|
|
|
-
|
|
|
- @RequiresPermissions("mes:erpTransferDirect:view")
|
|
|
- @PostMapping(value = "submit")
|
|
|
- @ResponseBody
|
|
|
- public String submit(@RequestBody ErpTransferDirectSubmitRequest request) {
|
|
|
- ErpTransferDirectResult result = erpTransferDirectSaveService.submit(request);
|
|
|
- if (result.isSuccess()) {
|
|
|
- return renderResult(Global.TRUE, text("直接调拨单保存成功,单号:{0}", result.getBillNo()));
|
|
|
- }
|
|
|
- return renderResult(Global.FALSE, result.getMessage());
|
|
|
- }
|
|
|
-}
|
|
|
+package com.jeesite.modules.mes.web;
|
|
|
+
|
|
|
+import com.jeesite.common.config.Global;
|
|
|
+import com.jeesite.common.entity.Page;
|
|
|
+import com.jeesite.common.lang.StringUtils;
|
|
|
+import com.jeesite.common.web.BaseController;
|
|
|
+import com.jeesite.modules.mes.erp.ErpPrdInStock;
|
|
|
+import com.jeesite.modules.mes.erp.ErpPrdInStockService;
|
|
|
+import com.jeesite.modules.mes.erp.ErpProductionOrder;
|
|
|
+import com.jeesite.modules.mes.erp.ErpProductionOrderService;
|
|
|
+import com.jeesite.modules.mes.erp.ErpStockLocOption;
|
|
|
+import com.jeesite.modules.mes.erp.ErpStockLocService;
|
|
|
+import com.jeesite.modules.mes.erp.ErpStockOption;
|
|
|
+import com.jeesite.modules.mes.erp.ErpStockService;
|
|
|
+import com.jeesite.modules.mes.erp.ErpTransferDirect;
|
|
|
+import com.jeesite.modules.mes.erp.ErpTransferDirectResult;
|
|
|
+import com.jeesite.modules.mes.erp.ErpTransferDirectSaveService;
|
|
|
+import com.jeesite.modules.mes.erp.ErpTransferDirectService;
|
|
|
+import com.jeesite.modules.mes.erp.ErpTransferDirectSubmitRequest;
|
|
|
+import com.jeesite.modules.mes.erp.KingdeeErpProperties;
|
|
|
+import org.apache.shiro.authz.annotation.RequiresPermissions;
|
|
|
+import org.springframework.stereotype.Controller;
|
|
|
+import org.springframework.ui.Model;
|
|
|
+import org.springframework.web.bind.annotation.GetMapping;
|
|
|
+import org.springframework.web.bind.annotation.PostMapping;
|
|
|
+import org.springframework.web.bind.annotation.RequestBody;
|
|
|
+import org.springframework.web.bind.annotation.RequestMapping;
|
|
|
+import org.springframework.web.bind.annotation.ResponseBody;
|
|
|
+
|
|
|
+import javax.servlet.http.HttpServletRequest;
|
|
|
+import javax.servlet.http.HttpServletResponse;
|
|
|
+import java.util.ArrayList;
|
|
|
+import java.util.Collections;
|
|
|
+import java.util.HashMap;
|
|
|
+import java.util.List;
|
|
|
+import java.util.Map;
|
|
|
+
|
|
|
+/**
|
|
|
+ * ERP 直接调拨单查询与新增。
|
|
|
+ */
|
|
|
+@Controller
|
|
|
+@RequestMapping(value = "${adminPath}/mes/erpTransferDirect")
|
|
|
+public class ErpTransferDirectController extends BaseController {
|
|
|
+
|
|
|
+ private final ErpTransferDirectService erpTransferDirectService;
|
|
|
+ private final ErpTransferDirectSaveService erpTransferDirectSaveService;
|
|
|
+ private final ErpProductionOrderService erpProductionOrderService;
|
|
|
+ private final ErpPrdInStockService erpPrdInStockService;
|
|
|
+ private final ErpStockService erpStockService;
|
|
|
+ private final ErpStockLocService erpStockLocService;
|
|
|
+ private final KingdeeErpProperties erpProperties;
|
|
|
+
|
|
|
+ public ErpTransferDirectController(ErpTransferDirectService erpTransferDirectService,
|
|
|
+ ErpTransferDirectSaveService erpTransferDirectSaveService,
|
|
|
+ ErpProductionOrderService erpProductionOrderService,
|
|
|
+ ErpPrdInStockService erpPrdInStockService,
|
|
|
+ ErpStockService erpStockService,
|
|
|
+ ErpStockLocService erpStockLocService,
|
|
|
+ KingdeeErpProperties erpProperties) {
|
|
|
+ this.erpTransferDirectService = erpTransferDirectService;
|
|
|
+ this.erpTransferDirectSaveService = erpTransferDirectSaveService;
|
|
|
+ this.erpProductionOrderService = erpProductionOrderService;
|
|
|
+ this.erpPrdInStockService = erpPrdInStockService;
|
|
|
+ this.erpStockService = erpStockService;
|
|
|
+ this.erpStockLocService = erpStockLocService;
|
|
|
+ this.erpProperties = erpProperties;
|
|
|
+ }
|
|
|
+
|
|
|
+ @RequiresPermissions("mes:erpTransferDirect:view")
|
|
|
+ @RequestMapping(value = {"list", ""})
|
|
|
+ public String list(ErpTransferDirect erpTransferDirect, Model model) {
|
|
|
+ model.addAttribute("erpTransferDirect", erpTransferDirect);
|
|
|
+ return "modules/mes/erpTransferDirectList";
|
|
|
+ }
|
|
|
+
|
|
|
+ @RequiresPermissions("mes:erpTransferDirect:view")
|
|
|
+ @RequestMapping(value = "listData")
|
|
|
+ @ResponseBody
|
|
|
+ public Page<ErpTransferDirect> listData(ErpTransferDirect erpTransferDirect,
|
|
|
+ HttpServletRequest request, HttpServletResponse response) {
|
|
|
+ Page<ErpTransferDirect> page = new Page<>(request, response);
|
|
|
+ int pageSize = page.getPageSize() > 0 ? page.getPageSize() : 20;
|
|
|
+ int pageNo = page.getPageNo() > 0 ? page.getPageNo() : 1;
|
|
|
+ int startRow = (pageNo - 1) * pageSize;
|
|
|
+ List<ErpTransferDirect> list = erpTransferDirectService.findPageList(erpTransferDirect, startRow, pageSize);
|
|
|
+ page.setList(list);
|
|
|
+ page.setCount(startRow + list.size() + (list.size() == pageSize ? 1 : 0));
|
|
|
+ return page;
|
|
|
+ }
|
|
|
+
|
|
|
+ @RequiresPermissions("mes:erpTransferDirect:view")
|
|
|
+ @RequestMapping(value = "detail")
|
|
|
+ public String detail(ErpTransferDirect erpTransferDirect, Model model) {
|
|
|
+ model.addAttribute("erpTransferDirect", erpTransferDirect);
|
|
|
+ return "modules/mes/erpTransferDirectDetail";
|
|
|
+ }
|
|
|
+
|
|
|
+ @RequiresPermissions("mes:erpTransferDirect:view")
|
|
|
+ @RequestMapping(value = "detailData")
|
|
|
+ @ResponseBody
|
|
|
+ public Page<ErpTransferDirect> detailData(ErpTransferDirect erpTransferDirect,
|
|
|
+ HttpServletRequest request, HttpServletResponse response) {
|
|
|
+ Page<ErpTransferDirect> page = new Page<>(request, response);
|
|
|
+ List<ErpTransferDirect> list = erpTransferDirectService.findDetailList(erpTransferDirect.getBillNo());
|
|
|
+ page.setList(list);
|
|
|
+ page.setCount(list.size());
|
|
|
+ return page;
|
|
|
+ }
|
|
|
+
|
|
|
+ @RequiresPermissions("mes:erpTransferDirect:view")
|
|
|
+ @RequestMapping(value = "selectOrder")
|
|
|
+ public String selectOrder(ErpProductionOrder erpProductionOrder, Model model) {
|
|
|
+ model.addAttribute("erpProductionOrder", erpProductionOrder);
|
|
|
+ return "modules/mes/erpTransferDirectSelectOrder";
|
|
|
+ }
|
|
|
+
|
|
|
+ @RequiresPermissions("mes:erpTransferDirect:view")
|
|
|
+ @RequestMapping(value = "selectOrderData")
|
|
|
+ @ResponseBody
|
|
|
+ public Page<ErpProductionOrder> selectOrderData(ErpProductionOrder erpProductionOrder,
|
|
|
+ HttpServletRequest request, HttpServletResponse response) {
|
|
|
+ Page<ErpProductionOrder> page = new Page<>(request, response);
|
|
|
+ int pageSize = page.getPageSize() > 0 ? page.getPageSize() : 20;
|
|
|
+ int pageNo = page.getPageNo() > 0 ? page.getPageNo() : 1;
|
|
|
+ int startRow = (pageNo - 1) * pageSize;
|
|
|
+ // 与生产入库一致:仅展示配置 HEV/115 物料(.10)的生产订单
|
|
|
+ List<ErpProductionOrder> list = erpProductionOrderService.findPrdInStockOrderPageList(
|
|
|
+ erpProductionOrder.getBillNo(), startRow, pageSize);
|
|
|
+ page.setList(list);
|
|
|
+ page.setCount(startRow + list.size() + (list.size() == pageSize ? 1 : 0));
|
|
|
+ return page;
|
|
|
+ }
|
|
|
+
|
|
|
+ @RequiresPermissions("mes:erpTransferDirect:view")
|
|
|
+ @RequestMapping(value = "form")
|
|
|
+ public String form(String moBillNo, Model model) {
|
|
|
+ String billNo = StringUtils.trim(moBillNo);
|
|
|
+ List<ErpPrdInStock> sourceList = erpPrdInStockService.findTransferSourceByMoBillNo(billNo);
|
|
|
+ List<ErpStockOption> stockList = erpStockService.findUsableStockList();
|
|
|
+ model.addAttribute("moBillNo", billNo);
|
|
|
+ model.addAttribute("sourceList", sourceList);
|
|
|
+ model.addAttribute("stockList", stockList);
|
|
|
+ model.addAttribute("defaultSrcStockNumber", erpStockService.resolveDefaultStockNumber(stockList));
|
|
|
+ model.addAttribute("defaultDestStockNumber", StringUtils.trim(erpProperties.getTransferDirectDefaultDestStockNumber()));
|
|
|
+ if (sourceList.isEmpty()) {
|
|
|
+ model.addAttribute("message", "该生产订单暂无 HEV/115 生产入库行,请先完成生产入库");
|
|
|
+ }
|
|
|
+ return "modules/mes/erpTransferDirectForm";
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * PDA/前端:入库仓库列表。
|
|
|
+ */
|
|
|
+ @RequiresPermissions("mes:erpTransferDirect:view")
|
|
|
+ @GetMapping(value = "stockList")
|
|
|
+ @ResponseBody
|
|
|
+ public Map<String, Object> stockList() {
|
|
|
+ List<ErpStockOption> stocks = erpStockService.findUsableStockList();
|
|
|
+ Map<String, Object> result = new HashMap<>(4);
|
|
|
+ result.put("stockList", stocks);
|
|
|
+ result.put("defaultStockNumber", erpStockService.resolveDefaultStockNumber(stocks));
|
|
|
+ result.put("defaultDestStockNumber", StringUtils.trim(erpProperties.getTransferDirectDefaultDestStockNumber()));
|
|
|
+ result.put("stockHint", stocks.isEmpty() ? "未能从 ERP 加载仓库列表" : "共 " + stocks.size() + " 个可用仓库");
|
|
|
+ return result;
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * PDA/前端:新增调拨页初始化(生产入库源行 + 仓库)。
|
|
|
+ */
|
|
|
+ @RequiresPermissions("mes:erpTransferDirect:view")
|
|
|
+ @GetMapping(value = "formInit")
|
|
|
+ @ResponseBody
|
|
|
+ public Map<String, Object> formInit(String moBillNo) {
|
|
|
+ Map<String, Object> result = new HashMap<>(10);
|
|
|
+ String billNo = StringUtils.trim(moBillNo);
|
|
|
+ result.put("moBillNo", billNo);
|
|
|
+ if (StringUtils.isBlank(billNo)) {
|
|
|
+ result.put("result", Global.FALSE);
|
|
|
+ result.put("message", "生产订单号不能为空");
|
|
|
+ result.put("sourceList", Collections.emptyList());
|
|
|
+ return result;
|
|
|
+ }
|
|
|
+ List<ErpPrdInStock> sourceList = erpPrdInStockService.findTransferSourceByMoBillNo(billNo);
|
|
|
+ result.put("result", Global.TRUE);
|
|
|
+ result.put("sourceList", sourceList);
|
|
|
+ if (sourceList.isEmpty()) {
|
|
|
+ result.put("message", "该生产订单暂无 HEV/115 生产入库行,请先完成生产入库");
|
|
|
+ } else {
|
|
|
+ result.put("message", "");
|
|
|
+ }
|
|
|
+ List<ErpStockOption> stocks = erpStockService.findUsableStockList();
|
|
|
+ result.put("stockList", stocks);
|
|
|
+ result.put("defaultSrcStockNumber", erpStockService.resolveDefaultStockNumber(stocks));
|
|
|
+ result.put("defaultDestStockNumber", StringUtils.trim(erpProperties.getTransferDirectDefaultDestStockNumber()));
|
|
|
+ return result;
|
|
|
+ }
|
|
|
+
|
|
|
+ @RequiresPermissions("mes:erpTransferDirect:view")
|
|
|
+ @RequestMapping(value = "instockSourceData")
|
|
|
+ @ResponseBody
|
|
|
+ public Page<ErpPrdInStock> instockSourceData(String moBillNo,
|
|
|
+ HttpServletRequest request, HttpServletResponse response) {
|
|
|
+ Page<ErpPrdInStock> page = new Page<>(request, response);
|
|
|
+ List<ErpPrdInStock> list = erpPrdInStockService.findTransferSourceByMoBillNo(moBillNo);
|
|
|
+ page.setList(list);
|
|
|
+ page.setCount(list.size());
|
|
|
+ return page;
|
|
|
+ }
|
|
|
+
|
|
|
+ @RequiresPermissions("mes:erpTransferDirect:view")
|
|
|
+ @GetMapping(value = "stockLocOptions")
|
|
|
+ @ResponseBody
|
|
|
+ public Map<String, Object> stockLocOptions(String stockNumber) {
|
|
|
+ List<ErpStockLocOption> locations = erpStockLocService.findLocationsByStock(stockNumber);
|
|
|
+ Map<String, Object> result = new HashMap<>(4);
|
|
|
+ boolean required = !locations.isEmpty();
|
|
|
+ result.put("required", required);
|
|
|
+ result.put("locations", locations);
|
|
|
+ result.put("defaultLocNumber", erpStockLocService.resolveDefaultLocNumber(stockNumber, locations));
|
|
|
+ if (locations.isEmpty()) {
|
|
|
+ result.put("locHint", "该仓库未启用仓位或未配置仓位值集");
|
|
|
+ } else {
|
|
|
+ result.put("locHint", "共 " + locations.size() + " 个仓位");
|
|
|
+ }
|
|
|
+ return result;
|
|
|
+ }
|
|
|
+
|
|
|
+ @RequiresPermissions("mes:erpTransferDirect:view")
|
|
|
+ @PostMapping(value = "submit")
|
|
|
+ @ResponseBody
|
|
|
+ public String submit(@RequestBody ErpTransferDirectSubmitRequest request) {
|
|
|
+ ErpTransferDirectResult result = erpTransferDirectSaveService.submit(request);
|
|
|
+ if (result.isSuccess()) {
|
|
|
+ return renderResult(Global.TRUE, text("直接调拨单保存成功,单号:{0}", result.getBillNo()));
|
|
|
+ }
|
|
|
+ return renderResult(Global.FALSE, result.getMessage());
|
|
|
+ }
|
|
|
+}
|