浏览代码

Merge branch 'master' of http://git.dayaedu.com/yonge/cooleshow

liujunchi 3 年之前
父节点
当前提交
c91f964bdb
共有 15 个文件被更改,包括 145 次插入50 次删除
  1. 0 28
      cooleshow-user/user-admin/src/main/java/com/yonge/cooleshow/admin/controller/AdminSysUserContractRecordController.java
  2. 12 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/search/SysUserContractRecordSearch.java
  3. 39 5
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/search/TeacherWithdrawalSearch.java
  4. 21 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/entity/UserWithdrawal.java
  5. 2 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/CourseScheduleServiceImpl.java
  6. 8 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/StudentServiceImpl.java
  7. 1 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/TeacherAuthEntryRecordServiceImpl.java
  8. 1 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/TeacherAuthMusicianRecordServiceImpl.java
  9. 1 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/UserOrderRefundServiceImpl.java
  10. 5 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/UserWithdrawalServiceImpl.java
  11. 11 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/vo/UserWithdrawalVo.java
  12. 5 3
      cooleshow-user/user-biz/src/main/resources/config/mybatis/SysUserContractRecordMapper.xml
  13. 1 1
      cooleshow-user/user-biz/src/main/resources/config/mybatis/UserBindingTeacherMapper.xml
  14. 37 8
      cooleshow-user/user-biz/src/main/resources/config/mybatis/UserWithdrawalMapper.xml
  15. 1 0
      cooleshow-user/user-teacher/src/main/java/com/yonge/cooleshow/teacher/task/TaskController.java

+ 0 - 28
cooleshow-user/user-admin/src/main/java/com/yonge/cooleshow/admin/controller/AdminSysUserContractRecordController.java

@@ -1,28 +0,0 @@
-package com.yonge.cooleshow.admin.controller;
-
-import com.yonge.cooleshow.biz.dal.service.SysUserContractRecordService;
-import com.yonge.cooleshow.common.controller.BaseController;
-import io.swagger.annotations.Api;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-
-import javax.annotation.Resource;
-
-/**
- * 用户协议记录表-一个用户一种协议一个版本一条记录(SysUserContractRecord)表控制层
- *
- * @author hgw
- * @since 2022-05-07 15:04:05
- */
-@Api(tags = "用户协议记录表-一个用户一种协议一个版本一条记录")
-@RestController
-@RequestMapping("/sysUserContractRecord")
-public class AdminSysUserContractRecordController extends BaseController {
-    /**
-     * 服务对象
-     */
-    @Resource
-    private SysUserContractRecordService sysUserContractRecordService;
-
-}
-

+ 12 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/search/SysUserContractRecordSearch.java

@@ -1,5 +1,6 @@
 package com.yonge.cooleshow.biz.dal.dto.search;
 
+import com.baomidou.mybatisplus.annotation.TableField;
 import com.yonge.toolset.base.page.QueryInfo;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
