From ee9cb0da4a43bcf523ebb157678f64a2895fba1a Mon Sep 17 00:00:00 2001
From: nickchange <126672920+nickchange@users.noreply.github.com>
Date: 星期二, 10 十月 2023 15:30:38 +0800
Subject: [PATCH] 10.10

---
 cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/system/BallController.java |  856 ++++++++++++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 820 insertions(+), 36 deletions(-)

diff --git a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/system/BallController.java b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/system/BallController.java
index 52ce056..6c7ba02 100644
--- a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/system/BallController.java
+++ b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/system/BallController.java
@@ -4,6 +4,8 @@
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.dsh.course.dto.JsDto;
+import com.dsh.course.dto.StudentQeryDto;
 import com.dsh.course.feignClient.account.CityManagerClient;
 import com.dsh.course.feignClient.account.CoachClient;
 import com.dsh.course.feignClient.account.model.CityManager;
@@ -14,15 +16,14 @@
 import com.dsh.course.feignClient.course.CoursePackageTypeClient;
 import com.dsh.course.feignClient.course.model.TCoursePackageType;
 import com.dsh.course.feignClient.other.BallClient;
+import com.dsh.course.feignClient.other.SiteClient;
+import com.dsh.course.feignClient.other.model.Site;
+import com.dsh.course.service.TGameConfigService;
 import com.dsh.guns.config.UserExt;
 import com.dsh.guns.core.base.controller.BaseController;
 import com.dsh.guns.modular.system.model.*;
-import com.dsh.guns.modular.system.model.dto.BallQueryDto;
-import com.dsh.guns.modular.system.model.dto.ConsumeQuery;
-import com.dsh.guns.modular.system.service.ICityService;
-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.dto.*;
+import com.dsh.guns.modular.system.service.*;
 import com.dsh.guns.modular.system.util.HttpRequestUtil;
 import com.dsh.guns.modular.system.util.ResultUtil;
 import com.google.common.base.Ascii;
@@ -31,6 +32,7 @@
 import com.sun.org.apache.xerces.internal.impl.io.ASCIIReader;
 import io.netty.util.AsciiString;
 import io.rong.util.HttpUtil;
+import io.swagger.models.auth.In;
 import org.apache.commons.lang.StringEscapeUtils;
 import org.apache.logging.log4j.util.Base64Util;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -47,9 +49,15 @@
 import java.io.BufferedReader;
 import java.io.InputStreamReader;
 import java.io.OutputStream;
+import java.math.BigDecimal;
 import java.net.HttpURLConnection;
 import java.net.URL;
 import java.nio.charset.StandardCharsets;
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
+import java.time.LocalDate;
+import java.time.LocalTime;
+import java.time.format.DateTimeFormatter;
 import java.util.*;
 
 @Controller
@@ -99,6 +107,72 @@
         return PREFIX+"ball.html";
     }
 
