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

Merge remote-tracking branch 'origin/feature/0721-tenant' into feature/0721-tenant

zouxuan пре 1 година
родитељ
комит
f801f4ce52
16 измењених фајлова са 66 додато и 28 уклоњено
  1. 7 5
      cooleshow-auth/auth-server/src/main/java/com/yonge/cooleshow/auth/core/provider/PhoneAuthenticationProvider.java
  2. 2 0
      cooleshow-auth/auth-server/src/main/java/com/yonge/cooleshow/auth/core/provider/service/DefaultUserDetailsService.java
  3. 1 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/EmployeeServiceImpl.java
  4. 1 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/StudentServiceImpl.java
  5. 2 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/TeacherServiceImpl.java
  6. 5 10
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/TenantAlbumMusicServiceImpl.java
  7. 18 4
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/TenantAlbumServiceImpl.java
  8. 2 2
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/TenantInfoServiceImpl.java
  9. 2 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/TenantUnbindRecordServiceImpl.java
  10. 1 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/UserOrderServiceImpl.java
  11. 4 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/wrapper/TenantAccountRecordWrapper.java
  12. 2 1
      cooleshow-user/user-biz/src/main/resources/config/mybatis/TenantAccountRecordMapper.xml
  13. 11 2
      cooleshow-user/user-biz/src/main/resources/config/mybatis/TenantAlbumPurchaseMapper.xml
  14. 1 0
      cooleshow-user/user-tenant/src/main/java/com/yonge/cooleshow/tenant/controller/StudentController.java
  15. 1 0
      cooleshow-user/user-tenant/src/main/java/com/yonge/cooleshow/tenant/controller/TeacherController.java
  16. 6 0
      cooleshow-user/user-tenant/src/main/java/com/yonge/cooleshow/tenant/controller/TenantInfoController.java

+ 7 - 5
cooleshow-auth/auth-server/src/main/java/com/yonge/cooleshow/auth/core/provider/PhoneAuthenticationProvider.java

@@ -183,6 +183,13 @@ public class PhoneAuthenticationProvider extends AbstractAuthenticationProvider
                 if (StringUtils.isNotBlank(deviceNum)) {
                     sysUserDeviceService.bindDevice(clientId, user.getId(), deviceNum);
                 }
+
+                // 学生账号修改隐藏为显示
+                if (StringUtils.equalsIgnoreCase(loginUserType, "STUDENT")
+                        || StringUtils.equalsIgnoreCase(clientId, "STUDENT")) {
+                    sysUserService.updateStudentHideFlag(userInfo.getSysUser().getId(), 0);
+                }
+
                 //登录
                 if (userInfo.getSysUser().getUserType().contains(clientId)){
                     return login(username);
@@ -225,11 +232,6 @@ public class PhoneAuthenticationProvider extends AbstractAuthenticationProvider
                 sysUserService.update(user);
             }
 
-            // 学生账号修改隐藏为显示
-            if (StringUtils.equalsIgnoreCase(loginUserType, "STUDENT")) {
-                sysUserService.updateStudentHideFlag(userInfo.getSysUser().getId(), 0);
-            }
-
         }
 
         return login(username);

+ 2 - 0
cooleshow-auth/auth-server/src/main/java/com/yonge/cooleshow/auth/core/provider/service/DefaultUserDetailsService.java

