44323
2023-11-01 4ee77a0ee732b1d760b08d986ab308dc8d89f6be
cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCoursePackageController.java
@@ -3,6 +3,7 @@
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.dsh.course.feignClient.account.CityManagerClient;
@@ -11,14 +12,13 @@
import com.dsh.course.feignClient.account.model.Coach;
import com.dsh.course.feignClient.course.*;
import com.dsh.course.feignClient.course.model.*;
import com.dsh.course.feignClient.other.model.Site;
import com.dsh.guns.config.UserExt;
import com.dsh.guns.core.base.controller.BaseController;
import com.dsh.guns.core.util.ToolUtil;
import com.dsh.guns.modular.system.model.TSite;
import com.dsh.guns.modular.system.model.TStore;
import com.dsh.guns.modular.system.service.ICoursePackageService;
import com.dsh.guns.modular.system.service.IStoreService;
import com.dsh.guns.modular.system.service.ITSiteService;
import com.dsh.guns.modular.system.model.*;
import com.dsh.guns.modular.system.model.dto.SelectDto;
import com.dsh.guns.modular.system.service.*;
import com.dsh.guns.modular.system.util.ResultUtil;
import io.swagger.models.auth.In;
import org.aspectj.weaver.ast.Var;
@@ -70,7 +70,10 @@
    @Resource
    private CoursePackageClient coursePackageClient;
    @Autowired
    private TOperatorService tOperatorService;
    @Autowired
    private TOperatorCityService tOperatorCityService;
    /**
@@ -91,8 +94,8 @@
     */
    @ResponseBody
    @RequestMapping("/getCoursePackageByType")
    public List<TCoursePackage> getCoursePackageByType(Integer storeId){
        return coursePackageClient.getCoursePackageByType(storeId);
    public List<TCoursePackage> getCoursePackageByType(Integer storeId,Integer typeId){
        return coursePackageClient.getCoursePackageByType(typeId,storeId);
    }
    /**
     * 跳转到列表页
@@ -108,7 +111,9 @@
        String cityCode = null;
        if(objectType == 2){//城市管理员
            CityManager cityManager = cityManagerClient.queryCityManagerById(objectId);
            cityCode = cityManager.getCityCode();
            if (cityManager!=null){
                cityCode = cityManager.getCityCode();
            }
        }
        List<Map<String, Object>> list = storeService.queryProvince(cityCode);
        model.addAttribute("province", list);
@@ -122,34 +127,50 @@
     * @param model
     * @return
     */
    @Autowired
    private ICityService cityService;
    @GetMapping("/openAddCoursePackage")
    public String openAddCoursePackage(Model model,Integer type){
        Integer objectType = UserExt.getUser().getObjectType();
        Integer objectId = UserExt.getUser().getObjectId();
        List<TCoursePackageType> tCoursePackageTypes = coursePackageTypeClient.queryAllCoursePackageType();
        model.addAttribute("coursePackageType", tCoursePackageTypes);
        String cityCode = null;
        String cityCode = "";
        if(objectType == 2){//城市管理员
            CityManager cityManager = cityManagerClient.queryCityManagerById(objectId);
            cityCode = cityManager.getCityCode();
            // 获取到这个运营商下面的所有门店
            List<TStore> operatorId = storeService.list(new QueryWrapper<TStore>().eq("operatorId",objectId));
            model.addAttribute("store", operatorId);
            List<Coach> coach = coachClient.queryCoachByOperatorId(objectId);
            model.addAttribute("coach", coach);
            // 如果该运营商下面没有门店
            if (operatorId.size()==0){
                List<TStore> o = new ArrayList<>();
                List<TSite> tSites = new ArrayList<>();
                model.addAttribute("store", o);
                model.addAttribute("site", tSites);
            }else{
                List<TSite> storeId = siteService.list(new QueryWrapper<TSite>()
                        .eq("storeId", operatorId.get(0).getId()));
                model.addAttribute("site", storeId);
            }
        }else{
            List<Map<String, Object>> list = storeService.queryProvince(cityCode);
            model.addAttribute("province", list);
            Object code = list.get(0).get("code");
            List<Map<String, Object>> list1 = storeService.queryCity(code.toString(), cityCode);
            model.addAttribute("city", list1);
            String code1 = list1.get(0).get("code").toString();
            List<TStore> list2 = storeService.list(new QueryWrapper<TStore>().eq("cityCode", code1).eq("state", 1));
            model.addAttribute("store", list2);
            TStore store = list2.get(0);
            List<TSite> list3 = siteService.list(new QueryWrapper<TSite>().eq("storeId", store.getId()).eq("state", 1));
            model.addAttribute("site", list3);
            List<Coach> coaches = coachClient.queryCoachByCity(code1);
            model.addAttribute("coach", coaches);
            System.out.println("========type========"+type);
        }
        List<Map<String, Object>> list = storeService.queryProvince(cityCode);
        model.addAttribute("province", list);
        Object code = list.get(0).get("code");
        List<Map<String, Object>> list1 = storeService.queryCity(code.toString(), cityCode);
        model.addAttribute("city", list1);
        String code1 = list1.get(0).get("code").toString();
        List<TStore> list2 = storeService.list(new QueryWrapper<TStore>().eq("cityCode", code1).eq("state", 1));
        model.addAttribute("store", list2);
        TStore store = list2.get(0);
        List<TSite> list3 = siteService.list(new QueryWrapper<TSite>().eq("storeId", store.getId()).eq("state", 1));
        model.addAttribute("site", list3);
        List<Coach> coaches = coachClient.queryCoachByCity(code1);
        model.addAttribute("coach", coaches);
        model.addAttribute("objectType",objectType);
        model.addAttribute("type",type);
        System.out.println("========type========"+type);
//        if (type ==1){
//            return PREFIX + "coursePackage_edit.html";
//        }
@@ -168,6 +189,9 @@
        TCoursePackage tCoursePackage = coursePackageService.queryById(id);
        model.addAttribute("item", tCoursePackage);
        model.addAttribute("type", tCoursePackage.getType());
        Integer objectType = UserExt.getUser().getObjectType();
        model.addAttribute("objectType",objectType);
        String classStartTime = tCoursePackage.getClassStartTime();
        String classEndTime = tCoursePackage.getClassEndTime();
@@ -417,7 +441,7 @@
    }
    /**
     * 跳转到优惠卷选择表页
     * 跳转到优惠券选择表页
     * @param model
     * @param id
     * @return
@@ -470,7 +494,39 @@
        model.addAttribute("times", strings);
        model.addAttribute("counts", counts);
        return PREFIX + "classRecord.html";
    }
    /**
     * 假期跳转到上课记录列表页
     * @param model
     * @param id
     * @return
     */
    @GetMapping("/openClassRecord1")
    public String openClassRecord1(Model model, Integer id){
        TCoursePackage tCoursePackage = coursePackageClient.queryById(id);
        String[] start = tCoursePackage.getClassStartTime().split(",");
        String[] end = tCoursePackage.getClassEndTime().split(",");
        Integer counts = packagePaymentClient.queryByClassId(id);
        List<String> strings = new ArrayList<>();
        for (int i = 0; i <start.length ; i++) {
            String outTime = start[i] +"-" +end[0];
            strings.add(outTime);
        }
        TStore store = storeService.getById(tCoursePackage.getStoreId());
        Coach coach = coachClient.queryCoachById(tCoursePackage.getCoachId());
        model.addAttribute("item", tCoursePackage);
        model.addAttribute("store", store);
        model.addAttribute("coach", coach);
        model.addAttribute("times", strings);
        model.addAttribute("counts", counts);
        return PREFIX + "classRecord2.html";
    }
@@ -514,6 +570,16 @@
    }
    @GetMapping("/queryProvince")
    @ResponseBody
    public List<Map<String, Object>> queryProvince(){
        List<Map<String, Object>> list = storeService.queryProvince(null);
        return list;
    }
    /**
     * 跳转到审核详情页
     * @param model
@@ -524,6 +590,11 @@
    public String showExamineCoursePackageDetails(Model model, Integer id){
        TCoursePackage tCoursePackage = coursePackageService.queryById(id);
        model.addAttribute("item", tCoursePackage);
        System.out.println("============"+ tCoursePackage.getAuditStatus());
            model.addAttribute("auditStatus", tCoursePackage.getAuditStatus());
        model.addAttribute("authRemark", tCoursePackage.getAuthRemark());
        model.addAttribute("classTime", tCoursePackage.getClassStartTime() + ":00 - " + tCoursePackage.getClassEndTime() + ":00");
        String[] split = tCoursePackage.getClassWeeks().split(";");
        List<String> list5 = Arrays.asList("周一", "周二", "周三", "周四", "周五", "周六", "周日");
@@ -555,11 +626,13 @@
        List<Coach> coaches = coachClient.queryCoachByCity(cityCode);
        model.addAttribute("coach", coaches);
        List<CoursePackagePaymentConfig> list4 = coursePackagePaymentConfigClient.queryCoursePackagePaymentConfigList(id);
        if(list4.size()!=0){
            CoursePackagePaymentConfig coursePackagePaymentConfig = list4.get(0);
            model.addAttribute("cashPayment", coursePackagePaymentConfig.getCashPayment() == 0 ? false : true);
            model.addAttribute("playPaiCoin", coursePackagePaymentConfig.getPlayPaiCoin() == 0 ? false : true);}
        model.addAttribute("coursePackagePaymentConfig", list4.remove(0));
        model.addAttribute("coursePackagePaymentConfigs", list4);
        CoursePackagePaymentConfig coursePackagePaymentConfig = list4.get(0);
        model.addAttribute("cashPayment", coursePackagePaymentConfig.getCashPayment() == 0 ? false : true);
        model.addAttribute("playPaiCoin", coursePackagePaymentConfig.getPlayPaiCoin() == 0 ? false : true);
        return PREFIX + "examineCoursePackage_info.html";
    }
@@ -574,6 +647,7 @@
    @ResponseBody
    @PostMapping("/queryCity")
    public List<Map<String, Object>> queryCity(String code){
        Integer objectType = UserExt.getUser().getObjectType();
        Integer objectId = UserExt.getUser().getObjectId();
        String cityCode = null;
@@ -581,9 +655,42 @@
            CityManager cityManager = cityManagerClient.queryCityManagerById(objectId);
            cityCode = cityManager.getCityCode();
        }
        System.out.println("======="+storeService.queryCity(code, cityCode));
        return storeService.queryCity(code, cityCode);
    }
    @ResponseBody
    @PostMapping("/queryCity1/{code}")
    public ResultUtil queryCity1(@PathVariable("code") String code){
        Integer objectType = UserExt.getUser().getObjectType();
        Integer objectId = UserExt.getUser().getObjectId();
        String cityCode = null;
//        if(objectType == 2){//城市管理员
//            CityManager cityManager = cityManagerClient.queryCityManagerById(objectId);
//            cityCode = cityManager.getCityCode();
//        }
        System.out.println("======="+storeService.queryCity(code, cityCode));
//        return storeService.queryCity(code, cityCode);
        return new ResultUtil(0,null,null,storeService.queryCity(code, cityCode),null);
    }
    @ResponseBody
    @PostMapping("/queryCity3")
    public ResultUtil queryCity3(){
        System.out.println("======="+storeService.queryCity1());
//        return storeService.queryCity(code, cityCode);
        return new ResultUtil(0,null,null,storeService.queryCity1(),null);
    }
    @ResponseBody
    @PostMapping("/queryCity1/")
    public ResultUtil queryCity2(){
        return new ResultUtil(0,null,null,null,null);
    }
    /**
     * 根据城市code获取门店
@@ -594,8 +701,83 @@
    @PostMapping("/queryStore")
    public List<TStore> queryStore(String cityCode){
        List<TStore> list = storeService.list(new QueryWrapper<TStore>().eq("cityCode", cityCode).eq("state", 1));
        System.out.println("====list="+list);
        return list;
    }
    @ResponseBody
    @PostMapping("/queryStore1/{cityCode}")
    public ResultUtil queryStore1(@PathVariable("cityCode") String cityCode){
        List<TStore> list = storeService.list(new QueryWrapper<TStore>().select("id","name").eq("cityCode", cityCode).eq("state", 1));
//        Map<String,Integer> map = new LinkedHashMap<>();
        List<SelectDto>  selectDtos = new ArrayList<>();
        Map<String,Integer> map = new HashMap<>();
//        for (TStore store : list) {
//            SelectDto selectDto = new SelectDto();
//            selectDto.setId(Long.valueOf(store.getId()));
//            selectDto.setValue(store.getName());
//               selectDtos.add(selectDto);
//
//        }
//        map.put("options",selectDtos);
        return new ResultUtil(0,0,null,list,null);
    }
    @ResponseBody
    @PostMapping("/queryStore3")
    public ResultUtil queryStore3(){
        List<TStore> list = storeService.list(new QueryWrapper<TStore>().select("id","name").eq("state", 1));
//        Map<String,Integer> map = new LinkedHashMap<>();
        List<SelectDto>  selectDtos = new ArrayList<>();
        Map<String,Integer> map = new HashMap<>();
//        for (TStore store : list) {
//            SelectDto selectDto = new SelectDto();
//            selectDto.setId(Long.valueOf(store.getId()));
//            selectDto.setValue(store.getName());
//               selectDtos.add(selectDto);
//
//        }
//        map.put("options",selectDtos);
        return new ResultUtil(0,0,null,list,null);
    }
    @ResponseBody
    @PostMapping("/queryStore1/")
    public ResultUtil queryStore2(){
//        List<TStore> list = storeService.list(new QueryWrapper<TStore>().select("id","name").eq("cityCode", cityCode).eq("state", 1));
////        Map<String,Integer> map = new LinkedHashMap<>();
//        List<SelectDto>  selectDtos = new ArrayList<>();
//        Map<String,Integer> map = new HashMap<>();
////        for (TStore store : list) {
//            SelectDto selectDto = new SelectDto();
//            selectDto.setId(Long.valueOf(store.getId()));
//            selectDto.setValue(store.getName());
//               selectDtos.add(selectDto);
//
//        }
//        map.put("options",selectDtos);
        return new ResultUtil(0,0,null,null,null);
    }
    /**
     * 根据门店id获取场地
     * @param storeId
     * @return
     */
    @ResponseBody
    @PostMapping("/querySite/{id}")
    public List<TSite> querySite(@PathVariable("id") Integer storeId){
        System.out.println("==storeId==="+storeId);
        List<TSite> list = siteService.list(new QueryWrapper<TSite>().select("id","name").eq("storeId", storeId).eq("state", 1));
        return list;
    }
    /**
     * 根据门店id获取场地
@@ -604,11 +786,25 @@
     */
    @ResponseBody
    @PostMapping("/querySite")
    public List<TSite> querySite(Integer storeId){
        List<TSite> list = siteService.list(new QueryWrapper<TSite>().eq("storeId", storeId).eq("state", 1));
    public List<TSite> querySite4(Integer storeId){
        System.out.println("==storeId==="+storeId);
        List<TSite> list = siteService.list(new QueryWrapper<TSite>().select("id","name").eq("storeId", storeId).eq("state", 1));
        return list;
    }
//    @ResponseBody
//    @PostMapping("/querySite")
//    public List<TSite> querySite2(){
//        return null;
//    }
    @ResponseBody
    @PostMapping("/querySite/")
    public ResultUtil querySite1(){
         return new ResultUtil(0,0,null,null,null);
    }
    /**
     * 获取城市教练
     * @param cityCode
@@ -666,6 +862,7 @@
        Date startDate = null;
        Date endDate =null ;
        String holitime = coursePackage.getHolitime();
        if (holitime!=null&&holitime!="") {
            String[] dateParts = holitime.split(" - ");
@@ -692,8 +889,9 @@
            String jsonString = jsonArray.getString(i);
            String[] split = jsonString.split(" - ");
            first.add(split[0]);
            second.add(split[1]);
            if (split.length>1) {
                second.add(split[1]);
            }
        }
        String firstString = String.join(",",first);
        String secondString = String.join(",",second);
@@ -712,6 +910,22 @@
        coursePackage.setStatus(1);
        coursePackage.setState(1);
        coursePackage.setInsertTime(new Date());
        Integer objectType = UserExt.getUser().getObjectType();
        Integer objectId = UserExt.getUser().getObjectId();
        if (objectType==2){
            Integer storeId = coursePackage.getStoreId();
            TStore store = storeService.getOne(new QueryWrapper<TStore>().eq("id", storeId));
            coursePackage.setProvince(store.getProvince());
            coursePackage.setProvinceCode(store.getProvinceCode());
            coursePackage.setCity(store.getCity());
            coursePackage.setCityCode(store.getCityCode());
        }
        // 详情多图片
//        String substring = coursePackage.getDetailDrawing().substring(0, coursePackage.getDetailDrawing().length() - 1);
//        coursePackage.setDetailDrawing(substring);
        coursePackageService.addCoursePackage(coursePackage, coursePackagePaymentConfig);
        return ResultUtil.success();
    }
@@ -739,8 +953,10 @@
            String jsonString = jsonArray.getString(i);
            String[] split = jsonString.split("-");
            System.out.println("============"+split);
            if (split.length>1){
            first.add(split[0]);
            second.add(split[1]);
            second.add(split[1]);}
        }
        String firstString = String.join(",",first);
@@ -775,6 +991,16 @@
        return ResultUtil.success();
    }
    @ResponseBody
    @PostMapping("/editCoursePackageState1")
    public ResultUtil editCoursePackageState1(Integer id, Integer state){
        TCoursePackage coursePackage = new TCoursePackage();
        coursePackage.setId(id);
        coursePackage.setStatus(state);
        coursePackageService.editCoursePackageState(coursePackage);
        return ResultUtil.success();
    }
    /**
     * 编辑课包折扣
@@ -876,7 +1102,7 @@
     */
    @ResponseBody
    @PostMapping("/afterClassExercises")
    public ResultUtil afterClassExercises(Long id, Integer courseId, Integer integral){
    public ResultUtil afterClassExercises(Long id, Integer courseId, Integer integral,Integer packId){
        return coursePackageService.afterClassExercises(id, courseId, integral);
    }
@@ -903,7 +1129,7 @@
     * @return
     */
    @ResponseBody
    @PostMapping("/queryWalkInStudentList")
    @PostMapping("/queryWalkInStudentListqueryCoursePackageLists")
    public Object queryWalkInStudentList(Long coursePackageSchedulingId, String userName, String studentName){
        Page<Map<String, Object>> page = coursePackageService.queryWalkInStudentList(coursePackageSchedulingId, userName, studentName);
        return super.packForBT(page);
@@ -944,7 +1170,7 @@
    @ResponseBody
    @PostMapping("/makeUpMissedLessons")
    public ResultUtil makeUpMissedLessons(Long id){
        System.out.println("==========coursePackagePaymentId======"+id);
        System.out.println("==========coursePackage补课PaymentId======"+id);
        return coursePackageService.makeUpMissedLessons(id);
    }