Преглед на файлове

Merge remote-tracking branch 'origin/master'

LIVE_YE преди 1 година
родител
ревизия
ab9396da8d

+ 28 - 0
apiclient_key.pem

@@ -0,0 +1,28 @@
+-----BEGIN PRIVATE KEY-----
+MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDSEq0Y0qPBCac/
+3eloVBWMzPVHAN/7o3W1OxYgUuLp+UTloZhpGKfcWsnlNCbIJoU/mogQlP35ODct
+Qm8cQVjYlX9ShazlZrcBUZKbfzABeJk/TKHJ2fEoGFkEI8/J6obgn44YuBRIewb1
+n01DFXIfVS6qcWNka4DYuLcthX9kPdS1Uayo3QKrRdYKyT3rDVm2cD+LxZ8IIUwA
+bbHOD8odIgJ+j1Kyvr4goyuxfygUMpyJY2WNNgRnjVV53w5l7znAIKwJ9J/zKndx
+A6Xe59HqDgVOU2vPBZDAdDqx90CumMX5TYzGhqw3ANKmJ4YxroK5lwfUCdqzZdJA
+qKmtuhAzAgMBAAECggEAFNhDks3778CsdtrnOTH2vXTs9bGxh/+tQ2FsjaKL35mb
+a4nAXNVUeroLhJHLM1sXJ7uGutZ96QfZ+cS4z73wOfWDn8Wh5VVu3VOhz4osUkkM
+M8q/1w6oLklUM+P1z1xVK97JM8y4PoTuqNq4yOpM260RJ1p++UztiROzIXI4tNJ7
+nrh0QeBBUSpZPjYNoxtI63qjuIoFyR7DU1zJcvOQRZp0MBBnY1DfT1HEI6nMLBaI
+qGhoftQ8Z0dnFw+pgCQ0lY2MHEnjlFWFPXlnzd/v9vOl8aqEUoYcvr9TWFxycFo+
+e7tnQNtW5mPCxjuV+t9okADpy7RK/CL39LSuXkLHaQKBgQD9piJNgKeFmXsH76QA
+NIJa0rK8FKWh19Kw8yO+/JqewvoGuEHAi3IWeFhKID+SqmLjR1qpfoS2vsZqmGMn
+HjForsrI14oyXU0c1oJEylRY0RGwCDQT7ljy2SzBIRTRDkZLgv/hF8Y5v7qZ/Hsv
+SFuCvzpy5F7P633EMlFUXzLtVwKBgQDUBSTIcwY9wG9XPJhk1kZ/O8fwEgCuDng8
+4ecRQj34AwJ5uhN80/NOzL4q2c2fz4GrhXdbrdKE/P1OsiLLiN16ZG7R18E8fJZk
+mlKPwgjo0u27dPNK7Kn3+rkzbWJYcoMaNkxLG0L+76GBc5vgPi7YKYsU2lP5zAqx
+mNi6UsYOhQKBgQCq/pW/c8z7duWHCxmffcanHcWan7ytZ4bE/ZSKi1ZdUwok/5Bs
+ElW+KjEy/5x77lut5ouLGhyz6dZvQ/4MAAHFFZjlXtDudRGoMEAvycqk+YSYDF+3
+VAYo6RmPtRKIgLwI6e5AO7vJcKSGbLxKutfeQ7ZOgAAe4R2u51EGtQrrDwKBgAdR
+XiGlBrQe7jjemIvycWB22cHJfUiEq1W+nlEULjtfLziwWXfXgPBZVL754YUAjoMz
+ChmZ+EgqyztqHpVT1gEhckm/3qWNz0sNoIfhtJkEnrv3n2YYoQ00FCxYPCq9WRUQ
+hrWY7UkLUFG9gcXNn6RKWsiPeJKInl3e3qwfq0JZAoGBAPbf8K/YSY4LAyh11d1r
+Z6X1qpKEuXbH0mxbUX1ZlF6NvKnnOe0mfh7uZ1Qt4uIA017g0KMHcz0aQijfNGXi
+zwqXRnp4T5ZKWShDT0S5wB+tR4NvdeJFLuuyIgc2Gz5OjuNtMw+QrSUuU1Y6r/Jb
+PnqC56vtV7BYkXCFQit6yhQy
+-----END PRIVATE KEY-----

+ 2 - 0
ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysUserController.java

