初步给商品的扩展信息拆分成扩展1 扩展2 扩展3

This commit is contained in:
jishenghua 2025-03-24 23:17:10 +08:00
parent 91a985ff58
commit ce8af5bedd
8 changed files with 125 additions and 21 deletions

View File

@ -94,7 +94,9 @@ public class MaterialController extends BaseController {
String color = StringUtil.getInfo(search, "color"); String color = StringUtil.getInfo(search, "color");
String brand = StringUtil.getInfo(search, "brand"); String brand = StringUtil.getInfo(search, "brand");
String mfrs = StringUtil.getInfo(search, "mfrs"); String mfrs = StringUtil.getInfo(search, "mfrs");
String materialOther = StringUtil.getInfo(search, "materialOther"); String otherField1 = StringUtil.getInfo(search, "otherField1");
String otherField2 = StringUtil.getInfo(search, "otherField2");
String otherField3 = StringUtil.getInfo(search, "otherField3");
String weight = StringUtil.getInfo(search, "weight"); String weight = StringUtil.getInfo(search, "weight");
String expiryNum = StringUtil.getInfo(search, "expiryNum"); String expiryNum = StringUtil.getInfo(search, "expiryNum");
String enableSerialNumber = StringUtil.getInfo(search, "enableSerialNumber"); String enableSerialNumber = StringUtil.getInfo(search, "enableSerialNumber");
@ -103,8 +105,8 @@ public class MaterialController extends BaseController {
String enabled = StringUtil.getInfo(search, "enabled"); String enabled = StringUtil.getInfo(search, "enabled");
String remark = StringUtil.getInfo(search, "remark"); String remark = StringUtil.getInfo(search, "remark");
String mpList = StringUtil.getInfo(search, "mpList"); String mpList = StringUtil.getInfo(search, "mpList");
List<MaterialVo4Unit> list = materialService.select(materialParam, standard, model, color, brand, mfrs, materialOther, weight, expiryNum, List<MaterialVo4Unit> list = materialService.select(materialParam, standard, model, color, brand, mfrs, otherField1, otherField2,
enableSerialNumber, enableBatchNumber, position, enabled, remark, categoryId, mpList); otherField3, weight, expiryNum, enableSerialNumber, enableBatchNumber, position, enabled, remark, categoryId, mpList);
return getDataTable(list); return getDataTable(list);
} }
@ -304,6 +306,9 @@ public class MaterialController extends BaseController {
@RequestParam(value = "color", required = false) String color, @RequestParam(value = "color", required = false) String color,
@RequestParam(value = "brand", required = false) String brand, @RequestParam(value = "brand", required = false) String brand,
@RequestParam(value = "mfrs", required = false) String mfrs, @RequestParam(value = "mfrs", required = false) String mfrs,
@RequestParam(value = "otherField1", required = false) String otherField1,
@RequestParam(value = "otherField2", required = false) String otherField2,
@RequestParam(value = "otherField3", required = false) String otherField3,
@RequestParam(value = "enableSerialNumber", required = false) String enableSerialNumber, @RequestParam(value = "enableSerialNumber", required = false) String enableSerialNumber,
@RequestParam(value = "enableBatchNumber", required = false) String enableBatchNumber, @RequestParam(value = "enableBatchNumber", required = false) String enableBatchNumber,
@RequestParam("page") Integer currentPage, @RequestParam("page") Integer currentPage,
@ -316,10 +321,11 @@ public class MaterialController extends BaseController {
mpArr= mpList.split(","); mpArr= mpList.split(",");
} }
List<MaterialVo4Unit> dataList = materialService.findBySelectWithBarCode(categoryId, q, StringUtil.toNull(standardOrModel), List<MaterialVo4Unit> dataList = materialService.findBySelectWithBarCode(categoryId, q, StringUtil.toNull(standardOrModel),
StringUtil.toNull(color), StringUtil.toNull(brand), StringUtil.toNull(mfrs), enableSerialNumber, enableBatchNumber, StringUtil.toNull(color), StringUtil.toNull(brand), StringUtil.toNull(mfrs), StringUtil.toNull(otherField1), StringUtil.toNull(otherField2), StringUtil.toNull(otherField3),
(currentPage-1)*pageSize, pageSize); enableSerialNumber, enableBatchNumber, (currentPage-1)*pageSize, pageSize);
int total = materialService.findBySelectWithBarCodeCount(categoryId, q, StringUtil.toNull(standardOrModel), int total = materialService.findBySelectWithBarCodeCount(categoryId, q, StringUtil.toNull(standardOrModel),
StringUtil.toNull(color), StringUtil.toNull(brand), StringUtil.toNull(mfrs), enableSerialNumber, enableBatchNumber); StringUtil.toNull(color), StringUtil.toNull(brand), StringUtil.toNull(mfrs), StringUtil.toNull(otherField1), StringUtil.toNull(otherField2), StringUtil.toNull(otherField3),
enableSerialNumber, enableBatchNumber);
object.put("total", total); object.put("total", total);
JSONArray dataArray = new JSONArray(); JSONArray dataArray = new JSONArray();
//存放数据json数组 //存放数据json数组
@ -373,6 +379,9 @@ public class MaterialController extends BaseController {
} }
item.put("stock", stock); item.put("stock", stock);
item.put("expand", materialService.getMaterialOtherByParam(mpArr, material)); item.put("expand", materialService.getMaterialOtherByParam(mpArr, material));
item.put("otherField1", material.getOtherField1());
item.put("otherField2", material.getOtherField2());
item.put("otherField3", material.getOtherField3());
item.put("imgName", material.getImgName()); item.put("imgName", material.getImgName());
if(fileUploadType == 2) { if(fileUploadType == 2) {
item.put("imgSmall", "small"); item.put("imgSmall", "small");

View File

@ -24,7 +24,9 @@ public interface MaterialMapperEx {
@Param("color") String color, @Param("color") String color,
@Param("brand") String brand, @Param("brand") String brand,
@Param("mfrs") String mfrs, @Param("mfrs") String mfrs,
@Param("materialOther") String materialOther, @Param("otherField1") String otherField1,
@Param("otherField2") String otherField2,
@Param("otherField3") String otherField3,
@Param("weight") String weight, @Param("weight") String weight,
@Param("expiryNum") String expiryNum, @Param("expiryNum") String expiryNum,
@Param("enableSerialNumber") String enableSerialNumber, @Param("enableSerialNumber") String enableSerialNumber,
@ -51,6 +53,9 @@ public interface MaterialMapperEx {
@Param("color") String color, @Param("color") String color,
@Param("brand") String brand, @Param("brand") String brand,
@Param("mfrs") String mfrs, @Param("mfrs") String mfrs,
@Param("otherField1") String otherField1,
@Param("otherField2") String otherField2,
@Param("otherField3") String otherField3,
@Param("enableSerialNumber") String enableSerialNumber, @Param("enableSerialNumber") String enableSerialNumber,
@Param("enableBatchNumber") String enableBatchNumber, @Param("enableBatchNumber") String enableBatchNumber,
@Param("offset") Integer offset, @Param("offset") Integer offset,
@ -62,6 +67,9 @@ public interface MaterialMapperEx {
@Param("color") String color, @Param("color") String color,
@Param("brand") String brand, @Param("brand") String brand,
@Param("mfrs") String mfrs, @Param("mfrs") String mfrs,
@Param("otherField1") String otherField1,
@Param("otherField2") String otherField2,
@Param("otherField3") String otherField3,
@Param("enableSerialNumber") String enableSerialNumber, @Param("enableSerialNumber") String enableSerialNumber,
@Param("enableBatchNumber") String enableBatchNumber); @Param("enableBatchNumber") String enableBatchNumber);

View File

@ -109,7 +109,7 @@ public class MaterialService {
} }
public List<MaterialVo4Unit> select(String materialParam, String standard, String model, String color, String brand, String mfrs, public List<MaterialVo4Unit> select(String materialParam, String standard, String model, String color, String brand, String mfrs,
String materialOther, String weight, String expiryNum, String enableSerialNumber, String otherField1, String otherField2, String otherField3, String weight, String expiryNum, String enableSerialNumber,
String enableBatchNumber, String position, String enabled, String remark, String categoryId, String enableBatchNumber, String position, String enabled, String remark, String categoryId,
String mpList) String mpList)
throws Exception{ throws Exception{
@ -124,7 +124,8 @@ public class MaterialService {
idList = getListByParentId(Long.parseLong(categoryId)); idList = getListByParentId(Long.parseLong(categoryId));
} }
PageUtils.startPage(); PageUtils.startPage();
list= materialMapperEx.selectByConditionMaterial(materialParam, standard, model, color, brand, mfrs, materialOther, weight, expiryNum, list= materialMapperEx.selectByConditionMaterial(materialParam, standard, model, color, brand, mfrs,
otherField1, otherField2, otherField3, weight, expiryNum,
enableSerialNumber, enableBatchNumber, position, enabled, remark, idList, mpList); enableSerialNumber, enableBatchNumber, position, enabled, remark, idList, mpList);
if (null != list && list.size()>0) { if (null != list && list.size()>0) {
Map<Long,BigDecimal> initialStockMap = getInitialStockMapByMaterialList(list); Map<Long,BigDecimal> initialStockMap = getInitialStockMapByMaterialList(list);
@ -416,8 +417,8 @@ public class MaterialService {
} }
public List<MaterialVo4Unit> findBySelectWithBarCode(Long categoryId, String q, String standardOrModel, String color, public List<MaterialVo4Unit> findBySelectWithBarCode(Long categoryId, String q, String standardOrModel, String color,
String brand, String mfrs, String enableSerialNumber, String enableBatchNumber, String brand, String mfrs, String otherField1, String otherField2, String otherField3,
Integer offset, Integer rows) throws Exception{ String enableSerialNumber, String enableBatchNumber, Integer offset, Integer rows) throws Exception{
List<MaterialVo4Unit> list =null; List<MaterialVo4Unit> list =null;
try{ try{
List<Long> idList = new ArrayList<>(); List<Long> idList = new ArrayList<>();
@ -430,7 +431,7 @@ public class MaterialService {
q = q.trim(); q = q.trim();
} }
list= materialMapperEx.findBySelectWithBarCode(idList, q, standardOrModel, color, brand, mfrs, list= materialMapperEx.findBySelectWithBarCode(idList, q, standardOrModel, color, brand, mfrs,
enableSerialNumber, enableBatchNumber, offset, rows); otherField1, otherField2, otherField3, enableSerialNumber, enableBatchNumber, offset, rows);
}catch(Exception e){ }catch(Exception e){
JshException.readFail(logger, e); JshException.readFail(logger, e);
} }
@ -438,7 +439,8 @@ public class MaterialService {
} }
public int findBySelectWithBarCodeCount(Long categoryId, String q, String standardOrModel, String color, public int findBySelectWithBarCodeCount(Long categoryId, String q, String standardOrModel, String color,
String brand, String mfrs, String enableSerialNumber, String enableBatchNumber) throws Exception{ String brand, String mfrs, String otherField1, String otherField2, String otherField3,
String enableSerialNumber, String enableBatchNumber) throws Exception{
int result=0; int result=0;
try{ try{
List<Long> idList = new ArrayList<>(); List<Long> idList = new ArrayList<>();
@ -450,7 +452,7 @@ public class MaterialService {
q = q.replace("'", ""); q = q.replace("'", "");
} }
result = materialMapperEx.findBySelectWithBarCodeCount(idList, q, standardOrModel, color, brand, mfrs, result = materialMapperEx.findBySelectWithBarCodeCount(idList, q, standardOrModel, color, brand, mfrs,
enableSerialNumber, enableBatchNumber); otherField1, otherField2, otherField3, enableSerialNumber, enableBatchNumber);
}catch(Exception e){ }catch(Exception e){
logger.error("异常码[{}],异常提示[{}],异常[{}]", logger.error("异常码[{}],异常提示[{}],异常[{}]",
ExceptionConstants.DATA_READ_FAIL_CODE,ExceptionConstants.DATA_READ_FAIL_MSG,e); ExceptionConstants.DATA_READ_FAIL_CODE,ExceptionConstants.DATA_READ_FAIL_MSG,e);

View File

@ -70,9 +70,17 @@
<bind name="bindMfrs" value="'%'+mfrs+'%'"/> <bind name="bindMfrs" value="'%'+mfrs+'%'"/>
and m.mfrs like #{bindMfrs} and m.mfrs like #{bindMfrs}
</if> </if>
<if test="materialOther != null and materialOther !=''"> <if test="otherField1 != null and otherField1 !=''">
<bind name="bindOther" value="'%'+materialOther+'%'"/> <bind name="bindOtherField1" value="'%'+otherField1+'%'"/>
and (m.other_field1 like #{bindOther} or m.other_field2 like #{bindOther} or m.other_field3 like #{bindOther}) and m.other_field1 like #{bindOtherField1}
</if>
<if test="otherField2 != null and otherField2!=''">
<bind name="bindOtherField2" value="'%'+otherField2+'%'"/>
and m.other_field2 like #{bindOtherField2}
</if>
<if test="otherField3 != null and otherField3 !=''">
<bind name="bindOtherField3" value="'%'+otherField3+'%'"/>
and m.other_field3 like #{bindOtherField3}
</if> </if>
<if test="weight != null and weight !=''"> <if test="weight != null and weight !=''">
and m.weight = #{weight} and m.weight = #{weight}
@ -330,6 +338,18 @@
<bind name="bindMfrs" value="'%'+mfrs+'%'"/> <bind name="bindMfrs" value="'%'+mfrs+'%'"/>
and m.mfrs like #{bindMfrs} and m.mfrs like #{bindMfrs}
</if> </if>
<if test="otherField1 != null and otherField1 !=''">
<bind name="bindOtherField1" value="'%'+otherField1+'%'"/>
and m.other_field1 like #{bindOtherField1}
</if>
<if test="otherField2 != null and otherField2!=''">
<bind name="bindOtherField2" value="'%'+otherField2+'%'"/>
and m.other_field2 like #{bindOtherField2}
</if>
<if test="otherField3 != null and otherField3 !=''">
<bind name="bindOtherField3" value="'%'+otherField3+'%'"/>
and m.other_field3 like #{bindOtherField3}
</if>
<if test="idList.size()>0"> <if test="idList.size()>0">
and m.category_id in and m.category_id in
<foreach collection="idList" item="item" index="index" separator="," open="(" close=")"> <foreach collection="idList" item="item" index="index" separator="," open="(" close=")">
@ -375,6 +395,18 @@
<bind name="bindMfrs" value="'%'+mfrs+'%'"/> <bind name="bindMfrs" value="'%'+mfrs+'%'"/>
and m.mfrs like #{bindMfrs} and m.mfrs like #{bindMfrs}
</if> </if>
<if test="otherField1 != null and otherField1 !=''">
<bind name="bindOtherField1" value="'%'+otherField1+'%'"/>
and m.other_field1 like #{bindOtherField1}
</if>
<if test="otherField2 != null and otherField2!=''">
<bind name="bindOtherField2" value="'%'+otherField2+'%'"/>
and m.other_field2 like #{bindOtherField2}
</if>
<if test="otherField3 != null and otherField3 !=''">
<bind name="bindOtherField3" value="'%'+otherField3+'%'"/>
and m.other_field3 like #{bindOtherField3}
</if>
<if test="idList.size()>0"> <if test="idList.size()>0">
and m.category_id in and m.category_id in
<foreach collection="idList" item="item" index="index" separator="," open="(" close=")"> <foreach collection="idList" item="item" index="index" separator="," open="(" close=")">

View File

@ -74,6 +74,21 @@
<a-input placeholder="请输入制造商" v-model="queryParam.mfrs"></a-input> <a-input placeholder="请输入制造商" v-model="queryParam.mfrs"></a-input>
</a-form-item> </a-form-item>
</a-col> </a-col>
<a-col :md="6" :sm="8">
<a-form-item label="扩展1" :labelCol="{span: 5}" :wrapperCol="{span: 18, offset: 1}">
<a-input placeholder="请输入扩展1" v-model="queryParam.otherField1"></a-input>
</a-form-item>
</a-col>
<a-col :md="6" :sm="8">
<a-form-item label="扩展2" :labelCol="{span: 5}" :wrapperCol="{span: 18, offset: 1}">
<a-input placeholder="请输入扩展2" v-model="queryParam.otherField2"></a-input>
</a-form-item>
</a-col>
<a-col :md="6" :sm="8">
<a-form-item label="扩展3" :labelCol="{span: 5}" :wrapperCol="{span: 18, offset: 1}">
<a-input placeholder="请输入扩展3" v-model="queryParam.otherField3"></a-input>
</a-form-item>
</a-col>
<a-col :md="6" :sm="24"> <a-col :md="6" :sm="24">
<a-form-item label="序列号" :labelCol="labelCol" :wrapperCol="wrapperCol"> <a-form-item label="序列号" :labelCol="labelCol" :wrapperCol="wrapperCol">
<a-select placeholder="有无序列号" v-model="queryParam.enableSerialNumber"> <a-select placeholder="有无序列号" v-model="queryParam.enableSerialNumber">
@ -155,6 +170,9 @@
brand: '', brand: '',
categoryId: undefined, categoryId: undefined,
mfrs: '', mfrs: '',
otherField1:'',
otherField2:'',
otherField3:'',
enableSerialNumber: undefined, enableSerialNumber: undefined,
enableBatchNumber: undefined enableBatchNumber: undefined
}, },
@ -179,7 +197,9 @@
{dataIndex: 'unit', title: '单位'}, {dataIndex: 'unit', title: '单位'},
{dataIndex: 'sku', title: '多属性'}, {dataIndex: 'sku', title: '多属性'},
{dataIndex: 'stock', title: '库存'}, {dataIndex: 'stock', title: '库存'},
{dataIndex: 'expand', title: '扩展信息'} {dataIndex: 'otherField1', title: '扩展1'},
{dataIndex: 'otherField2', title: '扩展2'},
{dataIndex: 'otherField3', title: '扩展3'}
], ],
scrollTrigger: {}, scrollTrigger: {},
dataSource: [], dataSource: [],

View File

@ -652,6 +652,9 @@ export const BillModalMixin = {
this.changeFormTypes(this.materialTable.columns, 'brand', 0) this.changeFormTypes(this.materialTable.columns, 'brand', 0)
this.changeFormTypes(this.materialTable.columns, 'mfrs', 0) this.changeFormTypes(this.materialTable.columns, 'mfrs', 0)
this.changeFormTypes(this.materialTable.columns, 'materialOther', 0) this.changeFormTypes(this.materialTable.columns, 'materialOther', 0)
this.changeFormTypes(this.materialTable.columns, 'otherField1', 0)
this.changeFormTypes(this.materialTable.columns, 'otherField1', 0)
this.changeFormTypes(this.materialTable.columns, 'otherField1', 0)
this.changeFormTypes(this.materialTable.columns, 'sku', 0) this.changeFormTypes(this.materialTable.columns, 'sku', 0)
}, },
//使得sku序列号批号到期日等为显示 //使得sku序列号批号到期日等为显示
@ -671,6 +674,15 @@ export const BillModalMixin = {
if(info.materialOther) { if(info.materialOther) {
this.changeFormTypes(this.materialTable.columns, 'materialOther', 1) this.changeFormTypes(this.materialTable.columns, 'materialOther', 1)
} }
if(info.otherField1) {
this.changeFormTypes(this.materialTable.columns, 'otherField1', 1)
}
if(info.otherField2) {
this.changeFormTypes(this.materialTable.columns, 'otherField2', 1)
}
if(info.otherField3) {
this.changeFormTypes(this.materialTable.columns, 'otherField3', 1)
}
if(info.sku) { if(info.sku) {
this.changeFormTypes(this.materialTable.columns, 'sku', 1) this.changeFormTypes(this.materialTable.columns, 'sku', 1)
} }

View File

@ -278,7 +278,9 @@
{ title: '颜色', key: 'color', width: '5%', type: FormTypes.normal }, { title: '颜色', key: 'color', width: '5%', type: FormTypes.normal },
{ title: '品牌', key: 'brand', width: '6%', type: FormTypes.normal }, { title: '品牌', key: 'brand', width: '6%', type: FormTypes.normal },
{ title: '制造商', key: 'mfrs', width: '6%', type: FormTypes.normal }, { title: '制造商', key: 'mfrs', width: '6%', type: FormTypes.normal },
{ title: '扩展信息', key: 'materialOther', width: '5%', type: FormTypes.normal }, { title: '扩展1', key: 'otherField1', width: '4%', type: FormTypes.normal },
{ title: '扩展2', key: 'otherField2', width: '4%', type: FormTypes.normal },
{ title: '扩展3', key: 'otherField3', width: '4%', type: FormTypes.normal },
{ title: '库存', key: 'stock', width: '5%', type: FormTypes.normal }, { title: '库存', key: 'stock', width: '5%', type: FormTypes.normal },
{ title: '单位', key: 'unit', width: '4%', type: FormTypes.normal }, { title: '单位', key: 'unit', width: '4%', type: FormTypes.normal },
{ title: '序列号', key: 'snList', width: '12%', type: FormTypes.popupJsh, kind: 'snAdd', multi: true }, { title: '序列号', key: 'snList', width: '12%', type: FormTypes.popupJsh, kind: 'snAdd', multi: true },

View File

@ -58,6 +58,21 @@
<a-input placeholder="请输入制造商查询" v-model="queryParam.mfrs"></a-input> <a-input placeholder="请输入制造商查询" v-model="queryParam.mfrs"></a-input>
</a-form-item> </a-form-item>
</a-col> </a-col>
<a-col :md="6" :sm="24">
<a-form-item label="扩展1" :labelCol="labelCol" :wrapperCol="wrapperCol">
<a-input placeholder="请输入扩展1查询" v-model="queryParam.otherField1"></a-input>
</a-form-item>
</a-col>
<a-col :md="6" :sm="24">
<a-form-item label="扩展2" :labelCol="labelCol" :wrapperCol="wrapperCol">
<a-input placeholder="请输入扩展2查询" v-model="queryParam.otherField2"></a-input>
</a-form-item>
</a-col>
<a-col :md="6" :sm="24">
<a-form-item label="扩展3" :labelCol="labelCol" :wrapperCol="wrapperCol">
<a-input placeholder="请输入扩展3查询" v-model="queryParam.otherField3"></a-input>
</a-form-item>
</a-col>
<a-col :md="6" :sm="24"> <a-col :md="6" :sm="24">
<a-form-item label="状态" :labelCol="labelCol" :wrapperCol="wrapperCol"> <a-form-item label="状态" :labelCol="labelCol" :wrapperCol="wrapperCol">
<a-select placeholder="请选择状态" v-model="queryParam.enabled"> <a-select placeholder="请选择状态" v-model="queryParam.enabled">
@ -254,7 +269,9 @@
color:'', color:'',
brand:'', brand:'',
mfrs:'', mfrs:'',
materialOther:'', otherField1:'',
otherField2:'',
otherField3:'',
weight:'', weight:'',
expiryNum:'', expiryNum:'',
enabled: undefined, enabled: undefined,
@ -292,7 +309,9 @@
{title: '品牌', dataIndex: 'brand', width: 100, ellipsis:true}, {title: '品牌', dataIndex: 'brand', width: 100, ellipsis:true},
{title: '助记码', dataIndex: 'mnemonic', width: 80, ellipsis:true}, {title: '助记码', dataIndex: 'mnemonic', width: 80, ellipsis:true},
{title: '类别', dataIndex: 'categoryName', width: 100, ellipsis:true}, {title: '类别', dataIndex: 'categoryName', width: 100, ellipsis:true},
{title: '扩展信息', dataIndex: 'materialOther', width: 100, ellipsis:true}, {title: '扩展1', dataIndex: 'otherField1', width: 100, ellipsis:true},
{title: '扩展2', dataIndex: 'otherField2', width: 100, ellipsis:true},
{title: '扩展3', dataIndex: 'otherField3', width: 100, ellipsis:true},
{title: '单位', dataIndex: 'unit', width: 100, ellipsis:true, {title: '单位', dataIndex: 'unit', width: 100, ellipsis:true,
customRender:function (t,r,index) { customRender:function (t,r,index) {
if (r) { if (r) {