Browse Source

fix:merge

liujunchi 3 years ago
parent
commit
b01c5b35d1
21 changed files with 382 additions and 63 deletions
  1. 1 1
      cooleshow-user/user-admin/src/main/java/com/yonge/cooleshow/admin/controller/MusicSheetController.java
  2. 11 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/MusicSheetPayDto.java
  3. 13 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/entity/MusicSheetPurchaseRecord.java
  4. 49 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/entity/Teacher.java
  5. 16 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/entity/VipCardRecord.java
  6. 2 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/MusicSheetPurchaseRecordService.java
  7. 2 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/MusicSheetService.java
  8. 75 20
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/MemberPriceSettingsServiceImpl.java
  9. 3 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/MusicSheetPurchaseRecordServiceImpl.java
  10. 31 22
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/MusicSheetServiceImpl.java
  11. 1 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/UserAccountServiceImpl.java
  12. 27 12
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/VipCardRecordServiceImpl.java
  13. 14 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/vo/TeacherVo.java
  14. 12 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/vo/UserOrderDetailVo.java
  15. 109 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/vo/UserVipInfoVo.java
  16. 2 1
      cooleshow-user/user-biz/src/main/resources/config/mybatis/MusicSheetPurchaseRecordMapper.xml
  17. 7 0
      cooleshow-user/user-biz/src/main/resources/config/mybatis/TeacherMapper.xml
  18. 2 0
      cooleshow-user/user-biz/src/main/resources/config/mybatis/UserOrderDetailMapper.xml
  19. 1 0
      cooleshow-user/user-biz/src/main/resources/config/mybatis/VipCardRecordMapper.xml
  20. 2 1
      cooleshow-user/user-student/src/main/java/com/yonge/cooleshow/student/controller/MusicSheetController.java
  21. 2 1
      cooleshow-user/user-teacher/src/main/java/com/yonge/cooleshow/teacher/controller/MusicSheetController.java

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

@@ -70,7 +70,7 @@ public class MusicSheetController extends BaseController {
         if (sysUser == null  || sysUser.getId() == null) {
             return failed("用户信息获取失败");
         }
-        return succeed(musicSheetService.detail(id, sysUser, SysUserType.SYSTEM));
+        return succeed(musicSheetService.detail(id, sysUser, ClientEnum.SYSTEM));
     }
 
 	@ApiOperation(value = "新增", httpMethod="POST", consumes="application/json", produces="application/json")

+ 11 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/MusicSheetPayDto.java

