fei.wang
7 天以前 e15f561a1f9eddfde503d59baf45a860b131928e
src/main/java/com/flow/controller/orderController.java
@@ -6,14 +6,13 @@
package com.flow.controller;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.flow.mapper.CardMapper;
import com.flow.mapper.DuanxinlogMapper;
import com.flow.mapper.ManagerMapper;
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;
@@ -21,6 +20,7 @@
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;
@@ -33,6 +33,7 @@
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;
@@ -59,18 +60,23 @@
    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;
        DecimalFormat decimalFormat = new DecimalFormat("#.##");
@@ -86,30 +92,40 @@
            String value = var21[var23];
            Card card1 = new Card();
            card1.setRechargedate(formattedTime);
            card1.setRechargemoney(String.valueOf(money));
//            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= sfd.parse(card12.getEnddate());
            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();
            calendar.setTime(date);
                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;
            Date date1= sfd.parse(card12.getRemainingdays());
            Calendar calendar1 = Calendar.getInstance();
            calendar1.setTime(date1);
            calendar1.add(Calendar.YEAR, 1);
            String newdate1 = sfd.format(calendar.getTime());
            card1.setRemainingdays(newdate1);
//            card1.setCardnumber(value);
            card1.setRemainingdays(i + "天");
            System.out.println(value);
//            QueryWrapper queryWrapper = new QueryWrapper();
//            queryWrapper.eq("cardnumber", value);
//            Card card2 = cardMapper.selectOne(queryWrapper);
            card1.setNum((long) Integer.parseInt(value));
            System.out.println(card1);
            list.add(card1);
@@ -156,6 +172,7 @@
            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");
@@ -163,6 +180,10 @@
            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);
@@ -177,6 +198,40 @@
                // 返回的resp是一个SendSmsResponse的实例,与请求对象对应
                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);
                    // 返回的resp是一个SendSmsResponse的实例,与请求对象对应
//                    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");
@@ -187,12 +242,14 @@
            Duanxinlog duanxinlog = new Duanxinlog();
            duanxinlog.setIdentification(value1);
            duanxinlog.setReceiver(value1);
            duanxinlog.setNumber(phoneNumberSet1[0]);
            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");
@@ -206,7 +263,11 @@
        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;
@@ -224,10 +285,15 @@
            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);
        }
@@ -289,6 +355,40 @@
                // 返回的resp是一个SendSmsResponse的实例,与请求对象对应
                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);
                // 返回的resp是一个SendSmsResponse的实例,与请求对象对应
//                    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("北京华星北斗智控");
@@ -306,6 +406,8 @@
        } catch (TencentCloudSDKException var30) {
            System.out.println(var30.toString());
            response.getWriter().println("success");
        } catch (Exception e) {
            throw new RuntimeException(e);
        }
        response.getWriter().println("success");