diff --git a/src/main/java/com/qs/serve/common/config/properties/AuthUrlConst.java b/src/main/java/com/qs/serve/common/config/properties/AuthUrlConst.java new file mode 100644 index 00000000..910aebcf --- /dev/null +++ b/src/main/java/com/qs/serve/common/config/properties/AuthUrlConst.java @@ -0,0 +1,13 @@ +package com.qs.serve.common.config.properties; + +/** + * @author YenHex + * @since 2024/3/27 + */ +public class AuthUrlConst { + + public final static String[] AUTH_ALLOW_URL = new String[]{ + "bir/" + }; + +} diff --git a/src/main/java/com/qs/serve/common/config/properties/ProjectProperties.java b/src/main/java/com/qs/serve/common/config/properties/ProjectProperties.java index 207ef9c8..f232a0c5 100644 --- a/src/main/java/com/qs/serve/common/config/properties/ProjectProperties.java +++ b/src/main/java/com/qs/serve/common/config/properties/ProjectProperties.java @@ -16,6 +16,8 @@ import org.springframework.stereotype.Component; @ConfigurationProperties(prefix = "project") public class ProjectProperties { + private String closeAuth; + private String birService; private String birServiceUrl; diff --git a/src/main/java/com/qs/serve/common/framework/security/filter/SecurityRequestFilter.java b/src/main/java/com/qs/serve/common/framework/security/filter/SecurityRequestFilter.java index 9a453d42..7ff0120c 100644 --- a/src/main/java/com/qs/serve/common/framework/security/filter/SecurityRequestFilter.java +++ b/src/main/java/com/qs/serve/common/framework/security/filter/SecurityRequestFilter.java @@ -1,7 +1,9 @@ package com.qs.serve.common.framework.security.filter; import com.qs.serve.common.config.DevEnvironmentConfig; +import com.qs.serve.common.config.properties.AuthUrlConst; import com.qs.serve.common.config.properties.PermitProperties; +import com.qs.serve.common.config.properties.ProjectProperties; import com.qs.serve.common.framework.redis.RedisService; import com.qs.serve.common.framework.security.model.LoginUser; import com.qs.serve.common.framework.security.model.LoginUserDTO; @@ -54,6 +56,9 @@ public class SecurityRequestFilter extends OncePerRequestFilter { @Autowired private RedisService redisService; + @Autowired + private ProjectProperties projectProperties; + @Override protected void doFilterInternal(HttpServletRequest request, HttpServletResponse response, FilterChain chain) throws ServletException, IOException { @@ -92,12 +97,20 @@ public class SecurityRequestFilter extends OncePerRequestFilter { return; } } - if(ignorePermit){ - //try to doSecurityAuthor - tryDoSecurityAuthor(request, response, chain); - chain.doFilter(request,response); + if(projectProperties.getCloseAuth()!=null && projectProperties.getCloseAuth().equals("true")){ + for (String allowUrl : AuthUrlConst.AUTH_ALLOW_URL) { + if(url.contains(allowUrl)){ + doSecurityAuthor(false,request, response, chain); + } + } }else { - doSecurityAuthor(request, response, chain); + if(ignorePermit){ + //try to doSecurityAuthor + tryDoSecurityAuthor(request, response, chain); + chain.doFilter(request,response); + }else { + doSecurityAuthor(true,request, response, chain); + } } } @@ -136,7 +149,7 @@ public class SecurityRequestFilter extends OncePerRequestFilter { * @throws IOException * @throws ServletException */ - private void doSecurityAuthor(HttpServletRequest request, HttpServletResponse response, FilterChain chain) throws IOException, ServletException { + private void doSecurityAuthor(boolean checkRedis,HttpServletRequest request, HttpServletResponse response, FilterChain chain) throws IOException, ServletException { String token = request.getHeader(GySysConst.AUTHORIZATION_PROP); if(!JwtUtils.verify(token)){ HttpResponsePrintUtil.print2(response,401,"身份凭证无效或过期"); @@ -144,13 +157,15 @@ public class SecurityRequestFilter extends OncePerRequestFilter { String userId = JwtUtils.getUserId(token); String userType = JwtUtils.getUserType(token); String client = JwtUtils.getClient(token); - String redisKey = com.qs.serve.common.util.StringUtils.format(RedisCacheKeys.LOGIN_KEY_APP,client,userId); - String cacheToken = redisService.getString(redisKey); - if(cacheToken==null){ - //redisService.remove(redisKey); - HttpResponsePrintUtil.print2(response,401,"已被系统登出"); - //return解决:security.access.AccessDeniedException - return; + if(checkRedis){ + String redisKey = com.qs.serve.common.util.StringUtils.format(RedisCacheKeys.LOGIN_KEY_APP,client,userId); + String cacheToken = redisService.getString(redisKey); + if(cacheToken==null){ + //redisService.remove(redisKey); + HttpResponsePrintUtil.print2(response,401,"已被系统登出"); + //return解决:security.access.AccessDeniedException + return; + } } if(SecurityContextHolder.getContext().getAuthentication()==null){ UserDetails userDetails = sysUserService.getLoginUserById(userId); diff --git a/src/main/java/com/qs/serve/common/util/BirHttpUtil.java b/src/main/java/com/qs/serve/common/util/BirHttpUtil.java index 18f0f844..7f80c1e6 100644 --- a/src/main/java/com/qs/serve/common/util/BirHttpUtil.java +++ b/src/main/java/com/qs/serve/common/util/BirHttpUtil.java @@ -83,6 +83,7 @@ public class BirHttpUtil { url += "&pageNum="+PageUtil.getPageNum(); } String result = HttpUtil.doGet(url,hearders); + log.debug("请求BIR中转URL:{}\n数据返回:{}",url,result); JSONObject object = JSON.parseObject(result); Integer status = object.getInteger("status"); String msg = object.getString("msg"); diff --git a/src/main/java/com/qs/serve/controller/AdminPortalController.java b/src/main/java/com/qs/serve/controller/AdminPortalController.java index c5697ea4..2d05652a 100644 --- a/src/main/java/com/qs/serve/controller/AdminPortalController.java +++ b/src/main/java/com/qs/serve/controller/AdminPortalController.java @@ -4,12 +4,16 @@ import cn.hutool.crypto.SecureUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.qs.serve.common.config.properties.ProjectProperties; import com.qs.serve.common.framework.redis.RedisService; +import com.qs.serve.common.framework.security.model.LoginUserType; import com.qs.serve.common.model.annotation.LimitSubmit; import com.qs.serve.common.model.annotation.SysLog; +import com.qs.serve.common.model.consts.GySysConst; import com.qs.serve.common.model.consts.RedisCacheKeys; import com.qs.serve.common.model.dto.R; import com.qs.serve.common.model.enums.BizType; import com.qs.serve.common.util.IdUtil; +import com.qs.serve.common.util.JwtUtils; +import com.qs.serve.common.util.ServletUtils; import com.qs.serve.common.util.StringUtils; import com.qs.serve.controller.dto.SyLoginParam; import com.qs.serve.controller.util.SyKeyLoginUtil; @@ -43,6 +47,7 @@ import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.validation.Valid; import java.io.IOException; +import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.concurrent.TimeUnit; @@ -180,6 +185,24 @@ public class AdminPortalController { } + /** + * 登录接口 + * @return + */ + @PostMapping("/flushToken") + public R flushToken(HttpServletRequest request){ + String token = request.getHeader(GySysConst.AUTHORIZATION_PROP); + String userId = JwtUtils.getUserId(token); + String client = JwtUtils.getClient(token); + String redisKey = com.qs.serve.common.util.StringUtils.format(RedisCacheKeys.LOGIN_KEY_APP,client,userId); + Map tokenMap = new HashMap<>(10); + String token2 = JwtUtils.generateToken(userId, LoginUserType.SYS_USER,client); + redisService.set(redisKey,token2); + tokenMap.put("token", token2); + tokenMap.put("client",client); + return R.ok(tokenMap); + } + /** * 手机登陆 * @return diff --git a/src/main/java/com/qs/serve/modules/bir/consts/BirActivityCenterGoodsUtil.java b/src/main/java/com/qs/serve/modules/bir/consts/BirActivityCenterGoodsUtil.java index c692ad28..9f8bc178 100644 --- a/src/main/java/com/qs/serve/modules/bir/consts/BirActivityCenterGoodsUtil.java +++ b/src/main/java/com/qs/serve/modules/bir/consts/BirActivityCenterGoodsUtil.java @@ -3,6 +3,9 @@ package com.qs.serve.modules.bir.consts; import cn.hutool.core.collection.CollUtil; import com.qs.serve.common.util.SpringUtils; import com.qs.serve.modules.bir.service.BirActivityCenterGoodsService; +import com.qs.serve.modules.tbs.entity.TbsCostBirLog; +import com.qs.serve.modules.tbs.mapper.TbsCostBirLogMapper; +import lombok.extern.slf4j.Slf4j; import org.springframework.beans.BeansException; import java.util.Arrays; @@ -12,27 +15,25 @@ import java.util.List; * @author YenHex * @since 2024/3/15 */ +@Slf4j public class BirActivityCenterGoodsUtil { public static void buildBir(Long costId){ - try { - if(costId!=null){ - BirActivityCenterGoodsService service = SpringUtils.getBean(BirActivityCenterGoodsService.class); - service.rebuildBir(Arrays.asList(costId)); - } - } catch (BeansException e) { - e.printStackTrace(); + if(costId==null){ + return; } + buildBir(Arrays.asList(costId)); } public static void buildBir(List costIds){ - try { - if(CollUtil.isNotEmpty(costIds)){ - BirActivityCenterGoodsService service = SpringUtils.getBean(BirActivityCenterGoodsService.class); - service.rebuildBir(costIds); - } - } catch (BeansException e) { - e.printStackTrace(); + if(CollUtil.isEmpty(costIds)){ + return; + } + for (Long costId : costIds) { + TbsCostBirLogMapper birLogMapper = SpringUtils.getBean(TbsCostBirLogMapper.class); + TbsCostBirLog birLog = new TbsCostBirLog(); + birLog.setId(costId); + birLogMapper.insert(birLog); } } diff --git a/src/main/java/com/qs/serve/modules/bir/controller/BirActivityCenterGoodsController.java b/src/main/java/com/qs/serve/modules/bir/controller/BirActivityCenterGoodsController.java index 9f2bc46d..c480eb45 100644 --- a/src/main/java/com/qs/serve/modules/bir/controller/BirActivityCenterGoodsController.java +++ b/src/main/java/com/qs/serve/modules/bir/controller/BirActivityCenterGoodsController.java @@ -77,18 +77,13 @@ public class BirActivityCenterGoodsController { @GetMapping("/toSyncDev") public R syncBir(Integer idType){ LambdaQueryWrapper lqw = new LambdaQueryWrapper<>(); -// int start = (idType-1)*50000; -// int end = start + 50000; -// lqw.between(TbsCostApply::getId,start,end); - lqw.notIn(TbsCostApply::getChargeState,0,6,5,8) + lqw.notIn(TbsCostApply::getChargeState,0) .select(TbsCostApply::getId) .eq(TbsCostApply::getCancelFlag,0) .eq(TbsCostApply::getTmpState,0) .gt(TbsCostApply::getTotalActivity,0) - //.notIn(TbsCostApply::getId,21452,21598,23104,23148) - .ge(TbsCostApply::getSubmitTime, LocalDate.of(2021,1,1).atStartOfDay()) + .ge(TbsCostApply::getSubmitTime, LocalDate.of(2024,1,1).atStartOfDay()) .last(" limit 100"); - boolean ex = extracted(lqw); while (!ex){ ex = extracted(lqw); diff --git a/src/main/java/com/qs/serve/modules/bir/controller/BirRoiRateController.java b/src/main/java/com/qs/serve/modules/bir/controller/BirRoiRateController.java index 91dfdc0e..8524a6a8 100644 --- a/src/main/java/com/qs/serve/modules/bir/controller/BirRoiRateController.java +++ b/src/main/java/com/qs/serve/modules/bir/controller/BirRoiRateController.java @@ -12,7 +12,6 @@ import com.qs.serve.common.util.*; import com.qs.serve.modules.bir.entity.BirBaseActivity; import com.qs.serve.modules.bir.entity.so.BirCostRoiSo; import com.qs.serve.modules.bir.entity.vo.*; -import com.qs.serve.modules.bir.mapper.BirBaseActivityMapper; import com.qs.serve.modules.bir.service.*; import com.qs.serve.modules.sys.entity.SysDictData; import com.qs.serve.modules.sys.service.SysDictDataService; @@ -54,7 +53,6 @@ public class BirRoiRateController { private BirCenterRateService birCenterRateService; private SysDictDataService sysDictDataService; private TbsCostApplyService costApplyService; - private BirBaseActivityMapper birBaseActivityMapper; private TbsActivityMapper tbsActivityMapper; private BirBaseActivityService birBaseActivityService; diff --git a/src/main/java/com/qs/serve/modules/bir/entity/BirActivityCenterGoods.java b/src/main/java/com/qs/serve/modules/bir/entity/BirActivityCenterGoods.java index 4cc732d3..19d86dc9 100644 --- a/src/main/java/com/qs/serve/modules/bir/entity/BirActivityCenterGoods.java +++ b/src/main/java/com/qs/serve/modules/bir/entity/BirActivityCenterGoods.java @@ -23,7 +23,7 @@ import javax.validation.constraints.NotBlank; * @since 2023-07-07 */ @Data -@TableName("bir_activity_center_goods_qs") +@TableName("bir_activity_center_goods") public class BirActivityCenterGoods implements Serializable { private static final long serialVersionUID = 1L; diff --git a/src/main/java/com/qs/serve/modules/bir/entity/BirBaseActivity.java b/src/main/java/com/qs/serve/modules/bir/entity/BirBaseActivity.java index c50a0a28..eeab1886 100644 --- a/src/main/java/com/qs/serve/modules/bir/entity/BirBaseActivity.java +++ b/src/main/java/com/qs/serve/modules/bir/entity/BirBaseActivity.java @@ -22,7 +22,7 @@ import javax.validation.constraints.NotBlank; * @since 2023-06-05 */ @Data -@TableName("bir_base_activity_qs") +@TableName("bir_base_activity") public class BirBaseActivity implements Serializable { private static final long serialVersionUID = 1L; diff --git a/src/main/java/com/qs/serve/modules/bir/mapper/BirRoiRateMapper.java b/src/main/java/com/qs/serve/modules/bir/mapper/BirRoiRateMapper.java index b7d477da..b7e10c13 100644 --- a/src/main/java/com/qs/serve/modules/bir/mapper/BirRoiRateMapper.java +++ b/src/main/java/com/qs/serve/modules/bir/mapper/BirRoiRateMapper.java @@ -1,7 +1,9 @@ package com.qs.serve.modules.bir.mapper; +import com.baomidou.dynamic.datasource.annotation.DS; import com.baomidou.mybatisplus.annotation.InterceptorIgnore; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.qs.serve.common.model.consts.DSName; import com.qs.serve.modules.bir.entity.BirRoiRate; import com.qs.serve.modules.bir.entity.dto.BirRoiCostDTO; import com.qs.serve.modules.bir.entity.vo.BirRoiCostItemVo; @@ -15,6 +17,7 @@ import java.util.List; * @author YenHex * @date 2023-06-05 */ +@DS(DSName.QiSheng) public interface BirRoiRateMapper extends BaseMapper { diff --git a/src/main/java/com/qs/serve/modules/bir/service/impl/BirActivityCenterGoodsServiceImpl.java b/src/main/java/com/qs/serve/modules/bir/service/impl/BirActivityCenterGoodsServiceImpl.java index d6beb8f2..34a65730 100644 --- a/src/main/java/com/qs/serve/modules/bir/service/impl/BirActivityCenterGoodsServiceImpl.java +++ b/src/main/java/com/qs/serve/modules/bir/service/impl/BirActivityCenterGoodsServiceImpl.java @@ -13,12 +13,7 @@ import com.qs.serve.common.util.PageUtil; import com.qs.serve.modules.bir.entity.BirBaseActivity; import com.qs.serve.modules.bir.entity.BirRemoveId; import com.qs.serve.modules.bir.entity.dto.BirCenterGoodSplitDTO; -import com.qs.serve.modules.bir.entity.so.BirMonthCusCenterSo; -import com.qs.serve.modules.bir.entity.vo.BirActivityCenterGoodsMonthVo; -import com.qs.serve.modules.bir.mapper.BirBaseActivityMapper; -import com.qs.serve.modules.bir.mapper.BirRemoveIdMapper; import com.qs.serve.modules.bir.service.BirBaseActivityService; -import com.qs.serve.modules.bir.service.BirRemoveIdService; import com.qs.serve.modules.bms.entity.BmsCostCenter; import com.qs.serve.modules.bms.entity.BmsRegion; import com.qs.serve.modules.bms.entity.BmsRegion2; diff --git a/src/main/java/com/qs/serve/modules/bir/service/impl/BirTbsVtbPayJoinServiceImpl.java b/src/main/java/com/qs/serve/modules/bir/service/impl/BirTbsVtbPayJoinServiceImpl.java index 49fb16f3..c5388a40 100644 --- a/src/main/java/com/qs/serve/modules/bir/service/impl/BirTbsVtbPayJoinServiceImpl.java +++ b/src/main/java/com/qs/serve/modules/bir/service/impl/BirTbsVtbPayJoinServiceImpl.java @@ -12,7 +12,6 @@ import com.qs.serve.modules.bir.entity.dto.BirPayJoinDTO; import com.qs.serve.modules.bir.entity.dto.BirTbsVtbPayJoinDTO; import com.qs.serve.modules.bir.entity.dto.BirVtbPayJoinDTO; import com.qs.serve.modules.bir.entity.so.BirTbsVtbPayJoinSo; -import com.qs.serve.modules.bir.mapper.BirBaseActivityMapper; import com.qs.serve.modules.bir.mapper.BirTbsVtbPayJoinMapper; import com.qs.serve.modules.bir.service.BirBaseActivityService; import com.qs.serve.modules.bir.service.BirTbsVtbPayJoinService; diff --git a/src/main/java/com/qs/serve/modules/sys/controller/SysAttachController.java b/src/main/java/com/qs/serve/modules/sys/controller/SysAttachController.java index 60248cd6..261c4cf2 100644 --- a/src/main/java/com/qs/serve/modules/sys/controller/SysAttachController.java +++ b/src/main/java/com/qs/serve/modules/sys/controller/SysAttachController.java @@ -25,6 +25,7 @@ import javax.validation.Valid; import java.io.File; import java.io.IOException; import java.time.LocalDate; +import java.util.Arrays; import java.util.List; import java.util.Locale; @@ -112,6 +113,19 @@ public class SysAttachController { return R.ok(sysattach); } + /** + * 根据ID查询 + * @param ids + * @return + */ + @GetMapping("/listByIds/{ids}") + @SysLog(title = "附件",biz = BizType.QUERY) + public R> listByIds(@PathVariable("ids") String ids){ + String[] idStrs = ids.split(","); + List sysattach = sysAttachService.listByIds(Arrays.asList(idStrs)); + return R.ok(sysattach); + } + /** * 翻页查询 * @param param diff --git a/src/main/java/com/qs/serve/modules/tbs/entity/TbsCostBirLog.java b/src/main/java/com/qs/serve/modules/tbs/entity/TbsCostBirLog.java new file mode 100644 index 00000000..a83d8828 --- /dev/null +++ b/src/main/java/com/qs/serve/modules/tbs/entity/TbsCostBirLog.java @@ -0,0 +1,86 @@ +package com.qs.serve.modules.tbs.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 2024-03-27 + */ +@Data +@TableName("tbs_cost_bir_log") +public class TbsCostBirLog implements Serializable { + + private static final long serialVersionUID = 1L; + + /** id */ + @TableId(type = IdType.AUTO) + private Long id; + + /** 费用id */ + private Long costId; + + /** 0-未处理;1-已处理 */ + private Integer status; + + /** 创建时间 */ + @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; + + /** 租户id */ + @JsonIgnore + @JsonProperty + private String tenantId; + + /** 逻辑删除标记(0:显示;1:隐藏) */ + @JsonIgnore + @JsonProperty + private String delFlag; + + /** 创建人 */ + @TableField(fill = FieldFill.INSERT) + private String createBy; + + /** 更新人 */ + @TableField(fill = FieldFill.UPDATE) + private String updateBy; + + + public static TbsCostBirLog toNewObject(TbsCostBirLog source){ + TbsCostBirLog costBirLog = new TbsCostBirLog(); + costBirLog.setId(source.getId()); + costBirLog.setCostId(source.getCostId()); + costBirLog.setStatus(source.getStatus()); + costBirLog.setCreateTime(source.getCreateTime()); + costBirLog.setUpdateTime(source.getUpdateTime()); + costBirLog.setTenantId(source.getTenantId()); + costBirLog.setDelFlag(source.getDelFlag()); + costBirLog.setCreateBy(source.getCreateBy()); + costBirLog.setUpdateBy(source.getUpdateBy()); + return costBirLog; + } + +} + diff --git a/src/main/java/com/qs/serve/modules/tbs/mapper/TbsCostBirLogMapper.java b/src/main/java/com/qs/serve/modules/tbs/mapper/TbsCostBirLogMapper.java new file mode 100644 index 00000000..fecb0335 --- /dev/null +++ b/src/main/java/com/qs/serve/modules/tbs/mapper/TbsCostBirLogMapper.java @@ -0,0 +1,14 @@ +package com.qs.serve.modules.tbs.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.qs.serve.modules.tbs.entity.TbsCostBirLog; + +/** + * Mapper + * @author YenHex + * @date 2024-03-27 + */ +public interface TbsCostBirLogMapper extends BaseMapper { + +} + diff --git a/src/main/java/com/qs/serve/modules/tbs/service/impl/TbsCostApplyServiceImpl.java b/src/main/java/com/qs/serve/modules/tbs/service/impl/TbsCostApplyServiceImpl.java index 43adb7fd..e6b51558 100644 --- a/src/main/java/com/qs/serve/modules/tbs/service/impl/TbsCostApplyServiceImpl.java +++ b/src/main/java/com/qs/serve/modules/tbs/service/impl/TbsCostApplyServiceImpl.java @@ -22,8 +22,6 @@ import com.qs.serve.modules.bir.entity.BirBaseActivity; import com.qs.serve.modules.bir.entity.dto.BirRoiCostDTO; import com.qs.serve.modules.bir.entity.vo.BirRoiCostItemVo; import com.qs.serve.modules.bir.entity.vo.YtdQtdToOAVo; -import com.qs.serve.modules.bir.mapper.BirActivityCenterGoodsMapper; -import com.qs.serve.modules.bir.mapper.BirBaseActivityMapper; import com.qs.serve.modules.bir.mapper.BirRoiRateMapper; import com.qs.serve.modules.bir.service.BirCenterRateService; import com.qs.serve.modules.bir.service.BirRoiRateService; @@ -116,8 +114,6 @@ public class TbsCostApplyServiceImpl extends ServiceImpl - bir_roi_rate.`id`, - bir_roi_rate.`key_num`, - bir_roi_rate.`activity_amt`, - bir_roi_rate.`verification_amt`, - bir_roi_rate.`shipment_qty`, - bir_roi_rate.`shipment_amt`, - bir_roi_rate.`supplier_id`, - bir_roi_rate.`supplier_code`, - bir_roi_rate.`supplier_name`, - bir_roi_rate.`user_id`, - bir_roi_rate.`user_code`, - bir_roi_rate.`user_name`, - bir_roi_rate.`create_time`, - bir_roi_rate.`update_time`, - bir_roi_rate.`tenant_id`, - bir_roi_rate.`del_flag` + bir_roi_rate.id, + bir_roi_rate.key_num, + bir_roi_rate.activity_amt, + bir_roi_rate.verification_amt, + bir_roi_rate.shipment_qty, + bir_roi_rate.shipment_amt, + bir_roi_rate.supplier_id, + bir_roi_rate.supplier_code, + bir_roi_rate.supplier_name, + bir_roi_rate.user_id, + bir_roi_rate.user_code, + bir_roi_rate.user_name, + bir_roi_rate.create_time, + bir_roi_rate.update_time, + bir_roi_rate.tenant_id, + bir_roi_rate.del_flag @@ -48,13 +48,13 @@