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