Просмотр исходного кода

feat: 添加是否允许注册会员开关功能、注册会员添加该逻辑

caoliqin 1 неделя назад
Родитель
Сommit
b389f796a4

+ 11 - 0
fs-company/src/main/java/com/fs/company/controller/CompanyUserController.java

@@ -356,4 +356,15 @@ public class CompanyUserController extends BaseController {
         }
     }
 
+    @Log(title = "是否允许所有方式注册会员", businessType = BusinessType.UPDATE)
+    @PutMapping("/allowedAllRegister")
+    public AjaxResult isAllowedAllRegister(@RequestParam Boolean status, @RequestBody List<Long> userIds) {
+        Boolean r = companyUserService.isAllowedAllRegister(status, userIds);
+        if (r) {
+            return AjaxResult.success();
+        } else {
+            return AjaxResult.error("操作失败");
+        }
+    }
+
 }

+ 11 - 0
fs-service-system/src/main/java/com/fs/company/domain/CompanyUser.java

@@ -144,6 +144,9 @@ public class CompanyUser extends BaseEntity
     /** 是否需要单独注册会员,1-是,0-否(用于个微销售分享看课) */
     private Integer isNeedRegisterMember;
 
+    /** 是否允许所有方式注册会员,1-是,0-否,默认1(用于个微注册会员) */
+    private Integer isAllowedAllRegister;
+
     public Integer getIsAudit() {
         return isAudit;
     }
@@ -504,4 +507,12 @@ public class CompanyUser extends BaseEntity
     public void setPosts(List<CompanyPost> posts) {
         this.posts = posts;
     }
+
+    public Integer getIsAllowedAllRegister() {
+        return isAllowedAllRegister;
+    }
+
+    public void setIsAllowedAllRegister(Integer isAllowedAllRegister) {
+        this.isAllowedAllRegister = isAllowedAllRegister;
+    }
 }

+ 3 - 0
fs-service-system/src/main/java/com/fs/company/mapper/CompanyUserMapper.java

@@ -291,4 +291,7 @@ public interface CompanyUserMapper
     List<CompanyUser> selectAllCompanyUserByCompanyIdAndDeptId(@Param("companyId") Long companyId, @Param("deptId") Long deptId);
 
     List<String> selectCompanyUserNameByIds(@Param("companyUserIDs")List<Long> companyUserID);
+
+    int updateAllowedAllRegister(@Param("status") boolean status, @Param("userIds")List<Long> userIds);
+
 }

+ 8 - 0
fs-service-system/src/main/java/com/fs/company/service/ICompanyUserService.java

@@ -204,4 +204,12 @@ public interface ICompanyUserService {
      */
     Boolean setIsRegisterMember(boolean status,  List<Long> userIds);
 
+    /**
+     * 批量设置是否允许所有方式注册会员
+     * @param status 开/关
+     * @param userIds 员工id
+     * @return true/false
+     */
+    Boolean isAllowedAllRegister(boolean status,  List<Long> userIds);
+
 }

+ 10 - 0
fs-service-system/src/main/java/com/fs/company/service/impl/CompanyUserServiceImpl.java

@@ -523,6 +523,16 @@ public class CompanyUserServiceImpl implements ICompanyUserService
         return true;
     }
 
+    @Override
+    public Boolean isAllowedAllRegister(boolean status, List<Long> userIds) {
+        try {
+            companyUserMapper.updateAllowedAllRegister(status, userIds);
+        } catch (RuntimeException e) {
+            throw new ServiceException("操作异常");
+        }
+        return true;
+    }
+
     /**
      * 批量审核用户
      * @param userIds 用户ID集合

+ 4 - 0
fs-service-system/src/main/java/com/fs/company/vo/CompanyUserQwListVO.java

@@ -119,4 +119,8 @@ public class CompanyUserQwListVO extends BaseEntity {
 
     /** 是否需要单独注册会员,1-是,0-否*/
     private Integer isNeedRegisterMember;
+
+    /** 是否允许所有方式注册会员,1-是,0-否,默认1(用于个微注册会员) */
+    private Integer isAllowedAllRegister;
+
 }

+ 4 - 0
fs-service-system/src/main/java/com/fs/store/service/impl/FsUserServiceImpl.java

@@ -908,6 +908,10 @@ public class FsUserServiceImpl implements IFsUserService
         if (Objects.isNull(companyUser)){
             return ResponseResult.fail(405,"销售不存在");
         }
