Przeglądaj źródła

Merge remote-tracking branch 'origin/master'

zouxuan 3 lat temu
rodzic
commit
3b90e0288a
16 zmienionych plików z 114 dodań i 108 usunięć
  1. 4 4
      cooleshow-auth/auth-api/src/main/java/com/yonge/cooleshow/auth/api/entity/SysUser.java
  2. 3 1
      cooleshow-auth/auth-server/src/main/java/com/yonge/cooleshow/auth/dal/dao/SysUserDao.java
  3. 0 8
      cooleshow-auth/auth-server/src/main/java/com/yonge/cooleshow/auth/service/SysUserService.java
  4. 9 21
      cooleshow-auth/auth-server/src/main/java/com/yonge/cooleshow/auth/service/impl/SysUserServiceImpl.java
  5. 1 1
      cooleshow-auth/auth-server/src/main/java/com/yonge/cooleshow/auth/web/controller/UserController.java
  6. 35 28
      cooleshow-auth/auth-server/src/main/resources/config/mybatis/SysUserMapper.xml
  7. 5 14
      cooleshow-mall/mall-admin/src/main/java/com/yonge/cooleshow/admin/service/impl/OmsOrderReturnApplyServiceImpl.java
  8. 6 14
      cooleshow-mall/mall-portal/src/main/java/com/yonge/cooleshow/portal/service/impl/OmsPortalOrderServiceImpl.java
  9. 4 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/LiveRoomServiceImpl.java
  10. 3 2
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/UserWithdrawalServiceImpl.java
  11. 1 1
      cooleshow-user/user-biz/src/main/resources/config/mybatis/CourseScheduleMapper.xml
  12. 33 9
      cooleshow-user/user-biz/src/main/resources/config/mybatis/MusicAlbumMapper.xml
  13. 5 0
      cooleshow-user/user-biz/src/main/resources/config/mybatis/MusicSheetMapper.xml
  14. 3 3
      cooleshow-user/user-biz/src/main/resources/config/mybatis/UserOrderRefundMapper.xml
  15. 1 1
      cooleshow-user/user-teacher/src/main/java/com/yonge/cooleshow/teacher/controller/SmsCodeController.java
  16. 1 0
      cooleshow-user/user-website/src/main/java/com/yonge/cooleshow/website/controller/MusicSheetController.java

+ 4 - 4
cooleshow-auth/auth-api/src/main/java/com/yonge/cooleshow/auth/api/entity/SysUser.java

