Bladeren bron

1.添加设置结算接口 2、老师端getUserInfo添加机构名称返回

yuanliang 2 jaren geleden
bovenliggende
commit
4de267753b

+ 2 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/search/TeacherSearch.java

@@ -1,6 +1,7 @@
 package com.yonge.cooleshow.biz.dal.dto.search;
 
 import com.fasterxml.jackson.annotation.JsonFormat;
+import com.yonge.cooleshow.common.enums.ESettlementFrom;
 import com.yonge.cooleshow.common.enums.UserLockFlag;
 import com.yonge.cooleshow.common.enums.YesOrNoEnum;
 import com.yonge.toolset.base.page.QueryInfo;
@@ -66,7 +67,7 @@ public class TeacherSearch extends QueryInfo{
 	private Long tenantId;
 
 	@ApiModelProperty("结算方式")
-	private String settlementFrom;
+	private ESettlementFrom settlementFrom;
 
 	@ApiModelProperty(value = "排序方式, 默认 create_time_ desc", hidden = true)
 	private String orderBy;

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

@@ -131,6 +131,15 @@ public class TeacherServiceImpl extends ServiceImpl<TeacherDao, Teacher> impleme
         }
         String teacherType = TeacherTypeEnum.getTeacherType(detail.getEntryFlag(), detail.getMusicianFlag());
         detail.setTeacherType(teacherType);
+        Long tenantId = detail.getTenantId();
+        if (tenantId != null) {
+            if (tenantId == -1) {
+                detail.setTenantName("平台老师");
+            } else {
+                TenantInfo tenantInfo = tenantInfoService.detail(tenantId);
+                detail.setTenantName(tenantInfo == null ? "" : tenantInfo.getName());
+            }
+        }
         return detail;
     }
 
