Browse Source

Merge remote-tracking branch 'origin/ScrmStores' into ScrmStores

Guos 2 days ago
parent
commit
e7b0e7e846

+ 54 - 4
fs-admin/src/main/java/com/fs/web/controller/system/SysDeptController.java

@@ -7,9 +7,12 @@ import java.util.List;
 
 import com.fs.common.core.domain.R;
 import com.fs.common.core.domain.model.LoginUser;
+import com.fs.common.core.page.TableDataInfo;
 import com.fs.common.utils.ServletUtils;
 import com.fs.framework.web.service.TokenService;
+import com.fs.system.domain.SysDeptConfigLog;
 import com.fs.system.service.ISysConfigService;
+import com.fs.system.service.ISysDeptConfigLogService;
 import com.fs.system.service.ISysDeptConfigService;
 import org.apache.commons.lang3.ArrayUtils;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -46,6 +49,8 @@ public class SysDeptController extends BaseController
     @Autowired
     private ISysDeptConfigService sysDeptConfigService;
     @Autowired
+    private ISysDeptConfigLogService sysDeptConfigLogService;
+    @Autowired
     private TokenService tokenService;
 
     /**
@@ -185,16 +190,61 @@ public class SysDeptController extends BaseController
     }
     @Log(title = "部门红包金额充值", businessType = BusinessType.UPDATE)
     @GetMapping("/addRedMoney")
-    public R addRedMoney(Long deptId, BigDecimal money){
+    public R addRedMoney(Long deptId, BigDecimal money, String remark){
+        LoginUser loginUser = tokenService.getLoginUser(ServletUtils.getRequest());
+        sysDeptConfigService.addRedMoney(deptId, money, loginUser, remark);
+        return R.ok();
+    }
+
+    @Log(title = "部门红包金额扣减", businessType = BusinessType.UPDATE)
+    @GetMapping("/deductRedMoney")
+    public R deductRedMoney(Long deptId, BigDecimal money, String remark){
         LoginUser loginUser = tokenService.getLoginUser(ServletUtils.getRequest());
-        sysDeptConfigService.addRedMoney(deptId, money, loginUser);
+        sysDeptConfigService.deductRedMoney(deptId, money, loginUser, remark);
         return R.ok();
     }
+
     @Log(title = "部门流量充值", businessType = BusinessType.UPDATE)
     @GetMapping("/addFlowNum")
-    public R addFlowNum(Long deptId, BigDecimal money){
+    public R addFlowNum(Long deptId, BigDecimal money, String remark){
         LoginUser loginUser = tokenService.getLoginUser(ServletUtils.getRequest());
-        sysDeptConfigService.addFlowNum(deptId, money, loginUser);
+        sysDeptConfigService.addFlowNum(deptId, money, loginUser, remark);
         return R.ok();
     }
+
+    @Log(title = "部门流量扣减", businessType = BusinessType.UPDATE)
+    @GetMapping("/deductFlowNum")
+    public R deductFlowNum(Long deptId, BigDecimal money, String remark){
+        LoginUser loginUser = tokenService.getLoginUser(ServletUtils.getRequest());
+        sysDeptConfigService.deductFlowNum(deptId, money, loginUser, remark);
+        return R.ok();
+    }
+
+        /**
+     * 查询部门流量明细(充值和扣减记录)
+     */
+    @Log(title = "部门流量明细查询", businessType = BusinessType.OTHER)
+    @GetMapping("/flowDetailList")
+    public TableDataInfo flowDetailList(Long deptId){
+        startPage();
+        SysDeptConfigLog query = new SysDeptConfigLog();
+        query.setDeptId(deptId);
+        query.setLogType(1); // 1表示流量类型
+        List<SysDeptConfigLog> list = sysDeptConfigLogService.selectSysDeptConfigLogList(query);
+        return getDataTable(list);
+    }
+
+    /**
+     * 查询部门红包明细(充值和扣减记录)
+     */
+    @Log(title = "部门红包明细查询", businessType = BusinessType.OTHER)
+    @GetMapping("/redMoneyDetailList")
+    public TableDataInfo redMoneyDetailList(Long deptId){
+        startPage();
+        SysDeptConfigLog query = new SysDeptConfigLog();
+        query.setDeptId(deptId);
+        query.setLogType(0); // 0表示红包类型
+        List<SysDeptConfigLog> list = sysDeptConfigLogService.selectSysDeptConfigLogList(query);
+        return getDataTable(list);
+    }
 }

