Преглед изворни кода

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

zouxuan пре 1 година
родитељ
комит
fbd803867c

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

@@ -939,7 +939,12 @@ public class CourseGroupServiceImpl extends ServiceImpl<CourseGroupDao, CourseGr
         if(CollectionUtils.isNotEmpty(teacherSalaryList)){
             courseScheduleTeacherSalaryService.getDao().insertBatch(teacherSalaryList);
             //写老师账户
-            addTeacherAccount(orderParam, teacherSalaryList, totalExpectPrice);
+
+            // 判断是否结算给老师,不结算,不写入老师入账记录
+            Teacher teacher = teacherService.getById(courseGroup.getTeacherId());
+            if (teacher != null && teacher.getIsSettlement() != null && teacher.getIsSettlement()) {
+                addTeacherAccount(orderParam, teacherSalaryList, totalExpectPrice);
+            }
         }
         log.info("buyLiveCourseSuccess ok");
         //课程购买成功后进行消息推送

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

@@ -26,22 +26,7 @@ import com.yonge.cooleshow.biz.dal.dto.req.OrderReq;
 import com.yonge.cooleshow.biz.dal.dto.search.HomeworkSearch;
 import com.yonge.cooleshow.biz.dal.dto.search.MyCourseSearch;
 import com.yonge.cooleshow.biz.dal.dto.search.PracticeTeacherSearch;
-import com.yonge.cooleshow.biz.dal.entity.CourseCalendarEntity;
-import com.yonge.cooleshow.biz.dal.entity.CourseGroup;
-import com.yonge.cooleshow.biz.dal.entity.CourseSchedule;
-import com.yonge.cooleshow.biz.dal.entity.CourseScheduleDate;
-import com.yonge.cooleshow.biz.dal.entity.CourseScheduleRecord;
-import com.yonge.cooleshow.biz.dal.entity.CourseScheduleStudentPayment;
-import com.yonge.cooleshow.biz.dal.entity.CourseScheduleTeacherSalary;
-import com.yonge.cooleshow.biz.dal.entity.CourseTimeEntity;
-import com.yonge.cooleshow.biz.dal.entity.HolidaysFestivals;
-import com.yonge.cooleshow.biz.dal.entity.PianoRoomTime;
-import com.yonge.cooleshow.biz.dal.entity.PlatformCashAccountRecord;
-import com.yonge.cooleshow.biz.dal.entity.Student;
-import com.yonge.cooleshow.biz.dal.entity.TeacherFreeTime;
-import com.yonge.cooleshow.biz.dal.entity.TeacherSubjectPrice;
-import com.yonge.cooleshow.biz.dal.entity.UserBindingTeacher;
-import com.yonge.cooleshow.biz.dal.entity.UserOrderDetail;
+import com.yonge.cooleshow.biz.dal.entity.*;
 import com.yonge.cooleshow.biz.dal.enums.AccountBizTypeEnum;
 import com.yonge.cooleshow.biz.dal.enums.ClientEnum;
 import com.yonge.cooleshow.biz.dal.enums.CourseGroupEnum;
@@ -1276,8 +1261,13 @@ public class CourseScheduleServiceImpl extends ServiceImpl<CourseScheduleDao, Co
         if (CollectionUtils.isNotEmpty(teacherSalaryList)) {
             courseScheduleTeacherSalaryService.getDao().insertBatch(teacherSalaryList);
             log.info("buyPracticeCourseSuccess ok");
-            //写老师账户
-            addTeacherAccount(orderParam, teacherSalaryList);
+
+            // 判断是否结算给老师,不结算,不写入老师入账记录
+            Teacher teacher = teacherService.getById(teacherId);
+            if (teacher != null && teacher.getIsSettlement() != null && teacher.getIsSettlement()) {
+                //写老师账户
+                addTeacherAccount(orderParam, teacherSalaryList);
+            }
         }
 
         Set<Long> studentIds = new HashSet();

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

@@ -486,6 +486,12 @@ public class MusicAlbumServiceImpl extends ServiceImpl<MusicAlbumDao,MusicAlbum>
             tenantAlbumId = Long.parseLong(albumId);
         }
 
+        //获取对应机构专辑状态
+        TenantAlbum one = tenantAlbumService.lambdaQuery().eq(TenantAlbum::getId, tenantAlbumId).last("limit 1").one();
+        if (!ObjectUtil.isEmpty(one)){
+            album.setStatus(one.getStatus());
+        }
+
 
         //查询对应专辑的详情
         List<TenantAlbum> list = tenantAlbumService.lambdaQuery().eq(TenantAlbum::getStatus, true).eq(TenantAlbum::getId, tenantAlbumId).list();

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

