diff --git a/src/main/java/com/qs/serve/common/util/CodeGenUtil.java b/src/main/java/com/qs/serve/common/util/CodeGenUtil.java index a40f3936..1eef7d9e 100644 --- a/src/main/java/com/qs/serve/common/util/CodeGenUtil.java +++ b/src/main/java/com/qs/serve/common/util/CodeGenUtil.java @@ -24,6 +24,7 @@ public class CodeGenUtil { CostApply("cost_apply"), SalePlan("SalePlan"), Activity("activity"), + OmsOrder("OmsOrder"), Verification("verification"), Policy("policy"), Budget("Budget"), diff --git a/src/main/java/com/qs/serve/modules/bms/controller/api/BmsSupplierAddressApi.java b/src/main/java/com/qs/serve/modules/bms/controller/api/BmsSupplierAddressApi.java index ecc98710..5931860d 100644 --- a/src/main/java/com/qs/serve/modules/bms/controller/api/BmsSupplierAddressApi.java +++ b/src/main/java/com/qs/serve/modules/bms/controller/api/BmsSupplierAddressApi.java @@ -69,6 +69,15 @@ public class BmsSupplierAddressApi { return R.ok(bmsSupplierAddress); } + /** + * 获取默认地址 + * @return + */ + @GetMapping("/getDefaultOne") + public R getDefaultOne(){ + BmsSupplierAddress supplierAddress = bmsSupplierAddressService.getDefault(AuthContextUtils.getSupplierId()); + return R.ok(supplierAddress); + } /** * 根据ID更新 diff --git a/src/main/java/com/qs/serve/modules/exl/common/ExlConst.java b/src/main/java/com/qs/serve/modules/exl/common/ExlConst.java index 0bb7853e..e77d0466 100644 --- a/src/main/java/com/qs/serve/modules/exl/common/ExlConst.java +++ b/src/main/java/com/qs/serve/modules/exl/common/ExlConst.java @@ -15,6 +15,9 @@ public interface ExlConst { String TYPE_MONEY = "money"; String TYPE_STRING = "string"; + /** 业务类型 */ + String TYPE_CUSTOMER_CODE = "customerCode"; + String TYPE_USER_CODE = "userCode"; String TABLE_CONFIG_PARAM = "tb_config_cnf_id"; diff --git a/src/main/java/com/qs/serve/modules/exl/common/TableCreateSqlUtil.java b/src/main/java/com/qs/serve/modules/exl/common/TableCreateSqlUtil.java index d38c7ba2..c3d6a8d8 100644 --- a/src/main/java/com/qs/serve/modules/exl/common/TableCreateSqlUtil.java +++ b/src/main/java/com/qs/serve/modules/exl/common/TableCreateSqlUtil.java @@ -8,6 +8,8 @@ import java.util.HashMap; import java.util.List; import java.util.Map; +import static com.qs.serve.modules.exl.common.ExlConst.*; + /** * @author YenHex * @since 2023/8/14 @@ -15,12 +17,22 @@ import java.util.Map; public class TableCreateSqlUtil { public static final Map MYSQL_DATA_MAP = new HashMap<>(); + + /** + * 业务的默认数据类型 + */ + public static final String DEFAULT_STRING = "string"; + static { + //数据类型 MYSQL_DATA_MAP.put("int","bigint"); MYSQL_DATA_MAP.put("string","varchar(300)"); MYSQL_DATA_MAP.put("date","date"); MYSQL_DATA_MAP.put("money","decimal(11, 2)"); MYSQL_DATA_MAP.put("datetime","datetime"); + //业务类型 + MYSQL_DATA_MAP.put(TYPE_CUSTOMER_CODE,"varchar(50)"); + MYSQL_DATA_MAP.put(TYPE_USER_CODE,"varchar(50)"); } public static final String COLUMN_NULL = " null "; @@ -31,13 +43,29 @@ public class TableCreateSqlUtil { StringBuffer result = new StringBuffer("CREATE TABLE `"+tableName+"` ("); result.append(" `union_row_id` varchar(255) NOT NULL COMMENT 'union_row_id',"); for (ExlColumnConf column : columnList) { - String columnType = MYSQL_DATA_MAP.get(column.getColumnType())==null?column.getColumnType():MYSQL_DATA_MAP.get(column.getColumnType()); + String typeParam = column.getColumnType(); + String columnType = MYSQL_DATA_MAP.get(typeParam)==null?column.getColumnType():MYSQL_DATA_MAP.get(typeParam); String nullValue = column.getNotNullFlag().equals(1) ? COLUMN_NOT_NULL:COLUMN_NULL; result.append("`"+column.getColumnName()+"` "+ columnType + nullValue + COLUMN_COMMENT + " '"+ column.getColumnHeader()+"',"); + //以下,拓展业务类型数据库列 + if(typeParam.equals(TYPE_CUSTOMER_CODE)){ + result.append("`"+column.getColumnName()+"_ext_cus_name` "+ + columnType + + COLUMN_NULL + + COLUMN_COMMENT + " '"+ + column.getColumnHeader().replace("编码","")+"名称',"); + } + if(typeParam.equals(TYPE_USER_CODE)){ + result.append("`"+column.getColumnName()+"_ext_usr_name` "+ + columnType + + COLUMN_NULL + + COLUMN_COMMENT + " '"+ + column.getColumnHeader().replace("编码","")+"名称',"); + } } result.append(" PRIMARY KEY (`union_row_id`) USING BTREE "); return result.append(") COMMENT = '"+tableRemark+"' ").toString(); diff --git a/src/main/java/com/qs/serve/modules/exl/controller/ExlTableConfController.java b/src/main/java/com/qs/serve/modules/exl/controller/ExlTableConfController.java index 883138f2..87aef41c 100644 --- a/src/main/java/com/qs/serve/modules/exl/controller/ExlTableConfController.java +++ b/src/main/java/com/qs/serve/modules/exl/controller/ExlTableConfController.java @@ -6,17 +6,17 @@ import com.qs.serve.common.model.dto.PageVo; import com.qs.serve.common.model.dto.R; import com.qs.serve.common.model.enums.BizType; import com.qs.serve.common.model.enums.SystemModule; -import com.qs.serve.common.util.PageUtil; -import com.qs.serve.common.util.CopierUtil; -import com.qs.serve.common.util.StringUtils; -import com.qs.serve.common.util.WordUtil; +import com.qs.serve.common.util.*; import com.qs.serve.modules.exl.common.ExlConst; import com.qs.serve.modules.exl.common.QsSqlSessionUtil; import com.qs.serve.modules.exl.common.TableCreateSqlUtil; import com.qs.serve.modules.exl.entity.ExlColumnConf; +import com.qs.serve.modules.exl.entity.ExlTableUser; +import com.qs.serve.modules.exl.entity.bo.ExlTableUserBo; import com.qs.serve.modules.exl.entity.dto.ExlQueryFieldDto; import com.qs.serve.modules.exl.entity.dto.ExlTableBo; import com.qs.serve.modules.exl.service.ExlColumnConfService; +import com.qs.serve.modules.exl.service.ExlTableUserService; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.apache.ibatis.session.SqlSession; @@ -49,6 +49,7 @@ public class ExlTableConfController { private SqlSessionTemplate sqlSessionTemplate; private ExlTableConfService exlTableConfService; private ExlColumnConfService exlColumnConfService; + private ExlTableUserService exlTableUserService; /** * 列表 @@ -86,33 +87,94 @@ public class ExlTableConfController { LambdaQueryWrapper columnLqw = new LambdaQueryWrapper<>(); columnLqw.eq(ExlColumnConf::getTableConfId,id); List columnConfList = exlColumnConfService.list(columnLqw); - exlTableConf.setColumnList(columnConfList); + //加载的列拓展 + List resultColumnConfList = new ArrayList<>(); + for (ExlColumnConf columnConf : columnConfList) { + columnConf.setHideOnEditFlag(0); + resultColumnConfList.add(columnConf); + if(columnConf.getColumnType().equals(ExlConst.TYPE_CUSTOMER_CODE)){ + ExlColumnConf conf = new ExlColumnConf(); + conf.setColumnName(columnConf.getColumnName()+"_ext_cus_name"); + conf.setColumnHeader(columnConf.getColumnHeader()+"(名称)"); + conf.setColumnType(TableCreateSqlUtil.DEFAULT_STRING); + conf.setSort(0); + conf.setHideOnEditFlag(1); + resultColumnConfList.add(conf); + } + if(columnConf.getColumnType().equals(ExlConst.TYPE_USER_CODE)){ + ExlColumnConf conf = new ExlColumnConf(); + conf.setColumnName(columnConf.getColumnName()+"_ext_usr_name"); + conf.setColumnHeader(columnConf.getColumnHeader()+"(名称)"); + conf.setColumnType(TableCreateSqlUtil.DEFAULT_STRING); + conf.setSort(0); + conf.setHideOnEditFlag(1); + resultColumnConfList.add(conf); + } + } + exlTableConf.setColumnList(resultColumnConfList); + //加载管理员 + LambdaQueryWrapper tableUserLqw = new LambdaQueryWrapper<>(); + tableUserLqw.eq(ExlTableUser::getTableConfId,id); + List tableUsers = exlTableUserService.list(tableUserLqw); + exlTableConf.setAdminList(tableUsers); //组装查询参数列表 List queryColumn = columnConfList.stream() .filter(a->a.getConditionFlag().equals(1) &&!a.getColumnType().equals(ExlConst.TYPE_MONEY)).collect(Collectors.toList()); List queryFieldList = new ArrayList<>(); for (ExlColumnConf columnConf : queryColumn) { - if(columnConf.getColumnType().contains(ExlConst.DATE_TYPE)){ + String columnType = columnConf.getColumnType(); + if(columnType.contains(ExlConst.DATE_TYPE)){ ExlQueryFieldDto startDto = new ExlQueryFieldDto(); startDto.setField(ExlConst.PRE_COLUMN_START + columnConf.getColumnName()); - startDto.setType(columnConf.getColumnType()); + startDto.setType(columnType); startDto.setLabel(columnConf.getColumnHeader()+ExlConst.PRE_COLUMN_START_LABEL); queryFieldList.add(startDto); ExlQueryFieldDto fieldDto = new ExlQueryFieldDto(); fieldDto.setField(ExlConst.PRE_COLUMN_END + columnConf.getColumnName()); - fieldDto.setType(columnConf.getColumnType()); + fieldDto.setType(columnType); fieldDto.setLabel(columnConf.getColumnHeader()+ExlConst.PRE_COLUMN_END_LABEL); queryFieldList.add(fieldDto); }else { - ExlQueryFieldDto fieldDto = new ExlQueryFieldDto(); - fieldDto.setField(columnConf.getColumnName()); - fieldDto.setType(columnConf.getColumnType()); - fieldDto.setLabel(columnConf.getColumnHeader()); - queryFieldList.add(fieldDto); + if(columnType.equals(ExlConst.TYPE_CUSTOMER_CODE)){ + //业务类型-客户 + ExlQueryFieldDto fieldDto = new ExlQueryFieldDto(); + fieldDto.setField(columnConf.getColumnName()); + fieldDto.setType(TableCreateSqlUtil.DEFAULT_STRING); + fieldDto.setLabel(columnConf.getColumnHeader()); + queryFieldList.add(fieldDto); + //拓展名称 + ExlQueryFieldDto fieldDtoName = new ExlQueryFieldDto(); + fieldDtoName.setField(columnConf.getColumnName()+"_ext_cus_name"); + fieldDtoName.setType(TableCreateSqlUtil.DEFAULT_STRING); + fieldDtoName.setLabel(columnConf.getColumnHeader()+"(名称)"); + queryFieldList.add(fieldDtoName); + + }else if(columnType.equals(ExlConst.TYPE_USER_CODE)){ + //业务类型-用户 + ExlQueryFieldDto fieldDto = new ExlQueryFieldDto(); + fieldDto.setField(columnConf.getColumnName()); + fieldDto.setType(TableCreateSqlUtil.DEFAULT_STRING); + fieldDto.setLabel(columnConf.getColumnHeader()); + queryFieldList.add(fieldDto); + //拓展名称 + ExlQueryFieldDto fieldDtoName = new ExlQueryFieldDto(); + fieldDtoName.setField(columnConf.getColumnName()+"_ext_usr_name"); + fieldDtoName.setType(TableCreateSqlUtil.DEFAULT_STRING); + fieldDtoName.setLabel(columnConf.getColumnHeader()+"(名称)"); + queryFieldList.add(fieldDtoName); + }else { + //非业务类型 + ExlQueryFieldDto fieldDto = new ExlQueryFieldDto(); + fieldDto.setField(columnConf.getColumnName()); + fieldDto.setType(columnConf.getColumnType()); + fieldDto.setLabel(columnConf.getColumnHeader()); + queryFieldList.add(fieldDto); + } } } exlTableConf.setQueryList(queryFieldList); + exlTableConf.setAdminFlag(exlTableUserService.checkAdmin(exlTableConf.getId(), AuthContextUtils.getSysUserId())); return R.ok(exlTableConf); } @@ -201,5 +263,16 @@ public class ExlTableConfController { return R.isTrue(result); } + /** + * 配置数据中心管理员 + * @param param + * @return + */ + @PostMapping("/confAdmins") + public R tableUser(@RequestBody ExlTableUserBo param){ + exlTableUserService.confAdmins(param); + return R.ok(); + } + } diff --git a/src/main/java/com/qs/serve/modules/exl/controller/ExlTableDataController.java b/src/main/java/com/qs/serve/modules/exl/controller/ExlTableDataController.java index 58c7d1d3..4b179315 100644 --- a/src/main/java/com/qs/serve/modules/exl/controller/ExlTableDataController.java +++ b/src/main/java/com/qs/serve/modules/exl/controller/ExlTableDataController.java @@ -7,10 +7,9 @@ import com.qs.serve.common.model.dto.PageVo; import com.qs.serve.common.model.dto.R; import com.qs.serve.common.model.enums.BizType; import com.qs.serve.common.model.enums.SystemModule; -import com.qs.serve.common.util.IdUtil; -import com.qs.serve.common.util.JsonUtil; -import com.qs.serve.common.util.PageUtil; -import com.qs.serve.common.util.StringUtils; +import com.qs.serve.common.util.*; +import com.qs.serve.modules.bms.entity.BmsSupplier; +import com.qs.serve.modules.bms.mapper.BmsSupplierMapper; import com.qs.serve.modules.exl.common.ExlConst; import com.qs.serve.modules.exl.common.QsSqlSessionUtil; import com.qs.serve.modules.exl.common.TableCreateSqlUtil; @@ -23,6 +22,12 @@ import com.qs.serve.modules.exl.entity.dto.ExlTableBo; import com.qs.serve.modules.exl.mapper.ExlTableConfMapper; import com.qs.serve.modules.exl.service.ExlColumnConfService; import com.qs.serve.modules.exl.service.ExlTableConfService; +import com.qs.serve.modules.exl.service.ExlTableUserService; +import com.qs.serve.modules.his.entity.HisUserSupplier; +import com.qs.serve.modules.his.mapper.HisUserSupplierMapper; +import com.qs.serve.modules.sys.entity.SysUser; +import com.qs.serve.modules.sys.mapper.SysUserMapper; +import com.qs.serve.modules.sys.service.SysPostUserService; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.jetbrains.annotations.NotNull; @@ -31,12 +36,11 @@ import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.time.LocalDateTime; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; +import java.util.*; import java.util.stream.Collectors; +import static com.qs.serve.modules.exl.common.TableCreateSqlUtil.DEFAULT_STRING; + /** * 动态Excel表 数据查询 * @author YenHex @@ -50,8 +54,13 @@ public class ExlTableDataController { private ExlTableConfService exlTableConfService; private ExlColumnConfService exlColumnConfService; + private ExlTableUserService exlTableUserService; private SqlSessionTemplate sqlSessionTemplate; private ExlTableConfMapper exlTableConfMapper; + private SysUserMapper sysUserMapper; + private SysPostUserService postUserService; + private HisUserSupplierMapper hisUserSupplierMapper; + private BmsSupplierMapper bmsSupplierMapper; /** * 翻页查询 @@ -72,7 +81,8 @@ public class ExlTableDataController { columnLqw.orderByAsc(ExlColumnConf::getSort); List columnList = exlColumnConfService.list(columnLqw); // query - Map queryMap = buildQueryMap(map, columnList); + boolean adminFlag = false; + Map queryMap = buildQueryMap(map, columnList,adminFlag); String targetTableName = ExlConst.TABLE_NAME_PRE + tableConf.getTableName(); Long count = exlTableConfMapper.countData(targetTableName,queryMap); PageVo vo = new PageVo(); @@ -94,13 +104,19 @@ public class ExlTableDataController { @NotNull - private Map buildQueryMap(Map map, List columnList) { + private Map buildQueryMap(Map map, List columnList,Boolean adminFlag) { Map queryMap = new HashMap<>(10); // condition List ge_conditions = new ArrayList<>(); List le_conditions = new ArrayList<>(); List eq_conditions = new ArrayList<>(); List like_conditions = new ArrayList<>(); + List in_conditions = new ArrayList<>(); + + //map赋值业务参数的key + map.putIfAbsent(ExlConst.TYPE_USER_CODE, ""); + map.putIfAbsent(ExlConst.TYPE_CUSTOMER_CODE, ""); + if(!map.isEmpty()){ for (String columnName : map.keySet()) { String searchValue = map.get(columnName); @@ -112,24 +128,87 @@ public class ExlTableDataController { currColumnConf = columnConf; break; } + //拓展业务查询条件 + String extColumnName = null; + if(columnConf.getColumnType().equals(ExlConst.TYPE_USER_CODE)){ + extColumnName = columnConf.getColumnName()+"_ext_usr_name"; + }else if (columnConf.getColumnType().equals(ExlConst.TYPE_CUSTOMER_CODE)){ + extColumnName = columnConf.getColumnName()+"_ext_cus_name"; + } + if(extColumnName!=null&&extColumnName.equals(orgColumn)){ + ExlColumnConf conf = new ExlColumnConf(); + conf.setColumnName(extColumnName); + conf.setColumnType(DEFAULT_STRING); + conf.setScope(0); + currColumnConf = conf; + break; + } } if(currColumnConf==null){ continue; } + String colType = currColumnConf.getColumnType(); + if(!adminFlag){ + // 权限范围:0->无;1->本人;2->下属;3->全部(本人级下属) + Integer scope = currColumnConf.getScope(); + Set values = new HashSet<>(); + // 业务类型 + String userId = AuthContextUtils.getSysUserId(); + SysUser sysUser = sysUserMapper.selectById(userId); + if(scope>0){ + if (colType.equals(ExlConst.TYPE_USER_CODE)){ + values.add("0"); + if(scope==1){ + values.add(sysUser.getCode()); + }else { + List childIds = postUserService.listByChildIds(AuthContextUtils.getSysUserId()); + if(childIds.size()>0){ + List sysUsers = sysUserMapper.selectBatchIds(childIds); + List codes = sysUsers.stream().map(a->a.getCode()).collect(Collectors.toList()); + values.addAll(codes); + } + if (scope==3){ + values.add(sysUser.getCode()); + } + } + ExlConditionDto conditionDto = new ExlConditionDto(orgColumn,values); + in_conditions.add(conditionDto); + }else if (colType.equals(ExlConst.TYPE_CUSTOMER_CODE)){ + values.add("0"); + List userIds = new ArrayList<>(); + userIds.add(userId); + if(scope>1){ + List childIds = postUserService.listByChildIds(AuthContextUtils.getSysUserId()); + userIds.addAll(childIds); + } + LambdaQueryWrapper husLqw = new LambdaQueryWrapper<>(); + husLqw.in(HisUserSupplier::getUserId,userIds); + husLqw.select(HisUserSupplier::getSupplierCode); + List hisUserSuppliers = hisUserSupplierMapper.selectList(husLqw); + List supplierCodes = hisUserSuppliers.stream() + .map(HisUserSupplier::getSupplierCode).distinct().collect(Collectors.toList()); + values.addAll(supplierCodes); + ExlConditionDto conditionDto = new ExlConditionDto(orgColumn,values); + in_conditions.add(conditionDto); + } + } + } + + //基础的数据类型 if(columnName.contains(ExlConst.PRE_COLUMN_START)){ ExlConditionDto conditionDto = new ExlConditionDto(orgColumn,searchValue); ge_conditions.add(conditionDto); }else if (columnName.contains(ExlConst.PRE_COLUMN_END)){ ExlConditionDto conditionDto = new ExlConditionDto(orgColumn,searchValue); - if(currColumnConf.getColumnType().equals(ExlConst.DATETIME_TYPE)){ + if(colType.equals(ExlConst.DATETIME_TYPE)){ conditionDto.setValue(searchValue+" 23:59:59"); } le_conditions.add(conditionDto); }else { ExlConditionDto conditionDto = new ExlConditionDto(columnName,searchValue); - if (currColumnConf.getColumnType().equals(ExlConst.TYPE_INT)){ + if (colType.equals(ExlConst.TYPE_INT)){ eq_conditions.add(conditionDto); - }else if (currColumnConf.getColumnType().equals(ExlConst.TYPE_STRING)){ + }else{ like_conditions.add(conditionDto); } } @@ -139,6 +218,7 @@ public class ExlTableDataController { queryMap.put("geList",ge_conditions); queryMap.put("eqList",eq_conditions); queryMap.put("likeList",like_conditions); + queryMap.put("inBizList",in_conditions); return queryMap; } @@ -159,7 +239,8 @@ public class ExlTableDataController { columnLqw.orderByAsc(ExlColumnConf::getSort); List columnList = exlColumnConfService.list(columnLqw); // query - Map queryMap = buildQueryMap(map, columnList); + boolean adminFlag = exlTableUserService.checkAdmin(tableConf.getId(),AuthContextUtils.getSysUserId())>0; + Map queryMap = buildQueryMap(map, columnList,adminFlag); String targetTableName = ExlConst.TABLE_NAME_PRE + tableConf.getTableName(); List> list = exlTableConfMapper.listData(targetTableName,queryMap); this.formatListData(list); @@ -204,7 +285,15 @@ public class ExlTableDataController { //insert into table (cloumns) values (vals),(vals) StringBuilder insertSql = new StringBuilder("insert into "+targetTableName +"( `union_row_id`,"); for (int i = 0; i < columnList.size(); i++) { - insertSql.append(" `"+columnList.get(i).getColumnName()+"` "); + ExlColumnConf columnConf = columnList.get(i); + insertSql.append(" `"+columnConf.getColumnName()+"` "); + if(columnConf.getColumnType().equals(ExlConst.TYPE_USER_CODE)){ + insertSql.append(","); + insertSql.append(" `"+columnConf.getColumnName()+"_ext_usr_name` "); + }else if(columnConf.getColumnType().equals(ExlConst.TYPE_CUSTOMER_CODE)){ + insertSql.append(","); + insertSql.append(" `"+columnConf.getColumnName()+"_ext_cus_name` "); + } if(i+1 lqw = new LambdaQueryWrapper<>(); + lqw.eq(SysUser::getCode,string); + lqw.select(SysUser::getCode,SysUser::getName); + List sysUsers = sysUserMapper.selectList(lqw); + if (sysUsers.size()>0){ + String name = sysUsers.get(0).getName(); + insertSql.append("'"+name+"'"); + } + }else if(columnConf.getColumnType().equals(ExlConst.TYPE_CUSTOMER_CODE)){ + insertSql.append(","); + LambdaQueryWrapper lqw = new LambdaQueryWrapper<>(); + lqw.eq(BmsSupplier::getCode,string); + lqw.select(BmsSupplier::getCode,BmsSupplier::getName); + List supplierList = bmsSupplierMapper.selectList(lqw); + if (supplierList.size()>0){ + String name = supplierList.get(0).getName(); + insertSql.append("'"+name+"'"); + } + } if(i+1无;1->本人;2->下属;3->全部(本人级下属) */ + private Integer scope; + private Integer sort; /** 创建时间 */ @@ -92,6 +95,9 @@ public class ExlColumnConf implements Serializable { @JsonProperty private String delFlag; + /** 在编辑页隐藏标识(0:显示;1:隐藏) */ + @TableField(exist = false) + private Integer hideOnEditFlag; public static ExlColumnConf toNewObject(ExlColumnConf source){ ExlColumnConf columnConf = new ExlColumnConf(); diff --git a/src/main/java/com/qs/serve/modules/exl/entity/ExlTableConf.java b/src/main/java/com/qs/serve/modules/exl/entity/ExlTableConf.java index 9a8b8387..c9e0c52a 100644 --- a/src/main/java/com/qs/serve/modules/exl/entity/ExlTableConf.java +++ b/src/main/java/com/qs/serve/modules/exl/entity/ExlTableConf.java @@ -98,6 +98,18 @@ public class ExlTableConf implements Serializable { @TableField(exist = false) private List queryList; + /** + * 管理员列表 + */ + @TableField(exist = false) + private List adminList; + + /** + * 是否管理员 + */ + @TableField(exist = false) + private Integer adminFlag; + public static ExlTableConf toNewObject(ExlTableConf source){ ExlTableConf tableConf = new ExlTableConf(); tableConf.setId(source.getId()); diff --git a/src/main/java/com/qs/serve/modules/exl/entity/ExlTableUser.java b/src/main/java/com/qs/serve/modules/exl/entity/ExlTableUser.java new file mode 100644 index 00000000..abc73750 --- /dev/null +++ b/src/main/java/com/qs/serve/modules/exl/entity/ExlTableUser.java @@ -0,0 +1,106 @@ +package com.qs.serve.modules.exl.entity; + +import java.time.LocalDate; +import java.io.Serializable; +import java.math.BigDecimal; +import java.time.LocalDateTime; + +import com.baomidou.mybatisplus.annotation.*; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.Data; +import org.hibernate.validator.constraints.Length; +import org.springframework.format.annotation.DateTimeFormat; + +import javax.validation.constraints.NotNull; +import javax.validation.constraints.NotBlank; + +/** + * 实体类 + * @author YenHex + * @since 2023-09-25 + */ +@Data +@TableName("exl_table_user") +public class ExlTableUser implements Serializable { + + private static final long serialVersionUID = 1L; + + /** id */ + @TableId(type = IdType.AUTO) + private Long id; + + /** 表配置id */ + @NotNull(message = "表配置id不能为空") + private Long tableConfId; + + /** 用户id */ + @NotBlank(message = "用户id不能为空") + @Length(max = 255,message = "用户id长度不能超过255字") + private String userId; + + /** 用户编码 */ + @NotBlank(message = "用户编码不能为空") + @Length(max = 255,message = "用户编码长度不能超过255字") + private String userCode; + + /** 用户名称 */ + @NotBlank(message = "用户名称不能为空") + @Length(max = 255,message = "用户名称长度不能超过255字") + private String userName; + + /** 备注 */ + @Length(max = 255,message = "备注长度不能超过255字") + private String remark; + + /** 创建时间 */ + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") + @TableField(fill = FieldFill.INSERT) + private LocalDateTime createTime; + + /** 最后更新时间 */ + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") + @TableField(fill = FieldFill.UPDATE) + private LocalDateTime updateTime; + + /** 所属租户 */ + @JsonIgnore + @JsonProperty + private String tenantId; + + /** 创建人 */ + @TableField(fill = FieldFill.INSERT) + private String createBy; + + /** 更新人 */ + @TableField(fill = FieldFill.UPDATE) + private String updateBy; + + /** 逻辑删除标记(0:显示;1:隐藏) */ + @JsonIgnore + @JsonProperty + private String delFlag; + + + public static ExlTableUser toNewObject(ExlTableUser source){ + ExlTableUser tableUser = new ExlTableUser(); + tableUser.setId(source.getId()); + tableUser.setTableConfId(source.getTableConfId()); + tableUser.setUserId(source.getUserId()); + tableUser.setUserCode(source.getUserCode()); + tableUser.setUserName(source.getUserName()); + tableUser.setRemark(source.getRemark()); + tableUser.setCreateTime(source.getCreateTime()); + tableUser.setUpdateTime(source.getUpdateTime()); + tableUser.setTenantId(source.getTenantId()); + tableUser.setCreateBy(source.getCreateBy()); + tableUser.setUpdateBy(source.getUpdateBy()); + tableUser.setDelFlag(source.getDelFlag()); + return tableUser; + } + +} + diff --git a/src/main/java/com/qs/serve/modules/exl/entity/bo/ExlTableUserBo.java b/src/main/java/com/qs/serve/modules/exl/entity/bo/ExlTableUserBo.java new file mode 100644 index 00000000..f0083c87 --- /dev/null +++ b/src/main/java/com/qs/serve/modules/exl/entity/bo/ExlTableUserBo.java @@ -0,0 +1,18 @@ +package com.qs.serve.modules.exl.entity.bo; + +import lombok.Data; + +import java.util.List; + +/** + * @author YenHex + * @since 2023/9/25 + */ +@Data +public class ExlTableUserBo { + + private Long tableConfId; + + private List userIds; + +} diff --git a/src/main/java/com/qs/serve/modules/exl/entity/dto/ExlConditionDto.java b/src/main/java/com/qs/serve/modules/exl/entity/dto/ExlConditionDto.java index 74e75b53..d71ac344 100644 --- a/src/main/java/com/qs/serve/modules/exl/entity/dto/ExlConditionDto.java +++ b/src/main/java/com/qs/serve/modules/exl/entity/dto/ExlConditionDto.java @@ -3,16 +3,29 @@ package com.qs.serve.modules.exl.entity.dto; import lombok.AllArgsConstructor; import lombok.Data; +import java.util.Set; + /** * @author YenHex * @since 2023/8/15 */ @Data -@AllArgsConstructor public class ExlConditionDto { String column; String value; + Set values; + + + public ExlConditionDto(String column, String value) { + this.column = column; + this.value = value; + } + + public ExlConditionDto(String column, Set values) { + this.column = column; + this.values = values; + } } diff --git a/src/main/java/com/qs/serve/modules/exl/entity/dto/ExlTableBo.java b/src/main/java/com/qs/serve/modules/exl/entity/dto/ExlTableBo.java index b97885e0..74bbb832 100644 --- a/src/main/java/com/qs/serve/modules/exl/entity/dto/ExlTableBo.java +++ b/src/main/java/com/qs/serve/modules/exl/entity/dto/ExlTableBo.java @@ -3,6 +3,7 @@ package com.qs.serve.modules.exl.entity.dto; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableId; import com.qs.serve.modules.exl.entity.ExlColumnConf; +import com.qs.serve.modules.exl.entity.bo.ExlTableUserBo; import lombok.Data; import org.hibernate.validator.constraints.Length; @@ -36,4 +37,6 @@ public class ExlTableBo { private List columnList; + /** 管理员配置 */ + private ExlTableUserBo adminParam; } diff --git a/src/main/java/com/qs/serve/modules/exl/mapper/ExlTableUserMapper.java b/src/main/java/com/qs/serve/modules/exl/mapper/ExlTableUserMapper.java new file mode 100644 index 00000000..d1135d0f --- /dev/null +++ b/src/main/java/com/qs/serve/modules/exl/mapper/ExlTableUserMapper.java @@ -0,0 +1,14 @@ +package com.qs.serve.modules.exl.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.qs.serve.modules.exl.entity.ExlTableUser; + +/** + * Mapper + * @author YenHex + * @date 2023-09-25 + */ +public interface ExlTableUserMapper extends BaseMapper { + +} + diff --git a/src/main/java/com/qs/serve/modules/exl/service/ExlTableUserService.java b/src/main/java/com/qs/serve/modules/exl/service/ExlTableUserService.java new file mode 100644 index 00000000..75250dff --- /dev/null +++ b/src/main/java/com/qs/serve/modules/exl/service/ExlTableUserService.java @@ -0,0 +1,19 @@ +package com.qs.serve.modules.exl.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.qs.serve.modules.exl.entity.ExlTableUser; +import com.qs.serve.modules.exl.entity.bo.ExlTableUserBo; + +/** + * 服务接口 + * @author YenHex + * @date 2023-09-25 + */ +public interface ExlTableUserService extends IService { + + void confAdmins(ExlTableUserBo param); + + Integer checkAdmin(Long tableConfId,String userId); + +} + diff --git a/src/main/java/com/qs/serve/modules/exl/service/impl/ExlTableConfServiceImpl.java b/src/main/java/com/qs/serve/modules/exl/service/impl/ExlTableConfServiceImpl.java index 12987c9a..4efbe518 100644 --- a/src/main/java/com/qs/serve/modules/exl/service/impl/ExlTableConfServiceImpl.java +++ b/src/main/java/com/qs/serve/modules/exl/service/impl/ExlTableConfServiceImpl.java @@ -5,8 +5,10 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.qs.serve.common.util.Assert; import com.qs.serve.modules.exl.common.ExlConst; import com.qs.serve.modules.exl.entity.ExlColumnConf; +import com.qs.serve.modules.exl.entity.bo.ExlTableUserBo; import com.qs.serve.modules.exl.entity.dto.ExlTableBo; import com.qs.serve.modules.exl.service.ExlColumnConfService; +import com.qs.serve.modules.exl.service.ExlTableUserService; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; @@ -16,6 +18,7 @@ import com.qs.serve.modules.exl.mapper.ExlTableConfMapper; import org.springframework.transaction.annotation.Transactional; import java.util.List; +import java.util.stream.Collectors; /** * 表配置 服务实现类 @@ -28,6 +31,7 @@ import java.util.List; public class ExlTableConfServiceImpl extends ServiceImpl implements ExlTableConfService { private final ExlColumnConfService columnConfService; + private final ExlTableUserService tableUserService; @Override @Transactional(rollbackFor = Exception.class) @@ -46,6 +50,11 @@ public class ExlTableConfServiceImpl extends ServiceImpl columnLqw = new LambdaQueryWrapper<>(); columnLqw.eq(ExlColumnConf::getTableConfId,param.getId()); columnConfService.remove(columnLqw); - List columnList = param.getColumnList(); + List columnList = param.getColumnList().stream().filter( + //忽略业务拓展列 + a->!a.getColumnName().contains("_ext_cus_name") + &&!a.getColumnName().contains("_ext_usr_name") + ).collect(Collectors.toList()); columnList.forEach(a->{ a.setTableConfId(tableId); if(a.getColumnType().equals(ExlConst.TYPE_MONEY)){ @@ -72,6 +85,11 @@ public class ExlTableConfServiceImpl extends ServiceImpl implements ExlTableUserService { + + private SysUserMapper sysUserMapper; + + @Override + public void confAdmins(ExlTableUserBo param) { + LambdaQueryWrapper rmlqw = new LambdaQueryWrapper<>(); + rmlqw.eq(ExlTableUser::getTableConfId,param.getTableConfId()); + super.remove(rmlqw); + if(CollectionUtil.isNotEmpty(param.getUserIds())){ + List list = new ArrayList<>(); + for (String userId : param.getUserIds()) { + SysUser sysUser = sysUserMapper.selectById(userId); + ExlTableUser tableUser = new ExlTableUser(); + tableUser.setTableConfId(param.getTableConfId()); + tableUser.setUserId(sysUser.getId()); + tableUser.setUserCode(sysUser.getCode()); + tableUser.setUserName(sysUser.getName()); + list.add(tableUser); + } + super.saveBatch(list); + } + } + + @Override + public Integer checkAdmin(Long tableConfId, String userId) { + LambdaQueryWrapper lqw = new LambdaQueryWrapper<>(); + lqw.eq(ExlTableUser::getTableConfId,tableConfId); + lqw.eq(ExlTableUser::getUserId,userId); + return super.count(lqw)>0?1:0; + } +} + diff --git a/src/main/java/com/qs/serve/modules/goods/controller/api/GoodsSpuApi.java b/src/main/java/com/qs/serve/modules/goods/controller/api/GoodsSpuApi.java index d8b4755c..dd586ef6 100644 --- a/src/main/java/com/qs/serve/modules/goods/controller/api/GoodsSpuApi.java +++ b/src/main/java/com/qs/serve/modules/goods/controller/api/GoodsSpuApi.java @@ -61,6 +61,15 @@ public class GoodsSpuApi { .or().eq(GoodsSpu::getCategoryThird,selectCateId); }); } + List selectCateIds = param.getSelectCateIds(); + if(selectCateIds!=null&&selectCateIds.size()>0){ + spuWrapper.and(qw->{ + qw.in(GoodsSpu::getCategoryFirst,selectCateIds) + .or().in(GoodsSpu::getCategoryLast,selectCateIds) + .or().in(GoodsSpu::getCategorySecond,selectCateIds) + .or().in(GoodsSpu::getCategoryThird,selectCateIds); + }); + } spuWrapper.eq(GoodsSpu::getShelf,1); spuWrapper.orderByDesc(GoodsSpu::getSort); List list = goodsSpuService.list(spuWrapper); diff --git a/src/main/java/com/qs/serve/modules/goods/entity/GoodsSpu.java b/src/main/java/com/qs/serve/modules/goods/entity/GoodsSpu.java index 554759ce..b0471043 100644 --- a/src/main/java/com/qs/serve/modules/goods/entity/GoodsSpu.java +++ b/src/main/java/com/qs/serve/modules/goods/entity/GoodsSpu.java @@ -141,5 +141,8 @@ public class GoodsSpu implements Serializable { @TableField(exist = false) private List selectIds; + @TableField(exist = false) + private List selectCateIds; + } diff --git a/src/main/java/com/qs/serve/modules/oms/controller/OmsOrderItemController.java b/src/main/java/com/qs/serve/modules/oms/controller/OmsOrderItemController.java index 4cafae52..b68d223b 100644 --- a/src/main/java/com/qs/serve/modules/oms/controller/OmsOrderItemController.java +++ b/src/main/java/com/qs/serve/modules/oms/controller/OmsOrderItemController.java @@ -37,7 +37,6 @@ public class OmsOrderItemController { * @return */ @GetMapping("/listByOrderId/{orderId}") - @PreAuthorize("hasRole('oms:orderItem:query')") public R> listByOrderId(@PathVariable("orderId")Long orderId){ LambdaQueryWrapper lqw = new LambdaQueryWrapper<>(); lqw.eq(OmsOrderItem::getOrderId,orderId); @@ -52,7 +51,6 @@ public class OmsOrderItemController { */ @GetMapping("/getById/{id}") @SysLog(module = SystemModule.BASE, title = "订单明细", biz = BizType.QUERY) - @PreAuthorize("hasRole('oms:orderItem:query')") public R getById(@PathVariable("id") String id){ OmsOrderItem omsOrderItem = omsOrderItemService.getById(id); return R.ok(omsOrderItem); diff --git a/src/main/java/com/qs/serve/modules/oms/controller/api/OmsOrderApi.java b/src/main/java/com/qs/serve/modules/oms/controller/api/OmsOrderApi.java index 43601478..abdafb8a 100644 --- a/src/main/java/com/qs/serve/modules/oms/controller/api/OmsOrderApi.java +++ b/src/main/java/com/qs/serve/modules/oms/controller/api/OmsOrderApi.java @@ -9,6 +9,8 @@ import com.qs.serve.common.model.enums.SystemModule; import com.qs.serve.common.util.AuthContextUtils; import com.qs.serve.common.util.PageUtil; import com.qs.serve.modules.bms.entity.BmsSupplier; +import com.qs.serve.modules.bms.entity.BmsSupplierAddress; +import com.qs.serve.modules.bms.service.BmsSupplierAddressService; import com.qs.serve.modules.oms.entity.OmsOrder; import com.qs.serve.modules.oms.entity.OmsOrderItem; import com.qs.serve.modules.oms.entity.bo.OmsCancelOrder; @@ -17,6 +19,8 @@ import com.qs.serve.modules.oms.entity.bo.OmsOrderPcBo; import com.qs.serve.modules.oms.entity.vo.OmsConfirmOrderResult; import com.qs.serve.modules.oms.service.OmsOrderItemService; import com.qs.serve.modules.oms.service.OmsOrderService; +import com.qs.serve.modules.sys.entity.SysUser; +import com.qs.serve.modules.sys.service.SysUserService; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.web.bind.annotation.*; @@ -37,6 +41,8 @@ public class OmsOrderApi { private OmsOrderService omsOrderService; private OmsOrderItemService omsOrderItemService; + private BmsSupplierAddressService bmsSupplierAddressService; + private SysUserService sysUserService; /** * 确认订单 @@ -49,7 +55,7 @@ public class OmsOrderApi { } /** - * 创建订单(PC) + * 创建订单(H5) * @param omsOrderBo * @return */ @@ -99,6 +105,28 @@ public class OmsOrderApi { return R.byPageHelperList(list); } + /** + * 翻页查询(PC,我的业务订单) + * @param param + * @return + */ + @GetMapping("/page4pc") + public R> getPage4Pc(OmsOrder param){ + PageUtil.startPage(); + LambdaQueryWrapper orderWrapper = new LambdaQueryWrapper<>(param); + orderWrapper.eq(OmsOrder::getUserId,AuthContextUtils.getSysUserId()); + List list = omsOrderService.list(orderWrapper); + for (OmsOrder order : list) { + BmsSupplierAddress supplierAddress = bmsSupplierAddressService.getById(order.getSupplierAddrId()); + order.setAddressInfo(supplierAddress); + SysUser sysUser = sysUserService.getById(order.getCheckUserId()); + if(sysUser!=null){ + order.setCheckUserInfo(sysUser.toSysUserVo()); + } + } + return R.byPageHelperList(list); + } + /** * 根据ID查询 * @param id diff --git a/src/main/java/com/qs/serve/modules/oms/entity/OmsOrder.java b/src/main/java/com/qs/serve/modules/oms/entity/OmsOrder.java index 39784f31..d6c95cac 100644 --- a/src/main/java/com/qs/serve/modules/oms/entity/OmsOrder.java +++ b/src/main/java/com/qs/serve/modules/oms/entity/OmsOrder.java @@ -33,6 +33,7 @@ public class OmsOrder implements Serializable { /** 订单号 */ @NotBlank(message = "订单号不能为空") @Length(max = 20,message = "订单号长度不能超过20字") + @TableField(exist = false) private String orderSn; /** 供应商ID */ @@ -145,5 +146,13 @@ public class OmsOrder implements Serializable { @TableField(exist = false) private List orderItems; + /** 订单明细项 */ + @TableField(exist = false) + private Object addressInfo; + + /** 确认订单人员 */ + @TableField(exist = false) + private Object checkUserInfo; + } diff --git a/src/main/java/com/qs/serve/modules/oms/entity/bo/OmsOrderPcBo.java b/src/main/java/com/qs/serve/modules/oms/entity/bo/OmsOrderPcBo.java index 0ff3af28..bd574208 100644 --- a/src/main/java/com/qs/serve/modules/oms/entity/bo/OmsOrderPcBo.java +++ b/src/main/java/com/qs/serve/modules/oms/entity/bo/OmsOrderPcBo.java @@ -25,6 +25,9 @@ public class OmsOrderPcBo { /** 创建订单参数(确认订单时可不传) */ private CreateOrderParam createOrderParam; + /** 收货地址 */ + private Long addressId; + @Data public static class SkuParam{ /** skuId */ diff --git a/src/main/java/com/qs/serve/modules/oms/service/impl/OmsOrderServiceImpl.java b/src/main/java/com/qs/serve/modules/oms/service/impl/OmsOrderServiceImpl.java index f009eec3..b47d921d 100644 --- a/src/main/java/com/qs/serve/modules/oms/service/impl/OmsOrderServiceImpl.java +++ b/src/main/java/com/qs/serve/modules/oms/service/impl/OmsOrderServiceImpl.java @@ -2,10 +2,7 @@ package com.qs.serve.modules.oms.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.qs.serve.common.model.dto.R; -import com.qs.serve.common.util.Assert; -import com.qs.serve.common.util.AuthContextUtils; -import com.qs.serve.common.util.CollectionUtil; -import com.qs.serve.common.util.StringUtils; +import com.qs.serve.common.util.*; import com.qs.serve.modules.bms.entity.BmsSupplier; import com.qs.serve.modules.bms.entity.BmsSupplierAddress; import com.qs.serve.modules.bms.service.BmsSupplierAddressService; @@ -155,7 +152,13 @@ public class OmsOrderServiceImpl extends ServiceImpl im //todo 计算供应商折扣 //todo 计算是否有活动优惠 - BmsSupplierAddress supplierAddress = bmsSupplierAddressService.getDefault(Long.parseLong(supplier.getId())); + //收货地址 + BmsSupplierAddress supplierAddress; + if(confirmOrder.getAddressId()!=null){ + supplierAddress = bmsSupplierAddressService.getById(confirmOrder.getAddressId()); + }else { + supplierAddress = bmsSupplierAddressService.getDefault(Long.parseLong(supplier.getId())); + } OmsConfirmOrderResult confirmOrderResult = new OmsConfirmOrderResult(); confirmOrderResult.setSupplier(supplier); confirmOrderResult.setDefaultAddress(supplierAddress); @@ -190,7 +193,7 @@ public class OmsOrderServiceImpl extends ServiceImpl im } List shoppingCarts = confirmOrder.getShoppingCarts(); OmsOrder order = new OmsOrder(); - order.setOrderSn(StringUtils.generateOrderNo()); + order.setOrderSn("SN"+CodeGenUtil.generate(CodeGenUtil.SourceKey.OmsOrder)); order.setSupplierId(Long.parseLong(supplier.getId())); order.setSupplierCode(supplier.getCode()); order.setSupplierName(supplier.getName()); diff --git a/src/main/java/com/qs/serve/modules/sale/entity/SalePlan.java b/src/main/java/com/qs/serve/modules/sale/entity/SalePlan.java index 74e2f4e9..234b2eba 100644 --- a/src/main/java/com/qs/serve/modules/sale/entity/SalePlan.java +++ b/src/main/java/com/qs/serve/modules/sale/entity/SalePlan.java @@ -32,6 +32,14 @@ public class SalePlan implements Serializable { @TableId(type = IdType.AUTO) private Long id; + /** 年 */ + @NotNull(message = "年份不能为空") + private Integer yearNum; + + /** 月 */ + @NotNull(message = "月份不能为空") + private Integer monthNum; + /** 编码 */ @NotBlank(message = "编码不能为空") @Length(max = 50,message = "编码长度不能超过50字") diff --git a/src/main/java/com/qs/serve/modules/sale/entity/bo/SalePlanBo.java b/src/main/java/com/qs/serve/modules/sale/entity/bo/SalePlanBo.java index 10427c83..024fb1cb 100644 --- a/src/main/java/com/qs/serve/modules/sale/entity/bo/SalePlanBo.java +++ b/src/main/java/com/qs/serve/modules/sale/entity/bo/SalePlanBo.java @@ -4,6 +4,7 @@ import lombok.Data; import org.hibernate.validator.constraints.Length; import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; import java.util.List; /** @@ -16,6 +17,14 @@ public class SalePlanBo { /** id */ private Long id; + /** 年 */ + @NotNull(message = "年份不能为空") + private Integer yearNum; + + /** 月 */ + @NotNull(message = "月份不能为空") + private Integer monthNum; + /** 标题 */ @NotBlank(message = "标题不能为空") private String planTitle; diff --git a/src/main/java/com/qs/serve/modules/sale/service/impl/SalePlanServiceImpl.java b/src/main/java/com/qs/serve/modules/sale/service/impl/SalePlanServiceImpl.java index 7d81bf90..08090132 100644 --- a/src/main/java/com/qs/serve/modules/sale/service/impl/SalePlanServiceImpl.java +++ b/src/main/java/com/qs/serve/modules/sale/service/impl/SalePlanServiceImpl.java @@ -55,6 +55,8 @@ public class SalePlanServiceImpl extends ServiceImpl im SysUser sysUser = sysUserMapper.selectById(userId); BmsSupplier supplier = supplierMapper.selectById(param.getSupplierId()); SalePlan salePlan = new SalePlan(); + salePlan.setYearNum(param.getYearNum()); + salePlan.setMonthNum(param.getMonthNum()); salePlan.setPlanTitle(param.getPlanTitle()); salePlan.setUserId(sysUser.getId()); salePlan.setUserCode(sysUser.getCode()); diff --git a/src/main/java/com/qs/serve/modules/third/PortalOfCostController.java b/src/main/java/com/qs/serve/modules/third/PortalOfCostController.java index c11b5eab..cc90626b 100644 --- a/src/main/java/com/qs/serve/modules/third/PortalOfCostController.java +++ b/src/main/java/com/qs/serve/modules/third/PortalOfCostController.java @@ -46,16 +46,16 @@ public class PortalOfCostController { @PostMapping("createByCostApply") public R createCostProcess(@Valid @RequestBody ProcessCreateCostApplyBo createBo,HttpServletRequest request){ SysSyncLog syncLog = new SysSyncLog(); - syncLog.setFrom("核销系统"); + syncLog.setFrom("一站式费用"); syncLog.setUrl(request.getRequestURI()); syncLog.setRequestJson(JsonUtil.objectToJson(createBo)); syncLog.setEntityClass(ProcessCreateCostApplyBo.class.getName()); try { - log.debug("站式创建费用(费用申请)===>{}", JsonUtil.objectToJson(createBo)); ThirdTokenUtil.checkToken(request); portalOfCostApplication.createCostProcess(createBo); syncLog.setSuccessStatus(1); } catch (Exception e) { + log.error("站式创建费用(费用申请)===>{}", JsonUtil.objectToJson(createBo)); syncLog.setFailReason(e.getMessage()); return R.error(e.getMessage()); } diff --git a/src/main/java/com/qs/serve/modules/vtb/entity/VtbVerification.java b/src/main/java/com/qs/serve/modules/vtb/entity/VtbVerification.java index 6eeca2ec..d0e7606e 100644 --- a/src/main/java/com/qs/serve/modules/vtb/entity/VtbVerification.java +++ b/src/main/java/com/qs/serve/modules/vtb/entity/VtbVerification.java @@ -79,6 +79,9 @@ public class VtbVerification implements Serializable { /** 记录释放标识 */ private Integer regReleaseFlag; + /** 输入的释放标识 */ + private Integer inputReleaseFlag; + /** 金额 */ private BigDecimal amount; diff --git a/src/main/java/com/qs/serve/modules/vtb/entity/bo/VtbVerificationBo.java b/src/main/java/com/qs/serve/modules/vtb/entity/bo/VtbVerificationBo.java index bd8c38fc..920ffafd 100644 --- a/src/main/java/com/qs/serve/modules/vtb/entity/bo/VtbVerificationBo.java +++ b/src/main/java/com/qs/serve/modules/vtb/entity/bo/VtbVerificationBo.java @@ -57,5 +57,8 @@ public class VtbVerificationBo implements Serializable { /** 原来的审批id */ private Long orgVerificationId; + /** 是否释放 */ + private Integer inputReleaseFlag; + } diff --git a/src/main/java/com/qs/serve/modules/vtb/service/impl/VtbVerificationServiceImpl.java b/src/main/java/com/qs/serve/modules/vtb/service/impl/VtbVerificationServiceImpl.java index 87e7aa9a..a0eff9db 100644 --- a/src/main/java/com/qs/serve/modules/vtb/service/impl/VtbVerificationServiceImpl.java +++ b/src/main/java/com/qs/serve/modules/vtb/service/impl/VtbVerificationServiceImpl.java @@ -647,6 +647,7 @@ public class VtbVerificationServiceImpl extends ServiceImpl and - ${item.column} like concat('%', #{item.value} ,'%') + + ${item.column} like concat('%', #{item.value} ,'%') + + + 1=1 + + + + + and + + ${inItem.column} in ( + + #{item} + + ) diff --git a/src/main/resources/mapper/goods/GoodsSpuMapper.xml b/src/main/resources/mapper/goods/GoodsSpuMapper.xml index 0f07caf1..bc13c6f6 100644 --- a/src/main/resources/mapper/goods/GoodsSpuMapper.xml +++ b/src/main/resources/mapper/goods/GoodsSpuMapper.xml @@ -94,6 +94,20 @@ #{selectId} + + and `goods_spu`.`category_first` in + + #{selectId} + + or `goods_spu`.`category_second` in + + #{selectId} + + or `goods_spu`.`category_third` in + + #{selectId} + +