@@ -15,6 +16,9 @@ public class SysUserContractRecordSearch extends QueryInfo{
 	@ApiModelProperty(value = "用户id")
 	private Long userId;
 
+	@ApiModelProperty(value = "签署状态 DONG 签署中 SUCCESS 签署完成 FAILED 签署失败")
+	private String status;
+
 
 	public Long getUserId() {
 		return userId;
@@ -23,4 +27,12 @@ public class SysUserContractRecordSearch extends QueryInfo{
 	public void setUserId(Long userId) {
 		this.userId = userId;
 	}
+
+	public String getStatus() {
+		return status;
+	}
+
+	public void setStatus(String status) {
+		this.status = status;
+	}
 }

+ 39 - 5
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/search/TeacherWithdrawalSearch.java

@@ -1,6 +1,8 @@
 package com.yonge.cooleshow.biz.dal.dto.search;
 
+import com.baomidou.mybatisplus.annotation.TableField;
 import com.fasterxml.jackson.annotation.JsonFormat;
+import com.yonge.cooleshow.biz.dal.enums.AuthStatusEnum;
 import com.yonge.toolset.base.page.QueryInfo;
 import com.yonge.toolset.payment.base.enums.TradeStatusEnum;
 import io.swagger.annotations.ApiModel;
@@ -17,14 +19,22 @@ public class TeacherWithdrawalSearch extends QueryInfo{
 	private static final long serialVersionUID = 1L;
 	@ApiModelProperty("三方交易流水号 ")
 	private String transNo;
+	@ApiModelProperty("申请人 ")
+	private String username;
+	@ApiModelProperty("审核状态 DOING、审核中 PASS、通过 UNPASS、不通过")
+	@TableField(value = "auth_status_")
+	private AuthStatusEnum authStatus;
 	@ApiModelProperty("交易状态 pending、交易处理中 succeeded、交易成功 failed、交易失败 ")
-	private TradeStatusEnum status;
+	private TradeStatusEnum tradeStatus;
 	@ApiModelProperty(value = "申请开始时间")
 	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
 	private LocalDateTime startTime;
 	@ApiModelProperty(value = "申请结束时间")
 	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
 	private LocalDateTime endTime;
+	@ApiModelProperty("审核人 ")
+	private String verifyUser;
+
 	@ApiModelProperty("查询时间(yyyy-MM) ")
 	private String searchDate;
 
@@ -38,12 +48,20 @@ public class TeacherWithdrawalSearch extends QueryInfo{
 		this.transNo = transNo;
 	}
 
-	public TradeStatusEnum getStatus() {
-		return status;
+	public String getUsername() {
+		return username;
+	}
+
+	public void setUsername(String username) {
+		this.username = username;
 	}
 
-	public void setStatus(TradeStatusEnum status) {
-		this.status = status;
+	public TradeStatusEnum getTradeStatus() {
+		return tradeStatus;
+	}
+
+	public void setTradeStatus(TradeStatusEnum tradeStatus) {
+		this.tradeStatus = tradeStatus;
 	}
 
 	public LocalDateTime getStartTime() {
@@ -77,4 +95,20 @@ public class TeacherWithdrawalSearch extends QueryInfo{
 	public void setUserId(Long userId) {
 		this.userId = userId;
 	}
+
+	public AuthStatusEnum getAuthStatus() {
+		return authStatus;
+	}
+
+	public void setAuthStatus(AuthStatusEnum authStatus) {
+		this.authStatus = authStatus;
+	}
+
+	public String getVerifyUser() {
+		return verifyUser;
+	}
+
+	public void setVerifyUser(String verifyUser) {
+		this.verifyUser = verifyUser;
+	}
 }

+ 21 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/entity/UserWithdrawal.java

@@ -43,6 +43,11 @@ public class UserWithdrawal implements Serializable {
     @ApiModelProperty("审核用户表id ")
     @TableField(value = "auth_user_id_")
     private Long authUserId;
+    @ApiModelProperty("审核时间 ")
+    @TableField(value = "auth_time_")
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
+    private Date authTime;
     @ApiModelProperty("审核原因 ")
     @TableField(value = "reason_")
     private String reason;
@@ -229,4 +234,20 @@ public class UserWithdrawal implements Serializable {
     public void setReason(String reason) {
         this.reason = reason;
     }
+
+    public BigDecimal getCallbakAmount() {
+        return callbakAmount;
+    }
+
+    public void setCallbakAmount(BigDecimal callbakAmount) {
+        this.callbakAmount = callbakAmount;
+    }
+
+    public Date getAuthTime() {
+        return authTime;
+    }
+
+    public void setAuthTime(Date authTime) {
+        this.authTime = authTime;
+    }
 }

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

@@ -892,7 +892,8 @@ public class CourseScheduleServiceImpl extends ServiceImpl<CourseScheduleDao, Co
         timeList.forEach(o -> {
             boolean checkDataTime = this.checkStudentCourseTime(studentId, startTimeFun.apply(o), endTimeFun.apply(o));
             if (checkDataTime) {
-                throw new BizException("学生id:" + studentId + ",预计安排在" + DateUtil.dateToString(startTimeFun.apply(o), "yyyy年MM月dd号 HH点mm分") + "的课程时间存在冲突!");
+                SysUser sysUser = sysUserFeignService.queryUserById(studentId);
+                throw new BizException("学生:" + sysUser.getUsername() + ",预计安排在" + DateUtil.dateToString(startTimeFun.apply(o), "yyyy年MM月dd号 HH点mm分") + "的课程时间存在冲突!");
             }
         });
     }

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

@@ -10,6 +10,7 @@ import com.yonge.cooleshow.biz.dal.dto.search.StudentSearch;
 import com.yonge.cooleshow.biz.dal.entity.StudentTotal;
 import com.yonge.cooleshow.biz.dal.entity.Subject;
 import com.yonge.cooleshow.biz.dal.entity.UserBindingTeacher;
+import com.yonge.cooleshow.biz.dal.service.ImUserFriendService;
 import com.yonge.cooleshow.common.enums.CacheNameEnum;
 import com.yonge.cooleshow.biz.dal.service.StudentTotalService;
 import com.yonge.cooleshow.biz.dal.vo.*;
@@ -35,6 +36,8 @@ public class StudentServiceImpl extends ServiceImpl<StudentDao, Student> impleme
     @Autowired
     private StudentTotalService totalService;
     @Autowired
+    private ImUserFriendService imUserFriendService;
+    @Autowired
     private UserBindingTeacherDao userBindingTeacherDao;
     @Autowired
     private StudentService studentService;
@@ -144,6 +147,11 @@ public class StudentServiceImpl extends ServiceImpl<StudentDao, Student> impleme
             userBindingTeacher.setTeacherId(userId);
             userBindingTeacher.setStudentId(studentVo.getUserId());
             userBindingTeacherDao.insert(userBindingTeacher);
+
+            //学生老师增加好友关系
+            Set<Long> studentIds = new HashSet<>();
+            studentIds.add(studentVo.getUserId());
+            imUserFriendService.saveUserFriend(userId,studentIds);
         }
         resMap.put("now", detail);
         return HttpResponseResult.succeed(resMap);

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

@@ -62,7 +62,7 @@ public class TeacherAuthEntryRecordServiceImpl extends ServiceImpl<TeacherAuthEn
         Long[] ids = StringUtil.toLongArray(StringPool.COMMA, authOperaReq.getId());
         for (Long id : ids) {
             TeacherAuthEntryRecord build = baseMapper.selectById(id);
-            if (!AuthStatusEnum.DOING.equals(build.getTeacherAuthStatus())) {
+            if (null == build || !AuthStatusEnum.DOING.equals(build.getTeacherAuthStatus())) {
                 continue;
             }
 

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

@@ -90,7 +90,7 @@ public class TeacherAuthMusicianRecordServiceImpl extends ServiceImpl<TeacherAut
         Long[] ids = StringUtil.toLongArray(StringPool.COMMA, authOperaReq.getId());
         for (Long id : ids) {
             TeacherAuthMusicianRecord build = baseMapper.selectById(id);
-            if (!AuthStatusEnum.DOING.equals(build.getTeacherAuthStatus())) {
+            if (null == build || !AuthStatusEnum.DOING.equals(build.getTeacherAuthStatus())) {
                 continue;
             }
 

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

@@ -183,7 +183,7 @@ public class UserOrderRefundServiceImpl extends ServiceImpl<UserOrderRefundDao,
         Long[] ids = StringUtil.toLongArray(StringPool.COMMA, authOperaReq.getId());
         for (Long id : ids) {
             UserOrderRefund orderRefund = baseMapper.selectById(id);
-            if (!AuthStatusEnum.DOING.equals(orderRefund.getStatus())) {
+            if (null == orderRefund || !AuthStatusEnum.DOING.equals(orderRefund.getStatus())) {
                 continue;
             }
             String oredrDetilIds = orderRefund.getOredrDetilIds();

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

@@ -170,13 +170,14 @@ public class UserWithdrawalServiceImpl extends ServiceImpl<UserWithdrawalDao, Us
         Long[] ids = StringUtil.toLongArray(StringPool.COMMA, authOperaReq.getId());
         for (Long id : ids) {
             UserWithdrawalVo build = detail(id);
-            if (!AuthStatusEnum.DOING.equals(build.getAuthStatus())) {
+            if (null == build || !AuthStatusEnum.DOING.equals(build.getAuthStatus())) {
                 continue;
             }
             build.setAuthStatus(authOperaReq.getPass() ? AuthStatusEnum.PASS : AuthStatusEnum.UNPASS);
             build.setReason(authOperaReq.getReason());
             build.setAuthUserId(sysUser.getId());
             build.setUpdateTime(new Date());
+            build.setAuthTime(new Date());
 
             //请求三方
             SysUser withdrawalUser = sysUserService.findUserById(build.getUserId());
@@ -190,6 +191,9 @@ public class UserWithdrawalServiceImpl extends ServiceImpl<UserWithdrawalDao, Us
                 if (withdraw.getStatus() && withdraw.getData()) {
                     build.setTradeStatus(TradeStatusEnum.pending);
                     flag = true;
+                }else{
+                    build.setTradeStatus(TradeStatusEnum.failed);
+                    build.setErrorMsg("请求三方接口返回失败");
                 }
             }
             //修改系统中账户

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

@@ -21,6 +21,9 @@ public class UserWithdrawalVo extends UserWithdrawal {
 	@ApiModelProperty("结算手机号 ")
 	private String phone;
 
+	@ApiModelProperty("审核人 ")
+	private String verifyUser;
+
 	public String getBankName() {
 		return bankName;
 	}
@@ -52,4 +55,12 @@ public class UserWithdrawalVo extends UserWithdrawal {
 	public void setPhone(String phone) {
 		this.phone = phone;
 	}
+
+	public String getVerifyUser() {
+		return verifyUser;
+	}
+
+	public void setVerifyUser(String verifyUser) {
+		this.verifyUser = verifyUser;
+	}
 }

+ 5 - 3
cooleshow-user/user-biz/src/main/resources/config/mybatis/SysUserContractRecordMapper.xml

@@ -47,6 +47,9 @@
             <if test="param.userId != null">
                 and t.user_id_ = #{param.userId}
             </if>
+            <if test="param.status != null and param.status != ''">
+                and t.status_ = #{param.status}
+            </if>
         </where>
         order by t.created_time_ desc
     </select>
@@ -54,11 +57,11 @@
     <insert id="insertBatch" keyColumn="id_" keyProperty="id" useGeneratedKeys="true"
             parameterType="com.yonge.cooleshow.biz.dal.entity.SysUserContractRecord">
         insert into sys_user_contract_record(user_id_, user_type_, contract_id_, url_, contract_no_,
-        status_, err_msg_, remark_, created_time_)
+        status_, err_msg_, remark_)
         values
         <foreach collection="entities" item="entity" separator=",">
             (#{entity.userId}, #{entity.userType}, #{entity.contractId}, #{entity.url},#{entity.contractNo},
-            #{entity.status}, #{entity.errMsg}, #{entity.remark}, #{entity.createdTime})
+            #{entity.status}, #{entity.errMsg}, #{entity.remark})
         </foreach>
     </insert>
     <update id="contractCallbackUpdate" parameterType="java.util.Map">
@@ -100,5 +103,4 @@
         left join sys_user_contract_record t on b.id_ = t.contract_id_ and t.status_ in ('SUCCESS','DONG ')
         where t.user_id_ = #{userId} and t.user_type_ = #{userType}
     </select>
-
 </mapper>

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

@@ -92,6 +92,6 @@
               AND a.type_ = 'PIANO_ROOM_CLASS'
             GROUP BY a.teacher_id_,b.user_id_
         ) v on t.teacher_id_ = v.teacher_id_ and t.student_id_ = v.user_id_
-        where v.user_id_ is null
+        where v.user_id_ is null and t.created_time_ >= DATE_SUB(NOW(),INTERVAL #{days} DAY)
     </select>
 </mapper>

+ 37 - 8
cooleshow-user/user-biz/src/main/resources/config/mybatis/UserWithdrawalMapper.xml

@@ -6,12 +6,17 @@
         <result column="id_" property="id" />
         <result column="user_id_" property="userId" />
         <result column="amount_" property="amount" />
+        <result column="actual_amount_" property="actualAmount" />
         <result column="plantform_fee_" property="plantformFee" />
+        <result column="auth_status_" property="authStatus" />
+        <result column="auth_user_id_" property="authUserId" />
+        <result column="auth_time_" property="authTime" />
+        <result column="reason_" property="reason" />
         <result column="bank_card_id_" property="bankCardId" />
         <result column="open_type_" property="openType" />
         <result column="trans_no_" property="transNo" />
-        <result column="status_" property="status" />
-        <result column="actual_amount_" property="actualAmount" />
+        <result column="trade_status_" property="tradeStatus" />
+        <result column="callbak_amount_" property="callbakAmount" />
         <result column="transfer_time_" property="transferTime" />
         <result column="error_code_" property="errorCode" />
         <result column="error_msg_" property="errorMsg" />
@@ -24,17 +29,23 @@
         t.id_ as id
         , t.user_id_ as userId
         , t.amount_ as amount
+        , t.actual_amount_ as actualAmount
         , t.plantform_fee_ as plantformFee
+        , t.auth_status_ as authStatus
+        , t.auth_user_id_ as authUserId
+        , t.auth_time_ as authTime
+        , t.reason_ as reason
         , t.bank_card_id_ as bankCardId
         , t.open_type_ as openType
         , t.trans_no_ as transNo
-        , t.status_ as status
-        , t.actual_amount_ as actualAmount
+        , t.trade_status_ as tradeStatus
+        , t.callbak_amount_ as callbakAmount
         , t.transfer_time_ as transferTime
         , t.error_code_ as errorCode
         , t.error_msg_ as errorMsg
         , t.create_time_ as createTime
         , t.update_time_ as updateTime
+        , t.status_ as status
     </sql>
 
     <select id="detail" resultType="com.yonge.cooleshow.biz.dal.vo.UserWithdrawalVo">
@@ -55,10 +66,12 @@
             <include refid="baseColumns" />,
             bc.bank_name_ as bankName,
             bc.bank_card_ as bankCard,
-            u.username_  as withdrawaUser
+            ifnull(u.real_name_,u.username_)  as withdrawaUser,
+            ifnull(au.real_name_,au.username_) as verifyUser
         FROM user_withdrawal t
         LEFT JOIN user_bank_card bc on t.bank_card_id_ = bc.id_ and t.user_id_ = bc.user_id_
         left join sys_user u on t.user_id_ = u.id_
+            left join sys_user au on t.auth_user_id_ = au.id_
         <where>
             <if test="null != param.search and '' != param.search">
                 AND (
@@ -67,6 +80,24 @@
                     u.phone_ LIKE CONCAT('%', #{param.search}, '%')
                 )
             </if>
+            <if test="null != param.username and '' != param.username">
+                AND (
+                    u.username_ LIKE CONCAT('%', #{param.username}, '%') or
+                    u.real_name_ LIKE CONCAT('%', #{param.username}, '%')
+                )
+            </if>
+            <if test="null != param.authStatus">
+                AND t.auth_status_ = #{param.authStatus}
+            </if>
+            <if test="null != param.tradeStatus">
+                AND t.trade_status_ = #{param.tradeStatus}
+            </if>
+            <if test="null != param.verifyUser and '' != param.verifyUser">
+                AND (
+                    au.username_ LIKE CONCAT('%', #{param.verifyUser}, '%') or
+                    au.real_name_ LIKE CONCAT('%', #{param.verifyUser}, '%')
+                )
+            </if>
             <if test="null != param.transNo and '' != param.transNo">
                 AND t.trans_no_ LIKE CONCAT('%', #{transNo}, '%')
             </if>
@@ -76,15 +107,13 @@
             <if test="param.endTime !=null">
                 <![CDATA[AND t.create_time_ < #{param.endTime} ]]>
             </if>
-            <if test="param.status !=null">
-                AND t.status_ = #{param.status}
-            </if>
         </where>
     </sql>
 
     <select id="selectPage" resultType="com.yonge.cooleshow.biz.dal.vo.UserWithdrawalVo">
         <include refid="selectSql"/>
     </select>
+
     <select id="selectList" resultType="com.yonge.cooleshow.biz.dal.vo.UserWithdrawalVo">
         <include refid="selectSql"/>
     </select>

+ 1 - 0
cooleshow-user/user-teacher/src/main/java/com/yonge/cooleshow/teacher/task/TaskController.java

@@ -65,6 +65,7 @@ public class TaskController extends BaseController {
     @GetMapping("/courseStatus")
     public HttpResponseResult<Object> courseStatus() {
         scheduleService.scheduleTask();
+        teacherTotalService.queryTeacherTotal();
         return HttpResponseResult.succeed();
     }