Bladeren bron

Merge branch 'refs/heads/master' into master-fby

caoliqin 1 week geleden
bovenliggende
commit
514b598c8d

+ 8 - 0
fs-admin/src/main/java/com/fs/course/controller/FsUserCoursePeriodController.java

@@ -132,6 +132,14 @@ public class FsUserCoursePeriodController extends BaseController {
         return toAjax(fsUserCoursePeriodService.deleteFsUserCoursePeriodByIds(periodIds));
     }
 
+    @PreAuthorize("@ss.hasPermi('course:period:dayRemove')")
+    @Log(title = "会员营期课程删除", businessType = BusinessType.DELETE)
+    @DeleteMapping("/day/{ids}")
+    public AjaxResult dayRemove(@PathVariable Long[] ids)
+    {
+        return toAjax(fsUserCoursePeriodDaysService.deleteFsUserCoursePeriodDaysByIds(ids));
+    }
+
     @GetMapping("/getDays")
     public R getDays(FsUserCoursePeriodDays fsUserCoursePeriodDays){
 //        startPage();

+ 11 - 5
fs-service-system/src/main/java/com/fs/company/service/impl/CompanyServiceImpl.java

@@ -4,6 +4,7 @@ import cn.hutool.json.JSONUtil;
 import com.alibaba.fastjson.JSON;
 import com.fs.common.core.domain.R;
 import com.fs.common.utils.DateUtils;
+import com.fs.common.utils.StringUtils;
 import com.fs.company.domain.*;
 import com.fs.company.mapper.*;
 import com.fs.company.param.CompanyConfigParam;
@@ -177,11 +178,16 @@ public class CompanyServiceImpl implements ICompanyService
             salesRole.setStatus("0");
 
             //增加销售角色菜单权限
-            String json = configService.selectConfigByKey("companymenu.config");
-            CompanyMenuConfig config = JSONUtil.toBean(json, CompanyMenuConfig.class);
-            // 注意:此处需要额外处理销售角色的权限,设置为仅"我的"相关权限
-            salesRole.setMenuIds(config.getMenuIds());
-            roleService.insertRole(salesRole);
+            try {
+                String json = configService.selectConfigByKey("companymenu.config");
+                if (StringUtils.isNotEmpty(json)) {
+                    CompanyMenuConfig config = JSONUtil.toBean(json, CompanyMenuConfig.class);
+                    salesRole.setMenuIds(config.getMenuIds());
+                    roleService.insertRole(salesRole);
+                }
+            } catch (Exception e) {
+                logger.error("获取菜单配置失败", e);
+            }
             // 6. 创建管理员用户
             CompanyUser user = new CompanyUser();
             user.setCompanyId(company.getCompanyId());

+ 16 - 2
fs-service-system/src/main/java/com/fs/course/service/impl/FsUserCoursePeriodDaysServiceImpl.java

@@ -12,6 +12,7 @@ import com.fs.course.domain.FsUserCoursePeriodDays;
 import com.fs.course.domain.FsUserCourseVideo;
 import com.fs.course.mapper.FsUserCoursePeriodDaysMapper;
 import com.fs.course.mapper.FsUserCoursePeriodMapper;
+import com.fs.course.mapper.FsUserCourseVideoRedPackageMapper;
 import com.fs.course.param.CompanyRedPacketParam;
 import com.fs.course.param.PeriodCountParam;
 import com.fs.course.service.IFsUserCoursePeriodDaysService;
@@ -26,6 +27,7 @@ import com.fs.store.param.h5.CourseAnalysisParam;
 import lombok.AllArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.BeanUtils;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
@@ -56,6 +58,9 @@ public class FsUserCoursePeriodDaysServiceImpl extends ServiceImpl<FsUserCourseP
     private final FsUserCoursePeriodDaysMapper fsUserCoursePeriodDaysMapper;
     private final IFsUserCourseVideoService fsUserCourseVideoService;
 
+    @Autowired
+    private FsUserCourseVideoRedPackageMapper fsUserCourseVideoRedPackageMapper;
+
     /**
      * 查询营期课程
      *
@@ -115,7 +120,16 @@ public class FsUserCoursePeriodDaysServiceImpl extends ServiceImpl<FsUserCourseP
     @Override
     public int deleteFsUserCoursePeriodDaysByIds(Long[] ids)
     {
-        return baseMapper.deleteFsUserCoursePeriodDaysByIds(ids);
+        int flag = 0;
+        List<FsUserCoursePeriodDays> fsUserCoursePeriodDays = fsUserCoursePeriodDaysMapper.selectBatchIds(Arrays.asList(ids));
+        List<Long> periodDayIds = fsUserCoursePeriodDays.stream().map(FsUserCoursePeriodDays::getId).collect(Collectors.toList());
+        List<Long> videoIds = fsUserCoursePeriodDays.stream().map(FsUserCoursePeriodDays::getVideoId).collect(Collectors.toList());
+        if(!periodDayIds.isEmpty()){
+            flag = fsUserCoursePeriodDaysMapper.updateBatchDelFlag(periodDayIds.toArray(new Long[0]),1);
+            //删除红包记录
+            fsUserCourseVideoRedPackageMapper.updateBatchDelFlag(videoIds.toArray(new Long[0]),1);
+        }
+        return flag;
     }
 
     /**
@@ -133,7 +147,7 @@ public class FsUserCoursePeriodDaysServiceImpl extends ServiceImpl<FsUserCourseP
     @Override
     public R addCourse(FsUserCoursePeriodDays entity) {
         FsUserCoursePeriod period = fsUserCoursePeriodMapper.selectFsUserCoursePeriodById(entity.getPeriodId());
-        List<FsUserCoursePeriodDays> dayList = list(new QueryWrapper<FsUserCoursePeriodDays>().eq("period_id", period.getPeriodId()));
+        List<FsUserCoursePeriodDays> dayList = list(new QueryWrapper<FsUserCoursePeriodDays>().eq("period_id", period.getPeriodId()).eq("del_flag","0"));
         long days;
         if(period.getPeriodType() == 2){
             days = 1;

+ 4 - 0
fs-service-system/src/main/java/com/fs/course/service/impl/FsUserCoursePeriodServiceImpl.java

@@ -12,6 +12,7 @@ import com.fs.course.mapper.FsUserCourseVideoRedPackageMapper;
 import com.fs.course.service.IFsUserCoursePeriodService;
 import com.fs.course.service.IFsUserCourseVideoRedPackageService;
 import com.fs.course.vo.FsUserCoursePeriodVO;
+import org.apache.commons.collections.CollectionUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
@@ -146,6 +147,9 @@ public class FsUserCoursePeriodServiceImpl implements IFsUserCoursePeriodService
         int flag = fsUserCoursePeriodMapper.updateBatchDelFlag(periodIds,1);
         //删除课程
         Set<Long> set = Arrays.asList(periodIds).stream().collect(Collectors.toSet());
+        if (CollectionUtils.isEmpty(set)){
+            return flag;
+        }
         List<FsUserCoursePeriodDays> fsUserCoursePeriodDays = fsUserCoursePeriodDaysMapper.selectCourseVideoList(set);
         List<Long> periodDayIds = fsUserCoursePeriodDays.stream().map(FsUserCoursePeriodDays::getId).collect(Collectors.toList());
         List<Long> videoIds = fsUserCoursePeriodDays.stream().map(FsUserCoursePeriodDays::getVideoId).collect(Collectors.toList());

+ 4 - 0
fs-service-system/src/main/java/com/fs/course/service/impl/FsUserCourseTrainingCampServiceImpl.java

@@ -21,6 +21,7 @@ import com.fs.course.service.IFsUserCourseVideoRedPackageService;
 import com.fs.course.vo.FsUserCourseTrainingCampVO;
 import com.fs.his.vo.OptionsVO;
 import lombok.AllArgsConstructor;
+import org.apache.commons.collections.CollectionUtils;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
@@ -91,6 +92,9 @@ public class FsUserCourseTrainingCampServiceImpl extends ServiceImpl<FsUserCours
         }
         //删除课程
         Set<Long> set = periodIds.stream().collect(Collectors.toSet());
+        if (CollectionUtils.isEmpty(set)){
+            return;
+        }
         List<FsUserCoursePeriodDays> fsUserCoursePeriodDays = fsUserCoursePeriodDaysMapper.selectCourseVideoList(set);
         List<Long> periodDayIds = fsUserCoursePeriodDays.stream().map(FsUserCoursePeriodDays::getId).collect(Collectors.toList());
         List<Long> videoIds = fsUserCoursePeriodDays.stream().map(FsUserCoursePeriodDays::getVideoId).collect(Collectors.toList());

+ 15 - 4
fs-service-system/src/main/java/com/fs/qw/service/impl/CustomerTransferApprovalServiceImpl.java

@@ -17,9 +17,11 @@ import com.fs.qw.service.ICustomerTransferApprovalService;
 import com.fs.qw.vo.TransferCustomDTO;
 import com.fs.store.domain.FsUser;
 import com.fs.store.dto.FsUserTransferParamDTO;
+import com.fs.store.mapper.FsUserCompanyUserMapper;
 import com.fs.store.service.IFsUserService;
 import com.fs.store.service.cache.IFsUserCacheService;
 import com.hc.openapi.tool.util.StringUtils;
+import org.apache.commons.collections4.CollectionUtils;
 import org.apache.http.util.Asserts;
 import org.springframework.aop.framework.AopContext;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -53,6 +55,8 @@ public class CustomerTransferApprovalServiceImpl implements ICustomerTransferApp
     @Autowired
     private IFsUserService fsUserService;
 
+    @Autowired
+    private FsUserCompanyUserMapper fsUserCompanyUserMapper;
     /**
      * 查询客户转移审批
      *
@@ -239,9 +243,6 @@ public class CustomerTransferApprovalServiceImpl implements ICustomerTransferApp
         item.setProcessedAt(new Date());
 //        审批状态: 0=待审批, 1=审批通过, 2=审批驳回, 3=已撤销
         // 如果审批通过 进行转移
-        List<Long> customerIds1 = JSON.parseArray(item.getCustomerIds(), Long.class);
-        List<TransferCustomDTO> customerList = getCustomerList(customerIds1, item);
-        item.setTransferBefore(JSON.toJSONString(customerList));
 
         if(ObjectUtil.equal(1,item.getApprovalStatus())){
             FsUserTransferParamDTO transferParam = new FsUserTransferParamDTO();
@@ -253,9 +254,19 @@ public class CustomerTransferApprovalServiceImpl implements ICustomerTransferApp
             transferParam.setUserIds(customerIds);
             transferParam.setSourceCompanyUserId(item.getOriginalUserId());
 
-            fsUserService.transfer(transferParam);
+            if(CollectionUtils.isNotEmpty(transferParam.getUserIds())) {
+                fsUserService.transfer(transferParam);
+            }
+
+            if(CollectionUtils.isNotEmpty(transferParam.getUserIds())) {
+                fsUserCompanyUserMapper.transfer(transferParam);
+            }
         }
 
+        List<Long> customerIds = JSON.parseArray(item.getCustomerIds(), Long.class);
+        List<TransferCustomDTO> customerList = getCustomerList(customerIds, item);
+        item.setTransferBefore(JSON.toJSONString(customerList));
+
         return customerTransferApprovalMapper.updateCustomerTransferApproval(item);
     }
 

+ 4 - 0
fs-service-system/src/main/java/com/fs/store/mapper/FsUserCompanyUserMapper.java

@@ -3,8 +3,10 @@ package com.fs.store.mapper;
 import java.util.List;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.fs.store.domain.FsUserCompanyUser;
+import com.fs.store.dto.FsUserTransferParamDTO;
 import org.apache.ibatis.annotations.Param;
 import org.apache.ibatis.annotations.Select;
+import org.apache.ibatis.annotations.Update;
 
 /**
  * 微信用户和销售关系Mapper接口
@@ -75,4 +77,6 @@ public interface FsUserCompanyUserMapper extends BaseMapper<FsUserCompanyUser>{
      * @return
      */
     List<FsUserCompanyUser> selectRepeatCompanyUserName(@Param("userIds") List<Long> userIds);
+
+    void transfer(@Param("param") FsUserTransferParamDTO transferParam);
 }

+ 11 - 0
fs-service-system/src/main/resources/mapper/store/FsUserCompanyUserMapper.xml

@@ -59,6 +59,17 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         </trim>
         where id = #{id}
     </update>
+    <update id="transfer">
+        update fs_user_company_user set company_user_id=#{targetCompanyUserId}
+        <where>
+            <if test="param.userIds != null and param.userIds.size() > 0">
+                user_id in
+                <foreach collection="param.userIds" item="item" separator="," open="(" close=")">
+                    #{item}
+                </foreach>
+            </if>
+        </where>
+    </update>
 
     <delete id="deleteFsUserCompanyUserById" parameterType="Long">
         delete from fs_user_company_user where id = #{id}