From 595b7935a30e84fba1bc3561d05f9d19d3e32e1f Mon Sep 17 00:00:00 2001
From: Administrator <1101184511@qq.com>
Date: 星期三, 23 四月 2025 00:45:48 +0800
Subject: [PATCH] 后台管理页面完成

---
 src/main/java/com/taoke/autopay/service/impl/WxUserSettingServiceImpl.java |   69 +++++++++++++++++++++++++++-------
 1 files changed, 55 insertions(+), 14 deletions(-)

diff --git a/src/main/java/com/taoke/autopay/service/impl/WxUserSettingServiceImpl.java b/src/main/java/com/taoke/autopay/service/impl/WxUserSettingServiceImpl.java
index c95d142..e1311cc 100644
--- a/src/main/java/com/taoke/autopay/service/impl/WxUserSettingServiceImpl.java
+++ b/src/main/java/com/taoke/autopay/service/impl/WxUserSettingServiceImpl.java
@@ -1,37 +1,74 @@
 package com.taoke.autopay.service.impl;
 
-import com.taoke.autopay.dao.WxUserSettingsMapper;
+import javax.annotation.Resource;
+
 import com.taoke.autopay.entity.SystemConfigKeyEnum;
+import com.taoke.autopay.utils.StringUtil;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import com.taoke.autopay.dao.WxUserSettingsMapper;
 import com.taoke.autopay.entity.WxUserSettings;
 import com.taoke.autopay.service.SystemConfigService;
 import com.taoke.autopay.service.WxUserSettingService;
-import com.taoke.autopay.utils.StringUtil;
-import org.springframework.stereotype.Service;
 
-import javax.annotation.Resource;
 import java.util.ArrayList;
 import java.util.Date;
 import java.util.List;
 
-/**
- * @author hxh
- * @title: WxUserSettingServiceImpl
- * @description: TODO
- * @date 2024/6/28 19:10
- */
 @Service
 public class WxUserSettingServiceImpl implements WxUserSettingService {
 
     @Resource
     private WxUserSettingsMapper wxUserSettingsMapper;
 
+    @Resource
+    private SystemConfigService systemConfigService;
 
+
+    @Transactional(rollbackFor = Exception.class)
     @Override
     public void add(WxUserSettings settings) {
-        if (settings.getCreateTime() == null) {
-            settings.setCreateTime(new Date());
+        WxUserSettings old =   wxUserSettingsMapper.selectByPrimaryKeyForUpdate(settings.getId());
+        if(old==null) {
+            if (settings.getCreateTime() == null) {
+                settings.setCreateTime(new Date());
+            }
+            wxUserSettingsMapper.insertSelective(settings);
+        }else{
+            settings.setUpdateTime(new Date());
+            wxUserSettingsMapper.updateByPrimaryKeySelective(settings);
         }
-        wxUserSettingsMapper.insertSelective(settings);
+    }
+
+    /**
+     * @author hxh 
+     * @description 鑾峰彇鐢ㄦ埛璁剧疆锛屽鏋滄病鏈夎缃氨閲囩敤榛樿璁剧疆
+     * @date 18:32 2024/7/9
+     * @param: uid
+     * @return com.taoke.autopay.entity.WxUserSettings
+     **/
+    @Override
+    public WxUserSettings getUserSettings(Long uid) {
+        WxUserSettings settings = selectByUid(uid);
+        if(settings!=null){
+            return settings;
+        }
+        settings = new WxUserSettings();
+        settings.setId(uid);
+        String value = systemConfigService.getValueCache(SystemConfigKeyEnum.DY_ORDER_MAX_PAY_COUNT_DEFAULT);
+        if (!StringUtil.isNullOrEmpty(value)) {
+            settings.setDyOrderCountPerDay(Integer.parseInt(value));
+        }
+        value = systemConfigService.getValueCache(SystemConfigKeyEnum.KS_ORDER_MAX_PAY_COUNT_DEFAULT);
+        if (!StringUtil.isNullOrEmpty(value)) {
+            settings.setKsOrderCountPerDay(Integer.parseInt(value));
+        }
+        value = systemConfigService.getValueCache(SystemConfigKeyEnum.ORDER_MAX_SUBMIT_COUNT_DEFAULT);
+        if (!StringUtil.isNullOrEmpty(value)) {
+            settings.setTotalOrderCountPerDay(Integer.parseInt(value));
+        }
+       return settings;
     }
 
     @Override
@@ -55,6 +92,10 @@
         if (uidList == null || uidList.size() == 0) {
             return new ArrayList<>();
         }
-        return wxUserSettingsMapper.listByUids(uidList);
+        List<WxUserSettings> list=new ArrayList<>();
+        for(Long uid:uidList){
+            list.add(getUserSettings(uid));
+        }
+        return list;
     }
 }

--
Gitblit v1.8.0