+ 3 - 0
fs-service/src/main/java/com/fs/company/domain/CompanyDivItem.java

@@ -51,5 +51,8 @@ public class CompanyDivItem extends BaseEntity{
     @Excel(name = "是否退款 0否 1是")
     private Integer isRefund;
 
+    /** 延迟交易状态: (实时分账 null) 0:未确认 1:已确认 */
+    @Excel(name = "是否退款 0否 1是")
+    private Integer delayStatus;
 
 }

+ 1 - 1
fs-service/src/main/java/com/fs/company/service/impl/CompanyTrafficRecordServiceImpl.java

@@ -194,7 +194,7 @@ public class CompanyTrafficRecordServiceImpl extends ServiceImpl<CompanyTrafficR
                 deptConfig.setFlowNum(surplus);
                 deptConfig.setUpdateBy(record.getUserName());
                 deptConfig.setUpdateTime(new Date());
-                sysDeptConfigLogService.addLog(deptConfig.getDeptId(), 2, 1, trafficAmount.toString(), flowNum.toString(), surplus + "", record.getUserName(), "充值公司流量");
+                sysDeptConfigLogService.addLog(deptConfig.getDeptId(), 1, 1, trafficAmount.toString(), flowNum.toString(), surplus + "", record.getUserName(), "充值公司流量");
                 sysDeptConfigService.updateById(deptConfig);
             }
             record.setChangeTraffic(trafficAmount);//用于处理日志

+ 1 - 1
fs-service/src/main/java/com/fs/hisStore/service/impl/FsStorePaymentScrmServiceImpl.java