@@ -40,18 +40,7 @@ import com.yonge.cooleshow.biz.dal.entity.Teacher;
 import com.yonge.cooleshow.biz.dal.entity.TeacherTotal;
 import com.yonge.cooleshow.biz.dal.entity.TenantInfo;
 import com.yonge.cooleshow.biz.dal.entity.UserOrderDetail;
-import com.yonge.cooleshow.biz.dal.enums.AccountBizTypeEnum;
-import com.yonge.cooleshow.biz.dal.enums.AudioTypeEnum;
-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.GoodTypeEnum;
-import com.yonge.cooleshow.biz.dal.enums.InOrOutEnum;
-import com.yonge.cooleshow.biz.dal.enums.MessageTypeEnum;
-import com.yonge.cooleshow.biz.dal.enums.OrderStatusEnum;
-import com.yonge.cooleshow.biz.dal.enums.OrderTypeEnum;
-import com.yonge.cooleshow.biz.dal.enums.SourceTypeEnum;
-import com.yonge.cooleshow.biz.dal.enums.TeacherTagEnum;
+import com.yonge.cooleshow.biz.dal.enums.*;
 import com.yonge.cooleshow.biz.dal.enums.album.PurchaseRecordTypeEnum;
 import com.yonge.cooleshow.biz.dal.mapper.UserTenantAlbumRecordMapper;
 import com.yonge.cooleshow.biz.dal.service.ActivityPlanService;
@@ -252,6 +241,14 @@ public class MusicSheetServiceImpl extends ServiceImpl<MusicSheetDao, MusicSheet
         //musicSheet.setState(YesOrNoEnum.NO);
         this.saveOrUpdate(musicSheet);
 
+        if (StringUtil.isEmpty(musicSheet.getMusicSubject())
+                && musicSheet.getMusicSheetType().equals(MusicSheetTypeEnum.CONCERT)) {
+            this.lambdaUpdate()
+                    .eq(MusicSheet::getId, musicSheet.getId())
+                    .set(MusicSheet::getMusicSubject,"")
+                    .update();
+        }
+
         if (musicSheet.getAuditStatus() == null || AuthStatusEnum.DOING.getCode().equals(musicSheet.getAuditStatus().getCode())) {
             musicSheetAuthRecordService.setAuditDoing(musicSheet.getId(), originalMusicSheetId, lastMusicSheetId);
         }
@@ -282,6 +279,9 @@ public class MusicSheetServiceImpl extends ServiceImpl<MusicSheetDao, MusicSheet
 
         Map<Long, TenantInfo> tenantInfoMap = tenantInfoService.getMapByIds(tenantIds);
         for (MusicSheetVo record : records) {
+            if (record.getSourceType() == null) {
+                break;
+            }
             switch (record.getSourceType()) {
                 case TENANT:
                     TenantInfo tenantInfo = tenantInfoMap.get(record.getUserId());
@@ -969,6 +969,14 @@ public class MusicSheetServiceImpl extends ServiceImpl<MusicSheetDao, MusicSheet
             musicSheet.setUpdateBy(userId);
             //musicSheet.setState(YesOrNoEnum.NO);
             this.saveOrUpdate(musicSheet);
+
+            if (StringUtil.isEmpty(musicSheet.getMusicSubject())
+                    && musicSheet.getMusicSheetType().equals(MusicSheetTypeEnum.CONCERT)) {
+                this.lambdaUpdate()
+                        .eq(MusicSheet::getId, musicSheet.getId())
+                        .set(MusicSheet::getMusicSubject,"")
+                        .update();
+            }
             if (musicSheet.getAuditStatus() == null || AuthStatusEnum.DOING.getCode().equals(musicSheet.getAuditStatus().getCode())) {
                 musicSheetAuthRecordService.setAuditDoing(musicSheet.getId(),originalMusicSheetId,lastMusicSheetId);
             }
@@ -1110,8 +1118,12 @@ public class MusicSheetServiceImpl extends ServiceImpl<MusicSheetDao, MusicSheet
                 // 老师收入
                 BigDecimal teacherAmount = BigDecimal.ONE.subtract(serviceFee).multiply(expectPrice);
 
-                // 加入账户
-                addTeacherAccount(userOrderDetailVo, teacherAmount, userOrderDetailVo.getBizId());
+                // 判断是否结算给老师,不结算,不写入老师入账记录
+                Teacher teacher = teacherService.getById(musicSheet.getUserId());
+                if (teacher != null && teacher.getIsSettlement() != null && teacher.getIsSettlement()) {
+                    // 加入账户
+                    addTeacherAccount(userOrderDetailVo, teacherAmount, userOrderDetailVo.getBizId());
+                }
             }
         }
 

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

