diff --git a/erp_web/pages/materials/material.html b/erp_web/pages/materials/material.html index fbf4cc6c..5b4cbacf 100644 --- a/erp_web/pages/materials/material.html +++ b/erp_web/pages/materials/material.html @@ -610,8 +610,8 @@ var str = ''; var rowInfo = rec.id + 'AaBb' + rec.name + 'AaBb' + rec.model + 'AaBb' + rec.color + 'AaBb' + rec.unit + 'AaBb' + rec.retailprice + 'AaBb' + rec.lowprice + 'AaBb' + rec.presetpriceone + 'AaBb' + rec.presetpricetwo + 'AaBb' + rec.remark + 'AaBb' + rec.standard - + 'AaBb' + rec.color + 'AaBb' + rec.packing + 'AaBb' + rec.safetystock + 'AaBb' + rec.categoryid + 'AaBb' + rec.categoryname - + 'AaBb' + rec.unitid + 'AaBb' + rec.unitname + 'AaBb' + rec.firstoutunit + 'AaBb' + rec.firstinunit + + 'AaBb' + rec.color + 'AaBb' + rec.packing + 'AaBb' + rec.safetystock + 'AaBb' + rec.categoryid + 'AaBb' + rec.categoryName + + 'AaBb' + rec.unitid + 'AaBb' + rec.unitName + 'AaBb' + rec.firstoutunit + 'AaBb' + rec.firstinunit + 'AaBb' + rec.mfrs + 'AaBb' + rec.otherfield1 + 'AaBb' + rec.otherfield2 + 'AaBb' + rec.otherfield3; str += '   '; str += ''; @@ -620,7 +620,7 @@ }, {title: '品名', field: 'name', width: 100}, {title: '型号', field: 'model', width: 80}, - {title: '扩展信息', field: 'materialother', width: 150}, + {title: '扩展信息', field: 'materialOther', width: 150}, {title: '单位', field: 'unit', width: 60}, {title: '安全存量', field: 'safetystock', width: 70}, { @@ -1071,9 +1071,9 @@ //表格模板变更 $(".tb-other-info").html(""); for (var i = 0; i < mPropertyList.length; i++) { - if (mPropertyList[i].nativeName === "颜色") { + if (mPropertyList[i].nativename === "颜色") { $(".tb-other-info").append(trColor); - $(".tr-color td").first().text(mPropertyList[i].anotherName); + $(".tr-color td").first().text(mPropertyList[i].anothername); if (mPropertyList[i].enabled) { $(".tr-color").show(); } @@ -1081,9 +1081,9 @@ $(".tr-color").hide(); } } - if (mPropertyList[i].nativeName === "规格") { + if (mPropertyList[i].nativename === "规格") { $(".tb-other-info").append(trStandard); - $(".tr-standard td").first().text(mPropertyList[i].anotherName); + $(".tr-standard td").first().text(mPropertyList[i].anothername); if (mPropertyList[i].enabled) { $(".tr-standard").show(); } @@ -1091,9 +1091,9 @@ $(".tr-standard").hide(); } } - if (mPropertyList[i].nativeName === "制造商") { + if (mPropertyList[i].nativename === "制造商") { $(".tb-other-info").append(trMfrs); - $(".tr-mfrs td").first().text(mPropertyList[i].anotherName); + $(".tr-mfrs td").first().text(mPropertyList[i].anothername); if (mPropertyList[i].enabled) { $(".tr-mfrs").show(); } @@ -1101,9 +1101,9 @@ $(".tr-mfrs").hide(); } } - if (mPropertyList[i].nativeName === "自定义1") { + if (mPropertyList[i].nativename === "自定义1") { $(".tb-other-info").append(trOtherField1); - $(".tr-otherField1 td").first().text(mPropertyList[i].anotherName); + $(".tr-otherField1 td").first().text(mPropertyList[i].anothername); if (mPropertyList[i].enabled) { $(".tr-otherField1").show(); } @@ -1111,9 +1111,9 @@ $(".tr-otherField1").hide(); } } - if (mPropertyList[i].nativeName === "自定义2") { + if (mPropertyList[i].nativename === "自定义2") { $(".tb-other-info").append(trOtherField2); - $(".tr-otherField2 td").first().text(mPropertyList[i].anotherName); + $(".tr-otherField2 td").first().text(mPropertyList[i].anothername); if (mPropertyList[i].enabled) { $(".tr-otherField2").show(); } @@ -1121,9 +1121,9 @@ $(".tr-otherField2").hide(); } } - if (mPropertyList[i].nativeName === "自定义3") { + if (mPropertyList[i].nativename === "自定义3") { $(".tb-other-info").append(trOtherField3); - $(".tr-otherField3 td").first().text(mPropertyList[i].anotherName); + $(".tr-otherField3 td").first().text(mPropertyList[i].anothername); if (mPropertyList[i].enabled) { $(".tr-otherField3").show(); } @@ -1373,7 +1373,7 @@ $("#mTypeName").text(categoryName).show(); //类型显示 $("#mTypeChange").show(); //按钮显示 $("#Packing").focus().val(materialInfo[12]); - $("#SafetyStock").focus().val(materialInfo[13]); + $("#SafetyStock").focus().val(materialInfo[13]=="undefined" ? "" : materialInfo[13]); $("#Model").val(materialInfo[2]); $("#Standard").val(materialInfo[10] == "undefined" ? "" : materialInfo[10]); $("#Color").val(materialInfo[3] == "undefined" ? "" : materialInfo[3]); @@ -1388,7 +1388,7 @@ $("#PresetPriceTwo").val(materialInfo[8]); $("#Remark").val(materialInfo[9]); $("#manyUnit").val(materialInfo[16]); - if (materialInfo[16]) { + if (materialInfo[16] != "undefined") { $("#manyUnitCheck").prop("checked", true); //当前为选中状态 $("#Unit").hide(); @@ -1430,8 +1430,9 @@ type: "get", dataType: "json", success: function (res) { - if (res && res.rows && res.rows[0]) { - var PriceStrategy = res.rows[0].PriceStrategy; + if (res && res.code === 200 && res.data && res.data[0]) { + var PriceStrategy = res.data[0].pricestrategy; + PriceStrategy = JSON.parse(PriceStrategy); if (PriceStrategy && PriceStrategy[0] && PriceStrategy[1]) { //基本单位 $("#basicUnit").text(PriceStrategy[0].basic.Unit); diff --git a/src/main/java/com/jsh/erp/controller/MaterialCategoryController.java b/src/main/java/com/jsh/erp/controller/MaterialCategoryController.java index c99ee6ee..e4f446aa 100644 --- a/src/main/java/com/jsh/erp/controller/MaterialCategoryController.java +++ b/src/main/java/com/jsh/erp/controller/MaterialCategoryController.java @@ -55,7 +55,7 @@ public class MaterialCategoryController { } } res.code = 200; - res.data = dataList; + res.data = outer; } catch(Exception e){ e.printStackTrace(); res.code = 500; diff --git a/src/main/java/com/jsh/erp/datasource/entities/MaterialVo4Unit.java b/src/main/java/com/jsh/erp/datasource/entities/MaterialVo4Unit.java index 1855fdf1..813b0060 100644 --- a/src/main/java/com/jsh/erp/datasource/entities/MaterialVo4Unit.java +++ b/src/main/java/com/jsh/erp/datasource/entities/MaterialVo4Unit.java @@ -50,6 +50,10 @@ public class MaterialVo4Unit { private String unitName; + private String categoryName; + + private String materialOther; + public Long getId() { return id; } @@ -241,4 +245,20 @@ public class MaterialVo4Unit { public void setUnitName(String unitName) { this.unitName = unitName; } + + public String getCategoryName() { + return categoryName; + } + + public void setCategoryName(String categoryName) { + this.categoryName = categoryName; + } + + public String getMaterialOther() { + return materialOther; + } + + public void setMaterialOther(String materialOther) { + this.materialOther = materialOther; + } } \ No newline at end of file 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 85867077..cb15fc74 100644 --- a/src/main/java/com/jsh/erp/datasource/mappers/MaterialMapper.java +++ b/src/main/java/com/jsh/erp/datasource/mappers/MaterialMapper.java @@ -96,15 +96,21 @@ public interface MaterialMapper { */ int updateByPrimaryKey(Material record); - List selectByConditionMaterial( + List selectByConditionMaterial( @Param("name") String name, @Param("model") String model, + @Param("categoryId") Long categoryId, + @Param("categoryIds") String categoryIds, + @Param("mpList") String mpList, @Param("offset") Integer offset, @Param("rows") Integer rows); int countsByMaterial( @Param("name") String name, - @Param("model") String model); + @Param("model") String model, + @Param("categoryId") Long categoryId, + @Param("categoryIds") String categoryIds, + @Param("mpList") String mpList); String findUnitName(@Param("mId") Long mId); diff --git a/src/main/java/com/jsh/erp/service/material/MaterialComponent.java b/src/main/java/com/jsh/erp/service/material/MaterialComponent.java index 7d986cf1..6e5a3b6e 100644 --- a/src/main/java/com/jsh/erp/service/material/MaterialComponent.java +++ b/src/main/java/com/jsh/erp/service/material/MaterialComponent.java @@ -34,8 +34,11 @@ public class MaterialComponent implements ICommonQuery { String search = map.get(Constants.SEARCH); String name = StringUtil.getInfo(search, "name"); String model = StringUtil.getInfo(search, "model"); + Long categoryId = Long.parseLong(StringUtil.getInfo(search, "categoryId")); + String categoryIds = StringUtil.getInfo(search, "categoryIds"); + String mpList = StringUtil.getInfo(search, "mpList"); String order = QueryUtils.order(map); - return materialService.select(name, model, QueryUtils.offset(map), QueryUtils.rows(map)); + return materialService.select(name, model,categoryId,categoryIds,mpList, QueryUtils.offset(map), QueryUtils.rows(map)); } @Override @@ -43,7 +46,10 @@ public class MaterialComponent implements ICommonQuery { String search = map.get(Constants.SEARCH); String name = StringUtil.getInfo(search, "name"); String model = StringUtil.getInfo(search, "model"); - return materialService.countMaterial(name, model); + Long categoryId = Long.parseLong(StringUtil.getInfo(search, "categoryId")); + String categoryIds = StringUtil.getInfo(search, "categoryIds"); + String mpList = StringUtil.getInfo(search, "mpList"); + return materialService.countMaterial(name, model,categoryId,categoryIds,mpList); } @Override 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 650c3ee8..85003dd8 100644 --- a/src/main/java/com/jsh/erp/service/material/MaterialService.java +++ b/src/main/java/com/jsh/erp/service/material/MaterialService.java @@ -31,12 +31,43 @@ public class MaterialService { return materialMapper.selectByExample(example); } - public List select(String name, String model, int offset, int rows) { - return materialMapper.selectByConditionMaterial(name, model, offset, rows); + public List select(String name, String model,Long categoryId, String categoryIds,String mpList, int offset, int rows) { + String[] mpArr = mpList.split(","); + List resList = new ArrayList(); + List list = materialMapper.selectByConditionMaterial(name, model,categoryId,categoryIds,mpList, offset, rows); + if (null != list) { + for (MaterialVo4Unit m : list) { + //扩展信息 + String materialOther = ""; + for (int i = 0; i < mpArr.length; i++) { + if (mpArr[i].equals("颜色")) { + materialOther = materialOther + ((m.getColor() == null || m.getColor().equals("")) ? "" : "(" + m.getColor() + ")"); + } + if (mpArr[i].equals("规格")) { + materialOther = materialOther + ((m.getStandard() == null || m.getStandard().equals("")) ? "" : "(" + m.getStandard() + ")"); + } + if (mpArr[i].equals("制造商")) { + materialOther = materialOther + ((m.getMfrs() == null || m.getMfrs().equals("")) ? "" : "(" + m.getMfrs() + ")"); + } + if (mpArr[i].equals("自定义1")) { + materialOther = materialOther + ((m.getOtherfield1() == null || m.getOtherfield1().equals("")) ? "" : "(" + m.getOtherfield1() + ")"); + } + if (mpArr[i].equals("自定义2")) { + materialOther = materialOther + ((m.getOtherfield2() == null || m.getOtherfield2().equals("")) ? "" : "(" + m.getOtherfield2() + ")"); + } + if (mpArr[i].equals("自定义3")) { + materialOther = materialOther + ((m.getOtherfield3() == null || m.getOtherfield3().equals("")) ? "" : "(" + m.getOtherfield3() + ")"); + } + } + m.setMaterialOther(materialOther); + resList.add(m); + } + } + return resList; } - public int countMaterial(String name, String model) { - return materialMapper.countsByMaterial(name, model); + public int countMaterial(String name, String model,Long categoryId, String categoryIds,String mpList) { + return materialMapper.countsByMaterial(name, model,categoryId,categoryIds,mpList); } public int insertMaterial(String beanJson, HttpServletRequest request) { diff --git a/src/main/resources/mapper_xml/MaterialMapperEx.xml b/src/main/resources/mapper_xml/MaterialMapperEx.xml index be0e7f66..b564365b 100644 --- a/src/main/resources/mapper_xml/MaterialMapperEx.xml +++ b/src/main/resources/mapper_xml/MaterialMapperEx.xml @@ -1,20 +1,31 @@ + + + + + - + select m.*,u.uname unitName, mc.name categoryName + FROM jsh_material m + left JOIN jsh_unit u on m.UnitId = u.id + left JOIN jsh_materialcategory mc on m.CategoryId = mc.id where 1=1 - and name like '%${name}%' + and m.name like '%${name}%' - and model like '%${model}%' + and m.model like '%${model}%' + + and m.CategoryId in (${categoryIds}) + + order by m.id asc limit #{offset},#{rows} @@ -22,14 +33,19 @@