@@ -52,8 +52,8 @@ public class SysUser implements Serializable{
 	private Integer lockFlag;
 
 	/** 0-正常,1-删除 */
-	@ApiModelProperty(value = "0-正常,1-删除")
-	private Boolean delFlag= false;
+	@ApiModelProperty(value = "0-正常,1+ -删除")
+	private Integer delFlag;
 
 	/** 微信openid */
 	@ApiModelProperty(value = "微信openid")
@@ -204,11 +204,11 @@ public class SysUser implements Serializable{
 		isSuperAdmin = superAdmin;
 	}
 
-	public Boolean getDelFlag() {
+	public Integer getDelFlag() {
 		return delFlag;
 	}
 
-	public void setDelFlag(Boolean delFlag) {
+	public void setDelFlag(Integer delFlag) {
 		this.delFlag = delFlag;
 	}
 

+ 3 - 1
cooleshow-auth/auth-server/src/main/java/com/yonge/cooleshow/auth/dal/dao/SysUserDao.java

@@ -157,7 +157,7 @@ public interface SysUserDao extends BaseDAO<Long, SysUser> {
      * 用户注销
      * @param userId
      */
-    void logoffById(@Param("userId")Long userId);
+    void logoffById(@Param("userId") Long userId, @Param("num") Integer num);
 
     void updateImGroupMember(@Param("userId") Long userId,
                              @Param("username") String username,
@@ -166,4 +166,6 @@ public interface SysUserDao extends BaseDAO<Long, SysUser> {
     void updateImUserFriend(@Param("userId") Long userId,
                             @Param("username") String username,
                             @Param("avatar") String avatar);
+
+    Integer queryMaxVersionById(@Param("id")Long id);
 }

+ 0 - 8
cooleshow-auth/auth-server/src/main/java/com/yonge/cooleshow/auth/service/SysUserService.java

@@ -70,14 +70,6 @@ public interface SysUserService extends BaseService<Long, SysUser> {
     SysUserInfo queryUserInfoByPhoneAndClient(String phone, String client);
 
     /**
-     * 删除指定用户
-     *
-     * @param id
-     * @return
-     */
-    boolean deleteById(Long id);
-
-    /**
      * 根据用户手机号修改密码
      *
      * @param mobile

+ 9 - 21
cooleshow-auth/auth-server/src/main/java/com/yonge/cooleshow/auth/service/impl/SysUserServiceImpl.java

@@ -103,22 +103,6 @@ public class SysUserServiceImpl extends BaseServiceImpl<Long, SysUser> implement
     }
 
     @Override
-    public boolean deleteById(Long id) {
-        SysUser user = get(id);
-
-        if (user == null) {
-            throw new BizException("用户不存在");
-        }
-
-        user.setUpdateTime(new Date());
-        user.setDelFlag(true);
-
-        update(user);
-
-        return true;
-    }
-
-    @Override
     public void updatePassword(String mobile, String password) {
         sysUserDao.updatePassword(mobile, password);
     }
@@ -234,9 +218,9 @@ public class SysUserServiceImpl extends BaseServiceImpl<Long, SysUser> implement
     public void updateRongCloudUserInfo(Long userId) {
         UserSetVo setDetail = this.getSetDetail(userId);
         //更新imGroupMember表用户头像
-        sysUserDao.updateImGroupMember(userId,setDetail.getUsername(), setDetail.getAvatar());
+        sysUserDao.updateImGroupMember(userId, setDetail.getUsername(), setDetail.getAvatar());
         //更新imUserFriend表用户头像
-        sysUserDao.updateImUserFriend(userId,setDetail.getUsername(), setDetail.getAvatar());
+        sysUserDao.updateImUserFriend(userId, setDetail.getUsername(), setDetail.getAvatar());
         try {
             RongCloudConfig.rongCloud.user.update(new UserModel(userId.toString(), setDetail.getUsername(), setDetail.getAvatar()));
         } catch (Exception e) {
@@ -268,9 +252,13 @@ public class SysUserServiceImpl extends BaseServiceImpl<Long, SysUser> implement
 
     @Override
     public void logoffById(Long id) {
-        //移动用户到注销表
-        sysUserDao.logoffById(id);
-        sysUserDao.delete(id);
+        Integer version = sysUserDao.queryMaxVersionById(id);
+        if(null == version){
+            version = 0;
+        }else{
+            version += 1;
+        }
+        sysUserDao.logoffById(id, version);
     }
 
 }

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

@@ -394,7 +394,7 @@ public class UserController extends BaseController {
     @ApiImplicitParams({
             @ApiImplicitParam(name = "smsCode", value = "短信验证码", paramType = "path", dataType = "long", required = true),
     })
-    @PostMapping(value = "/logoff/{smsCode}")
+    @GetMapping(value = "/logoff/{smsCode}")
     public HttpResponseResult<Boolean> logoff(@PathVariable("smsCode") String smsCode) {
         AuthUser authUser = SecurityUtils.getUser();
         SysUser sysUser = sysUserService.get(authUser.getUserId());

+ 35 - 28
cooleshow-auth/auth-server/src/main/resources/config/mybatis/SysUserMapper.xml

@@ -34,26 +34,29 @@
 
     <!-- 查询条件 -->
     <sql id="queryCondition">
-        <if test="userStartDate != null">
-            and create_time_ &gt;= #{createStartDate}
-        </if>
-        <if test="userEndDate != null">
-            and create_time_ &lt;= #{createEndDate}
-        </if>
-        <if test="userType != null">
-            and user_type_ = #{userType}
-        </if>
+        <where>
+            and del_flag_ = 0
+            <if test="userStartDate != null">
+                and create_time_ &gt;= #{createStartDate}
+            </if>
+            <if test="userEndDate != null">
+                and create_time_ &lt;= #{createEndDate}
+            </if>
+            <if test="userType != null">
+                and user_type_ = #{userType}
+            </if>
+        </where>
     </sql>
 
     <!-- 根据主键查询一条记录 -->
     <select id="get" resultMap="SysUser">
 		SELECT su.* FROM sys_user su
-        WHERE su.id_ = #{id}
+        WHERE su.del_flag_ = 0 and su.id_ = #{id}
 	</select>
 
     <!-- 全查询 -->
     <select id="findAll" resultMap="SysUser">
-		SELECT * FROM sys_user ORDER BY id_
+		SELECT * FROM sys_user where del_flag_ = 0 ORDER BY id_
 	</select>
 
     <!-- 向数据库增加一条记录 -->
@@ -151,13 +154,13 @@
                 certificate_type_ = #{certificateType},
             </if>
         </set>
-        WHERE id_ = #{id}
+        WHERE del_flag_ = 0 and id_ = #{id}
     </update>
     <update id="updatePasswordReq">
-        UPDATE sys_user SET password_ = #{password} WHERE phone_ = #{mobile}
+        UPDATE sys_user SET password_ = #{password} WHERE del_flag_ = 0 and phone_ = #{mobile}
     </update>
     <update id="refreshImToken">
-        UPDATE sys_user SET im_token_ = #{imToken},update_time_ = NOW() WHERE id_ = #{userId}
+        UPDATE sys_user SET im_token_ = #{imToken},update_time_ = NOW() WHERE del_flag_ = 0 and id_ = #{userId}
     </update>
 
     <!-- 根据主键删除一条记录 -->
@@ -167,7 +170,7 @@
 
     <!-- 分页查询 -->
     <select id="queryPage" resultMap="SysUser" parameterType="map">
-        SELECT * FROM sys_user ORDER BY id_
+        SELECT * FROM sys_user
         <include refid="queryCondition"/>
         <include refid="global.orderby"/>
         <include refid="global.limit"/>
@@ -180,15 +183,15 @@
     </select>
 
     <select id="queryByUsername" resultMap="SysUser">
-		select * from sys_user where username_ = #{username} OR phone_ = #{username} LIMIT 1 FOR UPDATE
+		select * from sys_user where del_flag_ = 0 and username_ = #{username} OR phone_ = #{username} LIMIT 1 FOR UPDATE
 	</select>
 
     <select id="queryByPhone" resultMap="SysUser">
-		select * from sys_user where phone_ = #{phone} OR username_ = #{phone} LIMIT 1
+		select * from sys_user where del_flag_ = 0 and phone_ = #{phone} OR username_ = #{phone} LIMIT 1
 	</select>
 
     <select id="queryLockByPhone" resultMap="SysUser">
-		select * from sys_user where phone_ = #{phone} OR username_ = #{phone} LIMIT 1 FOR UPDATE
+		select * from sys_user where del_flag_ = 0 and phone_ = #{phone} OR username_ = #{phone} LIMIT 1 FOR UPDATE
 	</select>
     <resultMap id="ImUserModel" type="com.yonge.cooleshow.common.entity.ImUserModel">
         <result column="id_" property="id"/>
@@ -197,20 +200,20 @@
     </resultMap>
     <select id="getBasic" resultMap="ImUserModel">
         select CASE WHEN user_type_ LIKE '%TEACHER%' OR user_type_ LIKE '%SYSTEM%' THEN real_name_ ELSE username_ END username_,id_,avatar_
-        from sys_user where id_ = #{userId} LIMIT 1
+        from sys_user where del_flag_ = 0 and id_ = #{userId} LIMIT 1
     </select>
     
     <select id="queryByStatus" resultMap="SysUser">
-        select * from sys_user where lock_flag_ = #{status}
+        select * from sys_user where del_flag_ = 0 and lock_flag_ = #{status}
     </select>
     <select id="findUserBySalt" resultMap="SysUser">
-        SELECT * FROM sys_user WHERE salt_ IS NOT NULL AND salt_ = 'replace' AND user_type_ LIKE CONCAT('%',#{userType},'%') LIMIT 1
+        SELECT * FROM sys_user WHERE del_flag_ = 0 and salt_ IS NOT NULL AND salt_ = 'replace' AND user_type_ LIKE CONCAT('%',#{userType},'%') LIMIT 1
     </select>
     <select id="getTeacherOrganId" resultType="java.lang.Integer">
         SELECT organ_id_ FROM teacher WHERE id_ = #{userId}
     </select>
     <select id="queryByPhoneAndClient" resultMap="SysUser">
-        select * from sys_user where (phone_ = #{phone} OR username_ = #{phone}) AND user_type_ LIKE CONCAT('%',#{client},'%') LIMIT 1 FOR UPDATE
+        select * from sys_user where del_flag_ = 0 and (phone_ = #{phone} OR username_ = #{phone}) AND user_type_ LIKE CONCAT('%',#{client},'%') LIMIT 1 FOR UPDATE
     </select>
 
     <update id="updateUserCard">
@@ -229,7 +232,7 @@
                 birthdate_ = #{param.birthday},
             </if>
         update_time_ = now()
-        WHERE id_ = #{param.userId}
+        WHERE del_flag_ = 0 and id_ = #{param.userId}
     </update>
 
     <select id="getSetDetail" resultType="com.yonge.cooleshow.auth.api.vo.UserSetVo">
@@ -241,7 +244,7 @@
             u.birthdate_ as birthdate,
             (case when isnull(u.id_card_no_) then 0 else 1 end) as isReal
         FROM sys_user u
-        where u.id_ = #{id}
+        where u.del_flag_ = 0 and u.id_ = #{id}
     </select>
 
     <update id="updatetSetDetail">
@@ -260,7 +263,7 @@
             birthdate_ = #{param.birthdate},
         </if>
         update_time_ = now()
-        WHERE id_ = #{id}
+        WHERE del_flag_ = 0 and id_ = #{id}
     </update>
     <update id="updateImGroupMember">
         UPDATE im_group_member SET avatar_ = #{avatar},nickname_ = #{username} WHERE user_id_ = #{userId}
@@ -268,16 +271,15 @@
     <update id="updateImUserFriend">
         UPDATE im_user_friend SET friend_avatar_ = #{avatar},friend_nickname_ = #{username} WHERE friend_id_ = #{userId}
     </update>
-
     <update id="logoffById">
-        insert into sys_user_off select * from sys_user where id_ = ${userId}
+        update sys_user set del_flag_ = ${num}, phone_ = concat('D', ${num}, '+', phone_) where id_ = ${userId}
     </update>
-
     <select id="queryEmployeeList" resultMap="SysUser">
         select  su.*
         from employee e
         left join sys_user su on su.id_ = e.user_id_
         <where>
+            su.del_flag_ = 0
             <if test="createStartDate != null and createStartDate != ''">
                 and #{createStartDate} &lt;= e.create_time_
             </if>
@@ -287,4 +289,9 @@
         </where>
     </select>
 
+    <select id="queryMaxVersionById" resultType="java.lang.Integer">
+        select max(del_flag_) from sys_user
+        where phone_ like CONCAT('%',(select phone_ from sys_user where id_ = #{id} and del_flag_ = 0),'%')
+    </select>
+
 </mapper>

+ 5 - 14
cooleshow-mall/mall-admin/src/main/java/com/yonge/cooleshow/admin/service/impl/OmsOrderReturnApplyServiceImpl.java

@@ -6,6 +6,7 @@ import com.yonge.cooleshow.admin.dto.HomeStatistical;
 import com.yonge.cooleshow.admin.dto.OmsOrderReturnApplyResult;
 import com.yonge.cooleshow.admin.dto.OmsReturnApplyQueryParam;
 import com.yonge.cooleshow.admin.dto.OmsUpdateStatusParam;
+import com.yonge.cooleshow.common.service.IdGeneratorService;
 import com.yonge.cooleshow.mall.common.exception.ApiException;
 import com.yonge.cooleshow.mall.common.service.RedisService;
 import com.yonge.cooleshow.mbg.model.*;
@@ -57,6 +58,9 @@ public class OmsOrderReturnApplyServiceImpl implements OmsOrderReturnApplyServic
     private UserOrderPaymentMapper userOrderPaymentMapper;
 
     @Autowired
+    private IdGeneratorService idGeneratorService;
+
+    @Autowired
     private UserOrderRefundMapper userOrderRefundMapper;
 
     @Override
@@ -173,19 +177,6 @@ public class OmsOrderReturnApplyServiceImpl implements OmsOrderReturnApplyServic
      * 生成18位退款订单编号:8位日期+2位平台号码+2位支付方式+6位以上自增id
      */
     private String generateOrderSn(OmsOrderReturnApply returnApply) {
-        StringBuilder sb = new StringBuilder();
-        String date = new SimpleDateFormat("yyyyMMdd").format(new Date());
-        String key = REDIS_DATABASE+":"+ REDIS_KEY_ORDER_ID + date;
-        Long increment = redisService.incr(key, 1);
-        sb.append(date);
-        sb.append(String.format("%02d", returnApply.getStatus()));
-        sb.append(String.format("%02d", returnApply.getStatus()));
-        String incrementStr = increment.toString();
-        if (incrementStr.length() <= 6) {
-            sb.append(String.format("%06d", increment));
-        } else {
-            sb.append(incrementStr);
-        }
-        return sb.toString();
+        return String.valueOf(idGeneratorService.generatorId("refund"));
     }
 }

+ 6 - 14
cooleshow-mall/mall-portal/src/main/java/com/yonge/cooleshow/portal/service/impl/OmsPortalOrderServiceImpl.java

@@ -4,6 +4,7 @@ import cn.hutool.core.bean.BeanUtil;
 import cn.hutool.core.collection.CollUtil;
 import com.alibaba.fastjson.JSON;
 import com.github.pagehelper.PageHelper;
+import com.yonge.cooleshow.common.service.IdGeneratorService;
 import com.yonge.cooleshow.mall.common.api.CommonPage;
 import com.yonge.cooleshow.mall.common.enums.OrderCacheEnum;
 import com.yonge.cooleshow.mall.common.exception.Asserts;
@@ -78,6 +79,10 @@ public class OmsPortalOrderServiceImpl implements OmsPortalOrderService {
     private String REDIS_DATABASE = "redis.database";
     @Autowired
     private PortalOrderDao portalOrderDao;
+
+    @Autowired
+    private IdGeneratorService idGeneratorService;
+
     @Autowired
     private OmsOrderSettingMapper orderSettingMapper;
     @Autowired
@@ -927,20 +932,7 @@ public class OmsPortalOrderServiceImpl implements OmsPortalOrderService {
      * 生成18位订单编号:8位日期+2位平台号码+2位支付方式+6位以上自增id
      */
     private String generateOrderSn(OmsOrder order) {
-        StringBuilder sb = new StringBuilder();
-        String date = new SimpleDateFormat("yyyyMMdd").format(new Date());
-        String key = REDIS_DATABASE + ":" + REDIS_KEY_ORDER_ID + date;
-        Long increment = redisService.incr(key, 1);
-        sb.append(date);
-        sb.append(String.format("%02d", order.getSourceType()));
-        // sb.append(String.format("%02d", order.getPayType()));
-        String incrementStr = increment.toString();
-        if (incrementStr.length() <= 6) {
-            sb.append(String.format("%06d", increment));
-        } else {
-            sb.append(incrementStr);
-        }
-        return sb.toString();
+        return String.valueOf(idGeneratorService.generatorId("mall"));
     }
 
     /**

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

@@ -234,6 +234,7 @@ public class LiveRoomServiceImpl extends ServiceImpl<LiveRoomDao, LiveRoom> impl
      * 开课提醒
      */
     private void pushLiveCreateRoom(LiveRoom room) {
+        log.info("pushLiveCreateRoom JIGUANG start param : {}", JSONObject.toJSONString(room));
         try {
             //查询老师信息
             SysUser teacherInfo = this.getSysUser(room.getSpeakerId());
@@ -243,11 +244,11 @@ public class LiveRoomServiceImpl extends ServiceImpl<LiveRoomDao, LiveRoom> impl
             sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.JIGUANG, MessageTypeEnum.LIVE_REMINDER,
                     teacherMap, null, 0, null, ClientEnum.TEACHER.getCode(),
                     teacherInfo.getUsername(), room.getRoomTitle());
+            log.info("pushLiveCreateRoom JIGUANG ok ");
         } catch (Exception e) {
             log.error("pushLiveCreateRoom JIGUANG error param : {}", JSONObject.toJSONString(room));
             log.error("pushLiveCreateRoom JIGUANG error", e.getCause());
         }
-        log.info("pushLiveCreateRoom JIGUANG ok param : {}", JSONObject.toJSONString(room));
     }
 
     /**
@@ -299,6 +300,8 @@ public class LiveRoomServiceImpl extends ServiceImpl<LiveRoomDao, LiveRoom> impl
         log.info("createTempLiveRoom>>>>>>room:{}", room.getRoomUid());
         //去融云创建房间及创建房间缓存信息
         this.createLiveRoomInfo(room, sysUser);
+        //临时
+        this.pushLiveCreateRoom(room);
         return roomUid;
     }
 

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

@@ -196,10 +196,11 @@ public class UserWithdrawalServiceImpl extends ServiceImpl<UserWithdrawalDao, Us
     public HttpResponseResult<Boolean> batchAuth(AuthOperaReq authOperaReq, SysUser sysUser) {
         List<Long> ids = Arrays.asList(StringUtil.toLongArray(StringPool.COMMA, authOperaReq.getId()));
 
-        //先判断三方余额是否充足
         List<UserWithdrawal> userWithdrawals = baseMapper.selectList(Wrappers.<UserWithdrawal>lambdaQuery()
                 .in(UserWithdrawal::getId, ids)
                 .ne(UserWithdrawal::getAuthStatus, AuthStatusEnum.DOING));
+
+        //先判断三方余额是否充足
         //总提现金额
         BigDecimal totalAmount = BigDecimal.ZERO;
         for (UserWithdrawal withdrawal : userWithdrawals) {
@@ -268,8 +269,8 @@ public class UserWithdrawalServiceImpl extends ServiceImpl<UserWithdrawalDao, Us
                 build.setTradeStatus(TradeStatusEnum.pending);
                 build.setTransNo(transNo.toString());
             } else {
-                build.setAuthStatus(AuthStatusEnum.DOING);
                 build.setTradeStatus(TradeStatusEnum.failed);
+                build.setTransNo(transNo.toString());
                 build.setErrorMsg(withdraw.getMsg());
                 res = HttpResponseResult.failed("结算" + authOperaReq.getId() + "失败,失败原因:" + withdraw.getMsg());
             }

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

@@ -509,7 +509,7 @@
         LEFT JOIN (SELECT course_id_,COUNT(1) AS payCount FROM course_schedule_student_payment GROUP BY course_id_) a ON s.id_=a.course_id_
         WHERE s.lock_=0
         AND s.status_ IN ('ING','NOT_START','COMPLETE')
-        AND g.status_ IN ('ING', 'COMPLETE')
+        AND g.status_ IN ('ING', 'COMPLETE','APPLY')
         AND s.id_ IN
         (SELECT course_id_ FROM course_schedule_student_payment WHERE user_id_ = #{param.studentId} AND course_type_ IN ('LIVE','PIANO_ROOM_CLASS'))
         AND s.class_date_ = #{param.classDate}

+ 33 - 9
cooleshow-user/user-biz/src/main/resources/config/mybatis/MusicAlbumMapper.xml

@@ -47,8 +47,16 @@
         , t1.num as musicSheetCount
         ,t2.num as albumFavoriteCount
         from music_album t
-        left join (select count(1) as num,amr.album_id_ from album_music_relate amr group by amr.album_id_) t1 on t1.album_id_ = t.id_
-        left join (select count(1) as num,af.album_id_ from album_favorite af group by af.album_id_) t2 on t2.album_id_ = t.id_
+        left join (select count(1) as num,amr.album_id_
+            from album_music_relate amr
+            join music_sheet ms on amr.music_sheet_id_ = ms.id_
+            left join sys_user su on su.id_ = ms.user_id_
+            where ms.del_flag_ = 0 and ms.state_ = 1 and ms.audit_status_ = 'PASS' and su.del_flag_ = 0
+        group by amr.album_id_) t1 on t1.album_id_ = t.id_
+        left join (select count(1) as num,af.album_id_ from album_favorite af
+            left join sys_user su on af.user_id_ = su.id_
+            where su.del_flag_ = 0 group by af.album_id_
+        ) t2 on t2.album_id_ = t.id_
         <where>
             t.del_flag_ = 0
             <if test="query.idAndName != null and query.idAndName != ''">
@@ -133,9 +141,13 @@
         left join (select count(1) as num,amr.album_id_
             from album_music_relate amr
             join music_sheet ms on amr.music_sheet_id_ = ms.id_
-            where ms.del_flag_ = 0 and ms.state_ = 1 and ms.audit_status_ = 'PASS'
+            left join sys_user su on su.id_ = ms.user_id_
+            where ms.del_flag_ = 0 and ms.state_ = 1 and ms.audit_status_ = 'PASS' and su.del_flag_ = 0
             group by amr.album_id_) t1 on t1.album_id_ = t.id_
-        left join (select count(1) as num,af.album_id_ from album_favorite af group by af.album_id_) t2 on t2.album_id_ = t.id_
+        left join (select count(1) as num,af.album_id_ from album_favorite af
+                left join sys_user su on af.user_id_ = su.id_
+                where su.del_flag_ = 0 group by af.album_id_
+        ) t2 on t2.album_id_ = t.id_
         <where>
             t.del_flag_ = 0
             <if test="records != null and records.size() != 0">
@@ -163,8 +175,16 @@
         , t1.num as musicSheetCount
         ,t2.num as albumFavoriteCount
         from music_album t
-        left join (select count(1) as num,amr.album_id_ from album_music_relate amr group by amr.album_id_) t1 on t1.album_id_ = t.id_
-        left join (select count(1) as num,af.album_id_ from album_favorite af group by af.album_id_) t2 on t2.album_id_ = t.id_
+        left join (select count(1) as num,amr.album_id_
+            from album_music_relate amr
+            join music_sheet ms on amr.music_sheet_id_ = ms.id_
+            left join sys_user su on su.id_ = ms.user_id_
+            where ms.del_flag_ = 0 and ms.state_ = 1 and ms.audit_status_ = 'PASS' and su.del_flag_ = 0
+            group by amr.album_id_) t1 on t1.album_id_ = t.id_
+        left join (select count(1) as num,af.album_id_ from album_favorite af
+            left join sys_user su on af.user_id_ = su.id_
+            where su.del_flag_ = 0 group by af.album_id_
+        ) t2 on t2.album_id_ = t.id_
         where t.id_ = #{musicAlbumId}
     </select>
 
@@ -180,9 +200,13 @@
         left join (select count(1) as num,amr.album_id_
             from album_music_relate amr
             join music_sheet ms on amr.music_sheet_id_ = ms.id_
-            where ms.del_flag_ = 0 and ms.state_ = 1 and ms.audit_status_ = 'PASS'
-            group by amr.album_id_) t1 on t1.album_id_ = t.id_
-        left join (select count(1) as num,af.album_id_ from album_favorite af group by af.album_id_) t2 on t2.album_id_ = t.id_
+            left join sys_user su on su.id_ = ms.user_id_
+            where ms.del_flag_ = 0 and ms.state_ = 1 and ms.audit_status_ = 'PASS' and su.del_flag_ = 0
+        group by amr.album_id_) t1 on t1.album_id_ = t.id_
+        left join (select count(1) as num,af.album_id_ from album_favorite af
+            left join sys_user su on af.user_id_ = su.id_
+            where su.del_flag_ = 0 group by af.album_id_
+        ) t2 on t2.album_id_ = t.id_
         <where>
             t.del_flag_ = 0
             <if test="query.idAndName != null and query.idAndName != ''">

+ 5 - 0
cooleshow-user/user-biz/src/main/resources/config/mybatis/MusicSheetMapper.xml

@@ -75,6 +75,7 @@
         from music_sheet t
         left join sys_user su on t.create_by_ = su.id_
         <where>
+            su.del_flag_ = 0
             <include refid="QueryInfo"/>
         </where>
         order by  t.id_ desc
@@ -270,6 +271,7 @@
             left join music_favorite mf on t.id_ = mf.music_sheet_id_ and mf.user_id_ = #{param.studentId}
         </if>
         <where>
+            su.del_flag_ = 0
             <include refid="QueryInfo"/>
             <if test="param.auditVersion != null ">
                 and #{param.auditVersion} = t.audit_version_
@@ -314,6 +316,7 @@
         left join sys_user su on t.create_by_ = su.id_
         left join music_favorite mf on t.id_ = mf.music_sheet_id_
         <where>
+            su.del_flag_ = 0
             <include refid="QueryInfo"/>
             <if test="param.studentId != null">
                 and mf.user_id_ = #{param.studentId}
@@ -335,6 +338,7 @@
         left join music_sheet_practice_record mspr on mspr.music_sheet_id_ = t.id_
         left join music_favorite mf on t.id_ = mf.music_sheet_id_ and mspr.user_id_ = mf.user_id_
         <where>
+            su.del_flag_ = 0
             <include refid="QueryInfo"/>
             <if test="practiceMusicIdList != null and practiceMusicIdList.size() != 0">
                 and mspr.id_ in
@@ -454,6 +458,7 @@
         left join music_sheet_auth_record msar on ms.id_ = msar.music_sheet_id_
         left join sys_user su2 on msar.verify_user_id_ = su2.id_
         <where>
+            su.del_flag_ = 0 and
             ms.source_type_  = 'TEACHER'
             <if test="param.idAndName != null and param.idAndName != ''">
                 and (su.id_ like concat('%',#{param.idAndName} ,'%')

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

@@ -72,9 +72,9 @@
           and o.status_ = 'PAID'
           and not exists (
                 select 1 from user_order_refund r
-                where r.order_no_ = o.order_no_
-                  and r.status_ in ('DOING','PASS')
+                left join user_order_refund_bill bi on r.id_ = bi.refund_id_
+                where r.order_no_ = o.order_no_ and (bi.status_ in ('pending','succeeded') or r.status_ in ('DOING','PASS'))
                   and FIND_IN_SET(d.id_,r.oredr_detil_ids_)
-            )
+          )
     </select>
 </mapper>

+ 1 - 1
cooleshow-user/user-teacher/src/main/java/com/yonge/cooleshow/teacher/controller/SmsCodeController.java

@@ -36,7 +36,7 @@ public class SmsCodeController extends BaseController {
     @Autowired
     private RedisTemplate<String,String> redisTemplate;
 
-    @ApiOperation(value = "发送登录短信验证码")
+    @ApiOperation(value = "发送短信验证码")
     @ApiImplicitParams({  @ApiImplicitParam(name = "mobile", value = "手机号", required = true, dataType = "String"),
                           @ApiImplicitParam(name = "type", value = "类型(PASSWD:修改密码,LOGIN:登录或注册,BANK:绑定银行卡,PHONE:修改手机号,LOGOFF:用户注销)", required = true, dataType = "String") })
     @PostMapping(value = "/sendSmsCode")

+ 1 - 0
cooleshow-user/user-website/src/main/java/com/yonge/cooleshow/website/controller/MusicSheetController.java

@@ -107,6 +107,7 @@ public class MusicSheetController extends BaseController {
         if (query.getAuditStatus() != null && AuthStatusEnum.PASS.getCode().equals(query.getAuditStatus().getCode())) {
             query.setState(YesOrNoEnum.YES);
         }
+        query.setSourceType(SourceTypeEnum.TEACHER);
 
         IPage<MusicSheetVo> musicSheetVoIPage = musicSheetService.selectPage(PageUtil.getPage(query), query);