From e15f561a1f9eddfde503d59baf45a860b131928e Mon Sep 17 00:00:00 2001
From: fei.wang <wf18701153496@163.com>
Date: 星期三, 13 八月 2025 14:22:50 +0800
Subject: [PATCH] 更新最新版代码

---
 src/main/java/com/flow/controller/orderController.java |  235 ++++++++++++++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 216 insertions(+), 19 deletions(-)

diff --git a/src/main/java/com/flow/controller/orderController.java b/src/main/java/com/flow/controller/orderController.java
index 5967e6a..044ecbb 100644
--- a/src/main/java/com/flow/controller/orderController.java
+++ b/src/main/java/com/flow/controller/orderController.java
@@ -5,12 +5,14 @@
 
 package com.flow.controller;
 
-import com.flow.pojo.Card;
-import com.flow.pojo.Chongzhi;
-import com.flow.pojo.TbFuwuqi;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.flow.mapper.*;
+import com.flow.pojo.*;
 import com.flow.service.CardService;
 import com.flow.service.ChongZhiService;
+import com.flow.service.DuanxinlogService;
 import com.flow.service.TbFuwuqiService;
+import com.flow.util.DESUtil;
 import com.tencentcloudapi.common.Credential;
 import com.tencentcloudapi.common.exception.TencentCloudSDKException;
 import com.tencentcloudapi.common.profile.ClientProfile;
@@ -18,15 +20,20 @@
 import com.tencentcloudapi.sms.v20210111.SmsClient;
 import com.tencentcloudapi.sms.v20210111.models.SendSmsRequest;
 import com.tencentcloudapi.sms.v20210111.models.SendSmsResponse;
+
 import java.io.IOException;
 import java.text.DecimalFormat;
 import java.text.ParseException;
 import java.text.SimpleDateFormat;
 import java.time.LocalDateTime;
 import java.time.format.DateTimeFormatter;
+import java.util.ArrayList;
+import java.util.Calendar;
 import java.util.Date;
+import java.util.List;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
+
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.PostMapping;
@@ -46,19 +53,32 @@
     @Autowired
     TbFuwuqiService tbFuwuqiService;
 
