guomengjiao 5 місяців тому
батько
коміт
3b8632f4dc

+ 22 - 8
.idea/workspace.xml

@@ -28,11 +28,13 @@
     </select>
   </component>
   <component name="ChangeListManager">
-    <list default="true" id="fc9366aa-6566-4981-8149-d75e02f8e884" name="默认的" comment="wx sdk">
+    <list default="true" id="fc9366aa-6566-4981-8149-d75e02f8e884" name="默认的" comment="个人中心">
       <change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/common/src/main/java/com/jeesite/common/constant/Constants.java" beforeDir="false" afterPath="$PROJECT_DIR$/common/src/main/java/com/jeesite/common/constant/Constants.java" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/modules/bjflapi/src/main/java/com/jeesite/modules/bjflapi/report/WebsiteUserControllerApi.java" beforeDir="false" afterPath="$PROJECT_DIR$/modules/bjflapi/src/main/java/com/jeesite/modules/bjflapi/report/WebsiteUserControllerApi.java" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/modules/bjflapi/src/main/java/com/jeesite/modules/bjflapi/report/WebsiteUserOrderControllerApi.java" beforeDir="false" afterPath="$PROJECT_DIR$/modules/bjflapi/src/main/java/com/jeesite/modules/bjflapi/report/WebsiteUserOrderControllerApi.java" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/modules/report/src/main/java/com/jeesite/modules/report/entity/WebsiteUserOrder.java" beforeDir="false" afterPath="$PROJECT_DIR$/modules/report/src/main/java/com/jeesite/modules/report/entity/WebsiteUserOrder.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/modules/report/src/main/java/com/jeesite/modules/report/entity/WebsiteUser.java" beforeDir="false" afterPath="$PROJECT_DIR$/modules/report/src/main/java/com/jeesite/modules/report/entity/WebsiteUser.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/modules/report/src/main/java/com/jeesite/modules/report/service/ResearchBriefReportLabelService.java" beforeDir="false" afterPath="$PROJECT_DIR$/modules/report/src/main/java/com/jeesite/modules/report/service/ResearchBriefReportLabelService.java" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/modules/report/src/main/java/com/jeesite/modules/report/service/WebsiteUserOrderService.java" beforeDir="false" afterPath="$PROJECT_DIR$/modules/report/src/main/java/com/jeesite/modules/report/service/WebsiteUserOrderService.java" afterDir="false" />
     </list>
     <option name="SHOW_DIALOG" value="false" />
@@ -95,7 +97,7 @@
     <property name="SHARE_PROJECT_CONFIGURATION_FILES" value="true" />
     <property name="WebServerToolWindowFactoryState" value="false" />
     <property name="aspect.path.notification.shown" value="true" />
-    <property name="last_opened_file_path" value="$PROJECT_DIR$/../../yicangzongtai/api" />
+    <property name="last_opened_file_path" value="$PROJECT_DIR$/../web_site" />
     <property name="project.structure.last.edited" value="Project" />
     <property name="project.structure.proportion" value="0.15" />
     <property name="project.structure.side.proportion" value="0.25287357" />
@@ -458,7 +460,7 @@
       <workItem from="1734579234738" duration="258000" />
       <workItem from="1734579502121" duration="1272000" />
       <workItem from="1734658594781" duration="126472000" />
-      <workItem from="1735184825354" duration="2599000" />
+      <workItem from="1735184825354" duration="9411000" />
     </task>
     <task id="LOCAL-00001" summary="1">
       <created>1676368709673</created>
@@ -782,7 +784,14 @@
       <option name="project" value="LOCAL" />
       <updated>1735184664592</updated>
     </task>
-    <option name="localTasksCounter" value="47" />
+    <task id="LOCAL-00047" summary="个人中心">
+      <created>1735193091988</created>
+      <option name="number" value="00047" />
+      <option name="presentableId" value="LOCAL-00047" />
+      <option name="project" value="LOCAL" />
+      <updated>1735193091988</updated>
+    </task>
+    <option name="localTasksCounter" value="48" />
     <servers />
   </component>
   <component name="TypeScriptGeneratedFilesManager">
@@ -837,7 +846,6 @@
     </option>
   </component>
   <component name="VcsManagerConfiguration">
-    <MESSAGE value="更新报告附件" />
     <MESSAGE value="更新模板配置" />
     <MESSAGE value="调查报告功能更新" />
     <MESSAGE value="调查报告优化" />
@@ -862,16 +870,22 @@
     <MESSAGE value="报告支付" />
     <MESSAGE value="简报功能修改" />
     <MESSAGE value="wx sdk" />
-    <option name="LAST_COMMIT_MESSAGE" value="wx sdk" />
+    <MESSAGE value="个人中心" />
+    <option name="LAST_COMMIT_MESSAGE" value="个人中心" />
   </component>
   <component name="XDebuggerManager">
     <breakpoint-manager>
       <breakpoints>
         <line-breakpoint enabled="true" type="java-line">
           <url>file://$PROJECT_DIR$/modules/report/src/main/java/com/jeesite/modules/report/service/WebsiteUserOrderService.java</url>
-          <line>204</line>
+          <line>210</line>
           <option name="timeStamp" value="26" />
         </line-breakpoint>
+        <line-breakpoint type="java-line">
+          <url>file://$PROJECT_DIR$/modules/report/src/main/java/com/jeesite/modules/report/service/ResearchBriefReportLabelService.java</url>
+          <line>52</line>
+          <option name="timeStamp" value="27" />
+        </line-breakpoint>
       </breakpoints>
     </breakpoint-manager>
     <watches-manager>

