优化商品模块

This commit is contained in:
季圣华
2020-06-03 00:25:28 +08:00
parent 023c065e19
commit d344771c92
11 changed files with 58 additions and 42 deletions

View File

@@ -170,7 +170,7 @@ public class DepotItemController {
ratio = diEx.getUName();
ratio = ratio.substring(ratio.indexOf("("));
}
//名/型号/扩展信息/包装
//名/型号/扩展信息/包装
String MaterialName = diEx.getBarCode() + "_" + ((diEx.getMName() == null || diEx.getMName().equals("")) ? "" : diEx.getMName())
+ ((diEx.getMStandard() == null || diEx.getMStandard().equals("")) ? "" : "(" + diEx.getMStandard() + ")")
+ ((diEx.getMModel() == null || diEx.getMModel().equals("")) ? "" : "(" + diEx.getMModel() + ")");

View File

@@ -161,7 +161,7 @@ public class MaterialController {
ratio = ratio.substring(ratio.indexOf("("));
}
}
//名/型号/扩展信息/包装
//名/型号/扩展信息/包装
String MaterialName = "";
String mBarCode = "";
if(material.getmBarCode()!=null) {
@@ -267,7 +267,7 @@ public class MaterialController {
ratio = material.getUnitName();
ratio = ratio.substring(ratio.indexOf("("));
}
//名/型号/扩展信息/包装
//名/型号/扩展信息/包装
String MaterialName = "";
MaterialName = MaterialName + material.getmBarCode() + "_" + material.getName()
+ ((material.getStandard() == null || material.getStandard().equals("")) ? "" : "(" + material.getStandard() + ")");
@@ -320,7 +320,7 @@ public class MaterialController {
try {
List<MaterialVo4Unit> dataList = materialService.findByAll(StringUtil.toNull(name), StringUtil.toNull(model),
StringUtil.toNull(categoryIds));
String[] names = {"", "类型", "型号", "安全存量", "单位", "零售价", "最低售价", "预计采购价", "批发价", "备注", "状态"};
String[] names = {"", "类型", "型号", "安全存量", "单位", "零售价", "最低售价", "预计采购价", "批发价", "备注", "状态"};
String title = "商品信息";
List<String[]> objects = new ArrayList<String[]>();
if (null != dataList) {

View File

@@ -18,6 +18,7 @@ import java.util.Map;
public interface MaterialMapperEx {
List<MaterialVo4Unit> selectByConditionMaterial(
@Param("barCode") String barCode,
@Param("name") String name,
@Param("standard") String standard,
@Param("model") String model,
@@ -27,6 +28,7 @@ public interface MaterialMapperEx {
@Param("rows") Integer rows);
Long countsByMaterial(
@Param("barCode") String barCode,
@Param("name") String name,
@Param("standard") String standard,
@Param("model") String model,

View File

@@ -32,23 +32,25 @@ public class MaterialComponent implements ICommonQuery {
private List<?> getMaterialList(Map<String, String> map) throws Exception{
String search = map.get(Constants.SEARCH);
String barCode = StringUtil.getInfo(search, "barCode");
String name = StringUtil.getInfo(search, "name");
String standard = StringUtil.getInfo(search, "standard");
String model = StringUtil.getInfo(search, "model");
String categoryIds = StringUtil.getInfo(search, "categoryIds");
String mpList = StringUtil.getInfo(search, "mpList");
return materialService.select(name, standard, model,categoryIds,mpList, QueryUtils.offset(map), QueryUtils.rows(map));
return materialService.select(barCode, name, standard, model,categoryIds,mpList, QueryUtils.offset(map), QueryUtils.rows(map));
}
@Override
public Long counts(Map<String, String> map)throws Exception {
String search = map.get(Constants.SEARCH);
String barCode = StringUtil.getInfo(search, "barCode");
String name = StringUtil.getInfo(search, "name");
String standard = StringUtil.getInfo(search, "standard");
String model = StringUtil.getInfo(search, "model");
String categoryIds = StringUtil.getInfo(search, "categoryIds");
String mpList = StringUtil.getInfo(search, "mpList");
return materialService.countMaterial(name, standard, model,categoryIds,mpList);
return materialService.countMaterial(barCode, name, standard, model,categoryIds,mpList);
}
@Override

View File

@@ -84,22 +84,17 @@ public class MaterialService {
return list;
}
public List<MaterialVo4Unit> select(String name, String standard, String model, String categoryIds,String mpList, int offset, int rows)
public List<MaterialVo4Unit> select(String barCode, String name, String standard, String model, String categoryIds,String mpList, int offset, int rows)
throws Exception{
String[] mpArr = mpList.split(",");
List<MaterialVo4Unit> resList = new ArrayList<MaterialVo4Unit>();
List<MaterialVo4Unit> resList = new ArrayList<>();
List<MaterialVo4Unit> list =null;
try{
list= materialMapperEx.selectByConditionMaterial(name, standard, model, categoryIds, mpList, offset, rows);
list= materialMapperEx.selectByConditionMaterial(barCode, name, standard, model, categoryIds, mpList, offset, rows);
}catch(Exception e){
JshException.readFail(logger, e);
}
if (null != list) {
List<Long> idList = new ArrayList<Long>();
for (MaterialVo4Unit m : list) {
idList.add(m.getId());
}
List<MaterialExtend> meList = materialExtendService.getListByMIds(idList);
for (MaterialVo4Unit m : list) {
//扩展信息
String materialOther = "";
@@ -120,24 +115,16 @@ public class MaterialService {
m.setMaterialOther(materialOther);
Long tenantId = m.getTenantId();
m.setStock(depotItemService.getStockByParam(null,m.getId(),null,null,tenantId));
for(MaterialExtend me:meList) {
if(me.getMaterialId().longValue() == m.getId().longValue()) {
m.setPurchaseDecimal(me.getPurchaseDecimal()); //采购价
m.setCommodityDecimal(me.getCommodityDecimal()); //零售价
m.setWholesaleDecimal(me.getWholesaleDecimal()); //销售价
m.setLowDecimal(me.getLowDecimal()); //最低售价
}
}
resList.add(m);
}
}
return resList;
}
public Long countMaterial(String name, String standard, String model, String categoryIds,String mpList)throws Exception {
public Long countMaterial(String barCode, String name, String standard, String model, String categoryIds,String mpList)throws Exception {
Long result =null;
try{
result= materialMapperEx.countsByMaterial(name, standard, model, categoryIds, mpList);
result= materialMapperEx.countsByMaterial(barCode, name, standard, model, categoryIds, mpList);
}catch(Exception e){
JshException.readFail(logger, e);
}

View File

@@ -4,7 +4,11 @@
<resultMap extends="com.jsh.erp.datasource.mappers.MaterialMapper.BaseResultMap" id="ResultMapList" type="com.jsh.erp.datasource.entities.MaterialVo4Unit">
<result column="unitName" jdbcType="VARCHAR" property="unitName" />
<result column="categoryName" jdbcType="VARCHAR" property="categoryName" />
<result column="m_bar_code" jdbcType="VARCHAR" property="mBarCode" />
<result column="bar_code" jdbcType="VARCHAR" property="mBarCode" />
<result column="purchase_decimal" jdbcType="VARCHAR" property="purchaseDecimal" />
<result column="commodity_decimal" jdbcType="VARCHAR" property="commodityDecimal" />
<result column="wholesale_decimal" jdbcType="VARCHAR" property="wholesaleDecimal" />
<result column="low_decimal" jdbcType="VARCHAR" property="lowDecimal" />
</resultMap>
<resultMap extends="com.jsh.erp.datasource.mappers.MaterialMapper.BaseResultMap" id="ResultAndUnitMap" type="com.jsh.erp.datasource.entities.MaterialVo4Unit">
@@ -12,11 +16,17 @@
</resultMap>
<select id="selectByConditionMaterial" parameterType="com.jsh.erp.datasource.entities.MaterialExample" resultMap="ResultMapList">
select m.*,u.uname unitName, mc.name categoryName
select m.*,u.uname unitName, mc.name categoryName, me.bar_code,
me.purchase_decimal, me.commodity_decimal, me.wholesale_decimal,me.low_decimal
FROM jsh_material m
left JOIN jsh_material_extend me on m.id = me.material_id and ifnull(me.delete_Flag,'0') !='1'
left JOIN jsh_unit u on m.UnitId = u.id and ifnull(u.delete_Flag,'0') !='1'
left JOIN jsh_materialcategory mc on m.CategoryId = mc.id and ifnull(mc.status,'0') !='2'
where 1=1
and me.default_flag=1
<if test="barCode != null">
and me.bar_code like '%${barCode}%'
</if>
<if test="name != null">
and m.name like '%${name}%'
</if>
@@ -40,9 +50,14 @@
SELECT
COUNT(m.id)
FROM jsh_material m
left JOIN jsh_material_extend me on m.id = me.material_id and ifnull(me.delete_Flag,'0') !='1'
left JOIN jsh_unit u on m.UnitId = u.id and ifnull(u.delete_Flag,'0') !='1'
left JOIN jsh_materialcategory mc on m.CategoryId = mc.id and ifnull(mc.status,'0') !='2'
WHERE 1=1
and me.default_flag=1
<if test="barCode != null">
and me.bar_code like '%${barCode}%'
</if>
<if test="name != null">
and m.name like '%${name}%'
</if>