From 00933e4241210aa5b1e74755f39f15307c837bef Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AD=A3=E5=9C=A3=E5=8D=8E?= <752718920@qq.com> Date: Wed, 26 Dec 2018 23:36:02 +0800 Subject: [PATCH] =?UTF-8?q?=E8=A7=A3=E5=86=B3=E5=95=86=E5=93=81=E4=B8=8D?= =?UTF-8?q?=E8=83=BD=E5=BD=95=E5=85=A5=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- erp_web/pages/materials/material.html | 11 ++++---- .../erp/controller/MaterialController.java | 2 +- .../datasource/mappers/MaterialMapper.java | 3 +++ .../erp/service/material/MaterialService.java | 25 +++++++++++++------ .../resources/mapper_xml/MaterialMapperEx.xml | 17 +++++++++++++ 5 files changed, 44 insertions(+), 14 deletions(-) diff --git a/erp_web/pages/materials/material.html b/erp_web/pages/materials/material.html index 5b4cbacf..9f78ccfb 100644 --- a/erp_web/pages/materials/material.html +++ b/erp_web/pages/materials/material.html @@ -349,7 +349,7 @@ for (var i = 0; i < materialCategoryList.length; i++) { var materialCategory = materialCategoryList[i]; if (0 == i) { - materialID = materialCategory.id; + mcId = materialCategory.id; } options += ''; if (lei == "search_second" || lei == "type_second" || lei == "search_three") { @@ -1276,7 +1276,8 @@ priceStrategy.push(basic); priceStrategy.push(other); - var objInfo = JSON.stringify($("#materialFM").serializeObject()); + var objInfo = $("#materialFM").serializeObject(); + objInfo.UnitId = $("#manyUnit").val(); objInfo.CategoryId = parent; objInfo.PriceStrategy = JSON.stringify(priceStrategy); //价格列表 $.ajax({ @@ -1285,7 +1286,7 @@ dataType: "json", async: false, data: ({ - info: objInfo + info: JSON.stringify(objInfo) }), success: function(res) { if(res && res.code === 200) { @@ -1384,8 +1385,8 @@ $("#Unit").val(materialInfo[4] == "undefined" ? "" : materialInfo[4]); $("#RetailPrice").val(materialInfo[5] == "undefined" ? "" : materialInfo[5]); $("#LowPrice").val(materialInfo[6] == "undefined" ? "" : materialInfo[6]); - $("#PresetPriceOne").val(materialInfo[7]); - $("#PresetPriceTwo").val(materialInfo[8]); + $("#PresetPriceOne").val(materialInfo[7] == "undefined" ? "" : materialInfo[7]); + $("#PresetPriceTwo").val(materialInfo[8] == "undefined" ? "" : materialInfo[8]); $("#Remark").val(materialInfo[9]); $("#manyUnit").val(materialInfo[16]); if (materialInfo[16] != "undefined") { diff --git a/src/main/java/com/jsh/erp/controller/MaterialController.java b/src/main/java/com/jsh/erp/controller/MaterialController.java index f38b1535..f3e52ca3 100644 --- a/src/main/java/com/jsh/erp/controller/MaterialController.java +++ b/src/main/java/com/jsh/erp/controller/MaterialController.java @@ -31,7 +31,7 @@ public class MaterialController { private MaterialService materialService; @GetMapping(value = "/checkIsExist") - public String checkIsExist(@RequestParam("materialId") Long id, @RequestParam("name") String name, + public String checkIsExist(@RequestParam("id") Long id, @RequestParam("name") String name, @RequestParam("model") String model, @RequestParam("color") String color, @RequestParam("standard") String standard, @RequestParam("mfrs") String mfrs, @RequestParam("otherField1") String otherField1, @RequestParam("otherField2") String otherField2, diff --git a/src/main/java/com/jsh/erp/datasource/mappers/MaterialMapper.java b/src/main/java/com/jsh/erp/datasource/mappers/MaterialMapper.java index cb15fc74..d89547c8 100644 --- a/src/main/java/com/jsh/erp/datasource/mappers/MaterialMapper.java +++ b/src/main/java/com/jsh/erp/datasource/mappers/MaterialMapper.java @@ -118,4 +118,7 @@ public interface MaterialMapper { List findBySelect(); + int updatePriceNullByPrimaryKey(Long id); + + int updateUnitIdNullByPrimaryKey(Long id); } \ No newline at end of file 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 85003dd8..fec66c9b 100644 --- a/src/main/java/com/jsh/erp/service/material/MaterialService.java +++ b/src/main/java/com/jsh/erp/service/material/MaterialService.java @@ -72,13 +72,21 @@ public class MaterialService { public int insertMaterial(String beanJson, HttpServletRequest request) { Material material = JSONObject.parseObject(beanJson, Material.class); + material.setEnabled(true); return materialMapper.insertSelective(material); } public int updateMaterial(String beanJson, Long id) { Material material = JSONObject.parseObject(beanJson, Material.class); material.setId(id); - return materialMapper.updateByPrimaryKeySelective(material); + int res = materialMapper.updateByPrimaryKeySelective(material); + Long unitId = material.getUnitid(); + if(unitId != null) { + materialMapper.updatePriceNullByPrimaryKey(id); //将价格置空 + } else { + materialMapper.updateUnitIdNullByPrimaryKey(id); //将多单位置空 + } + return res; } public int deleteMaterial(Long id) { @@ -102,17 +110,18 @@ public class MaterialService { public int checkIsExist(Long id, String name, String model, String color, String standard, String mfrs, String otherField1, String otherField2, String otherField3, String unit, Long unitId) { MaterialExample example = new MaterialExample(); + MaterialExample.Criteria criteria = example.createCriteria(); + criteria.andNameEqualTo(name).andModelEqualTo(model).andColorEqualTo(color) + .andStandardEqualTo(standard).andMfrsEqualTo(mfrs) + .andOtherfield1EqualTo(otherField1).andOtherfield2EqualTo(otherField2).andOtherfield2EqualTo(otherField3); if (id > 0) { - example.createCriteria().andIdNotEqualTo(id); + criteria.andIdNotEqualTo(id); } - example.createCriteria().andNameEqualTo(name).andModelEqualTo(model).andColorEqualTo(color) - .andStandardEqualTo(standard).andMfrsEqualTo(mfrs) - .andOtherfield1EqualTo(otherField1).andOtherfield2EqualTo(otherField2).andOtherfield2EqualTo(otherField3); - if (unit !=null) { - example.createCriteria().andUnitEqualTo(unit); + if (!StringUtil.isEmpty(unit)) { + criteria.andUnitEqualTo(unit); } if (unitId !=null) { - example.createCriteria().andUnitidEqualTo(unitId); + criteria.andUnitidEqualTo(unitId); } List list = materialMapper.selectByExample(example); return list.size(); diff --git a/src/main/resources/mapper_xml/MaterialMapperEx.xml b/src/main/resources/mapper_xml/MaterialMapperEx.xml index b564365b..0d33938d 100644 --- a/src/main/resources/mapper_xml/MaterialMapperEx.xml +++ b/src/main/resources/mapper_xml/MaterialMapperEx.xml @@ -60,4 +60,21 @@ + + + update jsh_material + set + RetailPrice = null, + LowPrice = null, + PresetPriceOne = null, + PresetPriceTwo = null + where Id = #{id,jdbcType=BIGINT} + + + + update jsh_material + set + UnitId = null + where Id = #{id,jdbcType=BIGINT} + \ No newline at end of file