czh 2 лет назад
Родитель
Сommit
fdaf4f8c8b

+ 4 - 0
sckw-auth/pom.xml

@@ -47,6 +47,10 @@
             <groupId>com.sckw</groupId>
             <artifactId>sckw-system-api</artifactId>
         </dependency>
+        <dependency>
+            <groupId>com.sckw</groupId>
+            <artifactId>sckw-message-api</artifactId>
+        </dependency>
 
     </dependencies>
     <build>

+ 14 - 4
sckw-auth/src/main/java/com/sckw/auth/controller/AuthController.java

@@ -1,9 +1,6 @@
 package com.sckw.auth.controller;
 
-import com.sckw.auth.model.vo.req.ForgetPasswordReqVo;
-import com.sckw.auth.model.vo.req.LoginReqVo;
-import com.sckw.auth.model.vo.req.RegisterReqVo;
-import com.sckw.auth.model.vo.req.UpdatePasswordReqVo;
+import com.sckw.auth.model.vo.req.*;
 import com.sckw.auth.service.IAuthService;
 import com.sckw.core.exception.SystemException;
 import com.sckw.core.web.constant.HttpStatus;
@@ -96,5 +93,18 @@ public class AuthController {
         return HttpResult.ok(HttpStatus.MSG_001);
     }
 
+    /**
+     * @desc: 获取验证码
+     * @param: reqVo 入参
+     * @author: czh
+     * @date 2023/7/23
+     * @return HttpResult
+     */
+    @PostMapping("getRegisterSms")
+    public HttpResult getRegisterSms(@Valid @RequestBody GetRegisterSmsReqVo reqVo,
+                                   @RequestHeader(name = "System-Type", required = true) int systemType) {
+        reqVo.setSystemType(systemType);
+        return HttpResult.ok(authService.getRegisterSms(reqVo));
+    }
 
 }

+ 40 - 0
sckw-auth/src/main/java/com/sckw/auth/model/vo/req/GetRegisterSmsReqVo.java

@@ -0,0 +1,40 @@
+package com.sckw.auth.model.vo.req;
+
+import jakarta.validation.constraints.NotBlank;
+import lombok.Data;
+
+import java.io.Serial;
+import java.io.Serializable;
+
+@Data
+public class GetRegisterSmsReqVo implements Serializable {
+
+    @Serial
+    private static final long serialVersionUID = -6344151610477939870L;
+
+    /**
+     * 企业名称
+     */
+    @NotBlank(message = "企业名称不能为空")
+    private String entName;
+
+    /**
+     * 企业代表人
+     */
+    @NotBlank(message = "企业代表人不能为空")
+    private String name;
+
+    /**
+     * 手机号
+     */
+    @NotBlank(message = "联系电话不能为空")
+    private String phone;
+
+    /**
+     * 系统类型(1运营端、2企业开户)
+     */
+    private Integer systemType;
+
+
+
+}

+ 9 - 0
sckw-auth/src/main/java/com/sckw/auth/service/IAuthService.java

@@ -47,4 +47,13 @@ public interface IAuthService {
      * @date: 2023/7/3
      */
     void resetPassword(Long id);
+
+    /**
+     * @desc: 获取验证码
+     * @param: reqVo 入参
+     * @author: czh
+     * @date 2023/7/23
+     * @return String
+     */
+    String getRegisterSms(GetRegisterSmsReqVo reqVo);
 }

+ 14 - 4
sckw-auth/src/main/java/com/sckw/auth/service/impl/AuthServiceImpl.java

@@ -2,10 +2,7 @@ package com.sckw.auth.service.impl;
 
 import cn.hutool.core.date.DateUtil;
 import com.alibaba.fastjson.JSON;
