liujie
2023-10-26 e030255c23c7ba3e2cbad1036a810d6d72fa864f
cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/system/BallController.java
@@ -14,6 +14,7 @@
import com.dsh.course.feignClient.course.CoursePackageDiscountClient;
import com.dsh.course.feignClient.course.CoursePackagePaymentConfigClient;
import com.dsh.course.feignClient.course.CoursePackageTypeClient;
import com.dsh.course.feignClient.course.model.TCoursePackage;
import com.dsh.course.feignClient.course.model.TCoursePackageType;
import com.dsh.course.feignClient.other.BallClient;
import com.dsh.course.feignClient.other.SiteClient;
@@ -40,10 +41,7 @@
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.util.Base64Utils;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.io.BufferedReader;
@@ -59,6 +57,7 @@
import java.time.LocalTime;
import java.time.format.DateTimeFormatter;
import java.util.*;
import java.util.stream.Collectors;
@Controller
@RequestMapping("/ball")
@@ -174,6 +173,20 @@
        return new ResultUtil<>(0,0,"到店成功",null,null);
    }
    @RequestMapping("/confirm/{id}")
    @ResponseBody
    public ResultUtil confirm(@PathVariable("id") Integer id) {
        System.out.println("============"+id);
        SiteBooking siteBooking = new SiteBooking();
        siteBooking.setId(id);
        siteBooking.setStatus(1);
        iSiteBookingService.updateById(siteBooking);
        return new ResultUtil<>(0,0,"手动支付成功",null,null);
    }
    /**
     * 获取变更列表
     */
@@ -184,9 +197,23 @@
    @ResponseBody
    public List<Game> changelist(BallQueryDto ballQueryDto) {
System.out.println("=======ballQueryDto=========="+ballQueryDto);
        User user = UserExt.getUser();
        ballQueryDto.setType(user.getObjectType());
        ballQueryDto.setId(user.getObjectId());
        return ballClient.list(ballQueryDto);
    }
    @ResponseBody
    @PostMapping("/editCoursePackageState")
    public ResultUtil editCoursePackageState(Integer id, Integer state){
        Game game = new Game();
        game.setId(id);
        game.setState(state);
        ballClient.save(game);
        return ResultUtil.success();
    }
    @RequestMapping("/save")
    @ResponseBody