@@ -20,6 +20,17 @@ public class MusicSheetPayDto {
     @ApiModelProperty("订单金额")
     private BigDecimal actualPrice;
 
+    @ApiModelProperty("老师端: TEACHER 学生端:STUDNET")
+    private String clientType;
+
+    public String getClientType() {
+        return clientType;
+    }
+
+    public void setClientType(String clientType) {
+        this.clientType = clientType;
+    }
+
     public Long getMusicSheetId() {
         return musicSheetId;
     }

+ 13 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/entity/MusicSheetPurchaseRecord.java

@@ -1,5 +1,6 @@
 package com.yonge.cooleshow.biz.dal.entity;
 
+import com.yonge.cooleshow.biz.dal.enums.ClientEnum;
 import com.yonge.cooleshow.biz.dal.enums.OrderStatusEnum;
 import com.yonge.cooleshow.common.entity.BaseEntity;
 import com.baomidou.mybatisplus.annotation.IdType;
@@ -36,6 +37,10 @@ public class MusicSheetPurchaseRecord extends BaseEntity {
     @ApiModelProperty(value = "订单流水号")
     private String orderNo;  //订单流水号
 
+	@TableField("client_type_")
+	@ApiModelProperty(value = "用户类型 TEACHER:老师,STUDENT:学生")
+	private ClientEnum clientType;
+
     @TableField("student_id_")
     @ApiModelProperty(value = "学生ID")
     private Long studentId;  //学生ID
@@ -62,6 +67,14 @@ public class MusicSheetPurchaseRecord extends BaseEntity {
     @ApiModelProperty(value = "订单状态(WAIT_PAY:待支付;PAYING:支付中,PAID:已付款)")
     private OrderStatusEnum orderStatus;  //订单状态(1:已完成;0:取消)
 
+	public ClientEnum getClientType() {
+		return clientType;
+	}
+
+	public void setClientType(ClientEnum clientType) {
+		this.clientType = clientType;
+	}
+
 	public BigDecimal getOriginalPrice() {
 		return originalPrice;
 	}

+ 49 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/entity/Teacher.java

@@ -130,6 +130,30 @@ public class Teacher implements Serializable {
     @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
     @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
     private Date liveDate;
+
+    /**
+     * 会员等级
+     */
+    @ApiModelProperty("会员等级 ")
+    @TableField(value = "member_rank_setting_id_")
+    private Long memberRankSettingId;
+    /**
+     * 有效期开始时间
+     */
+    @ApiModelProperty("有效期开始时间 ")
+    @TableField(value = "membership_start_time_")
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
+    private Date membershipStartTime;
+    /**
+     * 有效期结束时间
+     */
+    @ApiModelProperty("有效期结束时间 ")
+    @TableField(value = "membership_end_time_")
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
+    private Date membershipEndTime;
+
     @ApiModelProperty("对应user表用户编号 ")
     @TableField(value = "browse_")
     private Integer browse;
@@ -153,6 +177,31 @@ public class Teacher implements Serializable {
         this.tag = tag;
     }
 
+    public Long getMemberRankSettingId() {
+        return memberRankSettingId;
+    }
+
+    public void setMemberRankSettingId(Long memberRankSettingId) {
+        this.memberRankSettingId = memberRankSettingId;
+    }
+
+    public Date getMembershipStartTime() {
+        return membershipStartTime;
+    }
+
+    public void setMembershipStartTime(Date membershipStartTime) {
+        this.membershipStartTime = membershipStartTime;
+    }
+
+    public Date getMembershipEndTime() {
+        return membershipEndTime;
+    }
+
+    public void setMembershipEndTime(Date membershipEndTime) {
+        this.membershipEndTime = membershipEndTime;
+
+    }
+
     public Long getUserId() {
         return userId;
     }

+ 16 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/entity/VipCardRecord.java

@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
+import com.yonge.cooleshow.biz.dal.enums.ClientEnum;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 
@@ -34,6 +35,12 @@ public class VipCardRecord implements Serializable {
     @ApiModelProperty("会员卡id ")
 	@TableField(value = "vip_card_id_")
     private Long vipCardId;
+
+    @TableField(value = "client_type_")
+    @ApiModelProperty("用户类型 学生:STUDENT 老师 :TEACHER")
+    private ClientEnum clientType;
+
+
     @ApiModelProperty("会员卡开始时间 ")
 	@TableField(value = "start_time_")
     @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@@ -62,7 +69,15 @@ public class VipCardRecord implements Serializable {
     @TableField(value = "msg_status_")
     private Integer msgStatus;
 
-	public Long getId() {
+    public ClientEnum getClientType() {
+        return clientType;
+    }
+
+    public void setClientType(ClientEnum clientType) {
+        this.clientType = clientType;
+    }
+
+    public Long getId() {
         return id;
     }
 

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

@@ -2,6 +2,7 @@ package com.yonge.cooleshow.biz.dal.service;
 
 import com.yonge.cooleshow.biz.dal.entity.MusicSheetPurchaseRecord;
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.yonge.cooleshow.biz.dal.enums.ClientEnum;
 
 /**
  * MusicSheetPurchaseRecordService服务类
@@ -18,5 +19,5 @@ public interface MusicSheetPurchaseRecordService extends IService<MusicSheetPurc
      * @param musicSheetId 曲目id
      * @return boolean
      */
-    MusicSheetPurchaseRecord checkPurchase(Long userId, Long musicSheetId);
+    MusicSheetPurchaseRecord checkPurchase(Long userId, Long musicSheetId, ClientEnum clientType);
 }

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

@@ -2,6 +2,7 @@ package com.yonge.cooleshow.biz.dal.service;
 
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.yonge.cooleshow.auth.api.entity.SysUser;
+import com.yonge.cooleshow.biz.dal.enums.ClientEnum;
 import com.yonge.cooleshow.common.enums.SysUserType;
 import com.yonge.cooleshow.biz.dal.dto.MusicSheetDto;
 import com.yonge.cooleshow.biz.dal.dto.MusicSheetExport;
@@ -67,7 +68,7 @@ public interface MusicSheetService extends IService<MusicSheet> {
      * @param sysUser 登录用户
      * @return 曲谱信息
      */
-    MusicSheetDetailVo detail(Long id, SysUser sysUser, SysUserType userType);
+    MusicSheetDetailVo detail(Long id, SysUser sysUser, ClientEnum userType);
 
     /**
      * 学生端 曲目分页查询

+ 75 - 20
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/MemberPriceSettingsServiceImpl.java

@@ -4,26 +4,28 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.yonge.cooleshow.auth.api.entity.SysUser;
 import com.yonge.cooleshow.biz.dal.dto.req.OrderReq;
-import com.yonge.cooleshow.biz.dal.entity.PlatformCashAccountRecord;
-import com.yonge.cooleshow.biz.dal.entity.VipCardRecord;
+import com.yonge.cooleshow.biz.dal.entity.*;
 import com.yonge.cooleshow.biz.dal.enums.ClientEnum;
 import com.yonge.cooleshow.biz.dal.enums.MessageTypeEnum;
 import com.yonge.cooleshow.biz.dal.service.*;
+
 import com.yonge.cooleshow.biz.dal.vo.ShareProfitVo;
 import com.yonge.cooleshow.biz.dal.vo.StudentVo;
 import com.yonge.cooleshow.biz.dal.vo.UserOrderDetailVo;
+
+import com.yonge.cooleshow.biz.dal.vo.*;
+
 import com.yonge.cooleshow.biz.dal.vo.res.OrderCreateRes;
 import com.yonge.cooleshow.common.constant.SysConfigConstant;
 import com.yonge.cooleshow.common.entity.HttpResponseResult;
 import com.yonge.toolset.base.string.MessageFormatter;
 import com.yonge.toolset.thirdparty.message.MessageSenderPluginContext;
 import com.yonge.toolset.utils.date.DateUtil;
+import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
-import com.yonge.cooleshow.biz.dal.entity.MemberPriceSettings;
-import com.yonge.cooleshow.biz.dal.vo.MemberPriceSettingsVo;
 import com.yonge.cooleshow.biz.dal.dto.search.MemberPriceSettingsSearch;
 import com.yonge.cooleshow.biz.dal.dao.MemberPriceSettingsDao;
 
@@ -35,6 +37,10 @@ public class MemberPriceSettingsServiceImpl extends ServiceImpl<MemberPriceSetti
     private final static Logger log = LoggerFactory.getLogger(MemberPriceSettingsServiceImpl.class);
     @Autowired
     private StudentService studentService;
+
+    @Autowired
+    private TeacherService teacherService;
+
     @Autowired
     private VipCardRecordService vipCardRecordService;
     @Autowired
@@ -80,22 +86,27 @@ public class MemberPriceSettingsServiceImpl extends ServiceImpl<MemberPriceSetti
 
     @Override
     public void orderSuccess(UserOrderDetailVo orderDetailVo) {
-        StudentVo studentVo = studentService.detail(orderDetailVo.getUserId());
-        if (null == studentVo) {
-            return;
-        }
+
         VipCardRecord vipCardRecord = vipCardRecordService.buildVipCardRecordByOrderDetail(orderDetailVo);
 
-        if (null == studentVo.getMembershipEndTime() || studentVo.getMembershipEndTime().before(new Date())) {
+        UserVipInfoVo userVipInfoVo = getVipInfo(orderDetailVo.getOrderClient(),orderDetailVo.getUserId());
+
+        if (userVipInfoVo == null) {
+            log.error("未找到用户信息");
+        }
+
+        if (null == userVipInfoVo.getMembershipEndTime() || userVipInfoVo.getMembershipEndTime().before(new Date())) {
             //没有会员、会员已过期 会员卡生效时间为当前时间
-            studentVo.setMembershipStartTime(vipCardRecord.getStartTime());
-            studentVo.setMembershipEndTime(vipCardRecord.getEndTime());
+            userVipInfoVo.setMembershipStartTime(vipCardRecord.getStartTime());
+            userVipInfoVo.setMembershipEndTime(vipCardRecord.getEndTime());
         } else {
-            studentVo.setMembershipEndTime(vipCardRecord.getEndTime());
+            userVipInfoVo.setMembershipEndTime(vipCardRecord.getEndTime());
         }
-        studentVo.setMemberRankSettingId(1l);
-        studentVo.setUpdateTime(new Date());
-        studentService.updateById(studentVo);
+        userVipInfoVo.setMemberRankSettingId(1l);
+        userVipInfoVo.setUpdateTime(new Date());
+
+        updateUser(userVipInfoVo);
+
         //会员购买记录入库
         vipCardRecordService.save(vipCardRecord);
         //记录平台收入
@@ -104,7 +115,27 @@ public class MemberPriceSettingsServiceImpl extends ServiceImpl<MemberPriceSetti
 //        platformCashAccountRecord.setTransAmount(ClientEnum.STUDENT.getCode());
 //        platformCashAccountRecordService.save();
         //会员购买消息推送
-        authSend(studentVo.getUserId(), studentVo.getPhone(), DateUtil.format(vipCardRecord.getEndTime(), DateUtil.DEFAULT_PATTERN));
+        authSend(userVipInfoVo.getUserId(), userVipInfoVo.getPhone(), DateUtil.format(vipCardRecord.getEndTime(), DateUtil.DEFAULT_PATTERN),orderDetailVo.getOrderClient());
+    }
+
+    private void updateUser(UserVipInfoVo userVipInfoVo) {
+        if (ClientEnum.STUDENT.equals(userVipInfoVo.getUserType())) {
+            studentService.lambdaUpdate()
+                    .eq(Student::getUserId,userVipInfoVo.getUserId())
+                    .set(Student::getMemberRankSettingId,userVipInfoVo.getMemberRankSettingId())
+                    .set(Student::getMembershipStartTime,userVipInfoVo.getMembershipStartTime())
+                    .set(Student::getMembershipEndTime,userVipInfoVo.getMembershipEndTime())
+                    .set(Student::getUpdateTime,userVipInfoVo.getUpdateTime())
+                    .update();
+        } else {
+            teacherService.lambdaUpdate()
+                          .eq(Teacher::getUserId, userVipInfoVo.getUserId())
+                          .set(Teacher::getMemberRankSettingId,userVipInfoVo.getMemberRankSettingId())
+                          .set(Teacher::getMembershipStartTime,userVipInfoVo.getMembershipStartTime())
+                          .set(Teacher::getMembershipEndTime,userVipInfoVo.getMembershipEndTime())
+                          .set(Teacher::getUpdateTime,userVipInfoVo.getUpdateTime())
+                          .update();
+        }
     }
 
     @Override
@@ -116,26 +147,50 @@ public class MemberPriceSettingsServiceImpl extends ServiceImpl<MemberPriceSetti
         result.setName(sysUser.getUsername());
         result.setTeacherId(sysUser.getId());
 
-        String teacherVipShareProfitUrl= sysConfigService.findConfigValue(SysConfigConstant.TEACHER_VIP_SHARE_PROFIT_URL);
+        String teacherVipShareProfitUrl = sysConfigService.findConfigValue(SysConfigConstant.TEACHER_VIP_SHARE_PROFIT_URL);
         result.setUrl(MessageFormatter.arrayFormat(teacherVipShareProfitUrl, detail.getId(), sysUser.getId()));
         return result;
     }
 
+    private UserVipInfoVo getVipInfo(ClientEnum userType, Long userId) {
+
+        UserVipInfoVo userVipInfoVo = new UserVipInfoVo();
+        userVipInfoVo.setUserType(userType);
+        if (userType.equals(ClientEnum.STUDENT)) {
+            StudentVo studentVo = studentService.detail(userId);
+            if (studentVo == null) {
+                return null;
+            }
+
+            BeanUtils.copyProperties(studentVo,userVipInfoVo);
+            return userVipInfoVo;
+        } else if (userType.equals(ClientEnum.TEACHER)) {
+            TeacherVo teacherVo = teacherService.detail(userId);
+            if (teacherVo == null) {
+                return null;
+            }
+
+            BeanUtils.copyProperties(teacherVo,userVipInfoVo);
+            return userVipInfoVo;
+        }
+        return null;
+    }
+
 
     // 发送会员购买消息推送
-    private void authSend(Long userId, String phone, String param1) {
+    private void authSend(Long userId, String phone, String param1,ClientEnum clientEnum) {
         Map<Long, String> receivers = new HashMap<>();
         receivers.put(userId, phone);
         try {
             sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.JIGUANG, MessageTypeEnum.VIP_BUY_SUCCESS,
-                    receivers, null, 0, null, ClientEnum.STUDENT.getCode(), param1);
+                    receivers, null, 0, null, clientEnum.getCode(), param1);
         } catch (Exception e) {
             log.error("会员购买极光消息推送异常,userId={}", userId);
         }
 
         try {
             sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.AWSMS, MessageTypeEnum.SMS_VIP_BUY_SUCCESS,
-                    receivers, null, 0, null, ClientEnum.STUDENT.getCode(), param1);
+                    receivers, null, 0, null, clientEnum.getCode(), param1);
         } catch (Exception e) {
             log.error("会员购买短信消息推送异常,userId={}", userId);
         }

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

@@ -3,6 +3,7 @@ package com.yonge.cooleshow.biz.dal.service.impl;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.yonge.cooleshow.biz.dal.dao.MusicSheetPurchaseRecordDao;
 import com.yonge.cooleshow.biz.dal.entity.MusicSheetPurchaseRecord;
+import com.yonge.cooleshow.biz.dal.enums.ClientEnum;
 import com.yonge.cooleshow.biz.dal.service.MusicSheetPurchaseRecordService;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -31,10 +32,11 @@ public class MusicSheetPurchaseRecordServiceImpl extends ServiceImpl<MusicSheetP
     }
 
     @Override
-    public MusicSheetPurchaseRecord checkPurchase(Long userId, Long musicSheetId) {
+    public MusicSheetPurchaseRecord checkPurchase(Long userId, Long musicSheetId, ClientEnum clientType) {
         List<MusicSheetPurchaseRecord> list = this.lambdaQuery()
                                                   .eq(MusicSheetPurchaseRecord::getMusicSheetId, musicSheetId)
                                                   .eq(MusicSheetPurchaseRecord::getStudentId, userId)
+                                                  .eq(MusicSheetPurchaseRecord::getClientType, clientType)
                                                   .list();
         if (CollectionUtils.isEmpty(list)) {
             return null;

+ 31 - 22
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/MusicSheetServiceImpl.java

@@ -6,7 +6,6 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.yonge.cooleshow.auth.api.client.SysUserFeignService;
 import com.yonge.cooleshow.auth.api.entity.SysUser;
 import com.yonge.cooleshow.common.enums.PostStatusEnum;
-import com.yonge.cooleshow.common.enums.SysUserType;
 import com.yonge.cooleshow.biz.dal.dao.MusicSheetDao;
 import com.yonge.cooleshow.biz.dal.dto.MusicSheetDto;
 import com.yonge.cooleshow.biz.dal.dto.MusicSheetExport;
@@ -180,7 +179,7 @@ public class MusicSheetServiceImpl extends ServiceImpl<MusicSheetDao, MusicSheet
     }
 
     @Override
-    public MusicSheetDetailVo detail(Long id, SysUser sysUser, SysUserType userType) {
+    public MusicSheetDetailVo detail(Long id, SysUser sysUser,ClientEnum userType) {
         MusicSheetDetailVo detail = baseMapper.detail(id);
         if (detail == null) {
             throw new BizException("未找到曲目信息");
@@ -194,18 +193,18 @@ public class MusicSheetServiceImpl extends ServiceImpl<MusicSheetDao, MusicSheet
         }
         if (ChargeTypeEnum.FREE.getCode().equals(detail.getChargeType().getCode())) {
             detail.setPlay(YesOrNoEnum.YES);
-        } else if (SysUserType.STUDENT.getCode().equals(userType.getCode())
-                || SysUserType.TEACHER.getCode().equals(userType.getCode())) {
+        }  else if (ClientEnum.STUDENT.getCode().equals(userType.getCode())
+                || ClientEnum.TEACHER.getCode().equals(userType.getCode())) {
             // 2022 7 20  老师也能购买曲目
-            if (SysUserType.TEACHER.getCode().equals(userType.getCode()) && detail.getUserId().equals(sysUser.getId())) {
+            if (ClientEnum.TEACHER.getCode().equals(userType.getCode()) && detail.getUserId().equals(sysUser.getId())) {
                 detail.setPlay(YesOrNoEnum.YES);
             } else {
-                setMusicSheetPlay(sysUser.getId(), detail);
+                setMusicSheetPlay(sysUser.getId(), detail,userType);
             }
         } else {
             detail.setPlay(YesOrNoEnum.YES);
         }
-        if (SysUserType.STUDENT.getCode().equals(userType.getCode())) {
+        if (ClientEnum.STUDENT.getCode().equals(userType.getCode())) {
             // 学生进入小酷Ai练习,添加一条练习记录
             musicSheetPracticeRecordService.addRecord(id, sysUser.getId());
         }
@@ -216,17 +215,17 @@ public class MusicSheetServiceImpl extends ServiceImpl<MusicSheetDao, MusicSheet
      * 设置学生曲目信息
      *
      * 2022 7 20  老师也能购买曲目
-     *
-     * @param studentId 学生id
-     * @param detail    曲目详情
+     *  @param studentId 学生id
+     * @param detail 曲目详情
+     * @param userType 用户类型
      */
-    private void setMusicSheetPlay(Long studentId, MusicSheetDetailVo detail) {
+    private void setMusicSheetPlay(Long studentId, MusicSheetDetailVo detail, ClientEnum userType) {
         detail.setPlay(YesOrNoEnum.NO);
         // 单曲购买 判断购买记录,有记录课播放
         if (ChargeTypeEnum.CHARGE.getCode().equals(detail.getChargeType().getCode())) {
             // 学生须判断是否能播放曲目
             MusicSheetPurchaseRecord musicSheetPurchaseRecord = musicSheetPurchaseRecordService.checkPurchase(
-                    studentId, detail.getId());
+                    studentId, detail.getId(),userType);
             if (musicSheetPurchaseRecord != null) {
                 detail.setOrderStatus(musicSheetPurchaseRecord.getOrderStatus());
                 detail.setOrderNo(musicSheetPurchaseRecord.getOrderNo());
@@ -237,9 +236,16 @@ public class MusicSheetServiceImpl extends ServiceImpl<MusicSheetDao, MusicSheet
         } else if (ChargeTypeEnum.VIP.getCode().equals(detail.getChargeType().getCode())) {
             // 会员 判断是否为会员, 会员可播放
             // todo 老师会员判断
-            StudentVo studentVo = studentService.detail(studentId);
-            if (studentVo != null && YesOrNoEnum.YES.getCode().equals(studentVo.getIsVip().getCode())) {
-                detail.setPlay(YesOrNoEnum.YES);
+            if (userType.equals(ClientEnum.STUDENT)) {
+                StudentVo studentVo = studentService.detail(studentId);
+                if (studentVo != null && YesOrNoEnum.YES.getCode().equals(studentVo.getIsVip().getCode())) {
+                    detail.setPlay(YesOrNoEnum.YES);
+                }
+            } else if (userType.equals(ClientEnum.TEACHER)) {
+                TeacherVo teacher= teacherService.detail(studentId);
+                if (teacher != null && YesOrNoEnum.YES.getCode().equals(teacher.getIsVip().getCode())) {
+                    detail.setPlay(YesOrNoEnum.YES);
+                }
             }
         }
     }
@@ -472,7 +478,7 @@ public class MusicSheetServiceImpl extends ServiceImpl<MusicSheetDao, MusicSheet
         }
 
         // 检查已经购买
-        checkoutPay(orderReqInfo.getUserId(), musicSheetPayDto.getMusicSheetId());
+        checkoutPay(orderReqInfo.getUserId(), musicSheetPayDto.getMusicSheetId(),musicSheetPayDto.getClientType());
 
 
         orderCreateRes.setRes(true);
@@ -488,15 +494,16 @@ public class MusicSheetServiceImpl extends ServiceImpl<MusicSheetDao, MusicSheet
 
     /**
      * 检查是否已购买当前曲目
-     *
-     * @param userId       用户id
+     *  @param userId       用户id
      * @param musicSheetId 曲目id
+     * @param clientType
      */
-    private void checkoutPay(Long userId, Long musicSheetId) {
+    private void checkoutPay(Long userId, Long musicSheetId, String clientType) {
         List<MusicSheetPurchaseRecord> list = musicSheetPurchaseRecordService
                 .lambdaQuery()
                 .eq(MusicSheetPurchaseRecord::getMusicSheetId, musicSheetId)
                 .eq(MusicSheetPurchaseRecord::getStudentId, userId)
+                .eq(MusicSheetPurchaseRecord::getClientType, clientType)
                 .eq(MusicSheetPurchaseRecord::getOrderStatus, OrderStatusEnum.PAID)
                 .list();
         if (!CollectionUtils.isEmpty(list)) {
@@ -588,10 +595,11 @@ public class MusicSheetServiceImpl extends ServiceImpl<MusicSheetDao, MusicSheet
      */
     private void addMusicSheetPurchaseRecord(UserOrderDetailVo userOrderDetailVo, BigDecimal actualPrice, BigDecimal serviceFeeAmount) {
         MusicSheetPurchaseRecord musicSheetPurchaseRecord = musicSheetPurchaseRecordService
-                .checkPurchase(userOrderDetailVo.getUserId(), userOrderDetailVo.getBizId());
+                .checkPurchase(userOrderDetailVo.getUserId(), userOrderDetailVo.getBizId(),userOrderDetailVo.getOrderClient());
         if (musicSheetPurchaseRecord == null) {
             musicSheetPurchaseRecord = new MusicSheetPurchaseRecord();
         }
+        musicSheetPurchaseRecord.setClientType(userOrderDetailVo.getOrderClient());
         musicSheetPurchaseRecord.setMusicSheetId(userOrderDetailVo.getBizId());
         musicSheetPurchaseRecord.setOrderNo(userOrderDetailVo.getOrderNo());
         musicSheetPurchaseRecord.setPurchasePrice(actualPrice);
@@ -655,7 +663,7 @@ public class MusicSheetServiceImpl extends ServiceImpl<MusicSheetDao, MusicSheet
     public void orderAfterSheet(UserOrderDetailVo userOrderDetailVo) {
         // 保存购买记录
         MusicSheetPurchaseRecord musicSheetPurchaseRecord = musicSheetPurchaseRecordService
-                .checkPurchase(userOrderDetailVo.getUserId(), userOrderDetailVo.getBizId());
+                .checkPurchase(userOrderDetailVo.getUserId(),userOrderDetailVo.getBizId(),userOrderDetailVo.getOrderClient());
         if (musicSheetPurchaseRecord == null) {
             musicSheetPurchaseRecord = new MusicSheetPurchaseRecord();
         }
@@ -672,7 +680,8 @@ public class MusicSheetServiceImpl extends ServiceImpl<MusicSheetDao, MusicSheet
     @Transactional(rollbackFor = Exception.class)
     public void buyMusicSheetCancel(UserOrderDetailVo userOrderDetailVo) {
         MusicSheetPurchaseRecord musicSheetPurchaseRecord = musicSheetPurchaseRecordService
-                .checkPurchase(userOrderDetailVo.getUserId(), userOrderDetailVo.getBizId());
+                .checkPurchase(userOrderDetailVo.getUserId(),userOrderDetailVo.getBizId(),userOrderDetailVo.getOrderClient());
+
         if (musicSheetPurchaseRecord == null) return;
         musicSheetPurchaseRecordService.removeById(musicSheetPurchaseRecord.getId());
     }

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

@@ -79,7 +79,7 @@ public class UserAccountServiceImpl extends ServiceImpl<UserAccountDao, UserAcco
                 || null == accountRecordDto.getBizType()) {
             throw new BizException("记录入账-缺少入账参数: param is {}", JSONObject.toJSONString(accountRecordDto));
         }
-        if (BigDecimal.ZERO.compareTo(accountRecordDto.getTransAmount()) < 0) {
+        if (BigDecimal.ZERO.compareTo(accountRecordDto.getTransAmount()) > 0) {
             throw new BizException("记录入账-变动金额不能为负数: param is {}", JSONObject.toJSONString(accountRecordDto));
         }
 

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

@@ -8,9 +8,7 @@ import com.yonge.cooleshow.biz.dal.enums.ClientEnum;
 import com.yonge.cooleshow.biz.dal.enums.MessageTypeEnum;
 import com.yonge.cooleshow.biz.dal.enums.PeriodEnum;
 import com.yonge.cooleshow.biz.dal.service.*;
-import com.yonge.cooleshow.biz.dal.vo.MemberPriceSettingsVo;
-import com.yonge.cooleshow.biz.dal.vo.StudentVo;
-import com.yonge.cooleshow.biz.dal.vo.UserOrderDetailVo;
+import com.yonge.cooleshow.biz.dal.vo.*;
 import com.yonge.toolset.thirdparty.message.MessageSenderPluginContext;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -18,7 +16,6 @@ import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import com.yonge.cooleshow.biz.dal.entity.VipCardRecord;
-import com.yonge.cooleshow.biz.dal.vo.VipCardRecordVo;
 import com.yonge.cooleshow.biz.dal.dto.search.VipCardRecordSearch;
 import com.yonge.cooleshow.biz.dal.dao.VipCardRecordDao;
 
@@ -35,6 +32,11 @@ public class VipCardRecordServiceImpl extends ServiceImpl<VipCardRecordDao, VipC
     private MemberPriceSettingsDao memberPriceSettingsDao;
     @Autowired
     private StudentService studentService;
+
+
+    @Autowired
+    private TeacherService teacherService;
+
     @Autowired
     private MemberPriceSettingsService memberPriceSettingsService;
     @Autowired
@@ -74,12 +76,24 @@ public class VipCardRecordServiceImpl extends ServiceImpl<VipCardRecordDao, VipC
         if (null == detail) {
             return null;
         }
-        StudentVo studentVo = studentService.detail(orderDetailVo.getUserId());
-        if (null == studentVo) {
+
+        //修改用户会员时长
+        Date membershipEndTime = null;
+        if (orderDetailVo.getOrderClient().equals(ClientEnum.STUDENT)) {
+            StudentVo studentVo = studentService.detail(orderDetailVo.getUserId());
+            if (null == studentVo) {
+                return null;
+            }
+            membershipEndTime = studentVo.getMembershipEndTime();
+        } else if (orderDetailVo.getOrderClient().equals(ClientEnum.TEACHER)){
+            TeacherVo teacherVo = teacherService.detail(orderDetailVo.getUserId());
+            if (null == teacherVo) {
+                return null;
+            }
+            membershipEndTime = teacherVo.getMembershipEndTime();
+        } else {
             return null;
         }
-        //修改用户会员时长
-        Date membershipEndTime = studentVo.getMembershipEndTime();
 
         VipCardRecord vipCardRecord = new VipCardRecord();
         vipCardRecord.setUserId(orderDetailVo.getUserId());
@@ -87,6 +101,7 @@ public class VipCardRecordServiceImpl extends ServiceImpl<VipCardRecordDao, VipC
         vipCardRecord.setSubOrderNo(orderDetailVo.getSubOrderNo());
         vipCardRecord.setVipCardId(detail.getId());
         vipCardRecord.setMsgStatus(0);
+        vipCardRecord.setClientType(orderDetailVo.getOrderClient());
 
         if (null == membershipEndTime || membershipEndTime.before(new Date())) {
             //没有会员、会员已过期 会员卡生效时间为当前时间
@@ -148,7 +163,7 @@ public class VipCardRecordServiceImpl extends ServiceImpl<VipCardRecordDao, VipC
             }
             expireFlagMap.put(record.getUserId(), record.getUserId());
             //发送消息
-            expireSend(record.getUserId(), record.getPhone());
+            expireSend(record.getUserId(), record.getPhone(),record.getClientType());
             record.setMsgStatus(2);
             record.setUpdateTime(new Date());
 
@@ -181,13 +196,13 @@ public class VipCardRecordServiceImpl extends ServiceImpl<VipCardRecordDao, VipC
     }
 
     // 发送会员到期消息推送
-    private void expireSend(Long userId, String phone) {
+    private void expireSend(Long userId, String phone,ClientEnum userType) {
         Map<Long, String> receivers = new HashMap<>();
         receivers.put(userId, phone);
         try {
             String url = sysMessageService.selectConfigUrl(MessageTypeEnum.VIP_EXPIRE.getCode());
             sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.JIGUANG, MessageTypeEnum.VIP_EXPIRE,
-                    receivers, null, 0, url, ClientEnum.STUDENT.getCode());
+                    receivers, null, 0, url, userType.getCode());
         } catch (Exception e) {
             log.error("会员到期3天极光消息推送异常,userId={}", userId);
         }
@@ -195,7 +210,7 @@ public class VipCardRecordServiceImpl extends ServiceImpl<VipCardRecordDao, VipC
         try {
             String url = sysMessageService.selectConfigUrl(MessageTypeEnum.SMS_VIP_EXPIRE.getCode());
             sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.AWSMS, MessageTypeEnum.SMS_VIP_EXPIRE,
-                    receivers, null, 0, null, ClientEnum.STUDENT.getCode(), url);
+                    receivers, null, 0, null, userType.getCode(), url);
         } catch (Exception e) {
             log.error("会员到期3天短信消息推送异常,userId={}", userId);
         }

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

@@ -54,6 +54,20 @@ public class TeacherVo extends Teacher {
     private List<TeacherStyleVideo> styleVideo;
     @ApiModelProperty(value = "学生 STUDENT 老师 TEACHER 系统用户 STSTEM")
     private String userType;
+    @ApiModelProperty(value = "是否会员 0否 1是")
+    private YesOrNoEnum isVip;
+
+    public YesOrNoEnum getIsVip() {
+        return isVip;
+    }
+
+    public void setIsVip(YesOrNoEnum isVip) {
+        this.isVip = isVip;
+    }
+
+    public void setGender(GenderEnum gender) {
+        this.gender = gender;
+    }
 
     public String getAvatar() {
         return avatar;

+ 12 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/vo/UserOrderDetailVo.java

@@ -1,6 +1,7 @@
 package com.yonge.cooleshow.biz.dal.vo;
 
 import com.yonge.cooleshow.biz.dal.entity.UserOrderDetail;
+import com.yonge.cooleshow.biz.dal.enums.ClientEnum;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 
@@ -18,6 +19,9 @@ public class UserOrderDetailVo extends UserOrderDetail {
     @ApiModelProperty("订单id ")
     private Long orderId;
 
+    @ApiModelProperty("用户类型 学生:STUDENT 老师 :TEACHER")
+    private ClientEnum orderClient;
+
     @ApiModelProperty("头像 ")
     private String avatar;
 
@@ -35,6 +39,14 @@ public class UserOrderDetailVo extends UserOrderDetail {
     @ApiModelProperty(value = "分润用户编号")
     private Long routeUserId;
 
+    public ClientEnum getOrderClient() {
+        return orderClient;
+    }
+
+    public void setOrderClient(ClientEnum orderClient) {
+        this.orderClient = orderClient;
+    }
+
     public Long getRouteUserId() {
         return routeUserId;
     }

+ 109 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/vo/UserVipInfoVo.java

@@ -0,0 +1,109 @@
+package com.yonge.cooleshow.biz.dal.vo;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.yonge.cooleshow.biz.dal.enums.ClientEnum;
+import io.swagger.annotations.ApiModelProperty;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.util.Date;
+
+/**
+ * Description
+ *
+ * @author liujunchi
+ * @date 2022-07-21
+ */
+public class UserVipInfoVo {
+
+    /**
+     * 对应user表用户编号
+     */
+    @ApiModelProperty("对应user表用户编号 ")
+    private Long userId;
+
+    /**
+     * 会员等级
+     */
+    @ApiModelProperty("会员等级 ")
+    private Long memberRankSettingId;
+    /**
+     * 有效期开始时间
+     */
+    @ApiModelProperty("有效期开始时间 ")
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone="GMT+8")
+    private Date membershipStartTime;
+    /**
+     * 有效期结束时间
+     */
+    @ApiModelProperty("有效期结束时间 ")
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
+    private Date membershipEndTime;
+
+    @ApiModelProperty(value = "手机号")
+    private String phone;
+
+    @ApiModelProperty("用户类型")
+    private ClientEnum userType;
+
+    private Date updateTime;
+
+    public ClientEnum getUserType() {
+        return userType;
+    }
+
+    public void setUserType(ClientEnum userType) {
+        this.userType = userType;
+    }
+
+    public Date getUpdateTime() {
+        return updateTime;
+    }
+
+    public void setUpdateTime(Date updateTime) {
+        this.updateTime = updateTime;
+    }
+
+    public Long getUserId() {
+        return userId;
+    }
+
+    public void setUserId(Long userId) {
+        this.userId = userId;
+    }
+
+    public Long getMemberRankSettingId() {
+        return memberRankSettingId;
+    }
+
+    public void setMemberRankSettingId(Long memberRankSettingId) {
+        this.memberRankSettingId = memberRankSettingId;
+    }
+
+    public Date getMembershipStartTime() {
+        return membershipStartTime;
+    }
+
+    public void setMembershipStartTime(Date membershipStartTime) {
+        this.membershipStartTime = membershipStartTime;
+    }
+
+    public Date getMembershipEndTime() {
+        return membershipEndTime;
+    }
+
+    public void setMembershipEndTime(Date membershipEndTime) {
+        this.membershipEndTime = membershipEndTime;
+    }
+
+    public String getPhone() {
+        return phone;
+    }
+
+    public void setPhone(String phone) {
+        this.phone = phone;
+    }
+}

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

@@ -8,6 +8,7 @@
 		 <result column="music_sheet_id_" jdbcType="BIGINT" property="musicSheetId" />
 		 <result column="teacher_id_" jdbcType="BIGINT" property="teacherId" />
 		 <result column="order_no_" jdbcType="VARCHAR" property="orderNo" />
+		 <result column="client_type_" jdbcType="VARCHAR" property="clientType" />
 		 <result column="student_id_" jdbcType="BIGINT" property="studentId" />
 		 <result column="purchase_time_" jdbcType="TIMESTAMP" property="purchaseTime" />
 		 <result column="purchase_price_" jdbcType="DECIMAL" property="purchasePrice" />
@@ -15,7 +16,7 @@
 	</resultMap>
 
 	<sql id="Base_Column_List">
-		id_, music_sheet_id_, teacher_id_, order_no_, student_id_, purchase_time_, purchase_price_, order_status_
+		id_, music_sheet_id_, teacher_id_, order_no_, student_id_, purchase_time_, purchase_price_, order_status_,client_type_
 	</sql>
 
 

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

@@ -17,6 +17,9 @@
         <result column="entry_auth_date_" property="entryAuthDate" />
         <result column="musician_flag_" property="musicianFlag" />
         <result column="musician_date_" property="musicianDate" />
+        <result column="member_rank_setting_id_" property="memberRankSettingId"/>
+        <result column="membership_start_time_" property="membershipStartTime"/>
+        <result column="membership_end_time_" property="membershipEndTime"/>
         <result column="live_flag_" property="liveFlag" />
         <result column="live_date_" property="liveDate" />
         <result column="browse_" property="browse" />
@@ -44,6 +47,9 @@
         , t.musician_date_ as "musicianDate"
         , t.live_flag_ as "liveFlag"
         , t.live_date_ as "liveDate"
+        , t.member_rank_setting_id_ as "memberRankSettingId"
+        , t.membership_start_time_ as "membershipStartTime"
+        , t.membership_end_time_ as "membershipEndTime"
         , t.browse_ as "browse"
         , t.memo_ as "memo"
         , t.tag_ as "tag"
@@ -119,6 +125,7 @@
             u.birthdate_ as birthdate,
             u.phone_ as phone,
             (case when isnull(u.id_card_no_) then 0 else 1 end) as isReal,
+        (!isnull(membership_end_time_) and membership_end_time_ > now()) as isVip,
             u.real_name_ as realName,
             u.id_card_no_ as idCardNo,
             u.lock_flag_ as lockFlag,

+ 2 - 0
cooleshow-user/user-biz/src/main/resources/config/mybatis/UserOrderDetailMapper.xml

@@ -93,8 +93,10 @@
             <include refid="baseColumns" />,
             u.avatar_ as avatar,
             u.username_ as username,
+            uo.order_client_ as orderClient,
             a.star_grade_ as starGrade
         FROM user_order_detail t
+        left join user_order uo on uo.order_no_ = t.order_no_
         left join sys_user u on t.merch_id_ = u.id_
         left join teacher_total a on t.merch_id_ = a.user_id_
         where t.order_no_ = #{orderNo}

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

@@ -26,6 +26,7 @@
         , t.update_time_ as updateTime
         , t.end_time_ as endTime
         , t.msg_status_ as msgStatus
+        ,t.client_type_ as clientType
         </sql>
 
     <select id="detail" resultType="com.yonge.cooleshow.biz.dal.vo.VipCardRecordVo">

+ 2 - 1
cooleshow-user/user-student/src/main/java/com/yonge/cooleshow/student/controller/MusicSheetController.java

@@ -5,6 +5,7 @@ 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.biz.dal.entity.Student;
+import com.yonge.cooleshow.biz.dal.enums.ClientEnum;
 import com.yonge.cooleshow.biz.dal.service.StudentService;
 import com.yonge.cooleshow.common.enums.SysUserType;
 import com.yonge.cooleshow.biz.dal.dto.search.MusicAlbumSearch;
@@ -66,7 +67,7 @@ public class MusicSheetController extends BaseController {
         if (sysUser == null  || sysUser.getId() == null) {
             return failed("用户信息获取失败");
         }
-        return succeed(musicSheetService.detail(id, sysUser, SysUserType.STUDENT));
+        return succeed(musicSheetService.detail(id, sysUser, ClientEnum.STUDENT));
     }
 
     @ApiOperation(value = "分页查询", httpMethod="POST", consumes="application/json", produces="application/json")

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

@@ -7,6 +7,7 @@ import com.yonge.cooleshow.biz.dal.dto.MusicSheetDto;
 import com.yonge.cooleshow.biz.dal.dto.search.StudentMusicSheetSearch;
 import com.yonge.cooleshow.biz.dal.enums.AuthStatusEnum;
 import com.yonge.cooleshow.biz.dal.enums.ChargeTypeEnum;
+import com.yonge.cooleshow.biz.dal.enums.ClientEnum;
 import com.yonge.cooleshow.biz.dal.enums.SourceTypeEnum;
 import com.yonge.cooleshow.biz.dal.service.AppVersionInfoService;
 import com.yonge.cooleshow.biz.dal.service.MusicSheetService;
@@ -58,7 +59,7 @@ public class MusicSheetController extends BaseController {
         if (sysUser == null  || sysUser.getId() == null) {
             return failed("用户信息获取失败");
         }
-        return succeed(musicSheetService.detail(id, sysUser, SysUserType.TEACHER));
+        return succeed(musicSheetService.detail(id, sysUser, ClientEnum.TEACHER));
     }
 
 	@ApiOperation(value = "新增", httpMethod="POST", consumes="application/json", produces="application/json")