Ver Fonte

同步APP弹窗表

mac há 2 anos atrás
pai
commit
dc1965db91

+ 7 - 0
kxs-system/kxs-system-api/src/main/java/com/kxs/system/api/model/KxsAppModal.java

@@ -130,6 +130,13 @@ public class KxsAppModal extends Model<KxsAppModal> implements Serializable {
     private String url;
 
 
+    /**
+     * 跳转url参数
+     */
+    @Schema(description = "跳转url参数")
+    private String urlParam;
+
+
     /**
      * 是否指定 0否 1是
      */

+ 1 - 0
kxs-system/kxs-system-biz/src/main/resources/mapper/KxsAppModalMapper.xml

@@ -17,6 +17,7 @@
         <result column="end_time" property="endTime" />
         <result column="btn_text" property="btnText" />
         <result column="url" property="url" />
+        <result column="url_param" property="urlParam" />
         <result column="is_assign" property="isAssign" />
         <result column="user_codes" property="userCodes" />
         <result column="msg_type" property="msgType" />

+ 4 - 0
kxs-transfer/src/main/java/com/kxs/transfer/api/controller/DtsController.java

@@ -240,6 +240,10 @@ public class DtsController {
             if ("MsgPlacard".equals(dmlData.getTableName())) {
                 kxsSysMsgService.changeSysData(dmlData);
             }
+            //系统弹窗表
+            if ("MsgAlert".equals(dmlData.getTableName())) {
+                kxsSysMsgService.changeModalData(dmlData);
+            }
 
             //存储历史数据
             KxsDtsLog kxsDtsLog = new KxsDtsLog();

+ 19 - 0
kxs-transfer/src/main/java/com/kxs/transfer/api/mapper/sys/KxsAppModalMapper.java

@@ -0,0 +1,19 @@
+package com.kxs.transfer.api.mapper.sys;
+
+import com.baomidou.dynamic.datasource.annotation.DS;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.kxs.system.api.model.KxsAppModal;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * APP弹窗管理表(KxsAppModal)表数据库访问层
+ *
+ * @author 系统
+ * @since 2023-12-15 12:16:31
+ */
+@Mapper
+@DS("sys")
+public interface KxsAppModalMapper extends BaseMapper<KxsAppModal> {
+
+}
+

+ 99 - 0
kxs-transfer/src/main/java/com/kxs/transfer/api/service/sys/KxsSysMsgService.java

@@ -7,8 +7,10 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.kxs.product.api.model.KxsMachine;
 import com.kxs.product.api.model.KxsMerchant;
+import com.kxs.system.api.model.KxsAppModal;
 import com.kxs.system.api.model.KxsSysMsg;
 import com.kxs.system.api.model.KxsUserMsg;
+import com.kxs.transfer.api.mapper.sys.KxsAppModalMapper;
 import com.kxs.transfer.api.mapper.sys.KxsSysMsgMapper;
 import com.kxs.transfer.api.mapper.sys.KxsUserMsgMapper;
 import com.kxs.transfer.api.mapper.user.KxsUserMapper;
@@ -31,6 +33,8 @@ public class KxsSysMsgService extends ServiceImpl<KxsSysMsgMapper, KxsSysMsg> {
 
     private final KxsUserMsgMapper kxsUserMsgMapper;
 
+    private final KxsAppModalMapper kxsAppModalMapper;
+
     public void changeUserData(DMLData dmlData) {
         //修改的字段值
         Map<String, Object> validFieldDataMap = dmlData.getValidFieldDataMap();
@@ -189,5 +193,100 @@ public class KxsSysMsgService extends ServiceImpl<KxsSysMsgMapper, KxsSysMsg> {
         }
 
     }
+
+    public void changeModalData(DMLData dmlData) {
+        //修改的字段值
+        Map<String, Object> validFieldDataMap = dmlData.getValidFieldDataMap();
+        //修改的字段
+        List<String> changeFieldList = dmlData.getChangeFieldList();
+        //操作的主键
+        int id = Integer.parseInt(dmlData.getId());
+
+        KxsAppModal appModal = new KxsAppModal();
+        appModal.setId(id);
+
+        OperationType operation = dmlData.getOperation();
+
+        if(operation.equals(OperationType.DELETE)){
+            baseMapper.deleteById(id);
+            return;
+        }
+        for (String field : changeFieldList) {
+
+            switch (field) {
+                case "Status":
+                    int status = Integer.parseInt(validFieldDataMap.get(field).toString());
+                    if(status == -1){
+                        kxsAppModalMapper.deleteById(id);
+                        return;
+                    }
+                    break;
+                case "MsgType":
+                    appModal.setMsgType(Integer.parseInt(validFieldDataMap.get(field).toString()) - 1);
+                    break;
+                case "BgPic":
+                    if(validFieldDataMap.get(field) != null){
+                        appModal.setBgPic(validFieldDataMap.get(field).toString());
+                    }
+                    break;
+                case "Title":
+                    appModal.setTitle(validFieldDataMap.get(field).toString());
+                    break;
+                case "Content":
+                    if(validFieldDataMap.get(field) != null){
+                        appModal.setContent(validFieldDataMap.get(field).toString());
+                    }
+                    break;
+                case "Url":
+                    if(validFieldDataMap.get(field) != null){
+                        appModal.setUrl(validFieldDataMap.get(field).toString());
+                    }
+                    break;
+                case "BtnText":
+                    if(validFieldDataMap.get(field) != null){
+                        appModal.setBtnText(validFieldDataMap.get(field).toString());
+                    }
+                    break;
+                case "TimeByDay":
+                    appModal.setTimeByDay(Integer.valueOf(validFieldDataMap.get(field).toString()));
+                    break;
+                case "IsWeekend":
+                    appModal.setIsWeekend(Integer.valueOf(validFieldDataMap.get(field).toString()));
+                    break;
+                case "UrlParam":
+                    if(validFieldDataMap.get(field) != null){
+                        appModal.setUrlParam(validFieldDataMap.get(field).toString());
+                    }
+                    break;
+                case "EffectStartDate":
+                    if(validFieldDataMap.get(field) != null){
+                        appModal.setStartTime(LocalDateTimeUtil.parse(validFieldDataMap.get(field).toString(), DatePattern.NORM_DATETIME_PATTERN));
+                    }
+                    break;
+                case "EffectEndDate":
+                    if(validFieldDataMap.get(field) != null){
+                        appModal.setEndTime(LocalDateTimeUtil.parse(validFieldDataMap.get(field).toString(), DatePattern.NORM_DATETIME_PATTERN));
+                    }
+                    break;
+                case "CreateDate":
+                    appModal.setCreateTime(LocalDateTimeUtil.parse(validFieldDataMap.get(field).toString(), DatePattern.NORM_DATETIME_PATTERN));
+                    break;
+                case "UpdateDate":
+                    appModal.setUpdateTime(LocalDateTimeUtil.parse(validFieldDataMap.get(field).toString(), DatePattern.NORM_DATETIME_PATTERN));
+                    break;
+            }
+        }
+
+        if(operation.equals(OperationType.INSERT)){
+            KxsAppModal kxsAppModal = kxsAppModalMapper.selectById(id);
+            if(kxsAppModal == null){
+                kxsAppModalMapper.insert(appModal);
+            }
+        }
+        if(operation.equals(OperationType.UPDATE)){
+            kxsAppModalMapper.updateById(appModal);
+        }
+
+    }
 }