+    //入园方式
+    @RequestMapping("/joinmethod/{id}")
+    public String joinmethod(Model model,@PathVariable("id") Integer id) {
+
+
+        model.addAttribute("id",id);
+
+        return PREFIX+"join.html";
+    }
+
+
+    @RequestMapping("/selectJoin")
+    @ResponseBody
+    public ResultUtil join(@RequestBody MethodDto method) {
+
+        System.out.println("============"+method);
+        SiteBooking siteBooking = new SiteBooking();
+        siteBooking.setStatus(2);
+        siteBooking.setId(method.getId());
+        siteBooking.setGoType(method.getMethod());
+        iSiteBookingService.updateById(siteBooking);
+
+        return new ResultUtil<>(0,0,"到店成功",null,null);
+    }
+
+
+
+    @RequestMapping(value = "/yunying")
+    @ResponseBody
+    public ResultUtil getUserSlect() {
+
+
+
+        List<SelectDto>  selectDtos =  storeService.getSelect();
+        Map<String,List<SelectDto>> map = new HashMap<>();
+        map.put("options",selectDtos);
+
+        System.out.println("=======selectDtos====="+selectDtos);
+        return new ResultUtil(0,0,"编辑成功",map,"");
+    }
+
+    //取消凭证页面
+    @RequestMapping("/tocancel/{id}")
+    public String tocancel(Model model,@PathVariable("id") Integer id) {
+
+        model.addAttribute("id",id);
+
+        return PREFIX+"cancel.html";
+    }
+
+
+    @RequestMapping("/cancel")
+    @ResponseBody
+    public ResultUtil cancel(Integer id,String voucher,String textarea) {
+
+        System.out.println("============"+id);
+        SiteBooking siteBooking = new SiteBooking();
+        siteBooking.setId(id);
+        siteBooking.setStatus(5);
+        siteBooking.setVoucher(voucher);
+        siteBooking.setRemark(textarea);
+        siteBooking.setCancelUserId(UserExt.getUser().getId());
+        iSiteBookingService.updateById(siteBooking);
+
+        return new ResultUtil<>(0,0,"到店成功",null,null);
+    }
 
     /**
      * 获取变更列表
@@ -116,48 +190,339 @@
 
     @RequestMapping("/save")
     @ResponseBody
-    public ResultUtil save(@RequestBody Game game) {
+    public ResultUtil save(Integer id, String operationId, String red, String blue, String province, String city, Integer site, Integer store
+    , String kuacheng, BigDecimal kuachengCoin, BigDecimal kuachengCash, String kuachengImage, BigDecimal kuachengInt, Integer kuachengId,Integer kcId
+            , String shequ, BigDecimal shequCoin, BigDecimal shequCash, String shequImage, BigDecimal shequInt, Integer shequId,Integer shequIId
+            , String shemen, BigDecimal shemenCoin, BigDecimal shemenCash, String shemenImage, BigDecimal shemenInt, Integer shemenId,Integer smId
+            , String sudu, BigDecimal suduCoin, BigDecimal suduCash, String suduImage, BigDecimal suduInt, Integer suduId,Integer sdId
+            , String fangkuai, BigDecimal fangkuaiCoin, BigDecimal fangkuaiCash, String fangkuaiImage, BigDecimal fangkuaiInt, Integer fangkuaiId,Integer fkId
+            , String jx, BigDecimal jxCoin, BigDecimal jxCash, String jxImage, BigDecimal jxInt, Integer jxId,Integer jxIId
+            , String sq, BigDecimal sqCoin, BigDecimal sqCash, String sqImage, BigDecimal sqInt, Integer sqId,Integer qwId
+            , String zs, BigDecimal zsCoin, BigDecimal zsCash, String zsImage, BigDecimal zsInt, Integer zsId,Integer zsIId
+            , 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.setBlue(blue);
+        game.setProvinceCode(province);
+        game.setCityCode(city);
+        game.setSiteId(site);
+        game.setStoreId(store);
+        game.setId(id);
+
+
+        if (!operationId.equals("平台")){
+        game.setOperationId(Integer.valueOf(operationId));}
+        else {
+            game.setOperationId(0);
+        }
         System.out.println("============"+game);
-        ballClient.save(game);
+        Integer gameId = ballClient.save(game);
+
+List<TGameConfig> gameConfigList = new ArrayList<>();
+
+
+
+//玩湃跨城赛
+
+        TGameConfig gameConfigkuacheng = new TGameConfig();
+        gameConfigkuacheng.setId(kcId);
+        gameConfigkuacheng.setGameId(kuachengId);
+        gameConfigkuacheng.setCash(kuachengCash);
+        gameConfigkuacheng.setImg(kuachengImage);
+        gameConfigkuacheng.setName(kuacheng);
+        gameConfigkuacheng.setPlayCoin(kuachengCoin);
+        gameConfigkuacheng.setIntegral(kuachengInt);
+        gameConfigkuacheng.setOtherId(gameId);
+        System.out.println("========gameConfig======"+gameConfigkuacheng);
+        gameConfigList.add(gameConfigkuacheng);
+System.out.println("======gameConfigList======="+gameConfigList);
+
+        //社区冠军赛
+
+        TGameConfig gameConfigshequ = new TGameConfig();
+        gameConfigshequ.setId(shequIId);
+        gameConfigshequ.setGameId(shequId);
+        gameConfigshequ.setCash(shequCash);
+        gameConfigshequ.setImg(shequImage);
+        gameConfigshequ.setName(shequ);
+        gameConfigshequ.setPlayCoin(shequCoin);
+        gameConfigshequ.setIntegral(shequInt);
+        gameConfigshequ.setOtherId(gameId);
+        gameConfigList.add(gameConfigshequ);
+
+        //射门速度-玩湃熊之力
+        TGameConfig gameConfigshemen = new TGameConfig();
+        gameConfigshemen.setGameId(shemenId);
+        gameConfigshemen.setId(smId);
+        gameConfigshemen.setCash(shemenCash);
+        gameConfigshemen.setImg(shemenImage);
+        gameConfigshemen.setName(shemen);
+        gameConfigshemen.setPlayCoin(shemenCoin);
+        gameConfigshemen.setIntegral(shemenInt);
+        gameConfigshemen.setOtherId(gameId);
+        gameConfigList.add(gameConfigshemen);
+
+
+        //玩湃熊之力-速度
+        TGameConfig gameConfigsudu = new TGameConfig();
+        gameConfigsudu.setGameId(suduId);gameConfigsudu.setId(sdId);
+        gameConfigsudu.setCash(suduCash);
+        gameConfigsudu.setImg(suduImage);
+        gameConfigsudu.setName(sudu);
+        gameConfigsudu.setPlayCoin(suduCoin);
+        gameConfigsudu.setIntegral(suduInt);
+        gameConfigsudu.setOtherId(gameId);
+        gameConfigList.add(gameConfigsudu);
+
+
+        //方块球王
+        TGameConfig gameConfigfangkuai = new TGameConfig();
+        gameConfigfangkuai.setGameId(fangkuaiId);
+        gameConfigfangkuai.setId(fkId);
+        gameConfigfangkuai.setCash(fangkuaiCash);
+        gameConfigfangkuai.setImg(fangkuaiImage);
+        gameConfigfangkuai.setName(fangkuai);
+        gameConfigfangkuai.setPlayCoin(fangkuaiCoin);
+        gameConfigfangkuai.setIntegral(fangkuaiInt);
+        gameConfigfangkuai.setOtherId(gameId);
+        gameConfigList.add(gameConfigfangkuai);
+
+
+        //镜像阵容
+        TGameConfig gameConfigjx = new TGameConfig();
+        gameConfigjx.setGameId(jxId);
+        gameConfigjx.setId(jxIId);
+        gameConfigjx.setCash(jxCash);
+        gameConfigjx.setImg(jxImage);
+        gameConfigjx.setName(jx);
+        gameConfigjx.setPlayCoin(jxCoin);
+        gameConfigjx.setIntegral(jxInt);
+        gameConfigjx.setOtherId(gameId);
+        gameConfigList.add(gameConfigjx);
+
+
+        //社区小球王
+        TGameConfig gameConfigsq = new TGameConfig();
+        gameConfigsq.setGameId(sqId);
+        gameConfigsq.setId(qwId);
+        gameConfigsq.setCash(sqCash);
+        gameConfigsq.setImg(sqImage);
+        gameConfigsq.setName(sq);
+        gameConfigsq.setPlayCoin(sqCoin);
+        gameConfigsq.setIntegral(sqInt);
+        gameConfigsq.setOtherId(gameId);
+        gameConfigList.add(gameConfigsq);
+
+
+
+        //涨姿势
+        TGameConfig gameConfigzs = new TGameConfig();
+        gameConfigzs.setGameId(zsId);
+        gameConfigzs.setId(zsIId);
+        gameConfigzs.setCash(zsCash);
+        gameConfigzs.setImg(zsImage);
+        gameConfigzs.setName(zs);
+        gameConfigzs.setPlayCoin(zsCoin);
+        gameConfigzs.setIntegral(zsInt);
+        gameConfigzs.setOtherId(gameId);
+        gameConfigList.add(gameConfigzs);
+
+        //涨姿势2
+        TGameConfig gameConfigzs2 = new TGameConfig();
+        gameConfigzs2.setGameId(zs2Id);gameConfigzs2.setId(zs2IId);
+        gameConfigzs2.setCash(zs2Cash);
+        gameConfigzs2.setImg(zs2Image);
+        gameConfigzs2.setName(zs2);
+        gameConfigzs2.setPlayCoin(zs2Coin);
+        gameConfigzs2.setIntegral(zs2Int);
+        gameConfigzs2.setOtherId(gameId);
+        gameConfigList.add(gameConfigzs2);
+
+        //绿茵密码
+        TGameConfig gameConfigly = new TGameConfig();
+        gameConfigly.setGameId(lyId);
+        gameConfigly.setId(lyIId);  
+        gameConfigly.setCash(lyCash);
+        gameConfigly.setImg(lyImage);
+        gameConfigly.setName(ly);
+        gameConfigly.setPlayCoin(lyCoin);
+        gameConfigly.setIntegral(lyInt);
+        gameConfigly.setOtherId(gameId);
+        gameConfigList.add(gameConfigly);
+
+
+
+System.out.println("---------------------------"+gameConfigList);
+        ballClient.saveConfig( gameConfigList);
         return null;
     }
 
     @RequestMapping("/pre_add")
     public String add(Model model) {
-//        Map<String,String> map = new HashMap<>();
-//        map.put("sign","0DB011836143EEE2C2E072967C9F4E4B");
-//        map.put("space_id","1001");
-//        map.put("sutu_id","1001");
-//
-//        String request = HttpRequestUtil.getRequest("https://try.daowepark.com/v7/user_api/general/gameList", map);
-//        System.out.println("=======request=========="+request);
-////
-////        return ballClient.list(ballQueryDto);
-//    }
 
-Map<String,String> map =new HashMap<>();
-map.put("sign","0DB011836143EEE2C2E072967C9F4E4B");
-        map.put("space_id","1001");
-        map.put("sutu_id","1001");
+        model.addAttribute("is","${is}");
 
-        String req = HttpRequestUtil.postRequest("https://try.daowepark.com/v7/user_api/general/gameList", map);
-    System.out.println("================"+req);
-//        AsciiString cached = AsciiString.cached(req);
-        String convertedString = StringEscapeUtils.unescapeJava(req);
-
-System.out.println("-------------"+convertedString);
-        JSONObject parse = JSONObject.parseObject(convertedString);
-        JSONArray data = JSONObject.parseArray(parse.getString("data"));
-        JSONObject jsonObject =data.getJSONObject(0);
+        return PREFIX+"ball_pre_add.html";
+    }
 
 
 
-        //
+    @Autowired
+    private TGameConfigService gameConfigService;
+    @RequestMapping("/pre_edit/{id}")
+    public String pre_edit(@PathVariable("id") Integer id,Model model) {
+
+        Game game = ballClient.queryGame(id);
+    System.out.println("---------game------"+game);
+        model.addAttribute("game",game);
+
+
+        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);
+
+
+
+        return PREFIX+"ball_pre_edit.html";
+    }
+
+    @Autowired
+     private ISiteBookingService iSiteBookingService;
+
+    @RequestMapping("/yueyue_edit/{id}")
+    public String yueyue_edit(@PathVariable("id") Integer id,Model model) {
+
+        List<String> strings1 = new ArrayList<>();
+
+        SiteBooking book = iSiteBookingService.getById(id);
+        model.addAttribute("item", book);
+        if (book.getMoney()!=null){
+        model.addAttribute("money",book.getMoney().split(","));}
+        String[] split1 = book.getTimes().split(";");
+        model.addAttribute("date",split1[0].substring(0,10));
+
+        for (String s : split1) {
+
+            String convertedValue = s.substring(11);
+            strings1.add(convertedValue);
+        }
+
+        System.out.println("========strings1====="+strings1);
+
+//时间段
+        List<String> strings = new ArrayList<>();
+//        List<SiteBooking> siteBookings = siteClient.listBooks(book.getSiteId());
+        List<SiteBooking> siteBookings = iSiteBookingService.list(new QueryWrapper<SiteBooking>().eq("siteId", book.getSiteId()).like("times",split1[0].substring(0,10)));
+        System.out.println("=======siteBookings======"+siteBookings);
+        for (SiteBooking siteBooking : siteBookings) {
+            String[] split = siteBooking.getTimes().split(";");
+            for (String s : split) {
+
+                String convertedValue = s.substring(11);
+                strings.add(convertedValue);
+            }
+
+        }
+        System.out.println("======strings======="+strings);
+
+
+        List<OrderDto> timeRanges = new ArrayList<>();
+
+
+        Site site =  siteClient.listById(book.getSiteId());
+        System.out.println("================"+site);
+        String appointmentStartTime = site.getAppointmentStartTime();
+        String appointmentEndTime = site.getAppointmentEndTime();
+        //生成用于比较日期是否超过的当前日期
+        LocalDate currentDate = LocalDate.now();
+        LocalDate parsedDate = LocalDate.parse(split1[0].substring(0,10), DateTimeFormatter.ISO_DATE);
+        boolean isAfterCurrentDate = parsedDate.isBefore(currentDate);
+        System.out.println("是否超过当前日期"+isAfterCurrentDate);
+        String currentTime = appointmentStartTime;
+        while (currentTime.compareTo(appointmentEndTime) < 0) {
+            String nextTime = getNextTime(currentTime);
+
+
+            String timeRange = currentTime + "-" + nextTime;
+            OrderDto orderDto = new OrderDto();
+            orderDto.setTime(timeRange);
+
+            LocalTime currentTime1 = LocalTime.now();
+            LocalTime targetTime = LocalTime.parse(currentTime);
+
+            boolean hasExceeded = currentTime1.isAfter(targetTime);
+            //是否超过当前时间
+            if (hasExceeded){
+                orderDto.setState(0);
+            }
+            //是否已经预定
+            if (strings.contains(timeRange)){
+                orderDto.setState(0);
+            }
+            //日期是否超过
+            if (isAfterCurrentDate){
+                orderDto.setState(0);
+            }
+            //是否是当前场地当前日期预定的
+            if (strings1.contains(timeRange)){
+                orderDto.setState(1);
+            }
+
+
+
+
+            timeRanges.add(orderDto);
+            currentTime = nextTime;
+        }
+        System.out.println("-------------"+timeRanges);
+            model.addAttribute("timeRanges",timeRanges);
+
+System.out.println("======timeRanges========"+timeRanges);
+
+
+
+
+
 
         Integer objectType = UserExt.getUser().getObjectType();
         Integer objectId = UserExt.getUser().getObjectId();
-        List<TCoursePackageType> tCoursePackageTypes = coursePackageTypeClient.queryAllCoursePackageType();
-        model.addAttribute("coursePackageType", tCoursePackageTypes);
+
         String cityCode = null;
         if(objectType == 2){//城市管理员
             CityManager cityManager = cityManagerClient.queryCityManagerById(objectId);
@@ -176,5 +541,424 @@
         model.addAttribute("site", list3);
 
 
-        return PREFIX+"ball_pre_add.html";
-    }}
+        return PREFIX+"yuyue_edit.html";
+    }
+
+
+
+
+@Autowired
+private IUserService userService;
+    @RequestMapping("/yueyue_info/{id}")
+    public String yueyue_info(@PathVariable("id") Integer id,Model model) {
+
+        List<String> strings1 = new ArrayList<>();
+
+        SiteBooking book = iSiteBookingService.getById(id);
+        model.addAttribute("item", book);
+        if (book.getMoney()!=null){
+            model.addAttribute("money",book.getMoney().split(","));}
+        String[] split1 = book.getTimes().split(";");
+        model.addAttribute("date",split1[0].substring(0,10));
+
+
+        User user = userService.getById(book.getCancelUserId());
+        if (user!=null) {
+            model.addAttribute("cancelUser", user.getName());
+        }
+
+
+        for (String s : split1) {
+
+            String convertedValue = s.substring(11);
+            strings1.add(convertedValue);
+        }
+
+        System.out.println("========strings1====="+strings1);
+
+//时间段
+        List<String> strings = new ArrayList<>();
+//        List<SiteBooking> siteBookings = siteClient.listBooks(book.getSiteId());
+        List<SiteBooking> siteBookings = iSiteBookingService.list(new QueryWrapper<SiteBooking>().eq("siteId", book.getSiteId()).like("times",split1[0].substring(0,10)));
+        System.out.println("=======siteBookings======"+siteBookings);
+        for (SiteBooking siteBooking : siteBookings) {
+            String[] split = siteBooking.getTimes().split(";");
+            for (String s : split) {
+
+                String convertedValue = s.substring(11);
+                strings.add(convertedValue);
+            }
+
+        }
+        System.out.println("======strings======="+strings);
+
+
+        List<OrderDto> timeRanges = new ArrayList<>();
+
+
+        Site site =  siteClient.listById(book.getSiteId());
+        System.out.println("================"+site);
+        String appointmentStartTime = site.getAppointmentStartTime();
+        String appointmentEndTime = site.getAppointmentEndTime();
+        //生成用于比较日期是否超过的当前日期
+        LocalDate currentDate = LocalDate.now();
+        LocalDate parsedDate = LocalDate.parse(split1[0].substring(0,10), DateTimeFormatter.ISO_DATE);
+        boolean isAfterCurrentDate = parsedDate.isBefore(currentDate);
+        System.out.println("是否超过当前日期"+isAfterCurrentDate);
+        String currentTime = appointmentStartTime;
+        while (currentTime.compareTo(appointmentEndTime) < 0) {
+            String nextTime = getNextTime(currentTime);
+
+
+            String timeRange = currentTime + "-" + nextTime;
+            OrderDto orderDto = new OrderDto();
+            orderDto.setTime(timeRange);
+
+            LocalTime currentTime1 = LocalTime.now();
+            LocalTime targetTime = LocalTime.parse(currentTime);
+
+            boolean hasExceeded = currentTime1.isAfter(targetTime);
+            //是否超过当前时间
+            if (hasExceeded){
+                orderDto.setState(0);
+            }
+            //是否已经预定
+            if (strings.contains(timeRange)){
+                orderDto.setState(0);
+            }
+            //日期是否超过
+            if (isAfterCurrentDate){
+                orderDto.setState(0);
+            }
+            //是否是当前场地当前日期预定的
+            if (strings1.contains(timeRange)){
+                orderDto.setState(1);
+            }
+
+
+
+
+            timeRanges.add(orderDto);
+            currentTime = nextTime;
+        }
+        System.out.println("-------------"+timeRanges);
+        model.addAttribute("timeRanges",timeRanges);
+
+        System.out.println("======timeRanges========"+timeRanges);
+
+
+
+
+
+
+        Integer objectType = UserExt.getUser().getObjectType();
+        Integer objectId = UserExt.getUser().getObjectId();
+
+        String cityCode = null;
+        if(objectType == 2){//城市管理员
+            CityManager cityManager = cityManagerClient.queryCityManagerById(objectId);
+            cityCode = cityManager.getCityCode();
+        }
+        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);
+
+
+        return PREFIX+"yuyue_info.html";
+    }
+
+
+
+    @RequestMapping("/paike")
+    public String paike(Model model) {
+
+        return PREFIX+"paike.html";
+    }
+
+
+
+
+
+
+    @RequestMapping("/getStudentTotal")
+    @ResponseBody
+    public List<Map<String, Object>>getStudentTotal(@RequestBody StudentQeryDto studentQeryDto) {
+System.out.println("========ballQueryDto======"+studentQeryDto);
+        if (studentQeryDto.getTimes()!=null&& studentQeryDto.getTimes()!=""){
+            String[] split = studentQeryDto.getTimes().split(",");
+            studentQeryDto.setStart(split[0]);
+            studentQeryDto.setEnd(split[1]);
+        }
+
+
+
+
+        List<Map<String, Object>>  pays = coursePackageClient.getStudentTotal(studentQeryDto);
+
+        System.out.println("=========getStudentTotal======="+pays);
+
+        return pays;
+    }
+
+
+
+    @RequestMapping("/bypac")
+    @ResponseBody
+    public List<Map<String, Object>>bypac(@RequestBody PacQueryDto pacQueryDto) {
+        System.out.println("========ballQueryDto======"+pacQueryDto);
+        if (pacQueryDto.getTimes()!=null&& pacQueryDto.getTimes()!=""){
+            String[] split = pacQueryDto.getTimes().split(",");
+            pacQueryDto.setStart(split[0]);
+            pacQueryDto.setEnd(split[1]);
+        }
+
+
+
+
+        List<Map<String, Object>>  pays = coursePackageClient.bypac(pacQueryDto);
+
+        System.out.println("=========getStudentTotal======="+pays);
+
+        return pays;
+    }
+
+
+    @RequestMapping("/yuyue")
+    public String yuyue(Model model) {
+        List<TCity> list = cityService.list(new LambdaQueryWrapper<TCity>().eq(TCity::getParentId, 0));
+        model.addAttribute("list",list);
+        String roleid = UserExt.getUser().getRoleid();
+        model.addAttribute("role",roleid);
+
+        return PREFIX+"yuyue.html";
+    }
+
+
+    @RequestMapping("/jieshao")
+    public String jieshao(Model model) {
+        List<TCity> list = cityService.list(new LambdaQueryWrapper<TCity>().eq(TCity::getParentId, 0));
+        model.addAttribute("list",list);
+        String roleid = UserExt.getUser().getRoleid();
+        model.addAttribute("role",roleid);
+
+        return PREFIX+"jieshao.html";
+    }
+
+
+
+    /**
+     * 获取有效期
+     */
+    @RequestMapping("/yuyuelist")
+    @ResponseBody
+    public List<Map<String,Object>> yuyuelist(BookingQuery bookingQuery) {
+        List<Map<String,Object>> orders =   ballClient.listorder(bookingQuery);
+        System.out.println("=======ballQueryDto=========="+bookingQuery);
+
+        return orders;
+    }
+
+
+    @RequestMapping("/addjs")
+    @ResponseBody
+    public void addjs( @RequestBody JsDto jsDto) {
+        System.out.println("=======jsDto========"+jsDto);
+        storeService.insert(jsDto);
+
+    }
+
+    @RequestMapping("/get/{id}")
+    @ResponseBody
+    public JsDto getJs( @PathVariable("id") Integer id) {
+        JsDto jsDto =   storeService.get(id);
+        return jsDto;
+    }
+
+
+    @RequestMapping("/getMoney/{id}/{type}")
+    @ResponseBody
+    public List<Double> getMoney( @PathVariable("id") Integer id,@PathVariable("type") Integer type) {
+        List<Double> doubles = new ArrayList<>();
+        Site site = siteClient.listById(id);
+        System.out.println("=====stie====="+site);
+        System.out.println("=====type====="+type);
+
+        if (type == 0 ){
+            doubles.add(site.getCashPrice());
+            doubles.add(Double.valueOf(site.getPlayPaiCoin()));
+            return  doubles;
+        }else {
+            doubles.add(site.getCashPriceOne());
+            doubles.add(site.getPlayPaiCoinOne());
+            return  doubles;
+        }
+
+    }
+    @Resource
+   private SiteClient siteClient;
+
+
+    @RequestMapping("/yuyuetimes/{id}")
+    @ResponseBody
+    public List<OrderDto> yuyuetimes(@PathVariable("id") Integer id,String date) {
+        System.out.println("=======date======"+date);
+
+        List<String> strings = new ArrayList<>();
+
+//        List<SiteBooking> siteBookings = siteClient.listBooks(id);
+        List<SiteBooking> siteBookings = iSiteBookingService.list(new QueryWrapper<SiteBooking>().eq("siteId", id).like("times",date));
+System.out.println("=======siteBookings======"+siteBookings);
+        for (SiteBooking siteBooking : siteBookings) {
+            String[] split = siteBooking.getTimes().split(";");
+            for (String s : split) {
+
+                String convertedValue = s.substring(11);
+                strings.add(convertedValue);
+            }
+
+        }
+    System.out.println("======strings======="+strings);
+
+
+        List<OrderDto> timeRanges = new ArrayList<>();
+
+
+       Site site =  siteClient.listById(id);
+System.out.println("================"+site);
+        String appointmentStartTime = site.getAppointmentStartTime();
+        String appointmentEndTime = site.getAppointmentEndTime();
+
+        String currentTime = appointmentStartTime;
+        while (currentTime.compareTo(appointmentEndTime) < 0) {
+            String nextTime = getNextTime(currentTime);
+
+
+            String timeRange = currentTime + "-" + nextTime;
+            OrderDto orderDto = new OrderDto();
+            orderDto.setTime(timeRange);
+
+            LocalTime currentTime1 = LocalTime.now();
+            LocalTime targetTime = LocalTime.parse(currentTime);
+
+            boolean hasExceeded = currentTime1.isAfter(targetTime);
+    if (hasExceeded){
+        orderDto.setState(0);
+    }
+    if (strings.contains(timeRange)){
+        orderDto.setState(0);
+    }
+
+
+            timeRanges.add(orderDto);
+            currentTime = nextTime;
+        }
+        System.out.println("-------------"+timeRanges);
+
+        return timeRanges;
+    }
+
+
+    public static String getNextTime(String currentTime) {
+        String[] parts = currentTime.split(":");
+        int hour = Integer.parseInt(parts[0]);
+        int minute = Integer.parseInt(parts[1]);
+
+        if (minute == 30) {
+            hour++;
+            minute = 0;
+        } else {
+            minute = 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);
+
+
+    }
+
+
+
+    @RequestMapping("/halfName/{id}")
+    @ResponseBody
+    public String[] halfName(@PathVariable("id") Integer id) {
+        TSite byId =   siteService.getById(id);
+        String[] split = byId.getHalfName().split(",");
+        System.out.println("=-============"+split);
+
+        return split;
+    }
+
+    @RequestMapping("/yuyue_add")
+    public String yuyueadd(Model model) {
+        Integer objectType = UserExt.getUser().getObjectType();
+        Integer objectId = UserExt.getUser().getObjectId();
+
+        String cityCode = null;
+        if(objectType == 2){//城市管理员
+            CityManager cityManager = cityManagerClient.queryCityManagerById(objectId);
+            cityCode = cityManager.getCityCode();
+        }
+        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);
+        return PREFIX+"yuyue_add.html";
+    }
+
+
+
+    @RequestMapping("/ordersave")
+    @ResponseBody
+    public ResultUtil ordersave(SiteBooking siteBooking){
+        siteBooking.setInsertTime(new Date());
+        siteBooking.setState(1);
+        siteBooking.setStatus(0);
+
+    siteClient.addSiteBooking(siteBooking);
+        System.out.println("================="+siteBooking);
+
+        return new ResultUtil<>(null,200,null,null,null);
+    }
+
+    @RequestMapping("/orderedit")
+    @ResponseBody
+    public ResultUtil orderedit(SiteBooking siteBooking){
+            iSiteBookingService.updateById(siteBooking);
+
+        System.out.println("================="+siteBooking);
+
+        return new ResultUtil<>(null,200,null,null,null);
+    }
+
+}

--
Gitblit v1.7.1