+        // 通过字段值判断该销售是否允许注册会员
+        if(companyUser.getIsAllowedAllRegister() != null && companyUser.getIsAllowedAllRegister() == 0){
+            return ResponseResult.fail(407,"不允许注册会员,请联系管理员");
+        }
 
         // 添加关系表数据
         FsUserCompanyUser fsUserCompanyUser = getFsUserCompanyUser(param, fsUser);

+ 10 - 1
fs-service-system/src/main/resources/mapper/company/CompanyUserMapper.xml

@@ -40,6 +40,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <result property="isAudit"    column="is_audit"    />
         <result property="addressId"    column="address_id"    />
         <result property="isNeedRegisterMember"    column="is_need_register_member"    />
+        <result property="isAllowedAllRegister"    column="is_allowed_all_register"    />
         <association property="dept"    column="dept_id" javaType="CompanyDept" resultMap="deptResult" />
         <collection  property="roles"   javaType="java.util.List"        resultMap="RoleResult" />
 
@@ -277,7 +278,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         select u.user_id,u.company_id,u.qw_user_id, u.dept_id, u.user_name, u.nick_name, u.email, u.avatar, u.phonenumber, u.password, u.sex, u.status, u.del_flag, u.login_ip, u.login_date, u.create_by, u.create_time,u.id_card, u.remark,u.user_type,u.open_id,u.qr_code_weixin,u.qr_code_wecom,u.jpush_id,u.domain,u.is_audit,u.address_id,
         d.dept_id, d.parent_id, d.dept_name, d.order_num, d.leader, d.status as dept_status,
         r.role_id, r.role_name, r.role_key, r.role_sort, r.data_scope, r.status as role_status,
-        u.is_need_register_member
+        u.is_need_register_member, u.is_allowed_all_register
         from company_user u
 		    left join company_dept d on u.dept_id = d.dept_id
 		    left join company_user_role ur on u.user_id = ur.user_id
@@ -573,4 +574,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         </foreach>
     </update>
 
+    <update id="updateAllowedAllRegister" parameterType="Long">
+        update company_user
+        set is_allowed_all_register = #{status} where user_id in
+        <foreach item="userId" collection="userIds" open="(" separator="," close=")">
+            #{userId}
+        </foreach>
+    </update>
+
 </mapper>

+ 6 - 2
fs-user-app/src/main/java/com/fs/app/controller/WxCompanyUserController.java

@@ -168,7 +168,9 @@ public class WxCompanyUserController extends AppBaseController {
                     if (user.getCompanyUserId() != null && !param.getCompanyUserId().equals(user.getCompanyUserId())){
                         return R.error(406, "该用户已成为其他销售会员");
                     }
-                    if(companyUser != null && companyUser.getIsNeedRegisterMember() != null && companyUser.getIsNeedRegisterMember() != 1){
+                    if(companyUser != null &&
+                            (companyUser.getIsAllowedAllRegister() == null || companyUser.getIsAllowedAllRegister() == 1)
+                            && companyUser.getIsNeedRegisterMember() != null && companyUser.getIsNeedRegisterMember() != 1){
                         user.setCompanyId(param.getCompanyId());
                         user.setCompanyUserId(param.getCompanyUserId());
                     }
@@ -183,7 +185,9 @@ public class WxCompanyUserController extends AppBaseController {
                     user.setUnionId(session.getUnionid());
                     user.setCreateTime(new Date());
                     user.setPhone(phoneNoInfo.getPhoneNumber());
-                    if(companyUser != null && companyUser.getIsNeedRegisterMember() != null && companyUser.getIsNeedRegisterMember() != 1){
+                    if(companyUser != null &&
+                            (companyUser.getIsAllowedAllRegister() == null || companyUser.getIsAllowedAllRegister() == 1)
+                            && companyUser.getIsNeedRegisterMember() != null && companyUser.getIsNeedRegisterMember() != 1){
                         user.setCompanyId(param.getCompanyId());
                         user.setCompanyUserId(param.getCompanyUserId());
                     }

+ 1 - 1
fs-user-app/src/main/java/com/fs/app/controller/WxH5MpController.java

@@ -103,7 +103,7 @@ public class WxH5MpController {
                 user.setMpOpenId(wxMpUser.getOpenid());
                 user.setUnionId(wxMpUser.getUnionId());
                 user.setCreateTime(new Date());
-                if(companyUser.getIsNeedRegisterMember() != 1){
+                if((companyUser.getIsAllowedAllRegister() == null || companyUser.getIsAllowedAllRegister() != 0) && companyUser.getIsNeedRegisterMember() != 1){
                     user.setCompanyId(param.getCompanyId());
                     user.setCompanyUserId(param.getCompanyUserId());
                 }