+    @Autowired
+    CardMapper cardMapper;
+
+    @Autowired
+    DuanxinlogService duanxinlogService;
+    @Autowired
+    ManagerMapper managerMapper;
+
+    @Autowired
+    CompanyMapper companyMapper;
+
     public orderController() {
     }
 
     @PostMapping({"payed"})
     public void changeOrder(HttpServletRequest request, HttpServletResponse response) throws ParseException, IOException {
         LocalDateTime currentTime = LocalDateTime.now();
+        System.out.println(currentTime);
         DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
         String out_trade_no = request.getParameter("out_trade_no");
         double money = Double.parseDouble(request.getParameter("total_amount"));
         String formattedTime = currentTime.format(formatter);
+        System.out.println(formattedTime);
         String card = request.getParameter("body");
         String[] values = card.split(",");
-        double mones = (double)values.length * money;
+        double mones = (double) values.length * money;
         DecimalFormat decimalFormat = new DecimalFormat("#.##");
         String formattedMones = decimalFormat.format(mones);
         double result = Double.parseDouble(formattedMones) * 0.06;
@@ -67,15 +87,52 @@
         String kaiMoney = decimalFormat.format(finalResult);
         String[] var21 = values;
         int var22 = values.length;
-
-        for(int var23 = 0; var23 < var22; ++var23) {
+        List<Card> list = new ArrayList<>();
+        for (int var23 = 0; var23 < var22; ++var23) {
             String value = var21[var23];
             Card card1 = new Card();
             card1.setRechargedate(formattedTime);
-            card1.setRechargemoney(String.valueOf(money));
-            card1.setCardnumber(value);
-            this.cardService.UpdateCardNum(card1);
+//            card1.setRechargemoney(String.valueOf(money));
+            QueryWrapper queryWrapper = new QueryWrapper();
+            queryWrapper.eq("num", (long) Integer.parseInt(value));
+            Card card12 = cardMapper.selectOne(queryWrapper);
+            SimpleDateFormat sfd = new SimpleDateFormat("yyyy-MM-dd");
+            Date date = new Date();
+            Date endDay = sfd.parse(card12.getEnddate());//缁撴潫鏃堕棿
+            card1.setRechargemoney(card12.getUnitprice().toString());
+            Long starTime = date.getTime();
+            Long endTime = endDay.getTime();
+            Long num11 = endTime - starTime;
+            if ((num11 / 24 / 60 / 60 / 1000) < 0) {
+                LocalDateTime currentTime1 = LocalDateTime.now();
+                DateTimeFormatter formatter1 = DateTimeFormatter.ofPattern("yyyy-MM-dd");
+                String formattedTime1 = currentTime1.format(formatter1);
+                Calendar calendar = Calendar.getInstance();
+                Date date1 = sfd.parse(formattedTime1);
+                calendar.setTime(date1);
+                calendar.add(Calendar.YEAR, 1);
+                String newdate = sfd.format(calendar.getTime());
+                card1.setEnddate(newdate);
+            } else {
+                Calendar calendar = Calendar.getInstance();
+                Date date1 = sfd.parse(card12.getEnddate());
+                calendar.setTime(date1);
+                calendar.add(Calendar.YEAR, 1);
+                String newdate = sfd.format(calendar.getTime());
+                card1.setEnddate(newdate);
+            }
+            String s = card12.getRemainingdays().split("澶�")[0];
+            Integer i = Integer.parseInt(s) + 365;
+
+            card1.setRemainingdays(i + "澶�");
+            System.out.println(value);
+            card1.setNum((long) Integer.parseInt(value));
+            System.out.println(card1);
+            list.add(card1);
+//            this.cardService.UpdateCardNum(card1);
         }
+
+        cardMapper.updateBatchByIdcz(list);
 
         System.out.println("鍏呭�艰褰�");
         String value1 = request.getParameter("subject");
@@ -84,22 +141,22 @@
         if (value1 != null && value1 != "") {
             chongzhi = new Chongzhi();
             chongzhi.setCzcard(card);
-            chongzhi.setCzmoney(formattedMones);
+            chongzhi.setCzmoney(String.valueOf(money));
             chongzhi.setJynum(out_trade_no);
             chongzhi.setCzdate(formattedTime);
             chongzhi.setStatus("鏈紑绁�");
-            chongzhi.setKaimoney(kaiMoney);
+            chongzhi.setKaimoney(String.valueOf(money));
             chongzhi.setCompany(value1);
             this.chongZhiService.addChongZhi(chongzhi);
         } else {
             chongzhi = new Chongzhi();
             chongzhi.setCzcard(card);
-            chongzhi.setCzmoney(formattedMones);
+            chongzhi.setCzmoney(String.valueOf(money));
             chongzhi.setJynum(out_trade_no);
             chongzhi.setCzdate(formattedTime);
             chongzhi.setCompany("鏃�");
             chongzhi.setStatus("鏈紑绁�");
-            chongzhi.setKaimoney(kaiMoney);
+            chongzhi.setKaimoney(String.valueOf(money));
             this.chongZhiService.addChongZhi(chongzhi);
         }
 
@@ -115,16 +172,84 @@
             SendSmsRequest req = new SendSmsRequest();
             String[] phoneNumberSet1 = new String[]{"15210640466"};
             req.setPhoneNumberSet(phoneNumberSet1);
+            String string = new String();
+            QueryWrapper sms = new QueryWrapper();
+            sms.eq("none", "0");
+            sms.eq("smsreception", "1");
+            List<Manager> managerList = (managerMapper).selectList(sms);
+            for (int s = 0; s < managerList.size(); s++) {
+//                        System.out.println(managerList.get(s).getPhone());
+//                        phoneNumberSet1[s] = managerList.get(s).getPhone();
+                if (s != 0) {
+                    string += ",";
+                }
+                string += managerList.get(s).getPhone();
+                String[] phoneNumberSet12 = {managerList.get(s).getPhone()};
+                System.out.println(phoneNumberSet12);
+                req.setPhoneNumberSet(phoneNumberSet12);
+
+                req.setSmsSdkAppId("1400838975");
+                req.setSignName("鍖椾含鍗庢槦鍖楁枟鏅烘帶");
+                req.setTemplateId("1907853");
+
+//                    String[] templateParamSet1 = {String.valueOf(+num11 / 24 / 60 / 60 / 1000)};
+                String[] templateParamSet1 = new String[]{value1, formattedTime, String.valueOf(money), String.valueOf(values.length)};
+                req.setTemplateParamSet(templateParamSet1);
+                // 杩斿洖鐨剅esp鏄竴涓猄endSmsResponse鐨勫疄渚嬶紝涓庤姹傚璞″搴�
+                SendSmsResponse resp = client.SendSms(req);
+            }
+            QueryWrapper queryWrapper = new QueryWrapper();
+            queryWrapper.eq("companyName", value1);
+            queryWrapper.eq("none", 0);
+            Company company = companyMapper.selectOne(queryWrapper);
+//            company.getLoginphone().split("[,锛宂")
+            String loginphone = DESUtil.decrypt(company.getLoginphone(), DESUtil.key);
+            for (int i = 0; i < loginphone.split("[,锛宂").length; i++) {
+//                for (int j = 0; j < phone.split("[,锛宂").length; j++) {
+                    String[] phoneNumberSet11 = {loginphone.split("[,锛宂")[i]};
+                    req.setPhoneNumberSet(phoneNumberSet11);
+
+                req.setSmsSdkAppId("1400838975");
+                req.setSignName("鍖椾含鍗庢槦鍖楁枟鏅烘帶");
+                req.setTemplateId("1907853");
+                String[] templateParamSet1 = new String[]{value1, formattedTime, String.valueOf(money), String.valueOf(values.length)};
+                req.setTemplateParamSet(templateParamSet1);
+                SendSmsResponse resp = client.SendSms(req);
+                System.out.println(SendSmsResponse.toJsonString(resp));
+//                    String[] templateParamSet1 = {String.valueOf(+num11 / 24 / 60 / 60 / 1000)};
+//                        String[] templateParamSet1 = {String.valueOf("鎮ㄦ湁鏈嶅姟鍣ㄥ皢浜庯細" + fuwuqiList.get(i).getEnddate() + "鍒版湡锛�")};
+//                        req.setTemplateParamSet(templateParamSet1);
+                    // 杩斿洖鐨剅esp鏄竴涓猄endSmsResponse鐨勫疄渚嬶紝涓庤姹傚璞″搴�
+//                    SendSmsResponse resp = client.SendSms(req);
+                    // 杈撳嚭json鏍煎紡鐨勫瓧绗︿覆鍥炲寘
+                Duanxinlog duanxinlog = new Duanxinlog();
+                duanxinlog.setIdentification(value1);
+                duanxinlog.setReceiver(value1);
+                duanxinlog.setNumber(loginphone.split("[,锛宂")[i]);
+                duanxinlog.setContent("鍏徃鍚嶇О锛�" + value1 + "锛屽厖鍊兼椂闂达細" + formattedTime + "锛屽厖鍊兼�婚噾棰濓細" + String.valueOf(formattedMones) + "锛屽厖鍊煎崱鍙锋暟閲�:" + String.valueOf(values.length));
+                this.duanxinlogService.addDuanxinlog(duanxinlog);
+//                }
+            }
+
+            
             req.setSmsSdkAppId("1400838975");
             req.setSignName("鍖椾含鍗庢槦鍖楁枟鏅烘帶");
             req.setTemplateId("1907853");
-            String[] templateParamSet1 = new String[]{value1, formattedTime, String.valueOf(formattedMones), String.valueOf(values.length)};
+            String[] templateParamSet1 = new String[]{value1, formattedTime, String.valueOf(money), String.valueOf(values.length)};
             req.setTemplateParamSet(templateParamSet1);
             SendSmsResponse resp = client.SendSms(req);
             System.out.println(SendSmsResponse.toJsonString(resp));
+            Duanxinlog duanxinlog = new Duanxinlog();
+            duanxinlog.setIdentification(value1);
+            duanxinlog.setReceiver(value1);
+            duanxinlog.setNumber(string);
+            duanxinlog.setContent("鍏徃鍚嶇О锛�" + value1 + "锛屽厖鍊兼椂闂达細" + formattedTime + "锛屽厖鍊兼�婚噾棰濓細" + String.valueOf(formattedMones) + "锛屽厖鍊煎崱鍙锋暟閲�:" + String.valueOf(values.length));
+            this.duanxinlogService.addDuanxinlog(duanxinlog);
         } catch (TencentCloudSDKException var30) {
             System.out.println(var30.toString());
             response.getWriter().println("success");
+        } catch (Exception e) {
+            throw new RuntimeException(e);
         }
 
         response.getWriter().println("success");
@@ -138,10 +263,14 @@
         double money = Double.parseDouble(request.getParameter("total_amount"));
 //        double money = 0.02;
         String formattedTime = currentTime.format(formatter);
+        System.out.println("6666666666");
+        System.out.println(money);
+        System.out.println(formattedTime);
         String card = request.getParameter("body");
+        System.out.println(card);
 //        String card = "鍖椾含鍗庢槦鍖楁枟鏅烘帶鎶�鏈湁闄愬叕鍙�";
         String[] values = card.split(",");
-        double mones = (double)values.length * money;
+        double mones = (double) values.length * money;
         DecimalFormat decimalFormat = new DecimalFormat("#.##");
         String formattedMones = decimalFormat.format(mones);
         double result = Double.parseDouble(formattedMones) * 0.06;
@@ -151,15 +280,20 @@
         String[] var21 = values;
         int var22 = values.length;
 
-        for(int var23 = 0; var23 < var22; ++var23) {
+        for (int var23 = 0; var23 < var22; ++var23) {
             String value = var21[var23];
             System.out.println(value);
             TbFuwuqi tbFuwuqi = new TbFuwuqi();
             tbFuwuqi.setRechargedate(formattedTime);
+            System.out.println(String.valueOf(money));
             tbFuwuqi.setRechargemoney(String.valueOf(money));
-
-            tbFuwuqi.setCompany("鍖椾含鍗庢槦鍖楁枟鏅烘帶鎶�鏈湁闄愬叕鍙�");
-            tbFuwuqi.setCompany(value);
+            tbFuwuqi.setServername(value);
+//            QueryWrapper queryWrapper = new QueryWrapper();
+//            queryWrapper.eq("servername", value);
+            TbFuwuqi tbFuwuqi1 = tbFuwuqiService.ifFuwuqi(tbFuwuqi);
+//            tbFuwuqi.setCompany("鍖椾含鍗庢槦鍖楁枟鏅烘帶鎶�鏈湁闄愬叕鍙�");
+            tbFuwuqi.setCompany(tbFuwuqi1.getCompany());
+            System.out.println(tbFuwuqi);
             this.tbFuwuqiService.Updatefuwuqi(tbFuwuqi);
         }
 
@@ -200,6 +334,61 @@
             SmsClient client = new SmsClient(cred, "ap-beijing", clientProfile);
             SendSmsRequest req = new SendSmsRequest();
             String[] phoneNumberSet1 = new String[]{"15210640466"};
+            QueryWrapper sms = new QueryWrapper();
+            sms.eq("none", "0");
+            sms.eq("smsreception", "1");
+            List<Manager> managerList = (managerMapper).selectList(sms);
+            for (int s = 0; s < managerList.size(); s++) {
+//                        System.out.println(managerList.get(s).getPhone());
+//                        phoneNumberSet1[s] = managerList.get(s).getPhone();
+                String[] phoneNumberSet12 = {managerList.get(s).getPhone()};
+                System.out.println(phoneNumberSet12);
+                req.setPhoneNumberSet(phoneNumberSet12);
+
+                req.setSmsSdkAppId("1400838975");
+                req.setSignName("鍖椾含鍗庢槦鍖楁枟鏅烘帶");
+                req.setTemplateId("1907853");
+
+//                    String[] templateParamSet1 = {String.valueOf(+num11 / 24 / 60 / 60 / 1000)};
+                String[] templateParamSet1 = new String[]{value1, formattedTime, String.valueOf(money), String.valueOf(values.length)};
+                req.setTemplateParamSet(templateParamSet1);
+                // 杩斿洖鐨剅esp鏄竴涓猄endSmsResponse鐨勫疄渚嬶紝涓庤姹傚璞″搴�
+                SendSmsResponse resp = client.SendSms(req);
+            }
+
+            QueryWrapper queryWrapper = new QueryWrapper();
+            queryWrapper.eq("companyName", value1);
+            queryWrapper.eq("none", 0);
+            Company company = companyMapper.selectOne(queryWrapper);
+//            company.getLoginphone().split("[,锛宂")
+            String loginphone = DESUtil.decrypt(company.getLoginphone(), DESUtil.key);
+            for (int i = 0; i < loginphone.split("[,锛宂").length; i++) {
+//                for (int j = 0; j < phone.split("[,锛宂").length; j++) {
+                String[] phoneNumberSet11 = {loginphone.split("[,锛宂")[i]};
+                req.setPhoneNumberSet(phoneNumberSet11);
+
+                req.setSmsSdkAppId("1400838975");
+                req.setSignName("鍖椾含鍗庢槦鍖楁枟鏅烘帶");
+                req.setTemplateId("1907853");
+                String[] templateParamSet1 = new String[]{value1, formattedTime, String.valueOf(money), String.valueOf(values.length)};
+                req.setTemplateParamSet(templateParamSet1);
+                SendSmsResponse resp = client.SendSms(req);
+                System.out.println(SendSmsResponse.toJsonString(resp));
+//                    String[] templateParamSet1 = {String.valueOf(+num11 / 24 / 60 / 60 / 1000)};
+//                        String[] templateParamSet1 = {String.valueOf("鎮ㄦ湁鏈嶅姟鍣ㄥ皢浜庯細" + fuwuqiList.get(i).getEnddate() + "鍒版湡锛�")};
+//                        req.setTemplateParamSet(templateParamSet1);
+                // 杩斿洖鐨剅esp鏄竴涓猄endSmsResponse鐨勫疄渚嬶紝涓庤姹傚璞″搴�
+//                    SendSmsResponse resp = client.SendSms(req);
+                // 杈撳嚭json鏍煎紡鐨勫瓧绗︿覆鍥炲寘
+                Duanxinlog duanxinlog = new Duanxinlog();
+                duanxinlog.setIdentification(value1);
+                duanxinlog.setReceiver(value1);
+                duanxinlog.setNumber(loginphone.split("[,锛宂")[i]);
+                duanxinlog.setContent("鍏徃鍚嶇О锛�" + value1 + "锛屽厖鍊兼椂闂达細" + formattedTime + "锛屽厖鍊兼�婚噾棰濓細" + String.valueOf(formattedMones) + "锛屽厖鍊煎崱鍙锋暟閲�:" + String.valueOf(values.length));
+                this.duanxinlogService.addDuanxinlog(duanxinlog);
+//                }
+            }
+
             req.setPhoneNumberSet(phoneNumberSet1);
             req.setSmsSdkAppId("1400838975");
             req.setSignName("鍖椾含鍗庢槦鍖楁枟鏅烘帶");
@@ -208,9 +397,17 @@
             req.setTemplateParamSet(templateParamSet1);
             SendSmsResponse resp = client.SendSms(req);
             System.out.println(SendSmsResponse.toJsonString(resp));
+            Duanxinlog duanxinlog = new Duanxinlog();
+            duanxinlog.setIdentification(value1);
+            duanxinlog.setReceiver(value1);
+            duanxinlog.setNumber(phoneNumberSet1[0]);
+            duanxinlog.setContent("鍏徃鍚嶇О锛�" + value1 + "锛屽厖鍊兼椂闂达細" + formattedTime + "锛屽厖鍊兼�婚噾棰濓細" + String.valueOf(formattedMones) + "锛屽厖鍊煎崱鍙锋暟閲�:" + String.valueOf(values.length));
+            this.duanxinlogService.addDuanxinlog(duanxinlog);
         } catch (TencentCloudSDKException var30) {
             System.out.println(var30.toString());
             response.getWriter().println("success");
+        } catch (Exception e) {
+            throw new RuntimeException(e);
         }
 
         response.getWriter().println("success");

--
Gitblit v1.9.3