Browse Source

1.解绑申请调整

yuanliang 1 year ago
parent
commit
be9c7416da

+ 34 - 2
cooleshow-user/user-admin/src/main/java/com/yonge/cooleshow/admin/controller/TenantUnbindHistoryController.java

@@ -1,10 +1,16 @@
 package com.yonge.cooleshow.admin.controller;
 
+import com.alibaba.fastjson.JSON;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.microsvc.toolkit.common.response.paging.PageInfo;
 import com.microsvc.toolkit.common.response.paging.QueryInfo;
 import com.microsvc.toolkit.common.response.template.R;
+import com.yonge.cooleshow.biz.dal.entity.Employee;
+import com.yonge.cooleshow.biz.dal.entity.SysUser;
 import com.yonge.cooleshow.biz.dal.entity.TenantUnbindHistory;
+import com.yonge.cooleshow.biz.dal.service.EmployeeService;
+import com.yonge.cooleshow.biz.dal.service.SysUserService;
+import com.yonge.cooleshow.biz.dal.service.TenantStaffService;
 import com.yonge.cooleshow.biz.dal.service.TenantUnbindHistoryService;
 import com.yonge.cooleshow.biz.dal.wrapper.TenantUnbindHistoryWrapper;
 import io.swagger.annotations.Api;
@@ -17,6 +23,13 @@ import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 
+import javax.jws.Oneway;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+import java.util.function.Function;
+import java.util.stream.Collectors;
+
 @Slf4j
 @Validated
 @RestController
@@ -27,12 +40,31 @@ public class TenantUnbindHistoryController {
     @Autowired
     private TenantUnbindHistoryService tenantUnbindHistoryService;
 
+    @Autowired
+    private SysUserService sysUserService;
+
     @ApiOperation(value = "查询分页", notes = "机构解绑历史表- 传入 TenantUnbindHistoryWrapper.TenantUnbindHistoryQuery")
     @PostMapping("/page")
-    public R<PageInfo<TenantUnbindHistory>> page(@RequestBody TenantUnbindHistoryWrapper.TenantUnbindHistoryQuery query) {
+    public R<PageInfo<TenantUnbindHistoryWrapper.TenantUnbindHistory>> page(@RequestBody TenantUnbindHistoryWrapper.TenantUnbindHistoryQuery query) {
 
         IPage<TenantUnbindHistory> pages = tenantUnbindHistoryService.selectPage(QueryInfo.getPage(query), query);
 
-        return R.from(QueryInfo.pageInfo(pages));
+        List<TenantUnbindHistory> records = pages.getRecords();
+        if (records.isEmpty()) {
+            return R.from(QueryInfo.pageInfo(pages, new ArrayList<>()));
+        }
+        List<Long> userIds =
+                pages.getRecords().stream().map(TenantUnbindHistory::getVerifyUserId).distinct()
+                        .collect(Collectors.toList());
+        Map<Long, SysUser> mapByIds = sysUserService.getMapByIds(userIds);
+
+        List<TenantUnbindHistoryWrapper.TenantUnbindHistory> histories = records.stream().map(next -> {
+            TenantUnbindHistoryWrapper.TenantUnbindHistory tenantUnbindHistory =
+                    JSON.parseObject(JSON.toJSONString(next), TenantUnbindHistoryWrapper.TenantUnbindHistory.class);
+            tenantUnbindHistory.setVerifyUserName(mapByIds.getOrDefault(next.getVerifyUserId(), new SysUser()).getRealName());
+            return tenantUnbindHistory;
+
+        }).collect(Collectors.toList());
+        return R.from(QueryInfo.pageInfo(pages, histories));
     }
 }

+ 50 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/wrapper/TenantUnbindHistoryWrapper.java

@@ -1,9 +1,15 @@
 package com.yonge.cooleshow.biz.dal.wrapper;
 
 import com.alibaba.fastjson.JSON;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
 import com.microsvc.toolkit.common.response.paging.QueryInfo;
+import com.yonge.cooleshow.common.enums.ETenantUnBindAuditStatus;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
+
+import java.util.Date;
 import java.util.Optional;
 
 import lombok.AllArgsConstructor;
@@ -54,9 +60,53 @@ public class TenantUnbindHistoryWrapper {
         }
     }
 
+    @Data
     @ApiModel(" TenantUnbindHistory-机构解绑历史表")
     public static class TenantUnbindHistory {
 
+        @ApiModelProperty("主键ID")
+        private Long id;
+
+        @ApiModelProperty("机构ID")
+        private Long tenantId;
+
+        @ApiModelProperty("机构名称")
+        private String tenantName;
+
+        @ApiModelProperty("用户ID")
+        private Long userId;
+
+        @ApiModelProperty("用户名称")
+        private String userName;
+
+        @ApiModelProperty("手机号")
+        @TableField(value = "phone_")
+        private String phone;
+
+        @ApiModelProperty("用户类型")
+        private String userType;
+
+        @ApiModelProperty("解绑理由")
+        private String unbindReason;
+
+        @ApiModelProperty("审核状态 CANCEL、撤销 PASS、通过 UNPASS、不通过")
+        private ETenantUnBindAuditStatus status;
+
+        @ApiModelProperty("审核人")
+        private Long verifyUserId;
+
+        @ApiModelProperty("审核人姓名")
+        private String verifyUserName;
+
+        @ApiModelProperty("审核理由")
+        private String reason;
+
+        @ApiModelProperty("后台介入时间")
+        private Date interveneTime;
+
+        @ApiModelProperty("创建时间")
+        private Date createTime;
+
         public String jsonString() {
             return JSON.toJSONString(this);
         }

+ 10 - 4
cooleshow-user/user-teacher/src/main/java/com/yonge/cooleshow/teacher/controller/TeacherController.java

@@ -222,15 +222,21 @@ public class TeacherController extends BaseController {
             return failed("未查询到老师的信息");
         }
 
+
+        TenantInfo tenantInfo = tenantInfoService.getById(user.getTenantId());
+        TenantUnbindRecord tenantUnbindRecord = new TenantUnbindRecord();
+
         TenantUnbindRecord one = tenantUnbindRecordService.lambdaQuery()
                 .eq(TenantUnbindRecord::getUserType, "TEACHER")
                 .eq(TenantUnbindRecord::getUserId, user.getId())
                 .last("limit 1").one();
-        if (one != null && ETenantUnBindAuditStatus.DOING.equals(one.getStatus())) {
-            return failed("请勿重复提交申请");
+        if(one != null) {
+            if(ETenantUnBindAuditStatus.DOING.equals(one.getStatus())){
+                return failed("请勿重复提交申请");
+            }
+            tenantUnbindRecord.setId(one.getId());
         }
-        TenantInfo tenantInfo = tenantInfoService.getById(user.getTenantId());
-        TenantUnbindRecord tenantUnbindRecord = new TenantUnbindRecord();
+
         tenantUnbindRecord.setTenantId(user.getTenantId());
         tenantUnbindRecord.setTenantName(tenantInfo == null ? "" : tenantInfo.getName());
         tenantUnbindRecord.setUserId(user.getId());