+ 3 - 0
common/src/main/java/com/jeesite/common/constant/Constants.java

@@ -178,6 +178,7 @@ public interface Constants {
      * 网站token名称
      */
     String WEBSITE_TOKEN = "website-token";
+    String WEBSITE_VALID_CODE = "websiteValidCode";
 
     String PREFIX_USER_FORGET_TOKEN = "bjfl:user:forget:token:";
 
@@ -203,6 +204,8 @@ public interface Constants {
     interface orderPayMethod{
         String WX = "wx";
         String ZFB = "zfb";
+        String WX_H5 = "wx_h5";
+        String ZFB_H5 = "zfb_h5";
     }
 
     interface briefReportFileType{

+ 15 - 1
modules/bjflapi/src/main/java/com/jeesite/modules/bjflapi/report/WebsiteUserControllerApi.java

@@ -4,6 +4,7 @@ import com.jeesite.common.codec.DesUtils;
 import com.jeesite.common.config.Global;
 import com.jeesite.common.constant.Constants;
 import com.jeesite.common.idgen.IdGen;
+import com.jeesite.common.image.CaptchaUtils;
 import com.jeesite.common.lang.StringUtils;
 import com.jeesite.common.msg.EmailUtils;
 import com.jeesite.modules.bjflapi.AbstractController;
@@ -45,6 +46,13 @@ public class WebsiteUserControllerApi extends AbstractController {
     @Value("${token.expiretime}")
     private int EXPIRE;
 
+    @GetMapping(value = "getValidCode")
+    public String getValidCode(HttpServletResponse response) throws Exception {
+        String s = CaptchaUtils.generateCaptcha(response.getOutputStream());
+        UserUtils.putCache(Constants.WEBSITE_VALID_CODE, s);
+        return s;
+    }
+
     /**
      * 登录页面
      */
@@ -62,7 +70,13 @@ public class WebsiteUserControllerApi extends AbstractController {
         }
         loginCode = DesUtils.decode(loginCode, secretKey);
         password = DesUtils.decode(password, secretKey);
-
+        if (StringUtils.isNotEmpty(websiteUser.getValidCode())) {
+            //验证是否一致
+            if (!websiteUser.getValidCode().equals(UserUtils.getCache(Constants.WEBSITE_VALID_CODE))) {
+                return R.error("验证码不一致");
+            }
+            UserUtils.removeCache(Constants.WEBSITE_VALID_CODE);
+        }
         //查询用户
         WebsiteUser oldUser = websiteUserService.findLoginCode(loginCode);
         if (oldUser == null) {

+ 1 - 1
modules/bjflapi/src/main/java/com/jeesite/modules/bjflapi/report/WebsiteUserOrderControllerApi.java

@@ -127,7 +127,7 @@ public class WebsiteUserOrderControllerApi extends AbstractController {
         if (StringUtils.isEmpty(payMethod)) {
             return R.error("支付方式为空");
         }
-        if (!Constants.orderPayMethod.ZFB.equals(payMethod) && !Constants.orderPayMethod.WX.equals(payMethod)) {
+        if (!Constants.orderPayMethod.ZFB.equals(payMethod) && !Constants.orderPayMethod.WX.equals(payMethod) && !Constants.orderPayMethod.WX_H5.equals(payMethod) && !Constants.orderPayMethod.ZFB_H5.equals(payMethod)) {
             return R.error("支付方式值无效");
         }
         //判断简报是否需要收费

+ 9 - 0
modules/report/src/main/java/com/jeesite/modules/report/entity/WebsiteUser.java

@@ -40,6 +40,7 @@ public class WebsiteUser extends DataEntity<WebsiteUser> {
 	private String demand;		// 需求
 	private String addr;		// 公司职务
 	private String confirmNewPassword;
+	private String validCode;
 
 	public WebsiteUser() {
 		this(null);
@@ -139,4 +140,12 @@ public class WebsiteUser extends DataEntity<WebsiteUser> {
 	public void setConfirmNewPassword(String confirmNewPassword) {
 		this.confirmNewPassword = confirmNewPassword;
 	}
+
+	public String getValidCode() {
+		return validCode;
+	}
+
+	public void setValidCode(String validCode) {
+		this.validCode = validCode;
+	}
 }

+ 3 - 0
modules/report/src/main/java/com/jeesite/modules/report/service/ResearchBriefReportLabelService.java

@@ -47,6 +47,9 @@ public class ResearchBriefReportLabelService extends CrudService<ResearchBriefRe
 	}
 
 	private ResearchBriefReportLabel convert(ResearchBriefReportLabel r) {
+		if (r == null) {
+			return r;
+		}
 		ResearchBriefReportLabel label = super.get(r.getParentId());
 		if (label != null) {
 			r.setParentName(label.getName());

+ 6 - 0
modules/report/src/main/java/com/jeesite/modules/report/service/WebsiteUserOrderService.java

@@ -149,6 +149,12 @@ public class WebsiteUserOrderService extends CrudService<WebsiteUserOrderDao, We
 			} catch (AlipayApiException e) {
 				return R.error(e.getErrCode() + e.getErrMsg());
 			}
+		} else if (Constants.orderPayMethod.ZFB_H5.equals(payMethod)) {
+//			try {
+//				payResult = alipayUtil.payH5(websiteUserOrder);
+//			} catch (AlipayApiException e) {
+//				return R.error(e.getErrCode() + e.getErrMsg());
+//			}
 		}
 		if (StringUtils.isEmpty(payResult)) {
 			return R.error("支付调用第三方失败");