diff --git a/ruoyi-admin/src/main/java/com/ruoyi/busi/controller/BusiProductRequireController.java b/ruoyi-admin/src/main/java/com/ruoyi/busi/controller/BusiProductRequireController.java index 99fcb31c3..bc597c953 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/busi/controller/BusiProductRequireController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/busi/controller/BusiProductRequireController.java @@ -1,18 +1,13 @@ package com.ruoyi.busi.controller; -import java.util.Collections; import java.util.List; +import java.util.Map; -import org.apache.commons.collections4.ListUtils; import org.apache.shiro.authz.annotation.RequiresPermissions; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.ui.ModelMap; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.*; import com.ruoyi.common.annotation.Log; import com.ruoyi.common.enums.BusinessType; import com.ruoyi.busi.domain.BusiProductRequire; @@ -135,4 +130,16 @@ public class BusiProductRequireController extends BaseController { return toAjax(busiProductRequireService.deleteBusiProductRequireByIds(ids)); } + + + /** + * 通过订单ID查询产品需求列表 + */ + @PostMapping("/listByOrderId") + @ResponseBody + public AjaxResult list(@RequestParam(name = "orderId",required = false) String orderId) + { + List> list = busiProductRequireService.selectMaterialRequireByOrderId(orderId); + return success(list); + } } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/busi/mapper/BusiProductRequireMapper.java b/ruoyi-admin/src/main/java/com/ruoyi/busi/mapper/BusiProductRequireMapper.java index 2e90535d4..fe32b1312 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/busi/mapper/BusiProductRequireMapper.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/busi/mapper/BusiProductRequireMapper.java @@ -1,6 +1,8 @@ package com.ruoyi.busi.mapper; import java.util.List; +import java.util.Map; + import com.ruoyi.busi.domain.BusiProductRequire; import com.ruoyi.busi.domain.BusiMaterialRequire; @@ -84,4 +86,12 @@ public interface BusiProductRequireMapper * @return 结果 */ public int deleteBusiMaterialRequireByProductRequireId(String id); + + /** + * 通过订单ID查询物料需求列表 + * + * @param orderId 订单ID + * @return 结果 + */ + List> selectMaterialRequireByOrderId(String orderId); } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/busi/service/IBusiProductRequireService.java b/ruoyi-admin/src/main/java/com/ruoyi/busi/service/IBusiProductRequireService.java index c2525f9d3..70417d0dc 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/busi/service/IBusiProductRequireService.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/busi/service/IBusiProductRequireService.java @@ -1,6 +1,8 @@ package com.ruoyi.busi.service; import java.util.List; +import java.util.Map; + import com.ruoyi.busi.domain.BusiProductRequire; /** @@ -58,4 +60,12 @@ public interface IBusiProductRequireService * @return 结果 */ public int deleteBusiProductRequireById(String id); + + /** + * 按订单查询物料需求 + * + * @param id 产品需求主键 + * @return 结果 + */ + public List> selectMaterialRequireByOrderId(String orderId); } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/busi/service/impl/BusiProductRequireServiceImpl.java b/ruoyi-admin/src/main/java/com/ruoyi/busi/service/impl/BusiProductRequireServiceImpl.java index 05aebecc9..d3e3af5cb 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/busi/service/impl/BusiProductRequireServiceImpl.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/busi/service/impl/BusiProductRequireServiceImpl.java @@ -5,6 +5,8 @@ import com.ruoyi.common.utils.DateUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.ArrayList; +import java.util.Map; + import com.ruoyi.common.utils.StringUtils; import org.springframework.transaction.annotation.Transactional; import com.ruoyi.busi.domain.BusiMaterialRequire; @@ -108,6 +110,11 @@ public class BusiProductRequireServiceImpl implements IBusiProductRequireService return busiProductRequireMapper.deleteBusiProductRequireById(id); } + @Override + public List> selectMaterialRequireByOrderId(String orderId) { + return busiProductRequireMapper.selectMaterialRequireByOrderId(orderId); + } + /** * 新增物料需求信息 * diff --git a/ruoyi-admin/src/main/resources/mapper/busi/BusiProductRequireMapper.xml b/ruoyi-admin/src/main/resources/mapper/busi/BusiProductRequireMapper.xml index c9673b861..e98aa07b5 100644 --- a/ruoyi-admin/src/main/resources/mapper/busi/BusiProductRequireMapper.xml +++ b/ruoyi-admin/src/main/resources/mapper/busi/BusiProductRequireMapper.xml @@ -130,4 +130,15 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + + \ No newline at end of file diff --git a/ruoyi-admin/src/main/resources/templates/busi/materialperate/add.html b/ruoyi-admin/src/main/resources/templates/busi/materialperate/add.html index a266a63de..46e765c8d 100644 --- a/ruoyi-admin/src/main/resources/templates/busi/materialperate/add.html +++ b/ruoyi-admin/src/main/resources/templates/busi/materialperate/add.html @@ -1,7 +1,7 @@ - +
@@ -14,16 +14,19 @@
- +
- +
+
-
+
+
@@ -50,6 +53,10 @@ focusCleanup: true }); + $("#post").change(function(){ + $("#requireAmount").empty().append($("#post :selected").attr("requireAmount")); + }) + function submitHandler() { if ($.validate.form()) { $.operate.save(prefix + "/add", $('#form-materialperate-add').serialize()); @@ -60,18 +67,41 @@ function selectOrder(status) { var options = { title: '选择订单', - width: "380", - height: "400", + width: "480", + height: "500", url: ctx + "busi/order/selectOrder/" + status, callBack: function(index, layero){ var body = $.modal.getChildFrame(index); $("#treeId").val(body.find('#treeId').val()); $("#treeName").val(body.find('#treeName').val()); $.modal.close(index); + queryMetarial(body.find('#treeId').val()); } }; $.modal.openOptions(options); } + + /*物料查询*/ + function queryMetarial(orderId) { + var url = ctx + "busi/productRequire/listByOrderId?orderId=" + orderId; + $.modal.loading("正在查询中,请稍候..."); + $.post(url, {}, function (result) { + var data = result.data; + $("#post").empty(); + $("#post").append(""); + if (result.code == web_status.SUCCESS) { + for (var i = 0; i < data.length; i++) { + var val = data[i].colorCode + ';' + data[i].classifyCode; + var text = data[i].colorVal + ',' + data[i].classifyVal; + var requireAmount = data[i].amount + data[i].unitVal; + $("#post").append(""); + } + } else { + $.modal.alertError(result.msg); + } + $.modal.closeLoading(); + }); + } \ No newline at end of file diff --git a/sql/tmp.sql b/sql/tmp.sql index f63198e7c..ec4ad4cd4 100644 --- a/sql/tmp.sql +++ b/sql/tmp.sql @@ -146,10 +146,3 @@ values('物料操作流水删除', @parentId, '4', '#', 'F', '0', 'busi:materi insert into sys_menu (menu_name, parent_id, order_num, url, menu_type, visible, perms, icon, create_by, create_time, update_by, update_time, remark) values('物料操作流水导出', @parentId, '5', '#', 'F', '0', 'busi:materialperate:export', '#', 'admin', sysdate(), '', null, ''); - -select max(A.classify),max(sdd.dict_label),max(sdd2.dict_label),max(A.color), sum(A.amount) from busi_material_require A - left join busi_product_require B on A.product_require_id = B.id - left join busi_order bo on B.order_id = bo.id - left join sys_dict_data sdd on sdd.dict_type='busi_color' and A.color = sdd.dict_value - left join sys_dict_data sdd2 on sdd2.dict_type='busi_material_type' and A.classify = sdd2.dict_value -where order_id = 1 group by (A.color + A.classify) \ No newline at end of file