@@ -117,7 +117,9 @@ public class DefaultUserDetailsService implements UserDetailsService {
 
         if (userType.contains("SYSTEM")) {
             authorities = AuthorityUtils.createAuthorityList(userInfo.getPermissions());
+        }
 
+        if (userType.contains("STUDENT")) {
             // 学生账号修改隐藏为显示
             sysUserService.updateStudentHideFlag(userInfo.getSysUser().getId(), 0);
         }

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

@@ -63,7 +63,7 @@ public class EmployeeServiceImpl extends BaseServiceImpl<Long, Employee> impleme
             BeanUtils.copyProperties(param, sysUser);
             sysUser.setUserType(SysUserType.SYSTEM.getCode());
             //初始密码,手机号后6位
-            String password = param.getPhone().substring(param.getPhone().length() - 6);
+            String password = "klx" + sysUser.getPhone().substring(sysUser.getPhone().length() - 4);
             sysUser.setPassword(new BCryptPasswordEncoder().encode(password));
             sysUser.setGender(param.getGender().getCode());
 

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

@@ -545,7 +545,7 @@ public class StudentServiceImpl extends ServiceImpl<StudentDao, Student> impleme
             sysUser.setUsername(student.getName());
             sysUser.setPhone(student.getPhone());
             //初始密码,手机号后6位
-            String password = sysUser.getPhone().substring(sysUser.getPhone().length() - 6);
+            String password = "klx" + sysUser.getPhone().substring(sysUser.getPhone().length() - 4);
             sysUser.setPassword(new BCryptPasswordEncoder().encode(password));
             //插入
             employeeDao.insertSysUser(sysUser);

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

@@ -961,8 +961,9 @@ public class TeacherServiceImpl extends ServiceImpl<TeacherDao, Teacher> impleme
             // 删除好友关系
             imUserFriendService.delFriendByTenantId(teacher.getTenantId(), teacher.getUserId());
 
-        }else {
+        }
 
+        if (updateTenant.getTenantId().equals(-1L)) {
             // 平台老师处理流程
             if (ESettlementFrom.TENANT.equals(teacher.getSettlementFrom())) {
                 // 解绑后,结算方式如果是机构,默认调整为老师

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

@@ -143,17 +143,12 @@ public class TenantAlbumMusicServiceImpl extends ServiceImpl<TenantAlbumMusicMap
 
             //是否收藏
             Long id = m.getId();
-            List<MusicFavorite> list = musicFavoriteService.lambdaQuery().eq(MusicFavorite::getMusicSheetId, id).list();
+            List<MusicFavorite> list = musicFavoriteService.lambdaQuery()
+                    .eq(MusicFavorite::getMusicSheetId, id)
+                    .eq(MusicFavorite::getUserId,sysUserId)
+                    .eq(MusicFavorite::getClientType,query.getClientType()).list();
             if (CollectionUtils.isNotEmpty(list)){
-                List<Long> collect = list.stream().map(MusicFavorite::getUserId).collect(Collectors.toList());
-                if (CollectionUtils.isNotEmpty(collect)){
-                    collect.stream().forEach(c->{
-                        if (c.equals(sysUserId) ){
-                            m.setFavorite(true);
-                        }
-                    });
-
-                }
+                m.setFavorite(true);
             }
 
         });

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

@@ -7,16 +7,14 @@ import com.baomidou.mybatisplus.extension.service.additional.query.impl.LambdaQu
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.yonge.cooleshow.auth.api.client.SysUserFeignService;
 import com.yonge.cooleshow.biz.dal.entity.*;
-import com.yonge.cooleshow.biz.dal.enums.ClientEnum;
-import com.yonge.cooleshow.biz.dal.enums.GoodTypeEnum;
-import com.yonge.cooleshow.biz.dal.enums.OrderStatusEnum;
-import com.yonge.cooleshow.biz.dal.enums.SourceTypeEnum;
+import com.yonge.cooleshow.biz.dal.enums.*;
 import com.yonge.cooleshow.biz.dal.mapper.TenantAlbumMapper;
 import com.yonge.cooleshow.biz.dal.service.*;
 import com.yonge.cooleshow.biz.dal.vo.UserOrderDetailVo;
 import com.yonge.cooleshow.biz.dal.wrapper.TenantAlbumWrapper;
 import com.yonge.cooleshow.biz.dal.wrapper.UserPaymentOrderWrapper;
 import com.yonge.cooleshow.common.enums.EActivationCode;
+import com.yonge.cooleshow.common.enums.PostStatusEnum;
 import com.yonge.cooleshow.common.enums.YesOrNoEnum;
 import com.yonge.toolset.base.exception.BizException;
 import com.yonge.toolset.base.util.StringUtil;