@@ -356,6 +365,8 @@ public class TeacherServiceImpl extends ServiceImpl<TeacherDao, Teacher> impleme
         if (null == teacher) {
             teacher = new Teacher();
             teacher.setUserId(teacherSubmitReq.getUserId());
+            // 新增老师默认结算给机构
+            teacherSubmitReq.setSettlementFrom(ESettlementFrom.TENANT);
             teacher = getTeacherDetil(teacher, teacherSubmitReq);
             baseMapper.insert(teacher);
 
@@ -464,7 +475,7 @@ public class TeacherServiceImpl extends ServiceImpl<TeacherDao, Teacher> impleme
         teacher.setTenantId(teacherSubmitReq.getTenantId() == null ? -1L : teacherSubmitReq.getTenantId());
         if (teacher.getTenantId() == -1L) {
             teacher.setSettlementFrom(ESettlementFrom.TEACHER);
-        } else {
+        } else if (teacherSubmitReq.getIsSettlement() != null) {
             teacher.setSettlementFrom(teacherSubmitReq.getSettlementFrom());
         }
         if (StringUtil.isEmpty(teacherSubmitReq.getTeacherType())) {

+ 9 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/vo/TeacherHomeVo.java

@@ -23,6 +23,8 @@ public class TeacherHomeVo extends Teacher implements Serializable {
     private static final long serialVersionUID = 1L;
     @ApiModelProperty("头像地址")
     private String heardUrl;
+    @ApiModelProperty("机构名称")
+    private String tenantName;
     @ApiModelProperty("老师昵称")
     private String username;
     @ApiModelProperty("星级")
@@ -85,6 +87,13 @@ public class TeacherHomeVo extends Teacher implements Serializable {
     @ApiModelProperty(value = "IM用户ID")
     private String imUserId;
 
+    public String getTenantName() {
+        return tenantName;
+    }
+
+    public void setTenantName(String tenantName) {
+        this.tenantName = tenantName;
+    }
 
     public String getDefaultSubjectName() {
         return defaultSubjectName;

+ 20 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/wrapper/teacher/TeacherWrapper.java

@@ -1,6 +1,9 @@
 package com.yonge.cooleshow.biz.dal.wrapper.teacher;
 
 import com.alibaba.fastjson.JSON;
+import com.yonge.cooleshow.common.enums.ESettlementFrom;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
 import lombok.AllArgsConstructor;
 import lombok.Builder;
 import lombok.Data;
@@ -11,6 +14,8 @@ import java.io.Serializable;
 /**
  * Created by Eric.Shang on 2022/10/8.
  */
+@Data
+@ApiModel("TeacherWrapper")
 public class TeacherWrapper {
 
     /**
@@ -74,4 +79,19 @@ public class TeacherWrapper {
         }
 
     }
+
+
+    @Data
+    @Builder
+    @NoArgsConstructor
+    @AllArgsConstructor
+    @ApiModel("老师设置结算方式模型")
+    public static class TeacherSetSettlement {
+
+        @ApiModelProperty("老师ID")
+        private Long userId;
+
+        @ApiModelProperty("结算方式")
+        private ESettlementFrom settlementFrom;
+    }
 }

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

@@ -175,7 +175,7 @@
             <if test="param.tenantId ! =null">
                 AND t.tenantId_ = #{param.tenantId}
             </if>
-            <if test="param.settlementFrom ! =null and param.settlementFrom.trim() != ''">
+            <if test="param.settlementFrom ! =null">
                 AND t.settlement_from_ = #{param.settlementFrom}
             </if>
             <if test="param.tenantName != null and param.tenantName.trim() != ''">

+ 23 - 0
cooleshow-user/user-tenant/src/main/java/com/yonge/cooleshow/tenant/controller/TeacherController.java

@@ -13,6 +13,7 @@ import com.yonge.cooleshow.biz.dal.enums.AuthStatusEnum;
 import com.yonge.cooleshow.biz.dal.service.TeacherService;
 import com.yonge.cooleshow.biz.dal.service.TenantInfoService;
 import com.yonge.cooleshow.biz.dal.vo.TeacherVo;
+import com.yonge.cooleshow.biz.dal.wrapper.teacher.TeacherWrapper;
 import com.yonge.cooleshow.common.controller.BaseController;
 import com.yonge.cooleshow.common.entity.HttpResponseResult;
 import com.yonge.cooleshow.common.enums.UserLockFlag;
@@ -119,6 +120,28 @@ public class TeacherController extends BaseController {
         return teacherService.submit(teacherSubmitReq);
     }
 
+    @PostMapping("/setSettlement")
+    @ApiOperation(value = "设置结算方式")
+    public HttpResponseResult<Boolean> setSettlement(@Valid @RequestBody TeacherWrapper.TeacherSetSettlement setSettlement) {
+        TenantInfo tenantInfo = getTenantInfo();
+        teacherService.lambdaUpdate()
+                .set(Teacher::getSettlementFrom, setSettlement.getSettlementFrom())
+                .eq(Teacher::getTenantId, tenantInfo.getId())
+                .eq(Teacher::getUserId, setSettlement.getUserId()).update();
+        return succeed();
+    }
+
+    @PostMapping("/batchSetSettlement")
+    @ApiOperation(value = "批量设置结算方式")
+    public HttpResponseResult<Boolean> batchSetSettlement(@Valid @RequestBody TeacherWrapper.TeacherSetSettlement setSettlement) {
+        TenantInfo tenantInfo = getTenantInfo();
+        teacherService.lambdaUpdate()
+                .set(Teacher::getSettlementFrom, setSettlement.getSettlementFrom())
+                .eq(Teacher::getTenantId, tenantInfo.getId())
+                .update();
+        return succeed();
+    }
+
     private TenantInfo getTenantInfo() {
         SysUser sysUser = sysUserFeignService.queryUserInfo();
         TenantInfo tenantInfo = tenantInfoService.lambdaQuery().eq(TenantInfo::getUserId, sysUser.getId())