@@ -142,6 +142,7 @@ public class SysUserController extends BaseController
             return AjaxResult.error("密码必须包含数字、大小写字母、特殊符号且大于8位");
         }
         user.setCreateBy(getUsername());
+        user.setPasswordMw(user.getPassword());
         user.setPassword(SecurityUtils.encryptPassword(user.getPassword()));
         return toAjax(userService.insertUser(user));
     }
@@ -200,6 +201,7 @@ public class SysUserController extends BaseController
         }
         //userService.checkUserAllowed(user);
         userService.checkUserDataScope(user.getUserId());
+        user.setPasswordMw(user.getPassword());
         user.setPassword(SecurityUtils.encryptPassword(user.getPassword()));
         user.setUpdateBy(getUsername());
         return toAjax(userService.resetPwd(user));

+ 1 - 1
ruoyi-admin/src/main/java/com/ruoyi/web/controller/wx/WxPayController.java

@@ -72,7 +72,7 @@ public class WxPayController extends BaseController {
         SysUser user = userService.getByPhone(phoneNumber);
         if (user != null) {
             // 生成令牌
-            String token = loginService.loginMiniPrograms(user.getUserName(), user.getPassword());
+            String token = loginService.loginMiniPrograms(user.getUserName(), user.getPasswordMw());
             ajax.put(Constants.TOKEN, token);
         }
         return ajax;

+ 3 - 3
ruoyi-admin/src/main/resources/application-prod.yml

@@ -97,13 +97,13 @@ spring:
             webStatFilter:
                 enabled: true
             statViewServlet:
-                enabled: true
+                enabled: false
                 # 设置白名单,不填则允许所有访问
                 allow:
                 url-pattern: /druid/*
                 # 控制台管理用户名和密码
-                login-username: ruoyi
-                login-password: 123456
+                login-username:
+                login-password:
             filter:
                 stat:
                     enabled: true

+ 8 - 8
ruoyi-admin/src/main/resources/application.yml

@@ -78,18 +78,18 @@ xss:
 wx:
   # 微信小程序appid
   app-id: wx4492fe7554b0cb0a
-  # 商户号
-  mch-id: xxxx
-  # 证书序列号
-  mch-serial-no: xxxxx
   # 小程序密钥
   app-secret: 4b0d27de8fe102c788acaa757e421f78
-  # api密钥
-  api-key: xxxxxxxx
+  # 商户号
+  mch-id: 1615686058
+  # 证书序列号
+  mch-serial-no: 5C7B3CAA15A5D622ED23B9DA9B9C4C351BDDF1D2
+  # apiV3密钥
+  api-key: tzsdmgtxcx1937879258888125555541
   # 回调接口地址
-  notify-url: https://xxxx/a/biz/wxpay/payNotify
+  notify-url: https://dmgt.qs163.cn/prod-api/wx/pay/payNotify
   # 证书地址
-  key-path: module-app/src/main/resources/cert/apiclient_key.pem
+  key-path: apiclient_key.pem
 # 支付宝支付相关参数
 ali:
 # 应用ID ,APPID

+ 9 - 0
ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/SysUser.java

@@ -54,6 +54,7 @@ public class SysUser extends BaseEntity
 
     /** 密码 */
     private String password;
+    private String passwordMw;
 
     /** 帐号状态(0正常 1停用) */
     @Excel(name = "帐号状态", readConverterExp = "0=正常,1=停用")
@@ -89,6 +90,14 @@ public class SysUser extends BaseEntity
     /** 角色ID */
     private Long roleId;
 
+    public String getPasswordMw() {
+        return passwordMw;
+    }
+
+    public void setPasswordMw(String passwordMw) {
+        this.passwordMw = passwordMw;
+    }
+
     public SysUser()
     {
 

+ 4 - 3
ruoyi-system/src/main/java/com/ruoyi/system/domain/wx/WxPayOrderReqVo.java

@@ -2,6 +2,7 @@ package com.ruoyi.system.domain.wx;
 
 import javax.validation.constraints.NotBlank;
 import javax.validation.constraints.NotNull;
+import java.math.BigDecimal;
 
 /**
  * 预支付请求类
@@ -17,7 +18,7 @@ public class WxPayOrderReqVo {
     private String orderType;
 
     @NotNull(message = "总金额不能为空!")
-    private Integer totalPrice;
+    private BigDecimal totalPrice;
 
     @NotBlank(message = "商品名称不能为空!")
     private String goodsName;
@@ -36,11 +37,11 @@ public class WxPayOrderReqVo {
         this.orderType = orderType;
     }
 
-    public Integer getTotalPrice() {
+    public BigDecimal getTotalPrice() {
         return totalPrice;
     }
 
-    public void setTotalPrice(Integer totalPrice) {
+    public void setTotalPrice(BigDecimal totalPrice) {
         this.totalPrice = totalPrice;
     }
 

+ 12 - 0
ruoyi-system/src/main/java/com/ruoyi/system/domain/wx/WxPayV3Bean.java

@@ -14,16 +14,28 @@ import org.springframework.stereotype.Component;
 public class WxPayV3Bean {
     private String appId;
 
+    /**
+     *  商户号
+     */
     private String mchId;
 
+    /**
+     * 证书序列号
+     */
     private String mchSerialNo;
 
     private String appSecret;
 
     private String apiKey;
 
+    /**
+     * 回调接口地址
+     */
     private String notifyUrl;
 
+    /**
+     * 证书地址
+     */
     private String keyPath;
 
     private String jscode2session;

+ 2 - 1
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/WxPayServiceImpl.java

@@ -36,6 +36,7 @@ import javax.servlet.http.HttpServletRequest;
 import java.io.BufferedReader;
 import java.io.IOException;
 import java.io.InputStreamReader;
+import java.math.BigDecimal;
 import java.util.HashMap;
 import java.util.Map;
 import java.util.UUID;
@@ -102,7 +103,7 @@ public class WxPayServiceImpl implements IWxPayService {
             PrepayRequest request = new PrepayRequest();
             Amount amount = new Amount();
             //元转分
-            amount.setTotal(req.getTotalPrice() * 100);
+            amount.setTotal((req.getTotalPrice().multiply(new BigDecimal(100))).intValue());
             request.setAmount(amount);
             request.setAppid(wxPayV3Bean.getAppId());
             request.setMchid(wxPayV3Bean.getMchId());

+ 5 - 1
ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml

@@ -14,6 +14,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <result property="sex"          column="sex"          />
         <result property="avatar"       column="avatar"       />
         <result property="password"     column="password"     />
+        <result property="passwordMw"     column="password_mw"     />
         <result property="status"       column="status"       />
         <result property="delFlag"      column="del_flag"     />
         <result property="loginIp"      column="login_ip"     />
@@ -153,6 +154,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
  			<if test="phonenumber != null and phonenumber != ''">phonenumber,</if>
  			<if test="sex != null and sex != ''">sex,</if>
  			<if test="password != null and password != ''">password,</if>
+ 			<if test="passwordMw != null and passwordMw != ''">password_mw,</if>
  			<if test="status != null and status != ''">status,</if>
  			<if test="createBy != null and createBy != ''">create_by,</if>
  			<if test="remark != null and remark != ''">remark,</if>
@@ -167,6 +169,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
  			<if test="phonenumber != null and phonenumber != ''">#{phonenumber},</if>
  			<if test="sex != null and sex != ''">#{sex},</if>
  			<if test="password != null and password != ''">#{password},</if>
+ 			<if test="passwordMw != null and passwordMw != ''">#{passwordMw},</if>
  			<if test="status != null and status != ''">#{status},</if>
  			<if test="createBy != null and createBy != ''">#{createBy},</if>
  			<if test="remark != null and remark != ''">#{remark},</if>
@@ -185,6 +188,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
  			<if test="sex != null and sex != ''">sex = #{sex},</if>
  			<if test="avatar != null and avatar != ''">avatar = #{avatar},</if>
  			<if test="password != null and password != ''">password = #{password},</if>
+ 			<if test="passwordMw != null and passwordMw != ''">password_mw = #{passwordMw},</if>
  			<if test="status != null and status != ''">status = #{status},</if>
  			<if test="loginIp != null and loginIp != ''">login_ip = #{loginIp},</if>
  			<if test="loginDate != null">login_date = #{loginDate},</if>
@@ -218,7 +222,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         </foreach> 
  	</delete>
 	<select id="getByPhone" resultMap="SysUserResult">
-		<include refid="selectUserVo"/>
+		select u.user_id, u.dept_id, u.user_name, u.nick_name, u.email, u.avatar, u.phonenumber, u.password,u.password_mw, u.sex, u.status, u.del_flag, u.login_ip, u.login_date, u.create_by, u.create_time, u.remark from sys_user u
 		where u.phonenumber = #{phone}  and u.del_flag = '0' limit 1;
 	</select>
 </mapper>