| | |
| | | <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" /> |
| | |
| | | <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" /> |
| | |
| | | <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> |
| | |
| | | </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" /> |
| | |
| | | </list> |
| | | <recent_temporary> |
| | | <list> |
| | | <item itemvalue="JUnit.AccountApplicationTests.contextLoads" /> |
| | | <item itemvalue="应用程序.BigDecimalToChineseWords" /> |
| | | </list> |
| | | </recent_temporary> |
| | |
| | | <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> |
| | |
| | | <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"> |
| | |
| | | <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> |
| | |
| | | <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> |
New file |
| | |
| | | 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()); |
| | | } |
| | | |
| | | } |
| | |
| | | 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; |
| | |
| | | void inset(JsDto jsDto); |
| | | |
| | | JsDto get(Integer id); |
| | | |
| | | List<SelectDto> getSelect(); |
| | | } |
| | |
| | | |
| | | 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); |
| | |
| | | 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; |
| | |
| | | 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 |
| | |
| | | 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); |
| | | } |
| | | |
| | | /** |
| | | * 获取变更列表 |
| | |
| | | |
| | | @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 |
| | |
| | | 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); |
| | | |
| | |
| | | @RequestMapping("/pre_add") |
| | | public String add(Model model) { |
| | | |
| | | |
| | | model.addAttribute("is","${is}"); |
| | | |
| | | return PREFIX+"ball_pre_add.html"; |
| | | } |
| | |
| | | |
| | | 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") |
| | |
| | | |
| | | @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(";"); |
| | |
| | | } |
| | | |
| | | 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); |
| | | |
| | | |
| | | } |
| | | |
| | | |
| | |
| | | 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); |
| | | } |
| | | |
| | | } |
New file |
| | |
| | | package com.dsh.guns.modular.system.model.dto; |
| | | |
| | | import lombok.Data; |
| | | |
| | | @Data |
| | | public class MethodDto { |
| | | Integer id; |
| | | Integer method; |
| | | } |
| | |
| | | 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; |
| | |
| | | void insert(JsDto jsDto); |
| | | |
| | | JsDto get(Integer id); |
| | | |
| | | List<SelectDto> getSelect(); |
| | | } |
| | |
| | | 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; |
| | | |
| | |
| | | } |
| | | |
| | | @Override |
| | | public List<SelectDto> getSelect() { |
| | | return this.baseMapper.getSelect(); |
| | | } |
| | | |
| | | @Override |
| | | public List<TImgConfig> getConfig() { |
| | | |
| | | return this.baseMapper.getConfig1(); |
| | |
| | | <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> |
| | |
| | | { |
| | | "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, |
| | |
| | | "horizontal": { |
| | | "leftFixed": "lg" |
| | | }, |
| | | "options": [ |
| | | "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": [ |
| | | { |
| | | "label": "等待沟通中", |
| | | "value": "等待沟通中" |
| | | "componentId": "u:c037c33c2c81", |
| | | "args": { |
| | | "value": "$event.data.value" |
| | | }, |
| | | "actionType": "setValue" |
| | | } |
| | | ] |
| | | } |
| | | }, |
| | | "trueValue": "平台", |
| | | "falseValue": 0, |
| | | "mode": "inline" |
| | | }, |
| | | { |
| | | "type": "select", |
| | |
| | | }, |
| | | "value": "", |
| | | "required": true |
| | | |
| | | }, |
| | | { |
| | | "type": "input-text", |
| | |
| | | "clearValueOnHidden": false, |
| | | "hidden": false, |
| | | "required": true |
| | | |
| | | }, |
| | | { |
| | | "type": "button", |
| | |
| | | "mode": "inline", |
| | | "labelClassName": "text-dark m-b", |
| | | "value": "14" |
| | | }, |
| | | { |
| | | "type": "tpl", |
| | | "id": "u:587781d5d181", |
| | | "tpl": "                                ", |
| | | "inline": true, |
| | | "wrapperComponent": "", |
| | | "style": { |
| | | "marginLeft": "0" |
| | | } |
| | | }, |
| | | { |
| | | "type": "input-text", |
| | |
| | | "value": "16" |
| | | }, |
| | | { |
| | | "type": "tpl", |
| | | "id": "u:587781d5d181", |
| | | "tpl": "                                ", |
| | | "inline": true, |
| | | "wrapperComponent": "", |
| | | "style": { |
| | | "marginLeft": "0" |
| | | } |
| | | }, |
| | | { |
| | | "type": "input-text", |
| | | "label": "玩派币", |
| | | "name": "shequCoin", |
| | |
| | | "value": "13" |
| | | }, |
| | | { |
| | | "type": "tpl", |
| | | "id": "u:587781d5d181", |
| | | "tpl": "                                ", |
| | | "inline": true, |
| | | "wrapperComponent": "", |
| | | "style": { |
| | | "marginLeft": "0" |
| | | } |
| | | }, |
| | | { |
| | | "type": "input-text", |
| | | "label": "玩派币", |
| | | "name": "shemenCoin", |
| | |
| | | "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" |
| | |
| | | "value": "1" |
| | | }, |
| | | { |
| | | "type": "tpl", |
| | | "id": "u:587781d5d181", |
| | | "tpl": "                                ", |
| | | "inline": true, |
| | | "wrapperComponent": "", |
| | | "style": { |
| | | "marginLeft": "0" |
| | | } |
| | | }, |
| | | { |
| | | "type": "input-text", |
| | | "label": "玩派币", |
| | | "name": "fangkuaiCoin", |
| | |
| | | "mode": "inline", |
| | | "labelClassName": "text-dark m-b", |
| | | "value": "7" |
| | | }, |
| | | { |
| | | "type": "tpl", |
| | | "id": "u:587781d5d181", |
| | | "tpl": "                                ", |
| | | "inline": true, |
| | | "wrapperComponent": "", |
| | | "style": { |
| | | "marginLeft": "0" |
| | | } |
| | | }, |
| | | { |
| | | "type": "input-text", |
| | |
| | | "value": "8" |
| | | }, |
| | | { |
| | | "type": "tpl", |
| | | "id": "u:587781d5d181", |
| | | "tpl": "                                ", |
| | | "inline": true, |
| | | "wrapperComponent": "", |
| | | "style": { |
| | | "marginLeft": "0" |
| | | } |
| | | }, |
| | | { |
| | | "type": "input-text", |
| | | "label": "玩派币", |
| | | "name": "sqCoin", |
| | |
| | | "mode": "inline", |
| | | "labelClassName": "text-dark m-b", |
| | | "value": "10" |
| | | }, |
| | | { |
| | | "type": "tpl", |
| | | "id": "u:587781d5d181", |
| | | "tpl": "                                ", |
| | | "inline": true, |
| | | "wrapperComponent": "", |
| | | "style": { |
| | | "marginLeft": "0" |
| | | } |
| | | }, |
| | | { |
| | | "type": "input-text", |
| | |
| | | "value": "11" |
| | | }, |
| | | { |
| | | "type": "tpl", |
| | | "id": "u:587781d5d181", |
| | | "tpl": "                                ", |
| | | "inline": true, |
| | | "wrapperComponent": "", |
| | | "style": { |
| | | "marginLeft": "0" |
| | | } |
| | | }, |
| | | { |
| | | "type": "input-text", |
| | | "label": "玩派币", |
| | | "name": "zs2Coin", |
| | |
| | | }, |
| | | { |
| | | "type": "hidden", |
| | | "label": "游戏名称", |
| | | "label": "", |
| | | "name": "ly", |
| | | "id": "u:c4a543b6cda0", |
| | | "mode": "inline", |
| | |
| | | }, |
| | | { |
| | | "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", |
| | |
| | | "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" |
| | | } |
| | | ] |
| | | } |
| | |
| | | "dataType": "form-data" |
| | | }, |
| | | "actions": [ |
| | | ], |
| | | "onEvent": { |
| | | "submitSucc": { |
| | | "weight": 0, |
| | | "actions": [ |
| | | { |
| | | "args": { |
| | | }, |
| | | "script": "parent.layer.close(window.parent.TStudent.layerIndex);", |
| | | "actionType": "custom" |
| | | } |
| | | ] |
| | | } |
| | | } |
| | | } |
| | | ] |
| | | }; |
| | | |
| | |
| | | "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, |
| | |
| | | "horizontal": { |
| | | "leftFixed": "lg" |
| | | }, |
| | | "options": [ |
| | | "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": [ |
| | | { |
| | | "label": "等待沟通中", |
| | | "value": "等待沟通中" |
| | | "componentId": "u:c037c33c2c81", |
| | | "args": { |
| | | "value": "$event.data.value" |
| | | }, |
| | | "actionType": "setValue" |
| | | } |
| | | ] |
| | | } |
| | | }, |
| | | "trueValue": "平台", |
| | | "falseValue": 0, |
| | | "mode": "inline" |
| | | }, |
| | | { |
| | | "type": "select", |
| | |
| | | "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" |
| | | } |
| | | ] |
| | | } |
New file |
| | |
| | | <!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> |
New file |
| | |
| | | <!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> |
| | |
| | | </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> |
| | |
| | | <#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"/> |
| | |
| | | <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> |
| | | |
| | | |
| | |
| | | <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> |
| | |
| | | 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({ |
New file |
| | |
| | | @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> |
| | | @} |
New file |
| | |
| | | @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> |
| | | @} |
| | |
| | | <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> |
| | |
| | | @} |
| | | </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> |
| | |
| | | <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> |
| | |
| | | </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: { |
| | |
| | | */ |
| | | 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, |
| | |
| | | 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(); |
| | | |
| | | |
| | | |
| | |
| | | $("#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){ |
| | |
| | | var values = ""; |
| | | |
| | | for (var i = 0; i < elements.length; i++) { |
| | | values += date +" "+ elements[i].innerText + ","; |
| | | values += date +" "+ elements[i].innerText + ";"; |
| | | } |
| | | |
| | | // 去除最后一个逗号 |
| | |
| | | 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(); |
| | | }; |
| | | /** |
| | | * 提交修改 |
| | | */ |
| | |
| | | */ |
| | | 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(); |
| | |
| | | ajax.set("id", CoursePackage.seItem.id); |
| | | ajax.set("state", state); |
| | | ajax.start(); |
| | | parent.layer.close(index); |
| | | |
| | | }, function (index) { |
| | | parent.layer.close(index); |
| | | } |
| | | |
| | | |
| | | ) |
| | | |
| | | } |
| | | }; |
| | | |
| | |
| | | @ResponseBody |
| | | @PostMapping("/listorder") |
| | | public List<Map<String, Object>> listorder(@RequestBody BookingQuery bookingQuery){ |
| | | System.out.println("===bookingQuery===="+bookingQuery); |
| | | return gameService.orderlist(bookingQuery); |
| | | // return game.getId(); |
| | | } |
| | |
| | | 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> |
| | | |
| | | |
| | | |