From 927f75850b9bef761c00024d0cc2905c25fdd065 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AD=A3=E5=9C=A3=E5=8D=8E?= <752718920@qq.com> Date: Thu, 4 Jun 2020 00:08:07 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E5=95=86=E5=93=81=E6=9F=A5?= =?UTF-8?q?=E8=AF=A2=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- erp_web/pages/materials/material.html | 23 +++++++-- .../pages/reports/in_out_stock_report.html | 46 +++++++++++++++++ .../erp/controller/MaterialController.java | 50 ++++++++++++++++++- .../datasource/mappers/MaterialMapperEx.java | 7 +++ .../erp/service/material/MaterialService.java | 15 ++++-- .../resources/mapper_xml/MaterialMapperEx.xml | 28 +++++++++++ 6 files changed, 158 insertions(+), 11 deletions(-) diff --git a/erp_web/pages/materials/material.html b/erp_web/pages/materials/material.html index a15aa869..d3a4e7ca 100644 --- a/erp_web/pages/materials/material.html +++ b/erp_web/pages/materials/material.html @@ -43,7 +43,7 @@
- +
@@ -241,6 +241,7 @@ initMProperty(); manyUnitFun(); priceKeyUp();//价格触发事件 + initMaterialNameList(); initMPropertyShort(); //初始化商品属性 initTableData(); ininPager(); @@ -374,6 +375,20 @@ }); } + //初始化商品名称模糊匹配 + function initMaterialNameList() { + $('#searchName').combobox({ + method:"get", + url: "/material/getMaterialNameList", + valueField: 'value', + textField: 'text', + filter: function(q, row){ + var opts = $(this).combobox('options'); + return row[opts.textField].indexOf(q) >-1; + } + }); + } + //初始化商品属性 function initMPropertyShort() { $.ajax({ @@ -940,7 +955,7 @@ //导出数据 function setOutputFun() { - var name = $.trim($("#searchName").val()); + var name = $.trim($("#searchName").combobox("getValue")); var model = $.trim($("#searchModel").val()); window.location.href = "/material/exportExcel?browserType=" + getOs() + "&name=" + name + "&model=" + model + "&categoryIds=" + types; @@ -1415,7 +1430,7 @@ function showMaterialDetails(pageNo, pageSize) { var barCode = $.trim($("#searchBarCode").val()); - var name = $.trim($("#searchName").val()); + var name = $.trim($("#searchName").combobox("getValue")); var standard = $.trim($("#searchStandard").val()); var model = $.trim($("#searchModel").val()); $.ajax({ @@ -1455,7 +1470,7 @@ $("#searchBarCode").textbox("clear"); $("#searchParentName").textbox("clear"); $("#searchParentId").val(""); - $("#searchName").textbox("clear"); + $("#searchName").combobox("clear"); $("#searchStandard").textbox("clear"); $("#searchModel").textbox("clear"); types = ""; //清空类别 diff --git a/erp_web/pages/reports/in_out_stock_report.html b/erp_web/pages/reports/in_out_stock_report.html index a863d900..ef9f4a9b 100644 --- a/erp_web/pages/reports/in_out_stock_report.html +++ b/erp_web/pages/reports/in_out_stock_report.html @@ -28,6 +28,18 @@
+
+ +
+ +
+
+
+ +
+ +
+
@@ -60,6 +72,8 @@ initSelectInfo_UB(); initSystemData_depot(); initSelectInfo_depot(); + initMaterialNameList(); + initMaterialModelList(); initMProperty(); //初始化商品属性 initTableData(); ininPager(); @@ -153,6 +167,34 @@ } } + //初始化商品名称模糊匹配 + function initMaterialNameList() { + $('#mName').combobox({ + method:"get", + url: "/material/getMaterialNameList", + valueField: 'value', + textField: 'text', + filter: function(q, row){ + var opts = $(this).combobox('options'); + return row[opts.textField].indexOf(q) >-1; + } + }); + } + + //初始化商品型号模糊匹配 + function initMaterialModelList() { + $('#mModel').combobox({ + method:"get", + url: "/material/getMaterialModelList", + valueField: 'value', + textField: 'text', + filter: function(q, row){ + var opts = $(this).combobox('options'); + return row[opts.textField].indexOf(q) >-1; + } + }); + } + //初始化商品属性 function initMProperty() { $.ajax({ @@ -304,6 +346,10 @@ type: "get", url: "/material/findByOrder", dataType: "json", + data: ({ + name: $("#mName").combobox("getValue"), + model: $("#mModel").combobox("getValue") + }), success: function (res) { if(res && res.code === 200 && res.data) { var mIds = res.data.mIds; diff --git a/src/main/java/com/jsh/erp/controller/MaterialController.java b/src/main/java/com/jsh/erp/controller/MaterialController.java index b5657db7..63f3571a 100644 --- a/src/main/java/com/jsh/erp/controller/MaterialController.java +++ b/src/main/java/com/jsh/erp/controller/MaterialController.java @@ -215,11 +215,13 @@ public class MaterialController { * @return */ @GetMapping(value = "/findByOrder") - public BaseResponseInfo findByOrder(HttpServletRequest request)throws Exception { + public BaseResponseInfo findByOrder(@RequestParam("name") String name, + @RequestParam("model") String model, + HttpServletRequest request)throws Exception { BaseResponseInfo res = new BaseResponseInfo(); Map map = new HashMap(); try { - List dataList = materialService.findByOrder(); + List dataList = materialService.findByOrder(StringUtil.toNull(name), StringUtil.toNull(model)); String mId = ""; if (null != dataList) { for (Material material : dataList) { @@ -458,4 +460,48 @@ public class MaterialController { res.data = map; return res; } + + /** + * 商品名称模糊匹配 + * @return + * @throws Exception + */ + @GetMapping(value = "/getMaterialNameList") + public JSONArray getMaterialNameList() throws Exception { + JSONArray arr = new JSONArray(); + try { + List list = materialService.getMaterialNameList(); + for (String s : list) { + JSONObject item = new JSONObject(); + item.put("value", s); + item.put("text", s); + arr.add(item); + } + } catch (Exception e) { + e.printStackTrace(); + } + return arr; + } + + /** + * 商品型号模糊匹配 + * @return + * @throws Exception + */ + @GetMapping(value = "/getMaterialModelList") + public JSONArray getMaterialModelList() throws Exception { + JSONArray arr = new JSONArray(); + try { + List list = materialService.getMaterialModelList(); + for (String s : list) { + JSONObject item = new JSONObject(); + item.put("value", s); + item.put("text", s); + arr.add(item); + } + } catch (Exception e) { + e.printStackTrace(); + } + return arr; + } } diff --git a/src/main/java/com/jsh/erp/datasource/mappers/MaterialMapperEx.java b/src/main/java/com/jsh/erp/datasource/mappers/MaterialMapperEx.java index 081752bc..ea0f9b38 100644 --- a/src/main/java/com/jsh/erp/datasource/mappers/MaterialMapperEx.java +++ b/src/main/java/com/jsh/erp/datasource/mappers/MaterialMapperEx.java @@ -74,4 +74,11 @@ public interface MaterialMapperEx { List getMaterialByMeId( @Param("meId") Long meId); + + List getMaterialNameList(); + + List getMaterialModelList(); + + List findByOrder(@Param("name") String name, + @Param("model") String model); } diff --git a/src/main/java/com/jsh/erp/service/material/MaterialService.java b/src/main/java/com/jsh/erp/service/material/MaterialService.java index 78fc63e3..df8f38ca 100644 --- a/src/main/java/com/jsh/erp/service/material/MaterialService.java +++ b/src/main/java/com/jsh/erp/service/material/MaterialService.java @@ -327,13 +327,10 @@ public class MaterialService { return list; } - public List findByOrder()throws Exception{ - MaterialExample example = new MaterialExample(); - example.createCriteria().andDeleteFlagNotEqualTo(BusinessConstants.DELETE_FLAG_DELETED); - example.setOrderByClause("Name,Model asc"); + public List findByOrder(String name, String model)throws Exception{ List list =null; try{ - list= materialMapper.selectByExample(example); + list= materialMapperEx.findByOrder(name, model); }catch(Exception e){ JshException.readFail(logger, e); } @@ -729,4 +726,12 @@ public class MaterialService { String maxBarCodeOld = materialMapperEx.getMaxBarCode(); return Long.parseLong(maxBarCodeOld)+""; } + + public List getMaterialNameList() { + return materialMapperEx.getMaterialNameList(); + } + + public List getMaterialModelList() { + return materialMapperEx.getMaterialModelList(); + } } diff --git a/src/main/resources/mapper_xml/MaterialMapperEx.xml b/src/main/resources/mapper_xml/MaterialMapperEx.xml index e701c184..148b8c18 100644 --- a/src/main/resources/mapper_xml/MaterialMapperEx.xml +++ b/src/main/resources/mapper_xml/MaterialMapperEx.xml @@ -251,4 +251,32 @@ and ifnull(m.delete_Flag,'0') !='1' + + + + + + \ No newline at end of file