-import com.sckw.auth.model.vo.req.ForgetPasswordReqVo;
-import com.sckw.auth.model.vo.req.LoginReqVo;
-import com.sckw.auth.model.vo.req.RegisterReqVo;
-import com.sckw.auth.model.vo.req.UpdatePasswordReqVo;
+import com.sckw.auth.model.vo.req.*;
 import com.sckw.auth.model.vo.res.DeptInfoResVo;
 import com.sckw.auth.model.vo.res.EntInfoResVo;
 import com.sckw.auth.model.vo.res.LoginResVo;
@@ -15,6 +12,7 @@ import com.sckw.core.utils.StringUtils;
 import com.sckw.core.web.model.EntCertificateInfo;
 import com.sckw.core.web.model.LoginEntInfo;
 import com.sckw.core.web.model.LoginUserInfo;
+import com.sckw.message.api.dubbo.SmsInfoService;
 import com.sckw.system.api.model.dto.req.ForgetPasswordReqDto;
 import com.sckw.system.api.model.dto.req.UpdatePasswordReqDto;
 import com.sckw.system.api.model.dto.req.UserLoginReqDto;
@@ -49,6 +47,9 @@ public class AuthServiceImpl implements IAuthService {
     @DubboReference(version = "2.0.0", group = "design", check = false)
     private RemoteUserService remoteUserService;
 
+    @DubboReference(version = "2.0.0", group = "design", check = false)
+    private SmsInfoService smsInfoService;
+
 
     @Override
     public LoginResVo login(LoginReqVo reqDto) throws SystemException {
@@ -194,6 +195,15 @@ public class AuthServiceImpl implements IAuthService {
         remoteUserService.resetPassword(id);
     }
 
+    @Override
+    public String getRegisterSms(GetRegisterSmsReqVo reqVo) {
+        String code = "";
+        remoteUserService.checkRegisterParam(reqVo.getEntName(), reqVo.getPhone(), reqVo.getSystemType());
+        String key = Global.USER_LOGIN_CAPTCHA + reqVo.getPhone() + Global.COLON + reqVo.getSystemType();
+        RedissonUtils.put(key, code, 30L);
+        return code;
+    }
+
 
     static class AsyncProcess implements Runnable {
 

+ 8 - 0
sckw-modules-api/sckw-system-api/src/main/java/com/sckw/system/api/RemoteUserService.java

@@ -159,4 +159,12 @@ public interface RemoteUserService {
      */
     Map<Long, SysDictResDto> querySysDictByIds(List<Long> ids);
 
+    /**
+     * @desc: 校验注册的入参
+     * @param: entName 企业名  phone联系电话  systemType系统类型
+     * @author: czh
+     * @date 2023/7/23
+     */
+    void checkRegisterParam(String entName, String phone, Integer systemType);
+
 }

+ 15 - 0
sckw-modules/sckw-contract/src/main/java/com/sckw/contract/model/vo/req/QueryListReqVo.java

@@ -48,4 +48,19 @@ public class QueryListReqVo extends PageRequest implements Serializable {
      */
     private Integer entType;
 
+    /**
+     * 签约方式
+     */
+    private Integer signingWay;
+
+    /**
+     * 付款方式
+     */
+    private Integer charging;
+
+    /**
+     * 交易方式
+     */
+    private Integer trading;
+
 }

+ 9 - 0
sckw-modules/sckw-contract/src/main/resources/mapper/KwcContractTradeMapper.xml

@@ -85,5 +85,14 @@
                 #{item}
             </foreach>
         </if>
+        <if test="trading != null">
+            and a.trading = #{trading}
+        </if>
+        <if test="signingWay != null">
+            and a.signing_way = #{signingWay}
+        </if>
+        <if test="charging != null">
+            and a.charging = #{charging}
+        </if>
     </select>
 </mapper>

+ 12 - 9
sckw-modules/sckw-system/src/main/java/com/sckw/system/dubbo/RemoteSystemServiceImpl.java

@@ -260,14 +260,6 @@ public class RemoteSystemServiceImpl implements RemoteSystemService {
         for (Long entId : entIdList) {
             EntCacheResDto entCacheResDto = queryEntCacheById(entId);
             remoteBaseService.fillRelate(entCacheResDto);
-            //有主体单位
-            String entDeptIds = entCacheResDto.getEntDeptIds();
-            if (StringUtils.isNotBlank(entDeptIds)) {
-                List<Long> entDeptIdList = Arrays.stream(entDeptIds.split(Global.COMMA)).map(Long::parseLong).toList();
-                List<EntCacheResDto> child = queryEntCacheByIds(entDeptIdList);
-                entCacheResDto.setChild(child);
-                result.put(entId, entCacheResDto);
-            }
 
             //有父企业
             Long parentId = entCacheResDto.getParentId();
@@ -275,10 +267,21 @@ public class RemoteSystemServiceImpl implements RemoteSystemService {
                 EntCacheResDto parent = queryEntCacheById(parentId);
                 parent.setChild(Collections.singletonList(entCacheResDto));
                 result.put(entId, parent);
+                continue;
             }
 
+            //没有主体单位
+            String entDeptIds = entCacheResDto.getEntDeptIds();
+            if (StringUtils.isBlank(entDeptIds)) {
+                result.put(entId, entCacheResDto);
+                continue;
+            }
 
-
+            //有主体单位
+            List<Long> entDeptIdList = Arrays.stream(entDeptIds.split(Global.COMMA)).map(Long::parseLong).toList();
+            List<EntCacheResDto> child = queryEntCacheByIds(entDeptIdList);
+            entCacheResDto.setChild(child);
+            result.put(entId, entCacheResDto);
         }
         return result;
     }

+ 10 - 4
sckw-modules/sckw-system/src/main/java/com/sckw/system/dubbo/RemoteUserServiceImpl.java

@@ -17,10 +17,7 @@ import com.sckw.system.model.*;
 import com.sckw.system.model.pojo.FindMenuTreePojo;
 import com.sckw.system.model.vo.req.ForgetPasswordReqVo;
 import com.sckw.system.model.vo.res.KwsMenuResVo;
-import com.sckw.system.service.KwsEnterpriseService;
-import com.sckw.system.service.KwsMenuService;
-import com.sckw.system.service.KwsRoleService;
-import com.sckw.system.service.KwsUserService;
+import com.sckw.system.service.*;
 import jakarta.annotation.Resource;
 import org.apache.dubbo.config.annotation.DubboService;
 import org.springframework.stereotype.Service;
@@ -62,6 +59,9 @@ public class RemoteUserServiceImpl implements RemoteUserService {
     @Resource
     private SysDictDao sysDictDao;
 
+    @Resource
+    private CommonService commonService;
+
 
     @Override
     public KwsEnterpriseResDto queryEnterpriseById(Long id) {
@@ -158,6 +158,12 @@ public class RemoteUserServiceImpl implements RemoteUserService {
         return sysDictResDtos.stream().collect(Collectors.toMap(SysDictResDto::getId, item -> item, (oldValue, newValue) -> newValue));
     }
 
+    @Override
+    public void checkRegisterParam(String entName, String phone, Integer systemType) {
+        commonService.checkEntRepeat(entName, phone);
+        kwsUserService.checkAccountValid(phone, systemType);
+    }
+
     @Override
     public KwsUserResDto getUserByAccount(String username) {
         return remoteBaseService.getUserByAccount(username);

+ 28 - 0
sckw-modules/sckw-system/src/main/java/com/sckw/system/service/CommonService.java

@@ -1,11 +1,17 @@
 package com.sckw.system.service;
 
 import com.alibaba.fastjson.JSON;
+import com.sckw.core.exception.SystemException;
 import com.sckw.core.model.constant.Global;
+import com.sckw.core.utils.CollectionUtils;
 import com.sckw.core.utils.StringUtils;
+import com.sckw.core.web.constant.HttpStatus;
 import com.sckw.core.web.model.EntCertificateInfo;
 import com.sckw.core.web.model.LoginEntInfo;
 import com.sckw.redis.utils.RedissonUtils;
+import com.sckw.system.dao.KwsEnterpriseDao;
+import com.sckw.system.model.KwsEnterprise;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import java.util.List;
@@ -18,7 +24,15 @@ import java.util.List;
 @Service
 public class CommonService {
 
+    @Autowired
+    private KwsEnterpriseDao kwsEnterpriseDao;
 
+    /**
+     * @desc: 更新资质
+     * @param: entId 企业id entCertificateInfoList 资质信息
+     * @author: czh
+     * @date 2023/7/23
+     */
     public void updateEntCertificate(Long entId, List<EntCertificateInfo> entCertificateInfoList) {
         String string = RedissonUtils.getString(Global.REDIS_ENTERPRISE_PREFIX + entId);
         if (!StringUtils.isBlank(string)) {
@@ -27,4 +41,18 @@ public class CommonService {
             RedissonUtils.putString(Global.REDIS_ENTERPRISE_PREFIX + entId, JSON.toJSONString(loginEntInfo), Global.COMMON_EXPIRE);
         }
     }
+
+    /**
+     * @desc: 校验企业是否重复
+     * @param: entName 企业名  phone 联系电话
+     * @author: czh
+     * @date 2023/7/23
+     */
+    public void checkEntRepeat(String entName, String phone) {
+        List<KwsEnterprise> list = kwsEnterpriseDao.checkEntRepeat(entName, phone);
+        if (CollectionUtils.isNotEmpty(list)) {
+            throw new SystemException(HttpStatus.PARAMETERS_MISSING_CODE, HttpStatus.ENT_EXISTS);
+        }
+    }
+
 }

+ 5 - 9
sckw-modules/sckw-system/src/main/java/com/sckw/system/service/KwsUserService.java

@@ -15,8 +15,6 @@ import com.sckw.system.dao.*;
 import com.sckw.system.dubbo.RemoteSystemServiceImpl;
 import com.sckw.system.model.*;
 import com.sckw.system.model.vo.req.*;
-import com.sckw.system.model.vo.req.FindListReqVo;
-import com.sckw.system.model.vo.res.FindEntListResVo;
 import com.sckw.system.model.vo.res.KwsUserResVo;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -62,6 +60,9 @@ public class KwsUserService {
     @Autowired
     private RemoteSystemServiceImpl remoteSystemService;
 
+    @Autowired
+    private CommonService commonService;
+
     /**
      * @param reqVo 入参
      * @desc: 新增
@@ -106,11 +107,7 @@ public class KwsUserService {
      */
     @Transactional(rollbackFor = {})
     public RegisterResDto register(RegisterReqDto reqDto) throws SystemException {
-        List<KwsEnterprise> list = kwsEnterpriseDao.checkEntRepeat(reqDto.getEntName(), reqDto.getPhone());
-        if (CollectionUtils.isNotEmpty(list)) {
-            throw new SystemException(HttpStatus.PARAMETERS_MISSING_CODE, HttpStatus.ENT_EXISTS);
-        }
-
+        commonService.checkEntRepeat(reqDto.getEntName(), reqDto.getPhone());
         /*1、数据校验*/
         checkAccountValid(reqDto.getPhone(), reqDto.getSystemType());
 
@@ -188,7 +185,6 @@ public class KwsUserService {
 
     /**
      * @param userId 用户id,deptId 机构id
-     * @return
      * @desc: 填充用户机构
      * @author: czh
      * @date: 2023/7/11
@@ -484,7 +480,7 @@ public class KwsUserService {
      * @date: 2023/6/16
      */
     public void checkAccountValid(String account, Integer systemType) {
-        if (!Objects.isNull(getUserByAccount(account, systemType))) {
+        if (Objects.nonNull(getUserByAccount(account, systemType))) {
             throw new SystemException(HttpStatus.PARAMETERS_MISSING_CODE, HttpStatus.ACCOUNT_EXISTS);
         }
     }