@@ -338,7 +338,7 @@ public class TenantActivationCodeServiceImpl extends ServiceImpl<TenantActivatio
             if (StringUtils.isEmpty(acCode)) {
                 continue;
             }
-            int msgRowNo = rowIndex + 1;
+            int msgRowNo = rowIndex;
             code.checkIsIllegal().forEach(err -> errMsg.add(String.format(errTemplate, msgRowNo, err)));
             if (codeRowMap.containsKey(code.getCode())) {
                 errMsg.add(String.format(errTemplate, msgRowNo, "激活码重复"));

+ 28 - 17
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/UserOrderServiceImpl.java

@@ -146,6 +146,9 @@ public class UserOrderServiceImpl extends ServiceImpl<UserOrderDao, UserOrder> i
     private MusicAlbumService musicAlbumService;
 
     @Autowired
+    private TeacherService teacherService;
+
+    @Autowired
     private UserOrderService userOrderService;
 
     @Autowired
@@ -1261,23 +1264,31 @@ public class UserOrderServiceImpl extends ServiceImpl<UserOrderDao, UserOrder> i
         if (null != orderDetailVo.getRecomUserId() && orderDetailVo.getRecomUserId() != 0
                 && !orderDetailVo.getRecomUserId().equals(orderDetailVo.getMerchId())
                 && !orderDetailVo.getUserId().equals(orderDetailVo.getRecomUserId())) {
-            //获取分润收益费率
-            BigDecimal shareFeeRate = getShareFreeByGoodType(orderDetailVo.getGoodType()
-                    , orderDetailVo.getBizId());
-            //入老师账户
-            BigDecimal shareFee = platformFee.multiply(shareFeeRate).setScale(2, RoundingMode.HALF_UP);
-            if (shareFee.compareTo(BigDecimal.ZERO) > 0) {
-                AccountBizTypeEnum bizTypeEnum = AccountBizTypeEnum.valueOf(orderDetailVo.getGoodType().getCode() + "_SHARE");
-                if (null != bizTypeEnum) {
-                    //插入分润老师账户变更记录-分润老师预收
-                    HttpResponseResult<UserAccountRecord> recomRecordRes = userAccountService.accountRecord(
-                            new UserAccountRecordDto(orderDetailVo.getRecomUserId(), PostStatusEnum.WAIT, shareFee, InOrOutEnum.IN,
-                                    bizTypeEnum, orderDetailVo.getBizId(), bizTypeEnum.getMsg(), orderDetailVo.getOrderNo(), orderDetailVo.getUserId(), accountPeriodTime));
-                    if (recomRecordRes.getStatus()) {
-                        //插入平台预支
-                        platformCashAccountRecord = new PlatformCashAccountRecord(orderDetailVo.getRecomUserId(), shareFee,
-                                InOrOutEnum.OUT, PostStatusEnum.WAIT, bizTypeEnum, orderDetailVo.getBizId(), orderDetailVo.getOrderNo(), accountPeriodTime);
-                        platformCashAccountRecordService.save(platformCashAccountRecord);
+
+            // 判断是否结算给分享人
+
+            // 判断是否结算给老师,不结算,不写入老师入账记录
+            Teacher teacher = teacherService.getById(orderDetailVo.getRecomUserId());
+            if (teacher != null && teacher.getIsSettlement() != null && teacher.getIsSettlement()) {
+
+                //获取分润收益费率
+                BigDecimal shareFeeRate = getShareFreeByGoodType(orderDetailVo.getGoodType()
+                        , orderDetailVo.getBizId());
+                //入老师账户
+                BigDecimal shareFee = platformFee.multiply(shareFeeRate).setScale(2, RoundingMode.HALF_UP);
+                if (shareFee.compareTo(BigDecimal.ZERO) > 0) {
+                    AccountBizTypeEnum bizTypeEnum = AccountBizTypeEnum.valueOf(orderDetailVo.getGoodType().getCode() + "_SHARE");
+                    if (null != bizTypeEnum) {
+                        //插入分润老师账户变更记录-分润老师预收
+                        HttpResponseResult<UserAccountRecord> recomRecordRes = userAccountService.accountRecord(
+                                new UserAccountRecordDto(orderDetailVo.getRecomUserId(), PostStatusEnum.WAIT, shareFee, InOrOutEnum.IN,
+                                        bizTypeEnum, orderDetailVo.getBizId(), bizTypeEnum.getMsg(), orderDetailVo.getOrderNo(), orderDetailVo.getUserId(), accountPeriodTime));
+                        if (recomRecordRes.getStatus()) {
+                            //插入平台预支
+                            platformCashAccountRecord = new PlatformCashAccountRecord(orderDetailVo.getRecomUserId(), shareFee,
+                                    InOrOutEnum.OUT, PostStatusEnum.WAIT, bizTypeEnum, orderDetailVo.getBizId(), orderDetailVo.getOrderNo(), accountPeriodTime);
+                            platformCashAccountRecordService.save(platformCashAccountRecord);
+                        }
                     }
                 }
             }

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

@@ -22,6 +22,7 @@ import com.yonge.cooleshow.common.enums.YesOrNoEnum;
 import com.yonge.toolset.base.exception.BizException;
 import com.yonge.toolset.base.util.StringUtil;
 import com.yonge.toolset.mybatis.support.PageUtil;
+import com.yonge.toolset.utils.obj.ObjectUtil;
 import org.apache.commons.collections.CollectionUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.checkerframework.checker.units.qual.A;
@@ -280,7 +281,9 @@ public class UserTenantAlbumRecordServiceImpl extends ServiceImpl<UserTenantAlbu
         }
         //获取对应机构专辑状态
         TenantAlbum one = tenantAlbumService.lambdaQuery().eq(TenantAlbum::getId, tenantAlbumId).last("limit 1").one();
-        album.setStatus(one.getStatus());
+        if (!ObjectUtil.isEmpty(one)){
+            album.setStatus(one.getStatus());
+        }
 
         StudentVo detail = detailStudent(sysUser.getId());
         // 判断是否是机构学生 机构学生 检测机构专辑购买记录

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

@@ -169,7 +169,12 @@ public class VideoLessonPurchaseRecordServiceImpl extends ServiceImpl<VideoLesso
         //查询组信息
         VideoLessonGroup lessonGroup = videoLessonGroupDao.selectById(purchaseRecord.getVideoLessonGroupId());
         //记录流水
-        addTeacherAccount(orderParam, lessonGroup);
+
+        // 判断是否结算给老师,不结算,不写入老师入账记录
+        Teacher teacher = teacherService.getById(lessonGroup.getTeacherId());
+        if (teacher != null && teacher.getIsSettlement() != null && teacher.getIsSettlement()) {
+            addTeacherAccount(orderParam, lessonGroup);
+        }
         videoSend(lessonGroup.getTeacherId(), purchaseRecord.getStudentId(), lessonGroup);
 
         // 赠品曲目、专辑插入用户曲目购买记录表

+ 1 - 2
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/wrapper/TenantUnbindHistoryWrapper.java

@@ -78,7 +78,7 @@ public class TenantUnbindHistoryWrapper {
         @ApiModelProperty("机构员工")
         private String tenantUserName;
 
-        @ApiModelProperty("机构员工")
+        @ApiModelProperty("机构员工手机号")
         private String tenantPhone;
 
         @ApiModelProperty("用户ID")
@@ -88,7 +88,6 @@ public class TenantUnbindHistoryWrapper {
         private String userName;
 
         @ApiModelProperty("手机号")
-        @TableField(value = "phone_")
         private String phone;
 
         @ApiModelProperty("用户类型")

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

@@ -798,7 +798,7 @@
     <select id="countByUser" resultType="com.yonge.cooleshow.biz.dal.vo.MusicSheetUploadCountVo">
         select user_id_ userId, count(id_) count
         from music_sheet
-        where del_flag_ = false and user_id_ in
+        where del_flag_ = false and state_ =1 and source_type_ = 'TEACHER' and user_id_ in
         <foreach collection="userIds" open="(" close=")" separator="," item="item">
             #{item}
         </foreach>

+ 1 - 1
cooleshow-user/user-tenant/src/main/java/com/yonge/cooleshow/tenant/controller/TenantInfoController.java

@@ -181,7 +181,7 @@ public class TenantInfoController extends BaseController {
 
             boolean exists = smsCodeService.verifyValidCode(sysUser.getPhone(), sysUser.getCode(), "PHONE");
             if (Boolean.FALSE.equals(exists)) {
-                throw new BizException("手机号校验有误");
+                throw new BizException("验证码错误");
             }
 
             long userId;