Selaa lähdekoodia

老师管理页面接口

weifanli 3 vuotta sitten
vanhempi
commit
fd8bf6faae

+ 54 - 0
cooleshow-auth/auth-server/src/main/java/com/yonge/cooleshow/auth/web/controller/UserController.java

@@ -2,6 +2,7 @@ package com.yonge.cooleshow.auth.web.controller;
 
 import com.yonge.cooleshow.auth.api.dto.RealnameAuthReq;
 import com.yonge.cooleshow.auth.api.dto.UpdatePasswordDto;
+import com.yonge.cooleshow.common.constant.CommonConstants;
 import com.yonge.toolset.thirdparty.user.realname.RealnameAuthenticationPlugin;
 import com.yonge.toolset.utils.idcard.IdcardInfoExtractor;
 import com.yonge.toolset.utils.idcard.IdcardValidator;
@@ -255,6 +256,59 @@ public class UserController extends BaseController {
         return succeed();
     }
 
+    /**
+     * 启用/冻结
+     */
+    @GetMapping(value = "/changeLock/{userId}/{lockFlag}")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "userId", value = "userId", paramType = "path", dataType = "long", required = true),
+            @ApiImplicitParam(name = "lockFlag", value = "锁定状态 0-正常,9-锁定", paramType = "path", dataType = "int", required = true)
+    })
+    @ApiOperation(value = "启用/冻结", notes = "传入lockFlag")
+    public HttpResponseResult<Boolean> changeLock(@PathVariable("userId") Long userId, @PathVariable("lockFlag") Integer lockFlag) {
+        if (userId == null && lockFlag != 0 && lockFlag != 9) {
+            return failed("参数校验异常");
+        }
+        SysUser sysUser = sysUserService.queryUserInfo(userId);
+        if (sysUser == null) {
+            return failed("用户不存在");
+        }
+        if (sysUser.getId() != userId) {
+            return failed("非法操作");
+        }
+        sysUser.setLockFlag(lockFlag);
+        sysUser.setUpdateTime(new Date());
+        sysUserService.update(sysUser);
+        return succeed();
+    }
+
+    /**
+     * 重置密码
+     */
+    @GetMapping(value = "/resetPassword/{userId}")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "userId", value = "userId", paramType = "path", dataType = "long", required = true),
+    })
+    @ApiOperation(value = "重置密码", notes = "传入userId")
+    public HttpResponseResult<Boolean> resetPassword(@PathVariable("userId") Long userId) {
+        if (userId == null) {
+            return failed("参数校验异常");
+        }
+        SysUser sysUser = sysUserService.queryUserInfo(userId);
+        if (sysUser == null) {
+            return failed("用户不存在");
+        }
+        if (sysUser.getId() != userId) {
+            return failed("非法操作");
+        }
+
+        String password = new BCryptPasswordEncoder().encode(CommonConstants.DEFULT_PASSWORD);
+        sysUser.setPassword(password);
+        sysUser.setUpdateTime(new Date());
+        sysUserService.update(sysUser);
+        return succeed();
+    }
+
     @ApiOperation(value = "修改用户")
     @PostMapping(value = "/update", consumes = MediaType.APPLICATION_FORM_URLENCODED_VALUE)
     public Object update(SysUser sysUser) {

+ 2 - 0
cooleshow-common/src/main/java/com/yonge/cooleshow/common/constant/CommonConstants.java

@@ -38,4 +38,6 @@ public interface CommonConstants {
 	 * @return
 	 */
 	Integer DECIMAL_FINAL_PLACE = 2;
+
+	String DEFULT_PASSWORD = "123456";
 }

+ 1 - 12
cooleshow-user/user-admin/src/main/java/com/yonge/cooleshow/admin/controller/TeacherController.java

@@ -15,9 +15,7 @@ import com.yonge.cooleshow.biz.dal.vo.TeacherVo;
 import com.yonge.cooleshow.common.controller.BaseController;
 import com.yonge.cooleshow.common.entity.HttpResponseResult;
 import com.yonge.toolset.utils.string.StringUtil;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import io.swagger.annotations.ApiParam;
+import io.swagger.annotations.*;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.http.HttpStatus;
 import org.springframework.web.bind.annotation.*;
@@ -63,15 +61,6 @@ public class TeacherController extends BaseController {
     }
 
     /**
-     * 启用/冻结
-     */
-    /*@PostMapping("/submit")
-    @ApiOperation(value = "新增或修改", notes = "传入teacher")
-    public HttpResponseResult<Boolean> submit(@RequestBody TeacherSubmitReq teacherSubmitReq) {
-        return teacherService.submit(teacherSubmitReq);
-    }*/
-
-    /**
      * 删除
      */
     @PostMapping("/remove")

+ 21 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/constant/SysConfigConstant.java

@@ -0,0 +1,21 @@
+package com.yonge.cooleshow.biz.dal.constant;
+
+/**
+ * 系统配置常量
+ * @Author: liweifan
+ * @Data: 2022/3/24 10:18
+ */
+public interface SysConfigConstant {
+    /***
+     * 开通直播需要的粉丝数
+     * @author liweifan
+     * @updateTime 2022/3/24 10:20
+     */
+    String OPEN_LIVE_FANS_NUM = "open_live_fans_num";
+    /***
+     * 开通直播需要的已完成课时
+     * @author liweifan
+     * @updateTime 2022/3/24 10:20
+     */
+    String OPEN_LIVE_OVER_CLASS = "open_list_over_class";
+}

+ 1 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dao/TeacherDao.java

@@ -53,4 +53,5 @@ public interface TeacherDao extends BaseMapper<Teacher> {
      * @return: com.yonge.cooleshow.biz.dal.vo.TeacherVo
      */
     TeacherVo detail(@Param("userId") Long userId);
+
 }

+ 0 - 4
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/TeacherServiceImpl.java

@@ -6,11 +6,9 @@ import com.yonge.cooleshow.auth.api.client.SysUserFeignService;
 import com.yonge.cooleshow.auth.api.dto.RealnameAuthReq;
 import com.yonge.cooleshow.auth.api.entity.SysUser;
 import com.yonge.cooleshow.auth.api.enums.SysUserType;
-import com.yonge.cooleshow.biz.dal.dao.SubjectDao;
 import com.yonge.cooleshow.biz.dal.dto.req.TeacherSetReq;
 import com.yonge.cooleshow.biz.dal.dto.req.TeacherSubmitReq;
 import com.yonge.cooleshow.biz.dal.dto.search.TeacherSearch;
-import com.yonge.cooleshow.biz.dal.entity.Subject;
 import com.yonge.cooleshow.biz.dal.enums.AuthStatusEnum;
 import com.yonge.cooleshow.biz.dal.enums.TeacherTypeEnum;
 import com.yonge.cooleshow.biz.dal.vo.TeacherVo;
@@ -25,9 +23,7 @@ import com.yonge.cooleshow.biz.dal.dao.TeacherDao;
 import com.yonge.cooleshow.biz.dal.service.TeacherService;
 import org.springframework.transaction.annotation.Transactional;
 
-import java.util.Arrays;
 import java.util.Date;
-import java.util.List;
 
 
 @Service

+ 11 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/vo/TeacherVo.java

@@ -1,8 +1,12 @@
 package com.yonge.cooleshow.biz.dal.vo;
 
+import com.fasterxml.jackson.annotation.JsonFormat;
 import com.yonge.cooleshow.biz.dal.entity.Teacher;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.util.Date;
 
 /**
  * @Author: liweifan
@@ -26,6 +30,13 @@ public class TeacherVo extends Teacher {
     private String realName;
     @ApiModelProperty(value = "身份证号码")
     private String idCardNo;
+    @ApiModelProperty(value = "出生日期")
+    @DateTimeFormat(pattern = "yyyy-MM-dd")
+    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
+    private Date birthdate;
+    @ApiModelProperty(value = "审核人")
+    private String verifyUser;
+
 
     public String getAvatar() {
         return avatar;

+ 9 - 1
cooleshow-user/user-biz/src/main/resources/config/mybatis/TeacherMapper.xml

@@ -117,12 +117,20 @@
             u.avatar_ as avatar,
             u.username_ as username,
             u.gender_ as gender,
+            u.birthdate_ as birthdate,
             u.phone_ as phone,
             (case when isnull(u.id_card_no_) then 0 else 1 end) as isReal,
             u.real_name_ as realName,
-            id_card_no_ as idCardNo
+            id_card_no_ as idCardNo,
+            (
+                SELECT u.username_ FROM sys_user u WHERE u.id_ = t.verify_user_id_
+            ) as verifyUser,
+            (case when isnull(b.user_id_) then 0 else 1 end) as isBank
         FROM teacher t
         left join sys_user u on t.user_id_ = u.id_
+        left join (
+            select distinct user_id_ from user_bank_card where del_flag_ = 0
+        ) b on t.user_id_ = b.user_id_
         where t.user_id_ = #{userId}
     </select>
 </mapper>