@@ -202,17 +229,30 @@
            , String zs2, BigDecimal zs2Coin, BigDecimal zs2Cash, String zs2Image, BigDecimal zs2Int, Integer zs2Id,Integer zs2IId
            , String ly, BigDecimal lyCoin, BigDecimal lyCash, String lyImage, BigDecimal lyInt, Integer lyId,Integer lyIId
    ) {
        Game game = new Game();
        game.setRed(red);
        game.setState(0);
        game.setBlue(blue);
        Integer objectType = UserExt.getUser().getObjectType();
        if (objectType ==3){
            TStore byId = storeService.getById(UserExt.getUser().getObjectId());
            System.out.println("=====byId======="+byId);
            game.setProvinceCode(byId.getProvinceCode());
            game.setCityCode(byId.getCityCode());
        }else {
        game.setProvinceCode(province);
        game.setCityCode(city);
        }
        game.setSiteId(site);
        game.setStoreId(store);
        game.setId(id);
@@ -368,7 +408,32 @@
    @RequestMapping("/pre_add")
    public String add(Model model) {
        Integer objectType = UserExt.getUser().getObjectType();
        if (objectType ==3){
            model.addAttribute("is3","true");
            model.addAttribute("storeId",UserExt.getUser().getObjectId());
            TStore byId = storeService.getById(UserExt.getUser().getObjectId());
            System.out.println("=====byId======="+byId);
            model.addAttribute("cityCode",byId.getCityCode());
            model.addAttribute("provinceCode",byId.getProvinceCode());
            model.addAttribute("oId",byId.getOperatorId());
            return PREFIX+"ball_pre_add1.html";
        }
        if (objectType == 2){
            model.addAttribute("is3","true");
            model.addAttribute("oId",UserExt.getUser().getObjectId());
            return PREFIX+"ball_pre_add2.html";
        }
        model.addAttribute("is","${is}");
        return PREFIX+"ball_pre_add.html";
    }
@@ -384,6 +449,81 @@
    System.out.println("---------game------"+game);
        model.addAttribute("game",game);
        if (game.getOperationId() ==0){
            model.addAttribute("opId","平台");
            model.addAttribute("is","平台");
        }else {
            model.addAttribute("opId",game.getOperationId());
        }
        TGameConfig kc = gameConfigService.getOne(new QueryWrapper<TGameConfig>().eq("otherId", id).eq("gameId", 14));
        model.addAttribute("kc",kc);
        TGameConfig sq = gameConfigService.getOne(new QueryWrapper<TGameConfig>().eq("otherId", id).eq("gameId", 16));
        model.addAttribute("sq",sq);
        TGameConfig sm = gameConfigService.getOne(new QueryWrapper<TGameConfig>().eq("otherId", id).eq("gameId", 13));
        model.addAttribute("sm",sm);
        TGameConfig sd = gameConfigService.getOne(new QueryWrapper<TGameConfig>().eq("otherId", id).eq("gameId", 15));
        model.addAttribute("sd",sd);
        TGameConfig fk = gameConfigService.getOne(new QueryWrapper<TGameConfig>().eq("otherId", id).eq("gameId", 1));
        model.addAttribute("fk",fk);
        TGameConfig jx = gameConfigService.getOne(new QueryWrapper<TGameConfig>().eq("otherId", id).eq("gameId", 7));
        model.addAttribute("jx",jx);
        TGameConfig qw = gameConfigService.getOne(new QueryWrapper<TGameConfig>().eq("otherId", id).eq("gameId", 8));
        model.addAttribute("qw",qw);
        TGameConfig zs = gameConfigService.getOne(new QueryWrapper<TGameConfig>().eq("otherId", id).eq("gameId", 10));
        model.addAttribute("zs",zs);
        TGameConfig zs2 = gameConfigService.getOne(new QueryWrapper<TGameConfig>().eq("otherId", id).eq("gameId", 11));
        model.addAttribute("zs2",zs2);
        TGameConfig ly = gameConfigService.getOne(new QueryWrapper<TGameConfig>().eq("otherId", id).eq("gameId", 5));
        model.addAttribute("ly",ly);
        Integer objectType = UserExt.getUser().getObjectType();
        if (objectType ==3){
            model.addAttribute("is3","true");
            model.addAttribute("storeId",UserExt.getUser().getObjectId());
            TStore byId = storeService.getById(UserExt.getUser().getObjectId());
            model.addAttribute("cityCode",byId.getCityCode());
            model.addAttribute("provinceCode",byId.getProvinceCode());
            model.addAttribute("oId",byId.getOperatorId());
            return PREFIX+"ball_pre_edit1.html";
        }
        if (objectType == 2){
            return PREFIX+"ball_pre_edit2.html";
        }
        return PREFIX+"ball_pre_edit.html";
    }
    @RequestMapping("/pre_info/{id}")
    public String pre_info(@PathVariable("id") Integer id,Model model) {
        Game game = ballClient.queryGame(id);
        System.out.println("---------game------"+game);
        model.addAttribute("game",game);
        if (game.getOperationId() ==0){
            model.addAttribute("opId","平台");
            model.addAttribute("is","平台");
        }else {
            model.addAttribute("opId",game.getOperationId());
        }
        TGameConfig kc = gameConfigService.getOne(new QueryWrapper<TGameConfig>().eq("otherId", id).eq("gameId", 14));
        model.addAttribute("kc",kc);
@@ -419,7 +559,7 @@
        return PREFIX+"ball_pre_edit.html";
        return PREFIX+"ball_pre_info.html";
    }
    @Autowired
@@ -463,8 +603,6 @@
        List<OrderDto> timeRanges = new ArrayList<>();
        Site site =  siteClient.listById(book.getSiteId());
        System.out.println("================"+site);
        String appointmentStartTime = site.getAppointmentStartTime();
