From 014d7a35addafbc63689cda7c20bae61951f7852 Mon Sep 17 00:00:00 2001
From: luo <2855143437@qq.com>
Date: 星期一, 09 十月 2023 18:25:19 +0800
Subject: [PATCH] 10.9
---
cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/yuyue.html | 44 +
cloud-server-management/src/main/java/com/dsh/guns/modular/system/service/IStoreService.java | 3
cloud-server-management/src/main/java/com/dsh/guns/modular/system/service/impl/StoreServiceImpl.java | 6
cloud-server-management/src/main/webapp/static/modular/system/ball/yuyue_info.js | 193 ++++
cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/ball_pre_add.html | 192 ++++
cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/yuyue_add.html | 41
.idea/workspace.xml | 121 ++
cloud-server-management/src/main/resources/mapper/TStoreMapper.xml | 11
cloud-server-management/src/main/webapp/static/modular/system/coursePackage/coursePackage.js | 13
cloud-server-management/src/main/webapp/WEB-INF/view/system/coursePackage/coursePackage_add.html | 2
cloud-server-management/src/main/webapp/WEB-INF/view/system/coursePackage/coursePackage_edit.html | 2
cloud-server-account/src/test/java/com/dsh/AccountApplicationTests.java | 22
cloud-server-management/src/main/webapp/static/modular/system/ball/yuyue.js | 73 +
cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/join.html | 189 ++++
cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/dto/MethodDto.java | 9
cloud-server-other/src/main/java/com/dsh/other/controller/BallController.java | 1
cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/yuyue_edit.html | 354 ++++++++
cloud-server-management/src/main/webapp/WEB-INF/view/system/tCompetition/TCompetition_add.html | 23
cloud-server-other/src/main/resources/mapper/GameMapper.xml | 32
cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCoursePackageController.java | 4
cloud-server-management/src/main/java/com/dsh/course/mapper/StoreMapper.java | 3
cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/ball_pre_edit.html | 67 +
cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/system/BallController.java | 375 +++++++++
cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/yuyue_info.html | 384 +++++++++
cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/cancel.html | 206 +++++
25 files changed, 2,281 insertions(+), 89 deletions(-)
diff --git a/.idea/workspace.xml b/.idea/workspace.xml
index aacdc06..f73921d 100644
--- a/.idea/workspace.xml
+++ b/.idea/workspace.xml
@@ -25,13 +25,26 @@
<select />
</component>
<component name="ChangeListManager">
- <list default="true" id="cb08d02f-fd4f-4fa2-85fe-abd508fa83ac" name="Default Changelist" comment="10.8">
+ <list default="true" id="cb08d02f-fd4f-4fa2-85fe-abd508fa83ac" name="Default Changelist" comment="10.8。1">
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
- <change beforePath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/service/impl/CourseCounsumServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/service/impl/CourseCounsumServiceImpl.java" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/course/mapper/StoreMapper.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/course/mapper/StoreMapper.java" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCoursePackageController.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCoursePackageController.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/system/BallController.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/system/BallController.java" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/service/IStoreService.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/service/IStoreService.java" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/service/impl/StoreServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/service/impl/StoreServiceImpl.java" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/resources/mapper/TStoreMapper.xml" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/resources/mapper/TStoreMapper.xml" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/ball_pre_add.html" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/ball_pre_add.html" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/ball_pre_edit.html" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/ball_pre_edit.html" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/yuyue.html" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/yuyue.html" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/yuyue_add.html" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/yuyue_add.html" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/WEB-INF/view/system/coursePackage/coursePackage_add.html" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/WEB-INF/view/system/coursePackage/coursePackage_add.html" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/WEB-INF/view/system/coursePackage/coursePackage_edit.html" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/WEB-INF/view/system/coursePackage/coursePackage_edit.html" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/WEB-INF/view/system/tCompetition/TCompetition_add.html" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/WEB-INF/view/system/tCompetition/TCompetition_add.html" afterDir="false" />
<change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/static/modular/system/ball/yuyue.js" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/static/modular/system/ball/yuyue.js" afterDir="false" />
<change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/static/modular/system/ball/yuyue_info.js" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/static/modular/system/ball/yuyue_info.js" afterDir="false" />
- <change beforePath="$PROJECT_DIR$/cloud-server-other/src/main/java/com/dsh/other/entity/SiteBooking.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-other/src/main/java/com/dsh/other/entity/SiteBooking.java" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/static/modular/system/coursePackage/coursePackage.js" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/static/modular/system/coursePackage/coursePackage.js" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/cloud-server-other/src/main/java/com/dsh/other/controller/BallController.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-other/src/main/java/com/dsh/other/controller/BallController.java" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/cloud-server-other/src/main/resources/mapper/GameMapper.xml" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-other/src/main/resources/mapper/GameMapper.xml" afterDir="false" />
</list>
<option name="SHOW_DIALOG" value="false" />
<option name="HIGHLIGHT_CONFLICTS" value="true" />
@@ -79,43 +92,43 @@
<option name="hideEmptyMiddlePackages" value="true" />
<option name="showLibraryContents" value="true" />
</component>
- <component name="PropertiesComponent">{
- "keyToString": {
- "DefaultHtmlFileTemplate": "HTML File",
- "RequestMappingsPanelOrder0": "0",
- "RequestMappingsPanelOrder1": "1",
- "RequestMappingsPanelWidth0": "75",
- "RequestMappingsPanelWidth1": "75",
- "RunOnceActivity.OpenProjectViewOnStart": "true",
- "RunOnceActivity.ShowReadmeOnStart": "true",
- "WebServerToolWindowFactoryState": "false",
- "git-widget-placeholder": "master",
- "ignore.virus.scanning.warn.message": "true",
- "last_opened_file_path": "D:/Javaproject/PlayPay/cloud-server-management/src/main/webapp/WEB-INF/view/system/ball",
- "node.js.detected.package.eslint": "true",
- "node.js.detected.package.tslint": "true",
- "node.js.selected.package.eslint": "(autodetect)",
- "node.js.selected.package.tslint": "(autodetect)",
- "nodejs_package_manager_path": "npm",
- "project.structure.last.edited": "模块",
- "project.structure.proportion": "0.15",
- "project.structure.side.proportion": "0.54367816",
- "service.view.auto.scroll.to.source": "true",
- "settings.editor.selected.configurable": "preferences.pluginManager",
- "spring.configuration.checksum": "6e27eb92c8707375af194da5aa857bbc",
- "vue.rearranger.settings.migration": "true"
+ <component name="PropertiesComponent"><![CDATA[{
+ "keyToString": {
+ "DefaultHtmlFileTemplate": "HTML File",
+ "RequestMappingsPanelOrder0": "0",
+ "RequestMappingsPanelOrder1": "1",
+ "RequestMappingsPanelWidth0": "75",
+ "RequestMappingsPanelWidth1": "75",
+ "RunOnceActivity.OpenProjectViewOnStart": "true",
+ "RunOnceActivity.ShowReadmeOnStart": "true",
+ "WebServerToolWindowFactoryState": "false",
+ "git-widget-placeholder": "master",
+ "ignore.virus.scanning.warn.message": "true",
+ "last_opened_file_path": "D:/Javaproject/PlayPay/cloud-server-management/src/main/webapp/WEB-INF/view/system/ball",
+ "node.js.detected.package.eslint": "true",
+ "node.js.detected.package.tslint": "true",
+ "node.js.selected.package.eslint": "(autodetect)",
+ "node.js.selected.package.tslint": "(autodetect)",
+ "nodejs_package_manager_path": "npm",
+ "project.structure.last.edited": "模块",
+ "project.structure.proportion": "0.15",
+ "project.structure.side.proportion": "0.54367816",
+ "service.view.auto.scroll.to.source": "true",
+ "settings.editor.selected.configurable": "preferences.lookFeel",
+ "spring.configuration.checksum": "6e27eb92c8707375af194da5aa857bbc",
+ "vue.rearranger.settings.migration": "true"
}
-}</component>
+}]]></component>
<component name="ReactorSettings">
<option name="notificationShown" value="true" />
</component>
<component name="RecentsManager">
<key name="CopyFile.RECENT_KEYS">
<recent name="D:\Javaproject\PlayPay\cloud-server-management\src\main\webapp\WEB-INF\view\system\ball" />
+ <recent name="D:\Javaproject\PlayPay\cloud-server-account\src\test\java\com\dsh" />
<recent name="D:\Javaproject\PlayPay\cloud-server-management\src\main\webapp\static\modular\system\ball" />
<recent name="D:\Javaproject\PlayPay\cloud-server-course\src\main\resources\mapper" />
<recent name="D:\ttt\java\PlayPai\cloud-server-management\src\main\webapp\WEB-INF\view\system\ball" />
- <recent name="D:\ttt\java\PlayPai\cloud-server-management\src\main\webapp\static\modular\system\ball" />
</key>
<key name="MoveFile.RECENT_KEYS">
<recent name="D:\JavaTool\PlayPai1\cloud-server-management\src\main\webapp\static\modular\system\tStudent" />
@@ -147,6 +160,30 @@
<option name="ENABLED" value="true" />
</pattern>
</extension>
+ <method v="2">
+ <option name="Make" enabled="true" />
+ </method>
+ </configuration>
+ <configuration name="AccountApplicationTests.contextLoads" type="JUnit" factoryName="JUnit" temporary="true" nameIsGenerated="true">
+ <module name="mb-cloud-account" />
+ <shortenClasspath name="MANIFEST" />
+ <extension name="coverage">
+ <pattern>
+ <option name="PATTERN" value="com.dsh.*" />
+ <option name="ENABLED" value="true" />
+ </pattern>
+ </extension>
+ <option name="PACKAGE_NAME" value="com.dsh" />
+ <option name="MAIN_CLASS_NAME" value="com.dsh.AccountApplicationTests" />
+ <option name="METHOD_NAME" value="contextLoads" />
+ <option name="TEST_OBJECT" value="method" />
+ <method v="2">
+ <option name="Make" enabled="true" />
+ </method>
+ </configuration>
+ <configuration default="true" type="JUnit" factoryName="JUnit">
+ <shortenClasspath name="MANIFEST" />
+ <option name="TEST_OBJECT" value="class" />
<method v="2">
<option name="Make" enabled="true" />
</method>
@@ -235,8 +272,9 @@
</method>
</configuration>
<list>
- <item itemvalue="Spring Boot.GatewayApplication" />
+ <item itemvalue="JUnit.AccountApplicationTests.contextLoads" />
<item itemvalue="Spring Boot.ManagementApplication" />
+ <item itemvalue="Spring Boot.GatewayApplication" />
<item itemvalue="Spring Boot.OtherApplication" />
<item itemvalue="Spring Boot.UserApplication" />
<item itemvalue="Spring Boot.AccountApplication" />
@@ -248,6 +286,7 @@
</list>
<recent_temporary>
<list>
+ <item itemvalue="JUnit.AccountApplicationTests.contextLoads" />
<item itemvalue="应用程序.BigDecimalToChineseWords" />
</list>
</recent_temporary>
@@ -307,7 +346,7 @@
<workItem from="1696433675086" duration="2211000" />
<workItem from="1696462020097" duration="481000" />
<workItem from="1696465598653" duration="19850000" />
- <workItem from="1696639362946" duration="45956000" />
+ <workItem from="1696639362946" duration="88523000" />
</task>
<task id="LOCAL-00001" summary="后台代码删除">
<created>1690249807612</created>
@@ -608,7 +647,15 @@
<option name="project" value="LOCAL" />
<updated>1696749061197</updated>
</task>
- <option name="localTasksCounter" value="40" />
+ <task id="LOCAL-00040" summary="10.8。1">
+ <option name="closed" value="true" />
+ <created>1696753188954</created>
+ <option name="number" value="00040" />
+ <option name="presentableId" value="LOCAL-00040" />
+ <option name="project" value="LOCAL" />
+ <updated>1696753188954</updated>
+ </task>
+ <option name="localTasksCounter" value="41" />
<servers />
</component>
<component name="TypeScriptGeneratedFilesManager">
@@ -650,7 +697,8 @@
<MESSAGE value="9.26。14" />
<MESSAGE value="9.26。15" />
<MESSAGE value="10.8" />
- <option name="LAST_COMMIT_MESSAGE" value="10.8" />
+ <MESSAGE value="10.8。1" />
+ <option name="LAST_COMMIT_MESSAGE" value="10.8。1" />
</component>
<component name="XDebuggerManager">
<breakpoint-manager>
@@ -674,11 +722,6 @@
<url>file://$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/controller/CoursePackagePaymentController.java</url>
<line>1358</line>
<option name="timeStamp" value="14" />
- </line-breakpoint>
- <line-breakpoint enabled="true" type="java-line">
- <url>file://$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCompetitionAuditController.java</url>
- <line>139</line>
- <option name="timeStamp" value="21" />
</line-breakpoint>
</breakpoints>
</breakpoint-manager>
diff --git a/cloud-server-account/src/test/java/com/dsh/AccountApplicationTests.java b/cloud-server-account/src/test/java/com/dsh/AccountApplicationTests.java
new file mode 100644
index 0000000..455dcdd
--- /dev/null
+++ b/cloud-server-account/src/test/java/com/dsh/AccountApplicationTests.java
@@ -0,0 +1,22 @@
+package com.dsh;
+
+import com.dsh.account.controller.CoachTypeController;
+
+import org.junit.jupiter.api.Test;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.boot.test.context.SpringBootTest;
+
+import java.util.List;
+
+@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT, classes = AccountApplication.class)
+class AccountApplicationTests {
+
+ @Autowired
+ private CoachTypeController controller;
+
+ @Test
+ void contextLoads() {
+ System.out.println("==============="+controller.list());
+ }
+
+}
diff --git a/cloud-server-management/src/main/java/com/dsh/course/mapper/StoreMapper.java b/cloud-server-management/src/main/java/com/dsh/course/mapper/StoreMapper.java
index 0a958da..07185a1 100644
--- a/cloud-server-management/src/main/java/com/dsh/course/mapper/StoreMapper.java
+++ b/cloud-server-management/src/main/java/com/dsh/course/mapper/StoreMapper.java
@@ -7,6 +7,7 @@
import com.dsh.guns.modular.system.model.TStore;
import com.dsh.guns.modular.system.model.TStoreListVo;
import com.dsh.guns.modular.system.model.TTurn;
+import com.dsh.guns.modular.system.model.dto.SelectDto;
import org.apache.ibatis.annotations.Param;
import java.util.List;
@@ -69,4 +70,6 @@
void inset(JsDto jsDto);
JsDto get(Integer id);
+
+ List<SelectDto> getSelect();
}
diff --git a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCoursePackageController.java b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCoursePackageController.java
index 3c4532d..ae08367 100644
--- a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCoursePackageController.java
+++ b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCoursePackageController.java
@@ -830,8 +830,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);
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 210b1ff..4efb025 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
@@ -22,10 +22,7 @@
import com.dsh.guns.core.base.controller.BaseController;
import com.dsh.guns.modular.system.model.*;
import com.dsh.guns.modular.system.model.dto.*;
-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.service.*;
import com.dsh.guns.modular.system.util.HttpRequestUtil;
import com.dsh.guns.modular.system.util.ResultUtil;
import com.google.common.base.Ascii;
@@ -56,7 +53,9 @@
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
@@ -106,6 +105,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);
+ }
/**
* 获取变更列表
@@ -123,7 +188,7 @@
@RequestMapping("/save")
@ResponseBody
- public ResultUtil save(String red, String blue, String province, String city, Integer site, Integer store
+ public ResultUtil save(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
, String shequ, BigDecimal shequCoin, BigDecimal shequCash,String shequImage,BigDecimal shequInt,Integer shequId
, String shemen, BigDecimal shemenCoin, BigDecimal shemenCash,String shemenImage,BigDecimal shemenInt,Integer shemenId
@@ -148,6 +213,13 @@
game.setCityCode(city);
game.setSiteId(site);
game.setStoreId(store);
+
+
+ if (!operationId.equals("平台")){
+ game.setOperationId(Integer.valueOf(operationId));}
+ else {
+ game.setOperationId(0);
+ }
System.out.println("============"+game);
Integer gameId = ballClient.save(game);
@@ -285,7 +357,7 @@
@RequestMapping("/pre_add")
public String add(Model model) {
-
+ model.addAttribute("is","${is}");
return PREFIX+"ball_pre_add.html";
}
@@ -301,6 +373,260 @@
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();
+
+ 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_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")
@@ -434,11 +760,13 @@
@RequestMapping("/yuyuetimes/{id}")
@ResponseBody
- public List<OrderDto> yuyuetimes(@PathVariable("id") Integer id) {
-
+ 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 = 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(";");
@@ -503,6 +831,25 @@
}
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);
+
+
}
@@ -556,4 +903,14 @@
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);
+ }
+
}
diff --git a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/dto/MethodDto.java b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/dto/MethodDto.java
new file mode 100644
index 0000000..6af7834
--- /dev/null
+++ b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/dto/MethodDto.java
@@ -0,0 +1,9 @@
+package com.dsh.guns.modular.system.model.dto;
+
+import lombok.Data;
+
+@Data
+public class MethodDto {
+ Integer id;
+ Integer method;
+}
diff --git a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/service/IStoreService.java b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/service/IStoreService.java
index 55d1c2b..01baa7a 100644
--- a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/service/IStoreService.java
+++ b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/service/IStoreService.java
@@ -3,6 +3,7 @@
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.dsh.guns.modular.system.model.*;
+import com.dsh.guns.modular.system.model.dto.SelectDto;
import io.swagger.models.auth.In;
import com.dsh.course.dto.JsDto;
import com.dsh.guns.modular.system.model.Dict;
@@ -71,4 +72,6 @@
void insert(JsDto jsDto);
JsDto get(Integer id);
+
+ List<SelectDto> getSelect();
}
diff --git a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/service/impl/StoreServiceImpl.java b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/service/impl/StoreServiceImpl.java
index 2ac311e..f66f1c7 100644
--- a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/service/impl/StoreServiceImpl.java
+++ b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/service/impl/StoreServiceImpl.java
@@ -8,6 +8,7 @@
import com.dsh.guns.modular.system.model.TStore;
import com.dsh.guns.modular.system.model.TStoreListVo;
import com.dsh.guns.modular.system.model.TTurn;
+import com.dsh.guns.modular.system.model.dto.SelectDto;
import com.dsh.guns.modular.system.service.IStoreService;
import org.springframework.stereotype.Service;
@@ -104,6 +105,11 @@
}
@Override
+ public List<SelectDto> getSelect() {
+ return this.baseMapper.getSelect();
+ }
+
+ @Override
public List<TImgConfig> getConfig() {
return this.baseMapper.getConfig1();
diff --git a/cloud-server-management/src/main/resources/mapper/TStoreMapper.xml b/cloud-server-management/src/main/resources/mapper/TStoreMapper.xml
index e247e9d..5877e09 100644
--- a/cloud-server-management/src/main/resources/mapper/TStoreMapper.xml
+++ b/cloud-server-management/src/main/resources/mapper/TStoreMapper.xml
@@ -127,4 +127,15 @@
<select id="getConfig1" resultType="com.dsh.guns.modular.system.model.TImgConfig">
select * from t_img_config
</select>
+ <select id="getSelect" resultType="com.dsh.guns.modular.system.model.dto.SelectDto">
+
+
+ SELECT op.id , CONCAT(us.name,'-',us.`phone`) as value
+ FROM t_operator op
+ LEFT JOIN sys_user us on op.userId = us.id
+
+
+
+
+ </select>
</mapper>
\ No newline at end of file
diff --git a/cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/ball_pre_add.html b/cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/ball_pre_add.html
index 8eef478..caf096a 100644
--- a/cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/ball_pre_add.html
+++ b/cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/ball_pre_add.html
@@ -42,15 +42,24 @@
{
"type": "form",
"id": "u:24af29be25d2",
- "title": "111",
+ "title": "",
"body": [
{
- "label": "所属运营商:",
+ "type": "tpl",
+ "id": "u:587781d5d181",
+ "tpl": "                                    *所属运营商:",
+ "inline": true,
+ "wrapperComponent": "",
+ "style": {
+ "marginLeft": "0"
+ }
+ },{
"type": "select",
- "name": "operator",
- "id": "u:970f68a2c4ee",
- "mode": "horizontal",
- "size": "lg",
+ "label": "",
+ "name": "operationId",
+ "id": "u:c037c33c2c81",
+ "mode": "inline",
+ "size": "md",
"multiple": false,
"showInvalidMatch": false,
"searchable": true,
@@ -58,12 +67,38 @@
"horizontal": {
"leftFixed": "lg"
},
- "options": [
- {
- "label": "等待沟通中",
- "value": "等待沟通中"
+ "disabledOn": "is!=0",
+ "required": true,
+ "source": {
+ "url": "/ball/yunying",
+ "method": "post",
+ "messages": {
}
- ]
+ },
+ "labelField": "value",
+ "valueField": "id"
+ },{
+ "type": "checkbox",
+ "option": "平台",
+ "name": "is",
+ "id": "u:88f23ebcf4f7",
+ "onEvent": {
+ "change": {
+ "weight": 0,
+ "actions": [
+ {
+ "componentId": "u:c037c33c2c81",
+ "args": {
+ "value": "$event.data.value"
+ },
+ "actionType": "setValue"
+ }
+ ]
+ }
+ },
+ "trueValue": "平台",
+ "falseValue": 0,
+ "mode": "inline"
},
{
"type": "select",
@@ -214,6 +249,7 @@
},
"value": "",
"required": true
+
},
{
"type": "input-text",
@@ -224,6 +260,7 @@
"clearValueOnHidden": false,
"hidden": false,
"required": true
+
},
{
"type": "button",
@@ -301,6 +338,16 @@
"mode": "inline",
"labelClassName": "text-dark m-b",
"value": "14"
+ },
+ {
+ "type": "tpl",
+ "id": "u:587781d5d181",
+ "tpl": "                                ",
+ "inline": true,
+ "wrapperComponent": "",
+ "style": {
+ "marginLeft": "0"
+ }
},
{
"type": "input-text",
@@ -385,6 +432,16 @@
"value": "16"
},
{
+ "type": "tpl",
+ "id": "u:587781d5d181",
+ "tpl": "                                ",
+ "inline": true,
+ "wrapperComponent": "",
+ "style": {
+ "marginLeft": "0"
+ }
+ },
+ {
"type": "input-text",
"label": "玩派币",
"name": "shequCoin",
@@ -466,6 +523,16 @@
"value": "13"
},
{
+ "type": "tpl",
+ "id": "u:587781d5d181",
+ "tpl": "                                ",
+ "inline": true,
+ "wrapperComponent": "",
+ "style": {
+ "marginLeft": "0"
+ }
+ },
+ {
"type": "input-text",
"label": "玩派币",
"name": "shemenCoin",
@@ -544,10 +611,20 @@
"value": "玩湃熊之力-速度"
},
{
+ "type": "tpl",
+ "id": "u:587781d5d181",
+ "tpl": "                                ",
+ "inline": true,
+ "wrapperComponent": "",
+ "style": {
+ "marginLeft": "0"
+ }
+ },
+ {
"type": "hidden",
"label": "",
"name": "suduId",
- "id": "u:f0f7e6028e17",
+ "id": "u:ca5a1fd9c191",
"mode": "inline",
"labelClassName": "text-dark m-b",
"value": "15"
@@ -635,6 +712,16 @@
"value": "1"
},
{
+ "type": "tpl",
+ "id": "u:587781d5d181",
+ "tpl": "                                ",
+ "inline": true,
+ "wrapperComponent": "",
+ "style": {
+ "marginLeft": "0"
+ }
+ },
+ {
"type": "input-text",
"label": "玩派币",
"name": "fangkuaiCoin",
@@ -714,6 +801,16 @@
"mode": "inline",
"labelClassName": "text-dark m-b",
"value": "7"
+ },
+ {
+ "type": "tpl",
+ "id": "u:587781d5d181",
+ "tpl": "                                ",
+ "inline": true,
+ "wrapperComponent": "",
+ "style": {
+ "marginLeft": "0"
+ }
},
{
"type": "input-text",
@@ -803,6 +900,16 @@
"value": "8"
},
{
+ "type": "tpl",
+ "id": "u:587781d5d181",
+ "tpl": "                                ",
+ "inline": true,
+ "wrapperComponent": "",
+ "style": {
+ "marginLeft": "0"
+ }
+ },
+ {
"type": "input-text",
"label": "玩派币",
"name": "sqCoin",
@@ -883,6 +990,16 @@
"mode": "inline",
"labelClassName": "text-dark m-b",
"value": "10"
+ },
+ {
+ "type": "tpl",
+ "id": "u:587781d5d181",
+ "tpl": "                                ",
+ "inline": true,
+ "wrapperComponent": "",
+ "style": {
+ "marginLeft": "0"
+ }
},
{
"type": "input-text",
@@ -966,6 +1083,16 @@
"value": "11"
},
{
+ "type": "tpl",
+ "id": "u:587781d5d181",
+ "tpl": "                                ",
+ "inline": true,
+ "wrapperComponent": "",
+ "style": {
+ "marginLeft": "0"
+ }
+ },
+ {
"type": "input-text",
"label": "玩派币",
"name": "zs2Coin",
@@ -1036,7 +1163,7 @@
},
{
"type": "hidden",
- "label": "游戏名称",
+ "label": "",
"name": "ly",
"id": "u:c4a543b6cda0",
"mode": "inline",
@@ -1045,12 +1172,22 @@
},
{
"type": "hidden",
- "label": "游戏id",
+ "label": "",
"name": "lyId",
"id": "u:90d5f2fa406a",
"mode": "inline",
"labelClassName": "text-dark m-b",
"value": "5"
+ },
+ {
+ "type": "tpl",
+ "id": "u:587781d5d181",
+ "tpl": "                                ",
+ "inline": true,
+ "wrapperComponent": "",
+ "style": {
+ "marginLeft": "0"
+ }
},
{
"type": "input-text",
@@ -1137,10 +1274,18 @@
"actions": [
{
"componentId": "u:24af29be25d2",
+ "actionType": "submit"
+ },
+ {
"args": {
},
- "outputVar": "responseResult",
- "actionType": "submit"
+ "script": "window.parent.TStudent.table.refresh();",
+ "actionType": "custom"
+ },
+ {
+ "args": {},
+ "script": "parent.layer.close(window.parent.TStudent.layerIndex);",
+ "actionType": "custom"
}
]
}
@@ -1166,7 +1311,20 @@
"dataType": "form-data"
},
"actions": [
- ]
+ ],
+ "onEvent": {
+ "submitSucc": {
+ "weight": 0,
+ "actions": [
+ {
+ "args": {
+ },
+ "script": "parent.layer.close(window.parent.TStudent.layerIndex);",
+ "actionType": "custom"
+ }
+ ]
+ }
+ }
}
]
};
diff --git a/cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/ball_pre_edit.html b/cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/ball_pre_edit.html
index 6b53d15..f375f7f 100644
--- a/cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/ball_pre_edit.html
+++ b/cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/ball_pre_edit.html
@@ -45,12 +45,21 @@
"title": "",
"body": [
{
- "label": "所属运营商:",
+ "type": "tpl",
+ "id": "u:587781d5d181",
+ "tpl": "                                    *所属运营商:",
+ "inline": true,
+ "wrapperComponent": "",
+ "style": {
+ "marginLeft": "0"
+ }
+ },{
"type": "select",
- "name": "operator",
- "id": "u:970f68a2c4ee",
- "mode": "horizontal",
- "size": "lg",
+ "label": "",
+ "name": "operationId",
+ "id": "u:c037c33c2c81",
+ "mode": "inline",
+ "size": "md",
"multiple": false,
"showInvalidMatch": false,
"searchable": true,
@@ -58,12 +67,38 @@
"horizontal": {
"leftFixed": "lg"
},
- "options": [
- {
- "label": "等待沟通中",
- "value": "等待沟通中"
+ "disabledOn": "is!=0",
+ "required": true,
+ "source": {
+ "url": "/ball/yunying",
+ "method": "post",
+ "messages": {
}
- ]
+ },
+ "labelField": "value",
+ "valueField": "id"
+ },{
+ "type": "checkbox",
+ "option": "平台",
+ "name": "is",
+ "id": "u:88f23ebcf4f7",
+ "onEvent": {
+ "change": {
+ "weight": 0,
+ "actions": [
+ {
+ "componentId": "u:c037c33c2c81",
+ "args": {
+ "value": "$event.data.value"
+ },
+ "actionType": "setValue"
+ }
+ ]
+ }
+ },
+ "trueValue": "平台",
+ "falseValue": 0,
+ "mode": "inline"
},
{
"type": "select",
@@ -1245,10 +1280,18 @@
"actions": [
{
"componentId": "u:24af29be25d2",
+ "actionType": "submit"
+ },
+ {
"args": {
},
- "outputVar": "responseResult",
- "actionType": "submit"
+ "script": "window.parent.TStudent.table.refresh();",
+ "actionType": "custom"
+ },
+ {
+ "args": {},
+ "script": "parent.layer.close(window.parent.TStudent.layerIndex);",
+ "actionType": "custom"
}
]
}
diff --git a/cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/cancel.html b/cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/cancel.html
new file mode 100644
index 0000000..624df13
--- /dev/null
+++ b/cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/cancel.html
@@ -0,0 +1,206 @@
+<!DOCTYPE html>
+<html lang="zh">
+<head>
+ <meta charset="UTF-8" />
+ <title>amis demo</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <meta
+ name="viewport"
+ content="width=device-width, initial-scale=1, maximum-scale=1"
+ />
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <link rel="stylesheet" href="${ctxPath}/sdk/sdk.css" />
+ <link rel="stylesheet" href="${ctxPath}/sdk/helper.css" />
+ <link rel="stylesheet" href="${ctxPath}/sdk/iconfont.css" />
+ <!-- 这是默认主题所需的,如果是其他主题则不需要 -->
+ <!-- 从 1.1.0 开始 sdk.css 将不支持 IE 11,如果要支持 IE11 请引用这个 css,并把前面那个删了 -->
+ <!-- <link rel="stylesheet" href="sdk-ie11.css" /> -->
+ <!-- 不过 amis 开发团队几乎没测试过 IE 11 下的效果,所以可能有细节功能用不了,如果发现请报 issue -->
+ <style>
+ html,
+ body,
+ .app-wrapper {
+ position: relative;
+ width: 100%;
+ height: 100%;
+ margin: 0;
+ padding: 0;
+ }
+ </style>
+</head>
+<body>
+<div id="root" class="app-wrapper"></div>
+<script src="${ctxPath}/sdk/sdk.js"></script>
+<script type="text/javascript">
+ (function () {
+ let amis = amisRequire('amis/embed');
+ // 通过替换下面这个配置来生成不同页面
+ let amisJSON ={
+ "type": "page",
+ "title": "",
+ "body": [
+ {
+ "type": "form",
+ "id": "u:6d72ddddf222",
+ "title": "",
+ "body": [
+ {
+ "type": "grid",
+ "columns": [
+ ],
+ "id": "u:313016b48f71"
+ },
+ {
+ "type": "flex",
+ "id": "u:e21645a48093",
+ "className": "p-1",
+ "items": [
+ {
+ "type": "tpl",
+ "id": "u:5130236fd5a1",
+ "tpl": "入园方式",
+ "inline": true,
+ "wrapperComponent": "h2"
+ }
+ ],
+ "style": {
+ "position": "static",
+ "flexWrap": "nowrap"
+ },
+ "direction": "row",
+ "justify": "center",
+ "alignItems": "stretch",
+ "isFixedHeight": false,
+ "isFixedWidth": false
+ },
+ {
+ "type": "input-image",
+ "label": "上传凭证",
+ "name": "voucher",
+ "autoUpload": true,
+ "proxy": true,
+ "uploadType": "fileReceptor",
+ "imageClassName": "r w-full",
+ "receiver": {
+ "url": "/mgr/uploadImgAmis",
+ "method": "post"
+ },
+ "id": "u:15f57e1e7de6",
+ "accept": ".jpeg, .jpg, .png, .gif",
+ "multiple": false,
+ "hideUploadButton": false,
+ "fixedSize": false,
+ "required": true,
+ "mode": "horizontal"
+ },
+ {
+ "type": "textarea",
+ "label": "备注:",
+ "name": "textarea",
+ "id": "u:d98613414ea8",
+ "minRows": 3,
+ "maxRows": 20,
+ "mode": "horizontal",
+ "size": "md"
+ },
+ {
+ "type": "hidden",
+ "name": "id",
+ "id": "u:91f4afc2930e",
+ "value": `${id}`
+ },
+ {
+ "type": "flex",
+ "id": "u:8254704349a2",
+ "className": "p-1",
+ "items": [
+ {
+ "type": "button",
+ "id": "u:6c0b8f917bf7",
+ "label": "关闭",
+ "onEvent": {
+ "click": {
+ "actions": [
+ {
+ "args": {
+ },
+ "script": "parent.layer.close(window.parent.TStudent.layerIndex);",
+ "actionType": "custom"
+ }
+ ]
+ }
+ }
+ },
+ {
+ "type": "button",
+ "id": "u:6c0b8f917bf7",
+ "label": "保存",
+ "level": "info",
+ "onEvent": {
+ "click": {
+ "actions": [
+ {
+ "componentId": "u:6d72ddddf222",
+ "actionType": "submit"
+ }
+ ]
+ }
+ }
+ }
+ ],
+ "style": {
+ "position": "relative"
+ }
+ },
+ {
+ "type": "grid",
+ "columns": [
+ ],
+ "id": "u:ec43218540fa"
+ }
+ ],
+ "api": {
+ "url": "/ball/cancel",
+ "method": "post",
+ "messages": {
+ },
+ "dataType": "form-data"
+ },
+ "actions": [
+ ],
+ "onEvent": {
+ "submitSucc": {
+ "weight": 0,
+ "actions": [
+ {
+ "args": {
+ },
+ "script": "window.parent.TStudent.table.refresh();",
+ "actionType": "custom"
+ },
+ {
+ "args": {
+ },
+ "script": "parent.layer.close(window.parent.TStudent.layerIndex);",
+ "actionType": "custom"
+ }
+ ]
+ }
+ }
+ }
+ ],
+ "id": "u:b97e4e9b9f48",
+ "actions": [
+ ]
+ };
+
+ let amisScoped = amis.embed('#root', amisJSON);
+
+
+ })();
+
+
+</script>
+
+</body>
+</html>
\ No newline at end of file
diff --git a/cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/join.html b/cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/join.html
new file mode 100644
index 0000000..1ff3eb8
--- /dev/null
+++ b/cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/join.html
@@ -0,0 +1,189 @@
+<!DOCTYPE html>
+<html lang="zh">
+<head>
+ <meta charset="UTF-8" />
+ <title>amis demo</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <meta
+ name="viewport"
+ content="width=device-width, initial-scale=1, maximum-scale=1"
+ />
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <link rel="stylesheet" href="${ctxPath}/sdk/sdk.css" />
+ <link rel="stylesheet" href="${ctxPath}/sdk/helper.css" />
+ <link rel="stylesheet" href="${ctxPath}/sdk/iconfont.css" />
+ <!-- 这是默认主题所需的,如果是其他主题则不需要 -->
+ <!-- 从 1.1.0 开始 sdk.css 将不支持 IE 11,如果要支持 IE11 请引用这个 css,并把前面那个删了 -->
+ <!-- <link rel="stylesheet" href="sdk-ie11.css" /> -->
+ <!-- 不过 amis 开发团队几乎没测试过 IE 11 下的效果,所以可能有细节功能用不了,如果发现请报 issue -->
+ <style>
+ html,
+ body,
+ .app-wrapper {
+ position: relative;
+ width: 100%;
+ height: 100%;
+ margin: 0;
+ padding: 0;
+ }
+ </style>
+</head>
+<body>
+<div id="root" class="app-wrapper"></div>
+<script src="${ctxPath}/sdk/sdk.js"></script>
+<script type="text/javascript">
+ (function () {
+ let amis = amisRequire('amis/embed');
+ // 通过替换下面这个配置来生成不同页面
+ let amisJSON ={
+ "type": "page",
+ "title": "",
+ "body": [
+ {
+ "type": "form",
+ "id": "u:6d72ddddf25c",
+ "title": "",
+ "body": [
+ {
+ "type": "grid",
+ "columns": [
+ ],
+ "id": "u:313016b48f71"
+ },
+ {
+ "type": "flex",
+ "id": "u:e21645a48093",
+ "className": "p-1",
+ "items": [
+ {
+ "type": "tpl",
+ "id": "u:5130236fd5a1",
+ "tpl": "入园方式",
+ "inline": true,
+ "wrapperComponent": "h2"
+ }
+ ],
+ "style": {
+ "position": "static",
+ "flexWrap": "nowrap"
+ },
+ "direction": "row",
+ "justify": "center",
+ "alignItems": "stretch",
+ "isFixedHeight": false,
+ "isFixedWidth": false
+ },
+ {
+ "type": "hidden",
+ "name": "id",
+ "id": "u:91f4afc2930e",
+ "value": `${id}`
+ },
+ {
+ "type": "radios",
+ "id": "u:d98068b4f7d2",
+ "label": "请选择:",
+ "name": "method",
+ "options": [
+ {
+ "label": "手环",
+ "value": "1"
+ }
+ ],
+ "mode": "inline",
+ "required": true
+ },
+ {
+ "type": "flex",
+ "id": "u:8254704349a2",
+ "className": "p-1",
+ "items": [
+ {
+ "type": "button",
+ "id": "u:6c0b8f917bf7",
+ "label": "关闭",
+ "onEvent": {
+ "click": {
+ "actions": [
+ {
+ "args": {
+ },
+ "script": "parent.layer.close(window.parent.TStudent.layerIndex);",
+ "actionType": "custom"
+ }
+ ]
+ }
+ }
+ },
+ {
+ "type": "button",
+ "id": "u:6c0b8f917bf7",
+ "label": "保存",
+ "level": "info",
+ "onEvent": {
+ "click": {
+ "actions": [
+ {
+ "componentId": "u:6d72ddddf25c",
+ "actionType": "submit"
+ }
+ ]
+ }
+ }
+ }
+ ],
+ "style": {
+ "position": "relative"
+ }
+ },
+ {
+ "type": "grid",
+ "columns": [
+ ],
+ "id": "u:ec43218540fa"
+ }
+ ],
+ "api": {
+ "url": "/ball/selectJoin",
+ "method": "post",
+ "messages": {
+ }
+ },
+ "actions": [
+ ],
+ "onEvent": {
+ "submitSucc": {
+ "weight": 0,
+ "actions": [
+ {
+ "args": {
+ },
+ "script": "window.parent.TStudent.table.refresh();",
+ "actionType": "custom"
+ },
+ {
+ "args": {
+ },
+ "script": "parent.layer.close(window.parent.TStudent.layerIndex);",
+ "actionType": "custom"
+ }
+ ]
+ }
+ }
+ }
+ ],
+ "id": "u:b97e4e9b9f48",
+ "actions": [
+ ]
+ };
+
+ let amisScoped = amis.embed('#root', amisJSON);
+
+
+ })();
+
+
+</script>
+
+</body>
+</html>
\ No newline at end of file
diff --git a/cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/yuyue.html b/cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/yuyue.html
index 0aafb2c..f4eef17 100644
--- a/cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/yuyue.html
+++ b/cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/yuyue.html
@@ -55,6 +55,45 @@
</div>
<div class="col-sm-3">
+ <div class="input-group">
+ <div class="input-group-btn open">
+ <button data-toggle="dropdown" class="btn btn-white dropdown-toggle" type="button" aria-expanded="true">
+ 支付方式
+ </button>
+ </div>
+ <select class="form-control" id="payMethod">
+ <option value="">全部</option>
+ <option value=1>微信</option>
+ <option value=2>支付宝</option>
+ <option value=3>玩湃币</option>
+ <option value=4>手动支付</option>
+ </select>
+ </div>
+ </div>
+
+ <div class="col-sm-3">
+ <div class="input-group">
+ <div class="input-group-btn open">
+ <button data-toggle="dropdown" class="btn btn-white dropdown-toggle" type="button" aria-expanded="true">
+ 支付方式
+ </button>
+ </div>
+ <select class="form-control" id="state">
+ <option value="">全部</option>
+
+ <option value="0">待支付</option>
+ <option value="1">待核销</option>
+ <option value="2">已到店</option>
+ <option value="3">已完成</option>
+ <option value="4">已过期</option>
+ <option value="5">已取消</option>
+ </select>
+ </div>
+ </div>
+
+
+
+ <div class="col-sm-3">
<#button name="搜索" icon="fa-search" clickFun="TStudent.search()"/>
</div>
</div>
@@ -62,7 +101,10 @@
<#button name="添加" icon="fa-plus" clickFun="TStudent.openAddTStudent()"/>
<#button name="修改" icon="fa-edit" clickFun="TStudent.openTStudentDetail()" space="true"/>
- <#button name="查看详情" icon="fa-edit" clickFun="TStudent.openTStudentDetail1()" space="true"/>
+ <#button name="确认到店" icon="fa-edit" clickFun="TStudent.openTStudentDetail1()" space="true"/>
+ <#button name="取消凭证" icon="fa-edit" clickFun="TStudent.openTStudentDetail4()" space="true"/>
+
+ <#button name="查看详情" icon="fa-edit" clickFun="TStudent.openTStudentDetail5()" space="true"/>
@if(shiro.hasPermission("/tStudent/delete")){
<#button name="删除" icon="fa-remove" clickFun="TStudent.delete()" space="true"/>
diff --git a/cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/yuyue_add.html b/cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/yuyue_add.html
index d64fa91..3ced3d4 100644
--- a/cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/yuyue_add.html
+++ b/cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/yuyue_add.html
@@ -52,7 +52,7 @@
<div class="form-group">
<label class="col-sm-3 control-label">*上课场地:</label>
<div class="col-sm-4">
- <select class="form-control" id="siteId" name="siteId" onchange="CoursePackageInfo.addTime(this.value)">
+ <select class="form-control" id="siteId" name="siteId" >
<option >请选择场地</option>
@@ -76,7 +76,7 @@
<div class="form-group">
<label class="col-sm-3 control-label">预约时间:</label>
<div class="col-sm-4">
- <input class="form-control" id="time" name="time" type="text" >
+ <input class="form-control" id="time" name="time" type="text" onchange="CoursePackageInfo.addTime()">
</div>
</div>
@@ -248,7 +248,42 @@
elem: '#time'
,lang:"CN",
min:0,
- max:10
+ max:10,
+ format:'yyyy-MM-dd',
+ done:function (a) {
+ console.log("==========="+a)
+ var ajax = new $ax(Feng.ctxPath + "/ball/yuyuetimes/"+ $('#siteId').val(), function(data){
+ console.log("================"+data)
+ if(data!=null){
+ var content='';
+ $.each(data, function(k, v) {
+ var buttonClass = "layui-btn layui-btn-primary";
+ var style = "";
+ if (v.state === 0) {
+ style = "background-color: red;";
+ }
+ var disabledAttribute = v.state === 0 ? "disabled" : "";
+ content += '<button type="button" class="' + buttonClass + '" ' + disabledAttribute + ' style="' + style + '" onclick="toggleColor(this)">' + v.time + '</button>';
+ });
+ $("#ttt2").empty().append(content);
+ }
+ })
+ ajax.set("date",$('#time').val());
+ ajax.start()
+
+ var ajax1 = new $ax(Feng.ctxPath + "/ball/halfName/"+ $('#siteId').val(), function(data){
+ console.log("================"+data)
+ if(data!=null){
+ let htmlStr = '';
+ for (let i = 0; i < data.length; i++) {
+ htmlStr += '<option value="' + data[i] + '">' + data[i] + '</option>'
+ }
+ $("#half").empty().append(htmlStr);
+ }
+ })
+ ajax1.start()
+
+ }
});
laydate.render({
diff --git a/cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/yuyue_edit.html b/cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/yuyue_edit.html
new file mode 100644
index 0000000..6dd45c1
--- /dev/null
+++ b/cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/yuyue_edit.html
@@ -0,0 +1,354 @@
+@layout("/common/_container.html"){
+<style>
+ .green-button {
+ background-color: green;
+ }
+</style>
+<div class="ibox float-e-margins">
+ <div class="ibox-content">
+ <input type="hidden" id="id" value="${item.id}">
+ <div class="form-horizontal">
+ <div class="row">
+ <div class="form-group">
+ <label class="col-sm-3 control-label">*所在省:</label>
+ <div class="col-sm-4">
+ <select class="form-control" id="provinceCode" name="provinceCode">
+ @for(obj in province){
+ <option value="${obj.code}" ${obj.code == item.provinceCode ? 'selected=selected' : ''}>${obj.name}</option>
+ @}
+ </select>
+ </div>
+ </div>
+ <div class="form-group">
+ <label class="col-sm-3 control-label">*所在市:</label>
+ <div class="col-sm-4">
+ <select class="form-control" id="cityCode" name="cityCode">
+ @for(obj in city){
+ <option value="${obj.code}" ${obj.code == item.cityCode ? 'selected=selected' : ''}>${obj.name}</option>
+ @}
+ </select>
+ </div>
+ </div>
+ <div class="form-group">
+ <label class="col-sm-3 control-label">*所属门店:</label>
+ <div class="col-sm-4">
+ <select class="form-control" id="storeId" name="storeId">
+ @for(obj in store){
+ <option value="${obj.id}" ${obj.id == item.storeId ? 'selected=selected' : ''}>${obj.name}</option>
+ @}
+ </select>
+ </div>
+ </div>
+
+ <div class="form-group">
+ <label class="col-sm-3 control-label">*预约类型:</label>
+ <div class="col-sm-4">
+ <input type="radio" name="type" value="1" checked="" onclick="updateType(1)" > 全场
+ <input type="radio" name="type" value="2" onclick="updateType(2)" > 半场
+ </div>
+ </div>
+
+
+
+ <div class="form-group">
+ <label class="col-sm-3 control-label">*上课场地:</label>
+ <input type="hidden" id="selSiteId" value="${item.siteId}">
+
+ <div class="col-sm-4">
+ <select class="form-control" id="siteId" name="siteId" onchange="CoursePackageInfo.addTime1()" >
+ <option >请选择场地</option>
+
+ @for(obj in site){
+ <option value="${obj.id}" data-custom-data="1" ${obj.id == item.siteId ? 'selected=selected' : ''} >${obj.name}</option>
+ @}
+ </select>
+ </div>
+ </div>
+
+
+ <div class="form-group" id="half1" hidden="hidden">
+ <label class="col-sm-3 control-label">*选择半场:</label>
+ <div class="col-sm-4">
+ <select class="form-control" name="half" id="half">
+
+ </select>
+ </div>
+ </div>
+
+ <div class="form-group">
+ <input type="hidden" id="selDate" value="${date}">
+ <label class="col-sm-3 control-label">预约时间:</label>
+ <div class="col-sm-4">
+ <input class="form-control" id="time" name="time" type="text" value="${date}">
+
+ </div>
+ </div>
+
+
+
+
+
+
+
+
+
+
+
+ <div class="form-group">
+ <label class="col-sm-3 control-label">*预约时间段:</label>
+ <div class="col-sm-5" id="ttt1">
+ <div class="layui-btn-group" id="ttt2">
+
+
+ </div>
+
+ <div class="layui-btn-group" id="ttt3">
+
+ @for(obj in timeRanges){
+ <button name="has" type="button" ${obj.state == 0 ? "class = 'layui-btn layui-btn-primary' disabled style='background-color: red'" : obj.state == 1 ? "class = 'layui-btn layui-btn-primary green-button'" : "class = 'layui-btn layui-btn-primary'"} onclick="toggleColor(this)">${obj.time}</button>
+<!-- <button type="button" ${obj.state == 0 ? "class = 'layui-btn layui-btn-primary' disabled style='background-color: red'" : "class = 'layui-btn layui-btn-primary' "} onclick="toggleColor(this)">${obj.time}</button>-->
+<!-- <button type="button" ${obj.state == 0 ? "class = 'layui-btn layui-btn-primary green-button'" : "class = 'layui-btn layui-btn-primary'"} onclick="toggleColor(this)">${obj.time}</button>-->
+ @}
+ </div>
+
+ </div>
+ </div>
+
+ <div class="form-group">
+ <label class="col-sm-3 control-label">现金价格:</label>
+ <div class="col-sm-4">
+ <input class="form-control" id="cash" name="cash" type="text" value="${money[0]!}" >
+ </div>
+ </div>
+
+ <div class="form-group">
+ <label class="col-sm-3 control-label">玩派币价格:</label>
+ <div class="col-sm-4">
+ <input class="form-control" id="play" name="play" type="text" value="${money[1]!}" >
+
+ </div>
+ </div>
+
+
+ <div class="form-group">
+ <label class="col-sm-3 control-label">预约人:</label>
+ <div class="col-sm-4">
+ <input class="form-control" id="booker" name="booker" type="text" value="${item.booker}" >
+
+ </div>
+ </div>
+
+
+
+
+ <div class="form-group">
+ <label class="col-sm-3 control-label">联系电话:</label>
+ <div class="col-sm-4">
+ <input class="form-control" id="phone" name="phone" type="text" value="${item.phone}" >
+
+ </div>
+ </div>
+<!-- <input type="text" id = "counpons">-->
+ </div>
+ <div class="row btn-group-m-t">
+ <div class="col-sm-10">
+ <#button btnCss="info" name="提交" id="ensure" icon="fa-check" clickFun="CoursePackageInfo.addSubmit1()"/>
+ <#button btnCss="danger" name="取消" id="cancel" icon="fa-eraser" clickFun="CoursePackageInfo.close()"/>
+ </div>
+ </div>
+ </div>
+ </div>
+</div>
+<script src="${ctxPath}/modular/system/ball/yuyue_info.js"></script>
+<script type="text/javascript">
+ function updateType(o) {
+ if(o==1){
+
+ var elements = document.getElementsByClassName("layui-btn layui-btn-primary green-button");
+ var count = elements.length;
+
+ console.log("Number of elements: " + count);
+
+ $("#half1").hide()
+ var radios = document.getElementsByName("type");
+ var selectedValue;
+
+ for (var i = 0; i < radios.length; i++) {
+ if (radios[i].checked) {
+ selectedValue = radios[i].value;
+ break;
+ }
+ }
+
+ var ajax3 = new $ax(Feng.ctxPath + "/ball/getMoney/"+$('#siteId').val()+'/'+selectedValue, function(data){
+ console.log("===========3333====="+data)
+ if(data!=null){
+
+ $("#cash").val(data[0] * count);
+ $("#play").val(data[1] * count);
+
+ }
+ })
+ ajax3.start()
+ }else {
+ var elements = document.getElementsByClassName("layui-btn layui-btn-primary green-button");
+ var count = elements.length;
+
+ console.log("Number of elements: " + count);
+
+ $("#half1").show()
+ var radios = document.getElementsByName("type");
+ var selectedValue;
+
+ for (var i = 0; i < radios.length; i++) {
+ if (radios[i].checked) {
+ selectedValue = radios[i].value;
+ break;
+ }
+ }
+
+ var ajax3 = new $ax(Feng.ctxPath + "/ball/getMoney/"+$('#siteId').val()+'/'+selectedValue, function(data){
+ console.log("===========3333====="+data)
+ if(data!=null){
+
+ $("#cash").val(data[0] * count);
+ $("#play").val(data[1] * count);
+
+ }
+ })
+ ajax3.start()
+
+ }
+
+ }
+
+
+
+ function toggleColor(button) {
+ button.classList.toggle("green-button");
+
+ var elements = document.getElementsByClassName("layui-btn layui-btn-primary green-button");
+ var count = elements.length;
+
+ console.log("Number of elements: " + count);
+
+
+ var radios = document.getElementsByName("type");
+ var selectedValue;
+
+ for (var i = 0; i < radios.length; i++) {
+ if (radios[i].checked) {
+ selectedValue = radios[i].value;
+ break;
+ }
+ }
+
+ var ajax3 = new $ax(Feng.ctxPath + "/ball/getMoney/"+$('#siteId').val()+'/'+selectedValue, function(data){
+ console.log("===========3333====="+data)
+ if(data!=null){
+
+ $("#cash").val(data[0] * count);
+ $("#play").val(data[1] * count);
+
+ }
+ })
+ ajax3.start()
+
+
+ }
+
+ laydate.render({
+ elem: '#time'
+ ,lang:"CN",
+ min:0,
+ max:10,
+ format:'yyyy-MM-dd',
+ done:function (a) {
+ console.log("==============="+$('#time').val())
+ console.log("==============="+$('#selDate').val())
+ console.log("==============="+$('#siteId').val())
+ console.log("==============="+$('#selSiteId').val())
+
+ if ($('#siteId').val() != $('#selSiteId').val()||$('#time').val()!=$('#selDate').val()){
+ $("#ttt3").hide()
+ $("#ttt2").show()
+
+ }else {
+ $("#ttt3").show()
+ $("#ttt2").hide()
+
+ }
+
+ console.log("==========="+a)
+ var ajax = new $ax(Feng.ctxPath + "/ball/yuyuetimes/"+ $('#siteId').val(), function(data){
+ console.log("================"+data)
+ if(data!=null){
+ var content='';
+ $.each(data, function(k, v) {
+ var buttonClass = "layui-btn layui-btn-primary";
+ var style = "";
+ if (v.state === 0) {
+ style = "background-color: red;";
+ }
+ var disabledAttribute = v.state === 0 ? "disabled" : "";
+ content += '<button type="button" class="' + buttonClass + '" ' + disabledAttribute + ' style="' + style + '" onclick="toggleColor(this)">' + v.time + '</button>';
+ });
+ $("#ttt2").empty().append(content);
+ }
+ })
+ ajax.start()
+
+ var ajax1 = new $ax(Feng.ctxPath + "/ball/halfName/"+ $('#siteId').val(), function(data){
+ console.log("================"+data)
+ if(data!=null){
+ let htmlStr = '';
+ for (let i = 0; i < data.length; i++) {
+ htmlStr += '<option value="' + data[i] + '">' + data[i] + '</option>'
+ }
+ $("#half").empty().append(htmlStr);
+ }
+ })
+ ajax1.start()
+
+
+
+
+
+ }
+
+
+ });
+
+ laydate.render({
+ elem: '#holitime'
+ ,range: true //或 range: '~' 来自定义分割字符
+ });
+
+ var avatarUp = new $WebUpload("coverDrawing");
+ avatarUp.setUploadBarId("progressBar");
+ avatarUp.init();
+
+ var avatarUp1 = new $WebUpload("detailDrawing");
+ avatarUp1.setUploadBarId("progressBar");
+ avatarUp1.init();
+
+ var avatarUp1 = new $WebUpload("introduceDrawing");
+ avatarUp1.setUploadBarId("progressBar");
+ avatarUp1.init();
+ function addTime(){
+ var i = $('#dayTime > div').length
+
+ let htmlStr =' <div style="display:flex">\n' +
+ ' <input class="form-control" id="classStartTime'+i+'" name="classStartTime" placeholder="请选择" style="width: 200px;">\n' +
+ ' <i class="fa fa-trash-o" style="font-size:24px" onclick="removePrice1(this)"></i>\n' +
+ ' </div>'
+ $('#dayTime').append(htmlStr);
+ console.log("========="+i)
+ laydate.render({
+ elem: '#classStartTime'+i,
+ type: 'time',
+ range: true
+ });
+ }
+</script>
+@}
diff --git a/cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/yuyue_info.html b/cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/yuyue_info.html
new file mode 100644
index 0000000..4ee4007
--- /dev/null
+++ b/cloud-server-management/src/main/webapp/WEB-INF/view/system/ball/yuyue_info.html
@@ -0,0 +1,384 @@
+@layout("/common/_container.html"){
+<style>
+ .green-button {
+ background-color: green;
+ }
+</style>
+<div class="ibox float-e-margins">
+ <div class="ibox-content">
+ <input type="hidden" id="id" value="${item.id}">
+ <div class="form-horizontal">
+ <div class="row">
+ <div class="form-group">
+ <label class="col-sm-3 control-label">*所在省:</label>
+ <div class="col-sm-4">
+ <select class="form-control" id="provinceCode" name="provinceCode" disabled>
+ @for(obj in province){
+ <option value="${obj.code}" ${obj.code == item.provinceCode ? 'selected=selected' : ''}>${obj.name}</option>
+ @}
+ </select>
+ </div>
+ </div>
+ <div class="form-group">
+ <label class="col-sm-3 control-label">*所在市:</label>
+ <div class="col-sm-4">
+ <select class="form-control" id="cityCode" name="cityCode" disabled>
+ @for(obj in city){
+ <option value="${obj.code}" ${obj.code == item.cityCode ? 'selected=selected' : ''}>${obj.name}</option>
+ @}
+ </select>
+ </div>
+ </div>
+ <div class="form-group">
+ <label class="col-sm-3 control-label">*所属门店:</label>
+ <div class="col-sm-4">
+ <select class="form-control" id="storeId" name="storeId" disabled>
+ @for(obj in store){
+ <option value="${obj.id}" ${obj.id == item.storeId ? 'selected=selected' : ''}>${obj.name}</option>
+ @}
+ </select>
+ </div>
+ </div>
+
+ <div class="form-group">
+ <label class="col-sm-3 control-label">*预约类型:</label>
+ <div class="col-sm-4">
+ <input type="radio" name="type" value="1" checked="" onclick="updateType(1)" disabled> 全场
+ <input type="radio" name="type" value="2" onclick="updateType(2)" disabled> 半场
+ </div>
+ </div>
+
+
+
+ <div class="form-group">
+ <label class="col-sm-3 control-label">*上课场地:</label>
+ <input type="hidden" id="selSiteId" value="${item.siteId}">
+
+ <div class="col-sm-4">
+ <select class="form-control" id="siteId" name="siteId" onchange="CoursePackageInfo.addTime1()" disabled >
+ <option >请选择场地</option>
+
+ @for(obj in site){
+ <option value="${obj.id}" data-custom-data="1" ${obj.id == item.siteId ? 'selected=selected' : ''} >${obj.name}</option>
+ @}
+ </select>
+ </div>
+ </div>
+
+
+ <div class="form-group" id="half1" hidden="hidden">
+ <label class="col-sm-3 control-label">*选择半场:</label>
+ <div class="col-sm-4">
+ <select class="form-control" name="half" id="half" disabled>
+
+ </select>
+ </div>
+ </div>
+
+ <div class="form-group">
+ <input type="hidden" id="selDate" value="${date}">
+ <label class="col-sm-3 control-label">预约时间:</label>
+ <div class="col-sm-4">
+ <input class="form-control" id="time" name="time" type="text" value="${date}" disabled>
+
+ </div>
+ </div>
+
+
+
+
+
+
+
+
+
+
+
+ <div class="form-group">
+ <label class="col-sm-3 control-label">*预约时间段:</label>
+ <div class="col-sm-5" id="ttt1" disabled="">
+ <div class="layui-btn-group" id="ttt2">
+
+
+ </div>
+
+ <div class="layui-btn-group" id="ttt3">
+
+ @for(obj in timeRanges){
+ <button disabled name="has" type="button" ${obj.state == 0 ? "class = 'layui-btn layui-btn-primary' disabled style='background-color: red'" : obj.state == 1 ? "class = 'layui-btn layui-btn-primary green-button'" : "class = 'layui-btn layui-btn-primary'"} onclick="toggleColor(this)">${obj.time}</button>
+ <!-- <button type="button" ${obj.state == 0 ? "class = 'layui-btn layui-btn-primary' disabled style='background-color: red'" : "class = 'layui-btn layui-btn-primary' "} onclick="toggleColor(this)">${obj.time}</button>-->
+ <!-- <button type="button" ${obj.state == 0 ? "class = 'layui-btn layui-btn-primary green-button'" : "class = 'layui-btn layui-btn-primary'"} onclick="toggleColor(this)">${obj.time}</button>-->
+ @}
+ </div>
+
+ </div>
+ </div>
+
+ <div class="form-group">
+ <label class="col-sm-3 control-label">现金价格:</label>
+ <div class="col-sm-4">
+ <input class="form-control" id="cash" name="cash" type="text" value="${money[0]!}" disabled >
+
+ </div>
+ </div>
+
+ <div class="form-group">
+ <label class="col-sm-3 control-label">玩派币价格:</label>
+ <div class="col-sm-4">
+ <input class="form-control" id="play" name="play" type="text" value="${money[1]!}" disabled >
+
+ </div>
+ </div>
+
+
+ <div class="form-group">
+ <label class="col-sm-3 control-label">预约人:</label>
+ <div class="col-sm-4">
+ <input class="form-control" id="booker" name="booker" type="text" value="${item.booker}" disabled >
+
+ </div>
+ </div>
+
+
+
+
+ <div class="form-group">
+ <label class="col-sm-3 control-label">联系电话:</label>
+ <div class="col-sm-4">
+ <input class="form-control" id="phone" name="phone" type="text" value="${item.phone}" disabled >
+
+ </div>
+ </div>
+
+ <div class="form-group">
+ <label class="col-sm-3 control-label">操作人:</label>
+ <div class="col-sm-4">
+ <input class="form-control" id="cancelUserId" name="cancelUserId" type="text" value="${cancelUser!}" disabled >
+
+ </div>
+ </div>
+
+ <div class="form-group" disabled>
+ <label class="col-sm-3 control-label head-scu-label">*上传凭证:</label>
+ <div class="col-sm-2">
+ <div id="introduceDrawingPreId">
+ <div><img width="100px" height="100px" src="${item.voucher}"></div>
+ </div>
+ </div>
+ <div class="col-sm-2">
+
+ </div>
+
+ </div>
+
+
+ <div class="form-group">
+ <label class="col-sm-3 control-label">备注:</label>
+ <div class="col-sm-4">
+ <textarea class="form-control" id="remark" name="remark" disabled>${item.remark}</textarea >
+ </div>
+ </div>
+
+ </div>
+ <div class="row btn-group-m-t">
+ <div class="col-sm-10">
+<!-- <#button btnCss="info" name="提交" id="ensure" icon="fa-check" clickFun="CoursePackageInfo.addSubmit1()"/>-->
+ <#button btnCss="danger" name="关闭" id="cancel" icon="fa-eraser" clickFun="CoursePackageInfo.close()"/>
+ </div>
+ </div>
+ </div>
+ </div>
+</div>
+<script src="${ctxPath}/modular/system/ball/yuyue_info.js"></script>
+<script type="text/javascript">
+ function updateType(o) {
+ if(o==1){
+
+ var elements = document.getElementsByClassName("layui-btn layui-btn-primary green-button");
+ var count = elements.length;
+
+ console.log("Number of elements: " + count);
+
+ $("#half1").hide()
+ var radios = document.getElementsByName("type");
+ var selectedValue;
+
+ for (var i = 0; i < radios.length; i++) {
+ if (radios[i].checked) {
+ selectedValue = radios[i].value;
+ break;
+ }
+ }
+
+ var ajax3 = new $ax(Feng.ctxPath + "/ball/getMoney/"+$('#siteId').val()+'/'+selectedValue, function(data){
+ console.log("===========3333====="+data)
+ if(data!=null){
+
+ $("#cash").val(data[0] * count);
+ $("#play").val(data[1] * count);
+
+ }
+ })
+ ajax3.start()
+ }else {
+ var elements = document.getElementsByClassName("layui-btn layui-btn-primary green-button");
+ var count = elements.length;
+
+ console.log("Number of elements: " + count);
+
+ $("#half1").show()
+ var radios = document.getElementsByName("type");
+ var selectedValue;
+
+ for (var i = 0; i < radios.length; i++) {
+ if (radios[i].checked) {
+ selectedValue = radios[i].value;
+ break;
+ }
+ }
+
+ var ajax3 = new $ax(Feng.ctxPath + "/ball/getMoney/"+$('#siteId').val()+'/'+selectedValue, function(data){
+ console.log("===========3333====="+data)
+ if(data!=null){
+
+ $("#cash").val(data[0] * count);
+ $("#play").val(data[1] * count);
+
+ }
+ })
+ ajax3.start()
+
+ }
+
+ }
+
+
+
+ function toggleColor(button) {
+ button.classList.toggle("green-button");
+
+ var elements = document.getElementsByClassName("layui-btn layui-btn-primary green-button");
+ var count = elements.length;
+
+ console.log("Number of elements: " + count);
+
+
+ var radios = document.getElementsByName("type");
+ var selectedValue;
+
+ for (var i = 0; i < radios.length; i++) {
+ if (radios[i].checked) {
+ selectedValue = radios[i].value;
+ break;
+ }
+ }
+
+ var ajax3 = new $ax(Feng.ctxPath + "/ball/getMoney/"+$('#siteId').val()+'/'+selectedValue, function(data){
+ console.log("===========3333====="+data)
+ if(data!=null){
+
+ $("#cash").val(data[0] * count);
+ $("#play").val(data[1] * count);
+
+ }
+ })
+ ajax3.start()
+
+
+ }
+
+ laydate.render({
+ elem: '#time'
+ ,lang:"CN",
+ min:0,
+ max:10,
+ format:'yyyy-MM-dd',
+ done:function (a) {
+ console.log("==============="+$('#time').val())
+ console.log("==============="+$('#selDate').val())
+ console.log("==============="+$('#siteId').val())
+ console.log("==============="+$('#selSiteId').val())
+
+ if ($('#siteId').val() != $('#selSiteId').val()||$('#time').val()!=$('#selDate').val()){
+ $("#ttt3").hide()
+ $("#ttt2").show()
+
+ }else {
+ $("#ttt3").show()
+ $("#ttt2").hide()
+
+ }
+
+ console.log("==========="+a)
+ var ajax = new $ax(Feng.ctxPath + "/ball/yuyuetimes/"+ $('#siteId').val(), function(data){
+ console.log("================"+data)
+ if(data!=null){
+ var content='';
+ $.each(data, function(k, v) {
+ var buttonClass = "layui-btn layui-btn-primary";
+ var style = "";
+ if (v.state === 0) {
+ style = "background-color: red;";
+ }
+ var disabledAttribute = v.state === 0 ? "disabled" : "";
+ content += '<button type="button" class="' + buttonClass + '" ' + disabledAttribute + ' style="' + style + '" onclick="toggleColor(this)">' + v.time + '</button>';
+ });
+ $("#ttt2").empty().append(content);
+ }
+ })
+ ajax.start()
+
+ var ajax1 = new $ax(Feng.ctxPath + "/ball/halfName/"+ $('#siteId').val(), function(data){
+ console.log("================"+data)
+ if(data!=null){
+ let htmlStr = '';
+ for (let i = 0; i < data.length; i++) {
+ htmlStr += '<option value="' + data[i] + '">' + data[i] + '</option>'
+ }
+ $("#half").empty().append(htmlStr);
+ }
+ })
+ ajax1.start()
+
+
+
+
+
+ }
+
+
+ });
+
+ laydate.render({
+ elem: '#holitime'
+ ,range: true //或 range: '~' 来自定义分割字符
+ });
+
+ var avatarUp = new $WebUpload("coverDrawing");
+ avatarUp.setUploadBarId("progressBar");
+ avatarUp.init();
+
+ var avatarUp1 = new $WebUpload("detailDrawing");
+ avatarUp1.setUploadBarId("progressBar");
+ avatarUp1.init();
+
+ var avatarUp1 = new $WebUpload("introduceDrawing");
+ avatarUp1.setUploadBarId("progressBar");
+ avatarUp1.init();
+ function addTime(){
+ var i = $('#dayTime > div').length
+
+ let htmlStr =' <div style="display:flex">\n' +
+ ' <input class="form-control" id="classStartTime'+i+'" name="classStartTime" placeholder="请选择" style="width: 200px;">\n' +
+ ' <i class="fa fa-trash-o" style="font-size:24px" onclick="removePrice1(this)"></i>\n' +
+ ' </div>'
+ $('#dayTime').append(htmlStr);
+ console.log("========="+i)
+ laydate.render({
+ elem: '#classStartTime'+i,
+ type: 'time',
+ range: true
+ });
+ }
+</script>
+@}
diff --git a/cloud-server-management/src/main/webapp/WEB-INF/view/system/coursePackage/coursePackage_add.html b/cloud-server-management/src/main/webapp/WEB-INF/view/system/coursePackage/coursePackage_add.html
index cb7fc3a..f66df1d 100644
--- a/cloud-server-management/src/main/webapp/WEB-INF/view/system/coursePackage/coursePackage_add.html
+++ b/cloud-server-management/src/main/webapp/WEB-INF/view/system/coursePackage/coursePackage_add.html
@@ -205,7 +205,7 @@
<span class="classNumber_span" ${type == 2||type == 3 ? 'hidden=hidden' : ''}><input class="classNumber" type="number" min="0" placeholder="请输入" style="width: 110px;background-color: #FFFFFF;background-image: none;border: 1px solid #e5e6e7;border-radius: 1px;color: inherit;padding: 6px 12px;"> </span>
<span class="cash_span" ></span>
<span class="paiCoin_span"></span>
- <#button btnCss="info" name="优惠卷" id="ensure" icon="fa-check" clickFun="CoursePackageInfo.openDia(1)"/>
+ <#button btnCss="info" name="优惠券" id="ensure" icon="fa-check" clickFun="CoursePackageInfo.openDia(1)"/>
<i class="fa fa-plus-circle" style="font-size:24px" onclick="addPrice(${type})"></i>
<input type="text" id = "counpons1" class="counpons" hidden="hidden" >
</div>
diff --git a/cloud-server-management/src/main/webapp/WEB-INF/view/system/coursePackage/coursePackage_edit.html b/cloud-server-management/src/main/webapp/WEB-INF/view/system/coursePackage/coursePackage_edit.html
index c9d8e1b..7142138 100644
--- a/cloud-server-management/src/main/webapp/WEB-INF/view/system/coursePackage/coursePackage_edit.html
+++ b/cloud-server-management/src/main/webapp/WEB-INF/view/system/coursePackage/coursePackage_edit.html
@@ -221,7 +221,7 @@
@}
</span>
<input type="hidden" id="counpons1" value="${couponIds}" class="counpons">
- <#button btnCss="info" name="优惠卷" id="ensure" icon="fa-check" clickFun="CoursePackageInfo.openDia(1)"/>
+ <#button btnCss="info" name="优惠券" id="ensure" icon="fa-check" clickFun="CoursePackageInfo.openDia(1)"/>
<i class="fa fa-plus-circle" style="font-size:24px" onclick="addPrice(${type})"></i>
</div>
</div>
diff --git a/cloud-server-management/src/main/webapp/WEB-INF/view/system/tCompetition/TCompetition_add.html b/cloud-server-management/src/main/webapp/WEB-INF/view/system/tCompetition/TCompetition_add.html
index b49d32e..92cd00c 100644
--- a/cloud-server-management/src/main/webapp/WEB-INF/view/system/tCompetition/TCompetition_add.html
+++ b/cloud-server-management/src/main/webapp/WEB-INF/view/system/tCompetition/TCompetition_add.html
@@ -70,7 +70,7 @@
<div class="form-group" id="shop">
<label class="col-sm-3 control-label">举办门店:</label>
<div class="col-sm-9">
- <select class="form-control" id="shopId" name="shopId">
+ <select class="form-control" id="shopId" name="shopId" multiple>
<option value="">选择门店</option>
</select>
</div>
@@ -193,10 +193,31 @@
</div>
</div>
<script src="${ctxPath}/modular/system/tCompetition/tCompetition_info.js"></script>
+<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/select2/4.0.13/css/select2.min.css">
+<!--<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script>-->
+<script src="https://cdnjs.cloudflare.com/ajax/libs/select2/4.0.13/js/select2.min.js"></script>
<script src="${ctxPath}/js/vue/vue.js"></script>
<script src="${ctxPath}/js/elementui/index.js"></script>
<link rel="stylesheet" href="${ctxPath}/js/elementui/index.css">
<script>
+ $(document).ready(function() {
+ $('#shopId').select2({
+ multiple: true,
+ closeOnSelect: false
+ });
+ });
+
+ laydate.render({
+ elem: '#startTime'
+ ,type:"datetime"
+ });
+ laydate.render({
+ elem: '#endTime'
+ ,type:"datetime"
+ });
+
+
+
var vue2 = new Vue({
el: '#app1',
props: {
diff --git a/cloud-server-management/src/main/webapp/static/modular/system/ball/yuyue.js b/cloud-server-management/src/main/webapp/static/modular/system/ball/yuyue.js
index 9403aa8..cf527c3 100644
--- a/cloud-server-management/src/main/webapp/static/modular/system/ball/yuyue.js
+++ b/cloud-server-management/src/main/webapp/static/modular/system/ball/yuyue.js
@@ -127,23 +127,88 @@
*/
TStudent.openTStudentDetail = function () {
if (this.check()) {
+
+ if (TStudent.seItem.status!=1){
+ Feng.error("请选择待核销的数据")
+ return
+ }
var index = layer.open({
type: 2,
title: '详情',
area: ['100%', '100%'], //宽高
fix: false, //不固定
maxmin: true,
- content: Feng.ctxPath + '/ball/pre_edit/' + TStudent.seItem.id
+ content: Feng.ctxPath + '/ball/yueyue_edit/' + TStudent.seItem.id
});
this.layerIndex = index;
}
};
+
+TStudent.openTStudentDetail5 = function () {
+ if (this.check()) {
+
+
+ var index = layer.open({
+ type: 2,
+ title: '详情',
+ area: ['100%', '100%'], //宽高
+ fix: false, //不固定
+ maxmin: true,
+ content: Feng.ctxPath + '/ball/yueyue_info/' + TStudent.seItem.id
+ });
+ this.layerIndex = index;
+ }
+};
/**
- * 打开详情
+ * 确认到店
*/
TStudent.openTStudentDetail1 = function () {
+ if (this.check()) {
+
+ if (TStudent.seItem.status!=1){
+ Feng.error("请选择待核销的数据")
+ return
+ }
+ var index = layer.open({
+ type: 2,
+ title: '',
+ area: ['20%', '25%'], //宽高
+ fix: false, //不固定
+ maxmin: true,
+ content: Feng.ctxPath + '/ball/joinmethod/' + TStudent.seItem.id
+ });
+
+ this.layerIndex = index;
+ }
+};
+
+
+/**
+ * 确认到店
+ */
+TStudent.openTStudentDetail4 = function () {
+ if (this.check()) {
+
+ if (TStudent.seItem.status!=1){
+ Feng.error("请选择待核销的数据")
+ return
+ }
+ var index = layer.open({
+ type: 2,
+ title: '',
+ area: ['30%', '40%'], //宽高
+ fix: false, //不固定
+ maxmin: true,
+ content: Feng.ctxPath + '/ball/tocancel/' + TStudent.seItem.id
+ });
+
+ this.layerIndex = index;
+ }
+};
+
+TStudent.openTStudentDetail2 = function () {
if (this.check()) {
var index = layer.open({
type: 2,
@@ -185,7 +250,9 @@
queryData['store'] = $("#store").val();
queryData['peopleName'] = $("#peopleName").val();
queryData['phone'] = $("#phone").val();
- queryData['date'] = $("#peopleName").val();
+ queryData['date'] = $("#date").val();
+ queryData['payMethod'] = $("#payMethod").val();
+ queryData['state'] = $("#state").val();
diff --git a/cloud-server-management/src/main/webapp/static/modular/system/ball/yuyue_info.js b/cloud-server-management/src/main/webapp/static/modular/system/ball/yuyue_info.js
index 9dc4393..4456b15 100644
--- a/cloud-server-management/src/main/webapp/static/modular/system/ball/yuyue_info.js
+++ b/cloud-server-management/src/main/webapp/static/modular/system/ball/yuyue_info.js
@@ -62,6 +62,59 @@
$("#ttt2").empty().append(content);
}
})
+ ajax.set("date",$('#time').val());
+ ajax.start()
+
+ var ajax1 = new $ax(Feng.ctxPath + "/ball/halfName/"+ $('#siteId').val(), function(data){
+ console.log("================"+data)
+ if(data!=null){
+ let htmlStr = '';
+ for (let i = 0; i < data.length; i++) {
+ htmlStr += '<option value="' + data[i] + '">' + data[i] + '</option>'
+ }
+ $("#half").empty().append(htmlStr);
+ }
+ })
+ ajax1.start()
+
+
+
+
+
+};
+
+
+
+CoursePackageInfo.addTime1 = function (a) {
+
+
+ if ($('#siteId').val() != $('#selSiteId').val()||$('#time').val()!=$('#selDate').val()){
+ $("#ttt3").hide()
+ $("#ttt2").show()
+
+ }else {
+ $("#ttt3").show()
+ $("#ttt2").hide()
+
+ }
+
+ console.log("==========="+a)
+ var ajax = new $ax(Feng.ctxPath + "/ball/yuyuetimes/"+ $('#siteId').val(), function(data){
+ console.log("================"+data)
+ if(data!=null){
+ var content='';
+ $.each(data, function(k, v) {
+ var buttonClass = "layui-btn layui-btn-primary";
+ var style = "";
+ if (v.state === 0) {
+ style = "background-color: red;";
+ }
+ var disabledAttribute = v.state === 0 ? "disabled" : "";
+ content += '<button type="button" class="' + buttonClass + '" ' + disabledAttribute + ' style="' + style + '" onclick="toggleColor(this)">' + v.time + '</button>';
+ });
+ $("#ttt2").empty().append(content);
+ }
+ })
ajax.start()
var ajax1 = new $ax(Feng.ctxPath + "/ball/halfName/"+ $('#siteId').val(), function(data){
@@ -114,7 +167,7 @@
var values = "";
for (var i = 0; i < elements.length; i++) {
- values += date +" "+ elements[i].innerText + ",";
+ values += date +" "+ elements[i].innerText + ";";
}
// 去除最后一个逗号
@@ -204,6 +257,144 @@
ajax.start();
};
+
+/**
+ * 新修改
+ */
+CoursePackageInfo.addSubmit1 = function () {
+ let province = $('#provinceCode option:checked').text();
+ let provinceCode = $('#provinceCode').val();
+ let city = $('#cityCode option:checked').text();
+ let cityCode = $('#cityCode').val();
+ let storeId = $('#storeId').val();
+ let siteId = $('#siteId').val();
+ let site = $('#siteId option:checked').text();
+
+
+ var radios = document.getElementsByName("type");
+ var selectedValue;
+
+
+
+ for (var i = 0; i < radios.length; i++) {
+ if (radios[i].checked) {
+ selectedValue = radios[i].value;
+ break;
+ }
+ }
+
+ let type = selectedValue;
+ let half = $('#half').val();
+ let date = $('#time').val();
+
+
+ var elements = document.getElementsByClassName("layui-btn layui-btn-primary green-button");
+ var values = "";
+ console.log("==============="+elements[0])
+ if ($('#siteId').val() != $('#selSiteId').val()||$('#time').val()!=$('#selDate').val()) {
+ for (var i = 0; i < elements.length; i++) {
+ if (elements[i].name != 'has') {
+ values += date + " " + elements[i].innerText + ";";
+ }
+
+ }
+ }else {
+ for (var i = 0; i < elements.length; i++) {
+ if (elements[i].name = 'has') {
+ values += date + " " + elements[i].innerText + ";";
+ }
+ }
+ }
+// 去除最后一个逗号
+ values = values.slice(0, -1);
+
+ console.log(values);
+
+ var times = values;
+
+ let cash = $('#cash').val();
+ let play = $('#play').val();
+ let booker = $('#booker').val();
+ let phone = $('#phone').val();
+ let id = $('#id').val();
+
+
+ // if(null == provinceCode || '' == provinceCode){
+ // Feng.error("所在省不能为空");
+ // return
+ // }
+ // if(null == cityCode || '' == cityCode){
+ // Feng.error("所在市不能为空");
+ // return
+ // }
+ // if(null == storeId || '' == storeId){
+ // Feng.error("所属门店不能为空");
+ // return
+ // }
+ // if(null == coursePackageTypeId || '' == coursePackageTypeId){
+ // Feng.error("课程类型不能为空");
+ // return
+ // }
+ // if(null == name || '' == name){
+ // Feng.error("课包名称不能为空");
+ // return
+ // }
+ // if(null == siteId || '' == siteId){
+ // Feng.error("上课场地不能为空");
+ // return
+ // }
+ // if(null == coachId || '' == coachId){
+ // Feng.error("授课教师不能为空");
+ // return
+ // }
+ //
+ // classWeeks = classWeeks.substring(0, classWeeks.length - 1);
+ //
+ // if(null == coverDrawing || '' == coverDrawing){
+ // Feng.error("课包封面不能为空");
+ // return
+ // }
+ // if(null == detailDrawing || '' == detailDrawing){
+ // Feng.error("详情页不能为空");
+ // return
+ // }
+ // if(null == introduceDrawing || '' == introduceDrawing){
+ // Feng.error("课包介绍不能为空");
+ // return
+ // }
+
+
+ //提交信息
+ var ajax = new $ax(Feng.ctxPath + "/ball/orderedit", function (data) {
+ if(data.code == 200){
+ Feng.success("添加成功!");
+ CoursePackageInfo.close();
+ window.parent.TStudent.table.refresh();
+ }else{
+ Feng.error(data.msg);
+ }
+ }, function (data) {
+ Feng.error("添加失败!" + data.responseJSON.message + "!");
+ });
+ ajax.set("province",province)
+ ajax.set("provinceCode",provinceCode);
+ ajax.set("city",city);
+ ajax.set("cityCode",cityCode);
+ ajax.set("storeId",storeId);
+ ajax.set("isHalf",type);
+ ajax.set("siteId",siteId);
+ ajax.set("nextName",site);
+ ajax.set("halfName",half);
+ ajax.set("date",date);
+ ajax.set("times",times);
+ ajax.set("money",cash+","+play);
+ ajax.set("booker",booker);
+ ajax.set("phone",phone);
+ ajax.set("id",id);
+
+
+ ajax.start();
+};
/**
* 提交修改
*/
diff --git a/cloud-server-management/src/main/webapp/static/modular/system/coursePackage/coursePackage.js b/cloud-server-management/src/main/webapp/static/modular/system/coursePackage/coursePackage.js
index 413b667..e951696 100644
--- a/cloud-server-management/src/main/webapp/static/modular/system/coursePackage/coursePackage.js
+++ b/cloud-server-management/src/main/webapp/static/modular/system/coursePackage/coursePackage.js
@@ -167,10 +167,14 @@
*/
CoursePackage.editCoursePackageState = function (state) {
if (this.check()) {
+
if(CoursePackage.seItem.state == state){
Feng.error("不能重复操作");
return
}
+ parent.layer.confirm(state == 1 ? '是否上架' : "是否下架" , {
+ btn: ['确定', '取消']
+ }, function (index) {
let ajax = new $ax(Feng.ctxPath + "/coursePackage/editCoursePackageState", function (data) {
Feng.success(state == 1 ? '上架' : "下架" + "成功!");
CoursePackage.table.refresh();
@@ -180,6 +184,15 @@
ajax.set("id", CoursePackage.seItem.id);
ajax.set("state", state);
ajax.start();
+ parent.layer.close(index);
+
+ }, function (index) {
+ parent.layer.close(index);
+ }
+
+
+ )
+
}
};
diff --git a/cloud-server-other/src/main/java/com/dsh/other/controller/BallController.java b/cloud-server-other/src/main/java/com/dsh/other/controller/BallController.java
index 9494de6..ff9fa6c 100644
--- a/cloud-server-other/src/main/java/com/dsh/other/controller/BallController.java
+++ b/cloud-server-other/src/main/java/com/dsh/other/controller/BallController.java
@@ -83,6 +83,7 @@
@ResponseBody
@PostMapping("/listorder")
public List<Map<String, Object>> listorder(@RequestBody BookingQuery bookingQuery){
+ System.out.println("===bookingQuery===="+bookingQuery);
return gameService.orderlist(bookingQuery);
// return game.getId();
}
diff --git a/cloud-server-other/src/main/resources/mapper/GameMapper.xml b/cloud-server-other/src/main/resources/mapper/GameMapper.xml
index fb0656a..7ba2226 100644
--- a/cloud-server-other/src/main/resources/mapper/GameMapper.xml
+++ b/cloud-server-other/src/main/resources/mapper/GameMapper.xml
@@ -36,7 +36,39 @@
FROM t_site_booking bk
LEFT JOIN t_store st on bk.storeId = st.id
LEFT JOIN t_site si on bk.siteId = si.id
+ <where>
+ <if test="provinceCode!=null and provinceCode!= ''">
+ and bk.provinceCode=#{provinceCode}
+ </if>
+ <if test="cityCode!=null and cityCode!= ''">
+ and bk.cityCode=#{cityCode}
+ </if>
+ <if test="store!=null and store!= ''">
+ and st.name=#{store}
+ </if>
+
+ <if test="peopleName!=null and peopleName!= ''">
+ and bk.booker=#{peopleName}
+ </if>
+
+ <if test="phone!=null and phone!= ''">
+ and bk.phone=#{phone}
+ </if>
+
+
+ <if test="date!=null and date!= ''">
+ and bk.times like concat('%',#{date},'%') </if>
+ <if test="payMethod!=null ">
+ and bk.payType=#{payMethod}
+ </if>
+
+ <if test="state!=null ">
+ and bk.status=#{state}
+ </if>
+
+
+ </where>
--
Gitblit v1.7.1