rsf-admin/src/i18n/core/chineseMessages.js
@@ -4,7 +4,7 @@ add_filter: "过滤条件", add: "添加", back: "返回", bulk_actions: "1 item selected |||| %{smart_count} items selected", bulk_actions: "%{smart_count} 条被选中 |||| %{smart_count} 条被选中", cancel: "取消", clear_array_input: "情空列表", clear_input_value: "清空", rsf-admin/src/page/basicInfo/matnr/MatnrEdit.jsx
@@ -281,6 +281,23 @@ </CustomTabPanel> <CustomTabPanel value={value} index={1}> <Grid container rowSpacing={2} columnSpacing={2}> <Grid item xs={6} display="flex" gap={1}> <TextInput label="table.field.matnr.name" source="name" parse={v => v} required autoFocus /> </Grid> <Grid item xs={6} display="flex" gap={1}> <TextInput label="table.field.matnr.code" source="code" required parse={v => v} /> </Grid> <Grid item xs={6} display="flex" gap={1}> <NumberInput label="table.field.matnr.safeQty" @@ -331,6 +348,23 @@ </CustomTabPanel> <CustomTabPanel value={value} index={2}> <Grid container rowSpacing={2} columnSpacing={2}> <Grid item xs={6} display="flex" gap={1}> <TextInput label="table.field.matnr.name" source="name" parse={v => v} required autoFocus /> </Grid> <Grid item xs={6} display="flex" gap={1}> <TextInput label="table.field.matnr.code" source="code" required parse={v => v} /> </Grid> <Grid item xs={6} display="flex" gap={1}> <ReferenceInput source="rglar_id" rsf-server/src/main/java/com/vincent/rsf/server/common/domain/PageParam.java
@@ -10,10 +10,7 @@ import java.lang.reflect.Field; import java.lang.reflect.Modifier; import java.util.ArrayList; import java.util.Date; import java.util.List; import java.util.Map; import java.util.*; import java.util.function.Consumer; /** @@ -73,6 +70,10 @@ return this.buildWrapper(like, null, timeField); } public QueryWrapper<T> buildWrapper(boolean like, List<String> fields) { return this.buildWrapper(like, null,"create_time", fields); } @SuppressWarnings("all") public QueryWrapper<T> buildWrapper(boolean like, Consumer<QueryWrapper<T>> consumer, String timeField) { QueryWrapper<T> queryWrapper = new QueryWrapper<>(); @@ -97,7 +98,96 @@ if (this.isToUnderlineCase) { key = Utils.toSymbolCase(key, '_'); } if (like) { if (like && key.contains(timeField)) { queryWrapper.like("`" + key + "`", val); } else { queryWrapper.eq("`" + key + "`", val); } } } if (null != consumer) { consumer.accept(queryWrapper); } if (!Cools.isEmpty(where.getTimeStart())) { Date timeStart = DateUtils.convert(String.valueOf(where.getTimeStart()), DateUtils.yyyyMMdd_F); queryWrapper.ge(timeField, timeStart); } if (!Cools.isEmpty(where.getTimeEnd())) { Date timeStart = DateUtils.convert(String.valueOf(where.getTimeEnd()), DateUtils.yyyyMMdd_F); queryWrapper.le(timeField, timeStart); } if (!Cools.isEmpty(where.getOrderBy())) { if (sortIsSQL(where.getOrderBy())) { setOrders(parseOrderSQL(where.getOrderBy())); } } else { // queryWrapper.orderByDesc("create_time"); } if (!Cools.isEmpty(where.getCondition()) && !Cools.isEmpty(cls)) { List<String> columns = new ArrayList<>(); for (Field field : Cools.getAllFields(cls)){ if (Modifier.isFinal(field.getModifiers()) || Modifier.isStatic(field.getModifiers()) || Modifier.isTransient(field.getModifiers())){ continue; } if (field.isAnnotationPresent(TableField.class)){ TableField annotation = field.getAnnotation(TableField.class); if (!annotation.exist()) { continue; } } String column = Utils.toSymbolCase(field.getName(), '_'); columns.add(column); } if (!columns.isEmpty()) { for (int i=0;i<columns.size();i++){ String column = columns.get(i); String condition = where.getCondition(); if (i == 0) { queryWrapper.and(wrapper -> wrapper.like("`" + column + "`", condition)); } else { queryWrapper.or().like("`" + column + "`", condition); } } } } return queryWrapper; } @SuppressWarnings("all") public QueryWrapper<T> buildWrapper(boolean like, Consumer<QueryWrapper<T>> consumer,String timeField, List<String> fields) { QueryWrapper<T> queryWrapper = new QueryWrapper<>(); Map<String, Object> map = where.getMap(); for (String key : map.keySet()) { Object val = map.get(key); if (key.contains("Range")) { ArrayList<String> list = null; if (val instanceof ArrayList) { list = (ArrayList<String>) val; } if (null != list) { key = key.replaceAll("Range", ""); if (this.isToUnderlineCase) { key = Utils.toSymbolCase(key, '_'); } queryWrapper.ge(key, DateUtils.convert(list.get(0))); queryWrapper.le(key, DateUtils.convert(list.get(1))); } } else { if (this.isToUnderlineCase) { key = Utils.toSymbolCase(key, '_'); } if (like && !fields.contains(key)) { queryWrapper.like("`" + key + "`", val); } else { queryWrapper.eq("`" + key + "`", val); @@ -198,4 +288,5 @@ return map; } } rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/LocController.java
@@ -2,6 +2,7 @@ import com.alibaba.fastjson.JSONArray; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.vincent.rsf.framework.common.Cools; import com.vincent.rsf.framework.common.R; @@ -43,7 +44,11 @@ public R page(@RequestBody Map<String, Object> map) { BaseParam baseParam = buildParam(map, BaseParam.class); PageParam<Loc, BaseParam> pageParam = new PageParam<>(baseParam, Loc.class); return R.ok().add(locService.page(pageParam, pageParam.buildWrapper(true))); List<String> list = new ArrayList<>(); list.add("row"); list.add("col"); list.add("lev"); return R.ok().add(locService.page(pageParam, pageParam.buildWrapper(true,list))); } @PreAuthorize("hasAuthority('manager:loc:list')") rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/Matnr.java
@@ -43,19 +43,19 @@ /** * 名称 */ @ApiModelProperty(value= "名称") @ApiModelProperty(value= "物料名称") private String name; /** * 编码 */ @ApiModelProperty(value= "编码") @ApiModelProperty(value= "物料编码") private String code; /** * 货主ID */ @ApiModelProperty(value= "货主ID") @ApiModelProperty(value= "货主标识") private Long shipperId; // @ApiModelProperty(value = "货主编码") @@ -64,7 +64,7 @@ /** * 分组ID(*) */ @ApiModelProperty(value= "分组ID(*)") @ApiModelProperty(value= "物料分组(*)") private Long groupId; /** @@ -82,7 +82,7 @@ /** * 规则代码 */ @ApiModelProperty(value= "规则代码") @ApiModelProperty(value= "批次规则标识") private Long rglarId; /** @@ -118,7 +118,7 @@ /** * 长*宽*高(m) */ @ApiModelProperty(value= "长*宽*高(m)") @ApiModelProperty(value= "尺寸(m)") private String size; /** rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/excel/MatnrsTemplate.java
@@ -27,9 +27,31 @@ private String name; @NotNull @Excel(name = "分类助记码*") @ExcelComment(example = "256874556") private String groupCode; @Excel(name = "物料编码*") @ExcelComment(example = "matnr123") private String code; @Excel(name = "货主标识") @ExcelComment(example = "123") private Long shipperId; @NotNull @Excel(name = "物料分组") @ExcelComment(example = "手机") private Long groupId; @Excel(name = "ERP编码") @ExcelComment(example = "erp001") private String platCode; @NotNull @Excel(name = "规格") @ExcelComment(example = "HW-148*68*10") private String spec; @NotNull @Excel(name = "分类名称*") @@ -40,11 +62,6 @@ @Excel(name = "物料助记码*") @ExcelComment(example = "P3528461569") private String erpCode; @NotNull @Excel(name = "规格") @ExcelComment(example = "HW-148*68*10") private String spec; @NotNull @Excel(name = "型号") @@ -59,7 +76,7 @@ @ExcelComment(notNull = false, example = "紫红色") private String color; @Excel(name = "大小") @Excel(name = "尺寸") @ExcelComment(notNull = false, example = "148*68*10") private String size; @@ -67,12 +84,12 @@ @ExcelComment(notNull = false, example = "新上市三折叠") private String describle; @Excel(name = "描述") @Excel(name = "标包数量") @ExcelComment(notNull = false, example = "新上市三折叠") private String nromNum; @NotNull @Excel(name = "主单位") @Excel(name = "单位") @ExcelComment(example = "部") private String unit; @@ -80,6 +97,15 @@ @ExcelComment(example = "部") private String purUnit; @Excel(name = "库位单位") @ExcelComment(example = "部") private String stockUnit; @NotNull @Excel(name = "分类助记码*") @ExcelComment(example = "256874556") private String groupCode; @Excel(name = "ABC类") @ExcelComment(notNull = false, example = "0") private String stockLevel; rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/QlyIsptItemServiceImpl.java
@@ -86,7 +86,7 @@ inspect.setIsptResult(QlyIsptResult.QLY_ISPT_RESULT_SECTION.val); } if (Double.compare(safeQty, inspect.getDlyQty()) == 0) { inspect.setIsptStatus(QlyIsptStatus.QLY_ISPT_STAS_DONE.val); // inspect.setIsptStatus(QlyIsptStatus.QLY_ISPT_STAS_DONE.val); inspect.setIsptResult(QlyIsptResult.QLY_ISPT_RESULT_EXCELLENT.val); } if (!qlyInspectService.updateById(inspect)) {