瀏覽代碼

小程序生成链接代码提交2

yjwang 1 天之前
父節點
當前提交
d30f507fc9
共有 1 個文件被更改,包括 71 次插入17 次删除
  1. 71 17
      fs-qw-task/src/main/java/com/fs/app/controller/CommonController.java

+ 71 - 17
fs-qw-task/src/main/java/com/fs/app/controller/CommonController.java

@@ -2,7 +2,7 @@ package com.fs.app.controller;
 
 
 import cn.hutool.core.date.DateUtil;
-import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.alibaba.fastjson.JSONObject;
 import com.fs.app.taskService.*;
 import com.alibaba.fastjson.JSON;
 import com.fs.app.taskService.QwExternalContactRatingService;
@@ -12,29 +12,23 @@ import com.fs.app.taskService.SopWxLogsService;
 import com.fs.common.core.domain.R;
 import com.fs.common.core.domain.ResponseResult;
 import com.fs.common.core.redis.RedisCache;
-import com.fs.common.exception.ServiceException;
 import com.fs.common.utils.StringUtils;
-import com.fs.company.domain.Company;
-import com.fs.company.domain.CompanyTrafficRecord;
-import com.fs.company.domain.CompanyTrafficRecordLog;
+import com.fs.company.domain.CompanyUser;
 import com.fs.company.mapper.CompanyTrafficRecordLogMapper;
 import com.fs.company.mapper.CompanyTrafficRecordMapper;
+import com.fs.company.mapper.CompanyUserMapper;
 import com.fs.company.service.ICompanyService;
 import com.fs.company.service.ICompanyTrafficRecordLogService;
 import com.fs.company.service.ICompanyTrafficRecordService;
 import com.fs.company.vo.RedPacketMoneyVO;
+import com.fs.course.config.CourseConfig;
 import com.fs.course.domain.FsCourseTrafficLog;
 import com.fs.course.domain.FsCourseWatchLog;
-import com.fs.course.mapper.FsCourseTrafficLogMapper;
-import com.fs.course.mapper.FsCompanyTrafficInfoVoMapper;
+import com.fs.course.domain.FsUserCoursePeriodDays;
+import com.fs.course.mapper.*;
 import com.fs.course.mapper.FsCourseRedPacketLogMapper;
-import com.fs.company.service.ICompanyService;
-import com.fs.company.vo.RedPacketMoneyVO;
-import com.fs.course.mapper.FsCourseRedPacketLogMapper;
-import com.fs.course.mapper.FsCourseWatchLogMapper;
 import com.fs.course.param.newfs.FsUserCourseAddCompanyUserParam;
 import com.fs.course.service.*;
-import com.fs.course.vo.FsCompanyTrafficInfoVo;
 import com.fs.course.vo.FsUserCourseVideoQVO;
 import com.fs.his.domain.FsUser;
 import com.fs.his.service.IFsInquiryOrderService;
@@ -44,12 +38,10 @@ import com.fs.hisStore.config.MedicalMallConfig;
 import com.fs.hisStore.domain.FsStoreOrderScrm;
 import com.fs.hisStore.service.impl.FsStoreOrderScrmServiceImpl;
 import com.fs.qw.domain.QwCompany;
-import com.fs.qw.domain.QwExternalContact;
 import com.fs.qw.mapper.QwExternalContactMapper;
 import com.fs.qw.service.IQwCompanyService;
 import com.fs.qw.service.IQwExternalContactService;
 import com.fs.qw.service.IQwMaterialService;
-import com.fs.qwApi.domain.QwExternalContactResult;
 import com.fs.qwApi.service.QwApiService;
 import com.fs.sop.mapper.QwSopLogsMapper;
 import com.fs.sop.mapper.QwSopMapper;
@@ -64,12 +56,9 @@ import io.swagger.annotations.ApiOperation;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.ibatis.annotations.Param;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.transaction.annotation.Transactional;
 import org.springframework.web.bind.annotation.*;
-
 import java.time.LocalDate;
 import java.time.LocalDateTime;
-import java.time.LocalTime;
 import java.time.format.DateTimeFormatter;
 import java.util.*;
 import java.util.stream.Collectors;
@@ -184,6 +173,15 @@ public class CommonController {
     @Autowired
     private FsCompanyTrafficInfoVoMapper fsCompanyTrafficInfoVoMapper;
 
+    @Autowired
+    private FsUserCoursePeriodDaysMapper fsUserCoursePeriodDaysMapper;
+
+    @Autowired
+    private IFsCourseLinkService fsCourseLinkService;
+
+    @Autowired
+    CompanyUserMapper companyUserMapper;
+
     /**
      * 获取跳转微信小程序的链接地址
      */
@@ -478,4 +476,60 @@ public class CommonController {
         fsStoreOrderScrmService.pushOrderAddressToErp(storeOrderScrm);
         return null;
     }
+
+    /**
+     * 生成销售看课链接
+     * **/
+    @GetMapping("/generateSalesViewClassLink")
+    public void generateSalesViewClassLink(){
+        //获取执行中的营期信息和营期课程
+        List<FsUserCoursePeriodDays> periodDaysList = fsUserCoursePeriodDaysMapper.getExecuteInformation();
+        if(!periodDaysList.isEmpty()){
+            //提取销售公司ID
+            Set<String> companyIds = periodDaysList.stream()
+                    .map(FsUserCoursePeriodDays::getCompanyId)
+                    .filter(Objects::nonNull)
+                    .flatMap(ids -> Arrays.stream(ids.split(",")))  // 拆分逗号分隔的字符串
+                    .map(String::trim)  // 去除空格
+                    .filter(s -> !s.isEmpty())  // 过滤空字符串
+                    .collect(Collectors.toSet());
+
+            //获取销售公司以及对应员工信息
+            List<CompanyUser> companyUserList = companyUserMapper.getPeroidInformation(companyIds);
+            if(!companyUserList.isEmpty()){
+                //获取appid
+                String json = configService.selectConfigByKey("course.config");
+                CourseConfig config = JSON.parseObject(json, CourseConfig.class);
+                Map<String,List<CompanyUser>> companyUserMap = companyUserList.stream().collect(Collectors.groupingBy(c->String.valueOf(c.getCompanyId())));
+                periodDaysList.forEach(p->{
+                    String[] companyIdList= p.getCompanyId().split(",");
+                    for (String companyId: companyIdList){
+                        if(companyUserMap.containsKey(companyId)){
+                            List<CompanyUser> userList = companyUserMap.get(companyId);
+                            userList.forEach(u->{
+                                //组装请求数据
+                                JSONObject jsonObject= new JSONObject();
+                                jsonObject.put("id",p.getId());
+                                jsonObject.put("projectCode","YJB");
+                                jsonObject.put("videoId",p.getVideoId());
+                                jsonObject.put("periodId",p.getPeriodId());
+                                jsonObject.put("courseId",p.getCourseId());
+                                jsonObject.put("projectId",p.getProjectId());
+                                jsonObject.put("companyId",u.getCompanyId());
+                                jsonObject.put("companyUserId",u.getUserId());
+                                System.out.println("打印对应生成链接信息-----------------》:"+jsonObject.toJSONString());
+                                //生成看课链接
+                            fsCourseLinkService.getGotoWxAppLink("/pages_course/videovip?course="+jsonObject.toJSONString(),"wx4d99d03d9a61b6ab");
+                                try {
+                                    Thread.sleep(300);
+                                } catch (InterruptedException e) {
+                                    throw new RuntimeException(e);
+                                }
+                            });
+                        }
+                    }
+                });
+            }
+        }
+    }
 }