@@ -476,7 +614,12 @@
        System.out.println("是否超过当前日期"+isAfterCurrentDate);
        String currentTime = appointmentStartTime;
        while (currentTime.compareTo(appointmentEndTime) < 0) {
            String nextTime = getNextTime(currentTime);
            String nextTime = null;
            if("智慧场地".equals(site.getTypeName())){
                nextTime=getNextTimeOne(currentTime);
            }else {
                nextTime= getNextTime(currentTime);
            }
            String timeRange = currentTime + "-" + nextTime;
@@ -503,9 +646,6 @@
            if (strings1.contains(timeRange)){
                orderDto.setState(1);
            }
            timeRanges.add(orderDto);
            currentTime = nextTime;
@@ -535,10 +675,14 @@
        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));
        if(UserExt.getUser().getObjectType()==3){
            list2=storeService.list(new QueryWrapper<TStore>().eq("id", UserExt.getUser().getObjectId()).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);
        model.addAttribute("objType", UserExt.getUser().getObjectType());
        return PREFIX+"yuyue_edit.html";
@@ -760,6 +904,17 @@
    @RequestMapping("/yuyuelist")
    @ResponseBody
    public List<Map<String,Object>> yuyuelist(BookingQuery bookingQuery) {
        Integer objectType = UserExt.getUser().getObjectType();
        if(objectType==2){
            List<Integer> operatorId = storeService.list(new QueryWrapper<TStore>()
                    .eq("operatorId", UserExt.getUser().getObjectId()))
                    .stream().map(TStore::getId).collect(Collectors.toList());
            bookingQuery.setStoreIds(operatorId);
        }
        if(objectType==3){
            bookingQuery.setStoreId(UserExt.getUser().getObjectId());
        }
        List<Map<String,Object>> orders =   ballClient.listorder(bookingQuery);
        System.out.println("=======ballQueryDto=========="+bookingQuery);
@@ -769,9 +924,10 @@
    @RequestMapping("/addjs")
    @ResponseBody
    public void addjs( @RequestBody JsDto jsDto) {
    public ResultUtil addjs( @RequestBody JsDto jsDto) {
        System.out.println("=======jsDto========"+jsDto);
        storeService.insert(jsDto);
        return new ResultUtil(0,0,"保存成功",null,null);
    }
@@ -838,7 +994,13 @@
        String currentTime = appointmentStartTime;
        while (currentTime.compareTo(appointmentEndTime) < 0) {
            String nextTime = getNextTime(currentTime);
            String nextTime = null;
            if("智慧场地".equals(site.getTypeName())){
                nextTime=getNextTimeOne(currentTime);
            }else {
                nextTime= getNextTime(currentTime);
            }
//            String nextTime = getNextTime(currentTime);
            String timeRange = currentTime + "-" + nextTime;
@@ -880,26 +1042,30 @@
        return String.format("%02d:%02d", hour, minute);
//        String[] parts = currentTime.split(":");
//        int hour = Integer.parseInt(parts[0]);
//        int minute = Integer.parseInt(parts[1]);
//
//        if (minute == 45) {
//            hour++;
//            minute = 0;
//        } else if (minute == 0){
//            minute = 15;
//        }else if (minute == 15){
//            minute = 30;
//        }else if (minute == 30){
//            minute = 45;
//        }
//
//        return String.format("%02d:%02d", hour, minute);
    }
    public static String getNextTimeOne(String currentTime) {
        String[] parts = currentTime.split(":");
        int hour = Integer.parseInt(parts[0]);
        int minute = Integer.parseInt(parts[1]);
        if (minute == 45) {
            hour++;
            minute = 0;
        } else if (minute == 0){
            minute = 15;
        }else if (minute == 15){
            minute = 30;
        }else if (minute == 30){
            minute = 45;
        }
        return String.format("%02d:%02d", hour, minute);
    }
    @RequestMapping("/halfName/{id}")
@@ -919,20 +1085,42 @@
        String cityCode = null;
        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 =new ArrayList<>();
            if(objectType==3){
                list2 = storeService.list(new QueryWrapper<TStore>().eq("id", objectId).eq("state", 1));
            }else {
                 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<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);
        model.addAttribute("objectType",objectType);
        return PREFIX+"yuyue_add.html";
    }
@@ -944,10 +1132,16 @@
        siteBooking.setInsertTime(new Date());
        siteBooking.setState(1);
        siteBooking.setStatus(0);
    siteClient.addSiteBooking(siteBooking);
        // 如果是运营商添加的话 根据门店的省市来存储
        if (UserExt.getUser().getObjectType() == 2){
            TStore byId = storeService.getById(siteBooking.getStoreId());
            siteBooking.setProvince(byId.getProvince());
            siteBooking.setProvinceCode(byId.getProvinceCode());
            siteBooking.setCity(byId.getCity());
            siteBooking.setCityCode(byId.getCityCode());
        }
        siteClient.addSiteBooking(siteBooking);
        System.out.println("================="+siteBooking);
        return new ResultUtil<>(null,200,null,null,null);
    }