@@ -893,7 +893,7 @@ public class FsStorePaymentScrmServiceImpl implements IFsStorePaymentScrmService
         o.setAppId(param.getAppId());
         //公司分账
         try {
-            HuiFuUtils.doDiv(o, company.getCompanyId());
+            HuiFuUtils.doDiv(o,company.getCompanyId());
             //存储分账明细
             HuiFuUtils.saveDivItem(o, storePayment.getPayCode(), storePayment.getPayCode());
         } catch (Exception e) {

+ 48 - 14
fs-service/src/main/java/com/fs/huifuPay/sdk/opps/core/utils/HuiFuUtils.java

@@ -11,10 +11,8 @@ import com.fs.company.service.ICompanyDivConfigService;
 import com.fs.company.service.ICompanyDivItemService;
 import com.fs.company.service.impl.CompanyDivConfigServiceImpl;
 import com.fs.company.vo.CompanyDivConfigVo;
-import com.fs.his.domain.FsPackageOrder;
-import com.fs.his.domain.FsPayConfig;
-import com.fs.his.domain.FsStoreOrder;
-import com.fs.his.domain.FsStorePayment;
+import com.fs.his.domain.*;
+import com.fs.his.mapper.FsHfpayConfigMapper;
 import com.fs.huifuPay.domain.HuiFuCreateOrder;
 import com.fs.system.domain.SysConfig;
 import com.fs.system.mapper.SysConfigMapper;
@@ -32,32 +30,48 @@ public class HuiFuUtils {
     private static ICompanyDivItemService companyDivItemService = SpringUtils.getBean(ICompanyDivItemService.class);
 
     /**
-     *  处理分账
+     * 处理分账
+     *
      * @param huiFuCreateOrder
      * @param companyId
      */
     public static void doDiv(HuiFuCreateOrder huiFuCreateOrder, Long companyId) throws Exception {
         //默认汇付账户
-        SysConfigMapper sysConfigMapper= SpringUtils.getBean(SysConfigMapper.class);
+        SysConfigMapper sysConfigMapper = SpringUtils.getBean(SysConfigMapper.class);
         SysConfig sysConfig = sysConfigMapper.selectConfigByConfigKey("his.pay");
         FsPayConfig fsPayConfig = new Gson().fromJson(sysConfig.getConfigValue(), FsPayConfig.class);
+
+        // 根据appId动态获取主商户号
         String defaultHuifuId = fsPayConfig.getHuifuId();
+        if (StringUtils.isNotBlank(huiFuCreateOrder.getAppId())) {
+            // 如果有appId,查询对应的汇付支付配置
+            FsHfpayConfigMapper fsHfpayConfigMapper = SpringUtils.getBean(FsHfpayConfigMapper.class);
+            FsHfpayConfig fsHfpayConfig = fsHfpayConfigMapper.selectByAppId(huiFuCreateOrder.getAppId());
+            if (fsHfpayConfig != null && StringUtils.isNotBlank(fsHfpayConfig.getHuifuId())) {
+                defaultHuifuId = fsHfpayConfig.getHuifuId();
+            }
+        }
+
+        if ("6666000184032670".equals(defaultHuifuId)) {
+            return;
+        }
+
         //查询是否开启分账
-        if (companyId !=null){
+        if (companyId != null) {
 
             CompanyDivConfigVo configVo = companyDivConfigService.selectCompanyDivConfigByCompanyId(companyId);
-            if (configVo != null){
+            if (configVo != null) {
                 Integer divFlag = configVo.getDivFlag();
-                if (divFlag != null && divFlag == 1){
+                if (divFlag != null && divFlag == 1) {
                     //开启分账
                     //汇付传参
                     Map<String, Object> acctSplitBunchMap = new HashMap<>();
-                    List<Map<String,Object>> acctInfos = new ArrayList();
+                    List<Map<String, Object>> acctInfos = new ArrayList();
                     List<CompanyAcctInfo> acctInfoVos = configVo.getAcctInfos();
-                    if (acctInfoVos != null && !acctInfoVos.isEmpty()){
+                    if (acctInfoVos != null && !acctInfoVos.isEmpty()) {
                         String delayAcctFlag = configVo.getDelayAcctFlag();
                         String percentageFlag = configVo.getPercentageFlag();
-                        if (StringUtils.isNotBlank(delayAcctFlag) && delayAcctFlag.equals("N")){
+                        if (StringUtils.isNotBlank(delayAcctFlag) && delayAcctFlag.equals("N")) {
                             //实时分账
                             if (StringUtils.isNotBlank(percentageFlag) && percentageFlag.equals("Y")){
                                 acctSplitBunchMap.put("percentage_flag","Y");
@@ -90,6 +104,13 @@ public class HuiFuUtils {
                                     defaultAccount.put("percentage_div", String.format("%.2f", 100f - total));
                                     defaultAccount.put("huifu_id", defaultHuifuId);
                                     acctInfos.add(defaultAccount);
+                                } else {
+                                    // 即使没有其他分账接收方,也要包含主商户号,分账比例为0
+                                    acctInfos = new ArrayList<>();
+                                    Map<String, Object> defaultAccount = new HashMap<>();
+                                    defaultAccount.put("percentage_div", "0.00");
+                                    defaultAccount.put("huifu_id", defaultHuifuId);
+                                    acctInfos.add(defaultAccount);
                                 }
 
 
@@ -126,6 +147,13 @@ public class HuiFuUtils {
                                         defaultAccount.put("huifu_id", defaultHuifuId);
                                         acctInfos.add(defaultAccount);
                                     }
+                                } else {
+                                    // 即使没有其他分账接收方,也要包含主商户号,分账金额为0
+                                    acctInfos = new ArrayList<>();
+                                    Map<String, Object> defaultAccount = new HashMap<>();
+                                    defaultAccount.put("div_amt", "0.00");
+                                    defaultAccount.put("huifu_id", defaultHuifuId);
+                                    acctInfos.add(defaultAccount);
                                 }
 
                             }
@@ -148,12 +176,18 @@ public class HuiFuUtils {
 
     public static void saveDivItem(HuiFuCreateOrder o, String orderCode, String payCode) {
         CompanyDivItem companyDivItem = new CompanyDivItem();
-        if (StringUtils.isNotBlank(o.getAcctSplitBunch())){
+        if (StringUtils.isNotBlank(o.getAcctSplitBunch())) {
             companyDivItem.setOrderCode(orderCode);
             companyDivItem.setPayCode(payCode);
             companyDivItem.setDetail(o.getAcctSplitBunch());
             companyDivItem.setIsRefund(0); //支付
-            companyDivItem.setIsDelay(0); //延迟分账
+            if (StringUtils.isNotBlank(o.getDelayAcctFlag()) && o.getDelayAcctFlag().equals("Y")) {
+                companyDivItem.setIsDelay(1); //延迟分账
+
+            } else {
+                companyDivItem.setIsDelay(0);
+                companyDivItem.setDelayStatus(0);
+            }
             companyDivItemService.insertCompanyDivItem(companyDivItem);
         }
     }

+ 3 - 0
fs-service/src/main/java/com/fs/system/domain/SysDeptConfigLog.java

@@ -45,5 +45,8 @@ public class SysDeptConfigLog extends BaseEntity{
     @Excel(name = "操作完成后数量")
     private String lastNum;
 
+    /** 备注 */
+    @Excel(name = "备注")
+    private String remark;
 
 }

+ 6 - 2
fs-service/src/main/java/com/fs/system/service/ISysDeptConfigService.java

@@ -64,9 +64,13 @@ public interface ISysDeptConfigService extends IService<SysDeptConfig>{
 
     void updatePadNum(Long deptId, Integer num, LoginUser loginUser, LocalDate endTime);
 
-    void addRedMoney(Long deptId, BigDecimal num, LoginUser loginUser);
+    void addRedMoney(Long deptId, BigDecimal num, LoginUser loginUser, String remark);
 
-    void addFlowNum(Long deptId, BigDecimal money, LoginUser loginUser);
+    void deductRedMoney(Long deptId, BigDecimal num, LoginUser loginUser, String remark);
+
+    void addFlowNum(Long deptId, BigDecimal money, LoginUser loginUser, String remark);
+
+    void deductFlowNum(Long deptId, BigDecimal money, LoginUser loginUser, String remark);
 
     SysDeptConfig getDeptConfig(Long deptId, LoginUser loginUser);
     SysDeptConfig getDeptConfig(Long deptId);

+ 44 - 10
fs-service/src/main/java/com/fs/system/service/impl/SysDeptConfigServiceImpl.java

@@ -11,11 +11,9 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.fs.common.core.domain.model.LoginUser;
 import com.fs.common.utils.DateUtils;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.fs.company.service.ICompanyTrafficRecordService;
 import com.fs.system.domain.SysConfig;
 import com.fs.system.mapper.SysConfigMapper;
 import com.fs.system.service.ISysDeptConfigLogService;
-import lombok.AllArgsConstructor;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import com.fs.system.mapper.SysDeptConfigMapper;
@@ -29,12 +27,12 @@ import com.fs.system.service.ISysDeptConfigService;
  * @date 2025-09-22
  */
 @Service
-@AllArgsConstructor
 public class SysDeptConfigServiceImpl extends ServiceImpl<SysDeptConfigMapper, SysDeptConfig> implements ISysDeptConfigService {
 
-
-    private final ISysDeptConfigLogService sysDeptConfigLogService;
-    private final SysConfigMapper sysConfigMapper;
+    @Autowired
+    private ISysDeptConfigLogService sysDeptConfigLogService;
+    @Autowired
+    private SysConfigMapper sysConfigMapper;
 
     /**
      * 查询部门配置
@@ -123,29 +121,65 @@ public class SysDeptConfigServiceImpl extends ServiceImpl<SysDeptConfigMapper, S
     }
 
     @Override
-    public void addRedMoney(Long deptId, BigDecimal num, LoginUser loginUser) {
+    public void addRedMoney(Long deptId, BigDecimal num, LoginUser loginUser, String remark) {
         SysDeptConfig deptConfig = getDeptConfig(deptId, loginUser);
         deptConfig.setUpdateBy(loginUser.getUsername());
         deptConfig.setUpdateTime(new Date());
         BigDecimal red = deptConfig.getRedPackage() == null ? BigDecimal.ZERO : deptConfig.getRedPackage();
         deptConfig.setRedPackage(red.add(num));
-        sysDeptConfigLogService.addLog(deptId, 0, 0, num.setScale(2, RoundingMode.UP).toString(), red.setScale(2, RoundingMode.UP).toString(), deptConfig.getRedPackage().setScale(2, RoundingMode.UP).toString(), loginUser.getUsername(), "");
+        // 如果remark为空,使用默认值
+        String finalRemark = (remark != null && !remark.isEmpty()) ? remark : "手动充值";
+        sysDeptConfigLogService.addLog(deptId, 0, 0, num.setScale(2, RoundingMode.UP).toString(), red.setScale(2, RoundingMode.UP).toString(), deptConfig.getRedPackage().setScale(2, RoundingMode.UP).toString(), loginUser.getUsername(), finalRemark);
         updateById(deptConfig);
+    }
+
+    @Override
+    public void deductRedMoney(Long deptId, BigDecimal num, LoginUser loginUser, String remark) {
+        SysDeptConfig deptConfig = getDeptConfig(deptId, loginUser);
+        deptConfig.setUpdateBy(loginUser.getUsername());
+        deptConfig.setUpdateTime(new Date());
+        BigDecimal red = deptConfig.getRedPackage() == null ? BigDecimal.ZERO : deptConfig.getRedPackage();
+
+        if (red.compareTo(num) < 0) {
+            throw new RuntimeException("部门红包金额不足,当前余额: " + red + ", 需要扣减: " + num);
+        }
 
+        String finalRemark = (remark != null && !remark.isEmpty()) ? remark : "手动扣减";
+        sysDeptConfigLogService.addLog(deptId, 0, 1, num.setScale(2, RoundingMode.UP).toString(), red.setScale(2, RoundingMode.UP).toString(), deptConfig.getRedPackage().setScale(2, RoundingMode.UP).toString(), loginUser.getUsername(), finalRemark);
+        updateById(deptConfig);
     }
 
     @Override
-    public void addFlowNum(Long deptId, BigDecimal money, LoginUser loginUser) {
+    public void addFlowNum(Long deptId, BigDecimal money, LoginUser loginUser, String remark) {
         SysDeptConfig deptConfig = getDeptConfig(deptId, loginUser);
         deptConfig.setUpdateBy(loginUser.getUsername());
         deptConfig.setUpdateTime(new Date());
         Long l = trafficConversion(money.longValue());
         long flowNum = deptConfig.getFlowNum() == null ? 0 : deptConfig.getFlowNum();
         deptConfig.setFlowNum(flowNum + l);
-        sysDeptConfigLogService.addLog(deptId, 1, 0, l.toString(), flowNum + "", deptConfig.getFlowNum().toString(), loginUser.getUsername(), "");
+        String finalRemark = (remark != null && !remark.isEmpty()) ? remark : "手动充值";
+        sysDeptConfigLogService.addLog(deptId, 1, 0, l.toString(), flowNum + "", deptConfig.getFlowNum().toString(), loginUser.getUsername(), finalRemark);
         updateById(deptConfig);
+    }
 
+    @Override
+    public void deductFlowNum(Long deptId, BigDecimal money, LoginUser loginUser, String remark) {
+        SysDeptConfig deptConfig = getDeptConfig(deptId, loginUser);
+        deptConfig.setUpdateBy(loginUser.getUsername());
+        deptConfig.setUpdateTime(new Date());
+        Long l = trafficConversion(money.longValue());
+        long flowNum = deptConfig.getFlowNum() == null ? 0 : deptConfig.getFlowNum();
+
+        if (flowNum < l) {
+            throw new RuntimeException("部门流量余额不足,当前余额: " + flowNum + ", 需要扣减: " + l);
+        }
+
+        deptConfig.setFlowNum(flowNum - l);
+        String finalRemark = (remark != null && !remark.isEmpty()) ? remark : "手动扣减";
+        sysDeptConfigLogService.addLog(deptId, 1, 1, l.toString(), flowNum + "", deptConfig.getFlowNum().toString(), loginUser.getUsername(), finalRemark);
+        updateById(deptConfig);
     }
+
     public Long trafficConversion(Long amount) {
         SysConfig config = sysConfigMapper.selectConfigByConfigKey("statis.config");
         JSONObject jsonObject = JSONObject.parseObject(config.getConfigValue());

+ 3 - 2
fs-service/src/main/resources/mapper/company/CompanyDivConfigMapper.xml

@@ -35,6 +35,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
     <select id="selectCompanyDivConfigByCompanyId" parameterType="Long" resultMap="CompanyDivConfigResult">
         <include refid="selectCompanyDivConfigVo"/>
         where company_id = #{companyId}
+        limit 1
     </select>
 
     <insert id="insertCompanyDivConfig" parameterType="CompanyDivConfig">
@@ -49,7 +50,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="acctInfos != null">acct_infos,</if>
             <if test="createTime != null">create_time,</if>
             <if test="updateTime != null">update_time,</if>
-         </trim>
+        </trim>
         <trim prefix="values (" suffix=")" suffixOverrides=",">
             <if test="companyId != null">#{companyId},</if>
             <if test="companyName != null and companyName != ''">#{companyName},</if>
@@ -60,7 +61,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="acctInfos != null">#{acctInfos},</if>
             <if test="createTime != null">#{createTime},</if>
             <if test="updateTime != null">#{updateTime},</if>
-         </trim>
+        </trim>
     </insert>
 
     <update id="updateCompanyDivConfig" parameterType="CompanyDivConfig">

+ 11 - 6
fs-service/src/main/resources/mapper/company/CompanyDivItemMapper.xml

@@ -1,12 +1,12 @@
 <?xml version="1.0" encoding="UTF-8" ?>
 <!DOCTYPE mapper
-PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
-"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.fs.company.mapper.CompanyDivItemMapper">
 
     <resultMap type="CompanyDivItem" id="CompanyDivItemResult">
         <result property="id"    column="id"    />
-<!--        <result property="orderId"    column="order_id"    />-->
+        <!--        <result property="orderId"    column="order_id"    />-->
         <result property="orderCode"    column="order_code"    />
         <result property="payCode"    column="pay_code"    />
         <result property="detail"    column="detail"    />
@@ -19,7 +19,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
     </resultMap>
 
     <sql id="selectCompanyDivItemVo">
-        select id, order_code, pay_code, detail,refund_detail,is_pay, is_delay, is_refund, create_time, update_time from company_div_item
+        select id, order_code, pay_code, detail,refund_detail,is_pay, is_delay, is_refund, create_time, update_time,delay_status from company_div_item
     </sql>
 
     <select id="selectCompanyDivItemList" parameterType="CompanyDivItem" resultMap="CompanyDivItemResult">
@@ -32,6 +32,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="isPay != null "> and is_pay = #{isPay}</if>
             <if test="isDelay != null "> and is_delay = #{isDelay}</if>
             <if test="isRefund != null "> and is_refund = #{isRefund}</if>
+            <if test="delayStatus != null "> and (delay_status = #{delayStatus} or delay_status is null)</if>
         </where>
         order by id desc
     </select>
@@ -61,7 +62,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="isRefund != null">is_refund,</if>
             <if test="createTime != null">create_time,</if>
             <if test="updateTime != null">update_time,</if>
-         </trim>
+            <if test="delayStatus != null">delay_status,</if>
+        </trim>
         <trim prefix="values (" suffix=")" suffixOverrides=",">
             <if test="orderCode != null and orderCode != ''">#{orderCode},</if>
             <if test="payCode != null and payCode != ''">#{payCode},</if>
@@ -72,7 +74,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="isRefund != null">#{isRefund},</if>
             <if test="createTime != null">#{createTime},</if>
             <if test="updateTime != null">#{updateTime},</if>
-         </trim>
+            <if test="updateTime != null">#{updateTime},</if>
+            <if test="delayStatus != null">#{delayStatus},</if>
+        </trim>
     </insert>
 
     <update id="updateCompanyDivItem" parameterType="CompanyDivItem">
@@ -87,6 +91,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="isRefund != null">is_refund = #{isRefund},</if>
             <if test="createTime != null">create_time = #{createTime},</if>
             <if test="updateTime != null">update_time = #{updateTime},</if>
+            <if test="delayStatus != null">update_time = #{delayStatus},</if>
         </trim>
         where id = #{id}
     </update>

+ 1 - 0
fs-service/src/main/resources/mapper/deptConfigLog/SysDeptConfigLogMapper.xml

@@ -33,6 +33,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="firstNum != null "> and first_num = #{firstNum}</if>
             <if test="lastNum != null "> and last_num = #{lastNum}</if>
         </where>
+        order by create_time desc, id desc
     </select>
     
     <select id="selectSysDeptConfigLogById" parameterType="Long" resultMap="SysDeptConfigLogResult">

+ 10 - 3
fs-user-app/src/main/java/com/fs/app/controller/store/ProductScrmController.java

@@ -83,6 +83,7 @@ public class ProductScrmController extends AppBaseController {
             param.setStoreId(storeId);
             param.setIsDrug(isDrug);
             List<FsStoreProductCategoryScrm> list=categoryService.selectFsStoreProductCategoryListQuery(param);
+            list = dataSplit(isDrug, list);
             return R.ok().put("data",list);
         } catch (Exception e){
             return R.error("操作异常");
@@ -99,9 +100,7 @@ public class ProductScrmController extends AppBaseController {
             param.setIsDrug(isDrug);
             param.setStoreId(storeId);
             List<FsStoreProductCategoryScrm> list=categoryService.selectFsStoreProductCategoryListQuery(param);
-            if(param.getIsDrug() != null && param.getIsDrug() == 1){
-                list = list.stream().filter(item -> item.getCateName().equals("甲类非处方") || item.getCateName().equals("乙类非处方")).collect(Collectors.toList());
-            }
+            list = dataSplit(isDrug, list);
             return R.ok().put("data",list);
         } catch (Exception e){
             return R.error("操作异常");
@@ -379,4 +378,12 @@ public class ProductScrmController extends AppBaseController {
         param.setUserId(userId);
         return productService.instructionsViewable(param);
     }
+
+    //分类数据拆分
+    public List<FsStoreProductCategoryScrm> dataSplit(Integer isDrug,List<FsStoreProductCategoryScrm> list){
+        if(isDrug != null && isDrug == 1){
+            return list.stream().filter(item -> !item.getCateName().equals("活动专区") && !item.getCateName().equals("中药饮品")&& !item.getCateName().equals("保健食品")).collect(Collectors.toList());
+        }
+        return list;
+    }
 }