@@ -75,6 +73,9 @@ public class TenantAlbumServiceImpl extends ServiceImpl<TenantAlbumMapper, Tenan
     @Autowired
     private MusicSheetService musicSheetService;
 
+    @Autowired
+    private TenantAccountRecordService tenantAccountRecordService;
+
 
     /**
      * 查询详情
@@ -325,6 +326,19 @@ public class TenantAlbumServiceImpl extends ServiceImpl<TenantAlbumMapper, Tenan
                     tenantActivationCodes.add(tenantActivationCode);
                 }
                 tenantActivationCodeService.saveBatch(tenantActivationCodes);
+
+                // 写入机构流水表
+                TenantAccountRecord tenantAccountRecord = TenantAccountRecord.builder()
+                        .tenantId(tenantAlbumPurchase.getTenantId())
+                        .transAmount(userOrderDetailVo.getActualPrice())
+                        .inOrOut(InOrOutEnum.OUT.getCode())
+                        .postStatus(PostStatusEnum.RECORDED.getCode())
+                        .bizType(OrderTypeEnum.TENANT_ALBUM.getCode())
+                        .bizId(userOrderDetailVo.getBizId())
+                        .bizName(userOrderDetailVo.getGoodName())
+                        .orderNo(userOrderDetailVo.getOrderNo())
+                        .build();
+                tenantAccountRecordService.save(tenantAccountRecord);
                 break;
             }
         }

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

@@ -276,8 +276,8 @@ public class TenantInfoServiceImpl extends ServiceImpl<TenantInfoMapper, TenantI
             sysUser.setAvatar(sysConfigService.findConfigValue(SysConfigConstant.TEACHER_AVATAR));
             sysUser.setUserType(SysUserType.ORGANIZATION.getCode());
             sysUser.setUsername(tenantInfo.getUsername());
-            String newPassword = MessageFormat.format("klxjg{0}", tenantInfo.getPhone().substring(7));
-            String password = new BCryptPasswordEncoder().encode(newPassword);
+//            String newPassword = MessageFormat.format("klxjg{0}", tenantInfo.getPhone().substring(7));
+//            String password = new BCryptPasswordEncoder().encode(newPassword);
             //sysUser.setPassword(password);
             sysUserMapper.insert(sysUser);
         }

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

@@ -240,7 +240,8 @@ public class TenantUnbindRecordServiceImpl extends ServiceImpl<TenantUnbindRecor
             }
             teacherDao.update(null, Wrappers.<Teacher>lambdaUpdate()
                     .eq(Teacher::getUserId, unbindRecord.getUserId())
-                    .set(Teacher::getSettlementFrom, ESettlementFrom.TEACHER)
+                    .set(ESettlementFrom.TENANT.equals(teacher.getSettlementFrom()), Teacher::getSettlementFrom,
+                            ESettlementFrom.TEACHER)
                     .set(Teacher::getTenantId, -1L));
         }
 

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

@@ -512,6 +512,7 @@ public class UserOrderServiceImpl extends ServiceImpl<UserOrderDao, UserOrder> i
                         bizInfo.setBizName(userOrderDetailVo.getGoodName());
                         bizInfo.setBizDesc(tenantAlbum.getDescribe());
                         bizInfo.setBizMusicCount(musicCountByIds.getOrDefault(tenantAlbum.getId(),0L).intValue());
+                        userOrderDetailVo.setGoodUrl(tenantAlbum.getCoverImg());
                         bizInfo.setBizValidTime(tenantAlbumContent.getBuyCycle());
                         userOrderDetailVo.setBizInfo(bizInfo);
                     }

+ 4 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/wrapper/TenantAccountRecordWrapper.java

@@ -125,6 +125,10 @@ public class TenantAccountRecordWrapper {
         @ApiModelProperty("支出")
         private BigDecimal transAmountOut = BigDecimal.ZERO;
 
+
+
+        @ApiModelProperty("支出")
+        private BigDecimal amountOut = BigDecimal.ZERO;
     }
 
 

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

@@ -63,7 +63,8 @@
             resultType="com.yonge.cooleshow.biz.dal.wrapper.TenantAccountRecordWrapper$TenantAccountRecordStat">
         SELECT
         sum(if(t.in_or_out_ = 'IN' and t.post_status_ = 'RECORDED',t.trans_amount_,0)) transAmountIn,
-        sum(if(t.in_or_out_ = 'IN' and t.post_status_ = 'WAIT',t.trans_amount_,0)) transAmountOut
+        sum(if(t.in_or_out_ = 'IN' and t.post_status_ = 'WAIT',t.trans_amount_,0)) transAmountOut,
+        sum(if(t.in_or_out_ = 'OUT' and t.post_status_ = 'RECORDED',t.trans_amount_,0)) amountOut
         FROM tenant_account_record t
         <include refid="selectSql"/>
     </select>

+ 11 - 2
cooleshow-user/user-biz/src/main/resources/config/mybatis/TenantAlbumPurchaseMapper.xml

@@ -26,12 +26,21 @@
         <include refid="baseColumns"/>,ta.name_ as tenantAlbumName,ta.cover_img_ as tenantAlbumImg
         FROM tenant_album_purchase t
         LEFT JOIN tenant_album ta on t.tenant_album_id_ = ta.id_
+        left join user_order t2 on t2.order_no_ = t.order_no_
         <where>
-        <if test="param.tenantId != null">
+            <if test="param.tenantId != null">
                 AND t.tenant_id_ = #{param.tenantId}
             </if>
             <if test="param.purchaseStatus != null and param.purchaseStatus.trim() != ''">
-                AND t.purchase_status_ = #{param.purchaseStatus}
+                <if test="param.purchaseStatus == 'WAIT_PAY'">
+                    AND t2.status_ in ( 'WAIT_PAY','PAYING')
+                </if>
+                <if test="param.purchaseStatus == 'PAID'">
+                    AND t2.status_ in ( 'PAID')
+                </if>
+                <if test="param.purchaseStatus == 'CLOSE'">
+                    AND t2.status_ in ( 'CLOSE','FAIL')
+                </if>
             </if>
         </where>
         <choose>

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

@@ -87,6 +87,7 @@ public class StudentController extends BaseController {
         TenantInfo tenantInfo = getTenantInfo();
         query.setTenantId(tenantInfo.getId());
         query.setDelFlag(YesOrNoEnum.NO);
+        query.setLockFlag(UserLockFlag.NORMAL);
         query.setOrderBy("u.username_ asc");
 
         IPage<StudentVo> pages = studentService.selectPage(PageUtil.getPage(query), query);

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

@@ -80,6 +80,7 @@ public class TeacherController extends BaseController {
         TenantInfo tenantInfo = getTenantInfo();
         query.setTenantId(tenantInfo.getId());
         query.setDelFlag(YesOrNoEnum.NO);
+        query.setLockFlag(UserLockFlag.NORMAL);
         query.setOrderBy("u.username_ asc");
 
         IPage<TeacherVo> pages = teacherService.selectPage(PageUtil.getPage(query), query);

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

@@ -275,6 +275,12 @@ public class TenantInfoController extends BaseController {
                 sysUser.setAvatar(sysConfigService.findConfigValue(SysConfigConstant.DEFAULT_HEARD));
             }
 
+            // 更新用户头象
+            com.yonge.cooleshow.biz.dal.entity.SysUser updateSysUser = new com.yonge.cooleshow.biz.dal.entity.SysUser();
+            updateSysUser.setId(user.getId());
+            updateSysUser.setAvatar(sysUser.getAvatar());
+            sysUserMapper.updateById(updateSysUser);
+
             // 更新机构员工头像和昵称,机构信息表中的用户昵称
             tenantStaffService.lambdaUpdate()
                     .eq(TenantStaff::getUserId, user.getId())