Merge remote-tracking branch 'origin/master'
# Conflicts:
# cloud-server-course/src/main/java/com/dsh/course/feignclient/account/AppUserClient.java
# cloud-server-course/src/main/java/com/dsh/course/service/TCoursePackagePaymentService.java
# cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackagePaymentServiceImpl.java
1 文件已重命名
62个文件已修改
4个文件已添加
| | |
| | | <select /> |
| | | </component> |
| | | <component name="ChangeListManager"> |
| | | <list default="true" id="cb08d02f-fd4f-4fa2-85fe-abd508fa83ac" name="Default Changelist" comment="学员4"> |
| | | <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/controller/CourseStudentController.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/controller/CourseStudentController.java" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/entity/TCoursePackage.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/entity/TCoursePackage.java" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/entity/dto/ConsumeQuery.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/entity/dto/ConsumeQuery.java" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/mapper/TCoursePackagePaymentMapper.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/mapper/TCoursePackagePaymentMapper.java" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/model/dto/ToClassDto.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/model/dto/ToClassDto.java" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/service/TCoursePackagePaymentService.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/service/TCoursePackagePaymentService.java" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/service/impl/CoursePackageSchedulingServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/service/impl/CoursePackageSchedulingServiceImpl.java" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackagePaymentServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackagePaymentServiceImpl.java" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackageServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackageServiceImpl.java" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/cloud-server-course/src/main/resources/mapper/CoursePackageStudentMapper.xml" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-course/src/main/resources/mapper/CoursePackageStudentMapper.xml" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/cloud-server-course/src/main/resources/mapper/TCoursePackageMapper.xml" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-course/src/main/resources/mapper/TCoursePackageMapper.xml" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/cloud-server-course/src/main/resources/mapper/TCoursePackagePaymentMapper.xml" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-course/src/main/resources/mapper/TCoursePackagePaymentMapper.xml" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/course/feignClient/course/CourseStuddentClient.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/course/feignClient/course/CourseStuddentClient.java" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/course/feignClient/course/model/TCoursePackage.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/course/feignClient/course/model/TCoursePackage.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/TStudentController.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/system/TStudentController.java" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/system/UserMgrController.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/system/UserMgrController.java" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/dto/ConsumeQuery.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/dto/ConsumeQuery.java" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/dto/ToClassDto.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/dto/ToClassDto.java" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/service/impl/CoursePackageService.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/service/impl/CoursePackageService.java" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/WEB-INF/view/system/coursePackage/TCoupon.html" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/WEB-INF/view/system/coursePackage/TCoupon.html" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/WEB-INF/view/system/coursePackage/coursePackage.html" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/WEB-INF/view/system/coursePackage/coursePackage.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/coursePackage/coursePackage_info.html" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/WEB-INF/view/system/coursePackage/coursePackage_info.html" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/WEB-INF/view/system/coursePackage/registrationRecord.html" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/WEB-INF/view/system/coursePackage/registrationRecord.html" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/WEB-INF/view/system/tStudent/banckmoney.html" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/WEB-INF/view/system/tStudent/banckmoney.html" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/WEB-INF/view/system/tStudent/classelct.html" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/WEB-INF/view/system/tStudent/classelct.html" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/WEB-INF/view/system/tStudent/tStudent.html" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/WEB-INF/view/system/tStudent/tStudent.html" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/WEB-INF/view/system/tStudent/tStudentEdit.html" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/WEB-INF/view/system/tStudent/tStudentEdit.html" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/static/modular/system/coursePackage/TCoupon.js" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/static/modular/system/coursePackage/TCoupon.js" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/static/modular/system/coursePackage/classRecord.js" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/static/modular/system/coursePackage/classRecord.js" 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-management/src/main/webapp/static/modular/system/coursePackage/coursePackage_info.js" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/static/modular/system/coursePackage/coursePackage_info.js" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/static/modular/system/coursePackage/registrationRecord.js" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/static/modular/system/coursePackage/registrationRecord.js" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/static/modular/system/tStudent/tStudent.js" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/static/modular/system/tStudent/tStudent.js" afterDir="false" /> |
| | | </list> |
| | | <list default="true" id="cb08d02f-fd4f-4fa2-85fe-abd508fa83ac" name="Default Changelist" comment="9.26。7" /> |
| | | <option name="SHOW_DIALOG" value="false" /> |
| | | <option name="HIGHLIGHT_CONFLICTS" value="true" /> |
| | | <option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" /> |
| | |
| | | <option name="hideEmptyMiddlePackages" value="true" /> |
| | | <option name="showLibraryContents" value="true" /> |
| | | </component> |
| | | <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:/JavaTool/PlayPai1/cloud-server-management/src/main/webapp/WEB-INF/view/system/coursePackage", |
| | | "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": "MavenSettings", |
| | | "spring.configuration.checksum": "b0c8222ba40624e179f539b98c2e8cad", |
| | | "vue.rearranger.settings.migration": "true" |
| | | <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:/JavaTool/PlayPai1/cloud-server-management/src/main/webapp/static/modular/system/coursePackage", |
| | | "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", |
| | | "settings.editor.selected.configurable": "preferences.pluginManager", |
| | | "spring.configuration.checksum": "b0c8222ba40624e179f539b98c2e8cad", |
| | | "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:\JavaTool\PlayPai1\cloud-server-management\src\main\webapp\WEB-INF\view\system\coursePackage" /> |
| | | <recent name="D:\JavaTool\PlayPai1\cloud-server-management\src\main\webapp\static\modular\system\coursePackage" /> |
| | | <recent name="D:\JavaTool\PlayPai1\cloud-server-management\src\main\webapp\WEB-INF\view\system\coursePackage" /> |
| | | <recent name="D:\JavaTool\PlayPai1\cloud-server-management\src\main\webapp\WEB-INF\view\system\tStudent" /> |
| | | <recent name="D:\JavaTool\PlayPai1\cloud-server-management\src\main\webapp\static\modular\system\tCoupon" /> |
| | | <recent name="D:\JavaTool\PlayPai1\cloud-server-management\src\main\webapp\WEB-INF\view\system" /> |
| | |
| | | </configuration> |
| | | <list> |
| | | <item itemvalue="Spring Boot.GatewayApplication" /> |
| | | <item itemvalue="Spring Boot.UserApplication" /> |
| | | <item itemvalue="Spring Boot.AccountApplication" /> |
| | | <item itemvalue="Spring Boot.ManagementApplication" /> |
| | | <item itemvalue="Spring Boot.OtherApplication" /> |
| | | <item itemvalue="Spring Boot.UserApplication" /> |
| | | <item itemvalue="Spring Boot.AccountApplication" /> |
| | | <item itemvalue="Spring Boot.AuthApplication" /> |
| | | <item itemvalue="Spring Boot.ActivityApplication" /> |
| | | <item itemvalue="Spring Boot.CourseApplication" /> |
| | |
| | | </component> |
| | | <component name="SpellCheckerSettings" RuntimeDictionaries="0" Folders="0" CustomDictionaries="0" DefaultDictionary="应用程序级" UseSingleDictionary="true" transferred="true" /> |
| | | <component name="SvnConfiguration"> |
| | | <configuration /> |
| | | <configuration>C:\Users\luo\AppData\Roaming\Subversion</configuration> |
| | | </component> |
| | | <component name="TaskManager"> |
| | | <task active="true" id="Default" summary="Default task"> |
| | |
| | | <workItem from="1695430054273" duration="24454000" /> |
| | | <workItem from="1695461202457" duration="3973000" /> |
| | | <workItem from="1695520475699" duration="28522000" /> |
| | | <workItem from="1695602623205" duration="20433000" /> |
| | | <workItem from="1695602623205" duration="24182000" /> |
| | | <workItem from="1695633570775" duration="65000" /> |
| | | <workItem from="1695633789585" duration="4703000" /> |
| | | <workItem from="1695638521906" duration="1415000" /> |
| | | <workItem from="1695689815334" duration="13353000" /> |
| | | <workItem from="1695718856285" duration="16156000" /> |
| | | </task> |
| | | <task id="LOCAL-00001" summary="后台代码删除"> |
| | | <created>1690249807612</created> |
| | |
| | | <option name="project" value="LOCAL" /> |
| | | <updated>1695461535365</updated> |
| | | </task> |
| | | <option name="localTasksCounter" value="18" /> |
| | | <task id="LOCAL-00018" summary="9.25"> |
| | | <option name="closed" value="true" /> |
| | | <created>1695629926005</created> |
| | | <option name="number" value="00018" /> |
| | | <option name="presentableId" value="LOCAL-00018" /> |
| | | <option name="project" value="LOCAL" /> |
| | | <updated>1695629926005</updated> |
| | | </task> |
| | | <task id="LOCAL-00019" summary="9.25"> |
| | | <option name="closed" value="true" /> |
| | | <created>1695636138175</created> |
| | | <option name="number" value="00019" /> |
| | | <option name="presentableId" value="LOCAL-00019" /> |
| | | <option name="project" value="LOCAL" /> |
| | | <updated>1695636138175</updated> |
| | | </task> |
| | | <task id="LOCAL-00020" summary="9.26"> |
| | | <option name="closed" value="true" /> |
| | | <created>1695719130696</created> |
| | | <option name="number" value="00020" /> |
| | | <option name="presentableId" value="LOCAL-00020" /> |
| | | <option name="project" value="LOCAL" /> |
| | | <updated>1695719130696</updated> |
| | | </task> |
| | | <task id="LOCAL-00021" summary="9.26。1"> |
| | | <option name="closed" value="true" /> |
| | | <created>1695723019798</created> |
| | | <option name="number" value="00021" /> |
| | | <option name="presentableId" value="LOCAL-00021" /> |
| | | <option name="project" value="LOCAL" /> |
| | | <updated>1695723019798</updated> |
| | | </task> |
| | | <task id="LOCAL-00022" summary="9.26。2"> |
| | | <option name="closed" value="true" /> |
| | | <created>1695725709313</created> |
| | | <option name="number" value="00022" /> |
| | | <option name="presentableId" value="LOCAL-00022" /> |
| | | <option name="project" value="LOCAL" /> |
| | | <updated>1695725709313</updated> |
| | | </task> |
| | | <task id="LOCAL-00023" summary="9.26。3"> |
| | | <option name="closed" value="true" /> |
| | | <created>1695728959013</created> |
| | | <option name="number" value="00023" /> |
| | | <option name="presentableId" value="LOCAL-00023" /> |
| | | <option name="project" value="LOCAL" /> |
| | | <updated>1695728959013</updated> |
| | | </task> |
| | | <task id="LOCAL-00024" summary="9.26。4"> |
| | | <option name="closed" value="true" /> |
| | | <created>1695730124076</created> |
| | | <option name="number" value="00024" /> |
| | | <option name="presentableId" value="LOCAL-00024" /> |
| | | <option name="project" value="LOCAL" /> |
| | | <updated>1695730124076</updated> |
| | | </task> |
| | | <task id="LOCAL-00025" summary="9.26。5"> |
| | | <option name="closed" value="true" /> |
| | | <created>1695730466910</created> |
| | | <option name="number" value="00025" /> |
| | | <option name="presentableId" value="LOCAL-00025" /> |
| | | <option name="project" value="LOCAL" /> |
| | | <updated>1695730466910</updated> |
| | | </task> |
| | | <task id="LOCAL-00026" summary="9.26。6"> |
| | | <option name="closed" value="true" /> |
| | | <created>1695734782274</created> |
| | | <option name="number" value="00026" /> |
| | | <option name="presentableId" value="LOCAL-00026" /> |
| | | <option name="project" value="LOCAL" /> |
| | | <updated>1695734782274</updated> |
| | | </task> |
| | | <task id="LOCAL-00027" summary="9.26。7"> |
| | | <option name="closed" value="true" /> |
| | | <created>1695735077405</created> |
| | | <option name="number" value="00027" /> |
| | | <option name="presentableId" value="LOCAL-00027" /> |
| | | <option name="project" value="LOCAL" /> |
| | | <updated>1695735077405</updated> |
| | | </task> |
| | | <option name="localTasksCounter" value="28" /> |
| | | <servers /> |
| | | </component> |
| | | <component name="TypeScriptGeneratedFilesManager"> |
| | |
| | | <MESSAGE value="学员" /> |
| | | <MESSAGE value="学员2" /> |
| | | <MESSAGE value="学员4" /> |
| | | <option name="LAST_COMMIT_MESSAGE" value="学员4" /> |
| | | <MESSAGE value="9.25" /> |
| | | <MESSAGE value="9.26" /> |
| | | <MESSAGE value="9.26。1" /> |
| | | <MESSAGE value="9.26。2" /> |
| | | <MESSAGE value="9.26。3" /> |
| | | <MESSAGE value="9.26。4" /> |
| | | <MESSAGE value="9.26。5" /> |
| | | <MESSAGE value="9.26。6" /> |
| | | <MESSAGE value="9.26。7" /> |
| | | <option name="LAST_COMMIT_MESSAGE" value="9.26。7" /> |
| | | </component> |
| | | <component name="XDebuggerManager"> |
| | | <breakpoint-manager> |
| | |
| | | <line>111</line> |
| | | <option name="timeStamp" value="2" /> |
| | | </line-breakpoint> |
| | | <line-breakpoint type="java-line"> |
| | | <url>file://$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/service/impl/CoursePackageService.java</url> |
| | | <line>458</line> |
| | | <option name="timeStamp" value="9" /> |
| | | </line-breakpoint> |
| | | <line-breakpoint type="java-line"> |
| | | <url>file://$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/controller/CoursePackagePaymentController.java</url> |
| | | <line>1294</line> |
| | | <option name="timeStamp" value="14" /> |
| | | </line-breakpoint> |
| | | </breakpoints> |
| | | </breakpoint-manager> |
| | | </component> |
| | |
| | | @PostMapping("/student/queryDefaultStudent") |
| | | public TStudent queryDefaultStudent(@RequestBody Integer appUserId){ |
| | | try { |
| | | TStudent one = studentService.getOne(new QueryWrapper<TStudent>().eq("appUserId", appUserId).eq("isDefault", 1).eq("state", 1)); |
| | | TStudent one = studentService.getOne(new QueryWrapper<TStudent>().eq("appUserId", appUserId).eq("isDefault", 1).eq("state", 1).last("limit 1")); |
| | | return one; |
| | | }catch (Exception e){ |
| | | e.printStackTrace(); |
| | |
| | | System.out.println("======giftSelect=========giftSearchDto===="+giftSearchDto); |
| | | |
| | | // Integer appId = studentService.getGiftSelect(giftSearchDto); |
| | | TCoursePackagePayment coursePackagePaymentById = paymentClient.getCoursePackagePaymentById(giftSearchDto.getId()); |
| | | TCoursePackagePayment1 coursePackagePaymentById = paymentClient.getCoursePackagePaymentById1(giftSearchDto.getId()); |
| | | // System.out.println("=======giftSelect======appId====>"+appId); |
| | | List<TStudent> selectDtos = studentService.list(new QueryWrapper<TStudent>() |
| | | .select("name, id") |
| | |
| | | detailsVo.setUserImage(tAppUser.getHeadImg()); |
| | | detailsVo.setUserName(tAppUser.getName()); |
| | | detailsVo.setUserPhone(tAppUser.getPhone()); |
| | | detailsVo.setSex(tAppUser.getGender() == 1 ? "男" : "女"); |
| | | if(tAppUser.getGender()!=null){ |
| | | |
| | | detailsVo.setSex(tAppUser.getGender() == 1 ? "男" : "女"); |
| | | } |
| | | detailsVo.setBirthday(format1.format(tAppUser.getBirthday())); |
| | | detailsVo.setAddress(tAppUser.getProvince()+tAppUser.getCity()); |
| | | detailsVo.setMemberLifespan(format1.format(tAppUser.getVipEndTime())); |
| | | if(tAppUser.getVipEndTime()!=null){ |
| | | |
| | | detailsVo.setMemberLifespan(format1.format(tAppUser.getVipEndTime())); |
| | | } |
| | | } |
| | | return ResultUtil.success(detailsVo); |
| | | }catch (Exception e){ |
| | |
| | | @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9....."), |
| | | @ApiImplicitParam(value = "记录id", name = "detailsId", required = true, dataType = "string"), |
| | | }) |
| | | public ResultUtil<PointDetailsVo> redemptionDetails(Integer detailsId){ |
| | | public ResultUtil<PointDetailsVo> redemptionDetails(Long detailsId){ |
| | | try { |
| | | return ResultUtil.success(uicService.queryRedemptionDetails(detailsId)); |
| | | }catch (Exception e){ |
| | |
| | | package com.dsh.account.dto; |
| | | |
| | | import io.swagger.models.auth.In; |
| | | import lombok.Data; |
| | | |
| | | @Data |
New file |
| | |
| | | package com.dsh.account.dto; |
| | | |
| | | import com.baomidou.mybatisplus.annotation.*; |
| | | import com.baomidou.mybatisplus.extension.activerecord.Model; |
| | | import com.dsh.account.feignclient.course.model.TCoursePackagePayment; |
| | | import com.fasterxml.jackson.annotation.JsonFormat; |
| | | import lombok.Data; |
| | | import lombok.EqualsAndHashCode; |
| | | import lombok.experimental.Accessors; |
| | | |
| | | import java.math.BigDecimal; |
| | | import java.util.Date; |
| | | |
| | | /** |
| | | * <p> |
| | | * 用户课程包购买记录 |
| | | * </p> |
| | | * |
| | | * @author administrator |
| | | * @since 2023-06-14 |
| | | */ |
| | | @Data |
| | | @EqualsAndHashCode(callSuper = false) |
| | | @Accessors(chain = true) |
| | | @TableName("t_course_package_payment") |
| | | public class TCoursePackagePayment1 { |
| | | private static final long serialVersionUID = 1L; |
| | | |
| | | /** |
| | | * 主键 |
| | | */ |
| | | @TableId(value = "id", type = IdType.NONE) |
| | | @TableField(updateStrategy = FieldStrategy.NEVER) |
| | | private Long id; |
| | | /** |
| | | * 业务编号 |
| | | */ |
| | | @TableField("code") |
| | | private String code; |
| | | /** |
| | | * 用户id |
| | | */ |
| | | @TableField("appUserId") |
| | | private Integer appUserId; |
| | | /** |
| | | * 学员id |
| | | */ |
| | | @TableField("studentId") |
| | | private Integer studentId; |
| | | /** |
| | | * 课包id |
| | | */ |
| | | @TableField("coursePackageId") |
| | | private Integer coursePackageId; |
| | | /** |
| | | * 支付方式(1=微信,2=支付宝,3=玩湃币,4=积分,5=积分+微信,6=积分+支付宝) |
| | | */ |
| | | @TableField("payType") |
| | | private Integer payType; |
| | | /** |
| | | * 课时数 |
| | | */ |
| | | @TableField("classHours") |
| | | private Integer classHours; |
| | | /** |
| | | * 原价 |
| | | */ |
| | | @TableField("originalPrice") |
| | | private Double originalPrice; |
| | | /** |
| | | * 优惠券id |
| | | */ |
| | | @TableField("userCouponId") |
| | | private Long userCouponId; |
| | | /** |
| | | * 现金支付价格 |
| | | */ |
| | | @TableField("cashPayment") |
| | | private BigDecimal cashPayment; |
| | | /** |
| | | * 玩湃币价格/积分 |
| | | */ |
| | | @TableField("playPaiCoin") |
| | | private Integer playPaiCoin; |
| | | /** |
| | | * 总课时 |
| | | */ |
| | | @TableField("totalClassHours") |
| | | private Integer totalClassHours; |
| | | /** |
| | | * 剩余课时 |
| | | */ |
| | | @TableField("laveClassHours") |
| | | private Integer laveClassHours; |
| | | /** |
| | | * 缺课次数 |
| | | */ |
| | | @TableField("absencesNumber") |
| | | private Integer absencesNumber; |
| | | /** |
| | | * 退课课时 |
| | | */ |
| | | @TableField(exist = false) |
| | | private Integer dropoutsNumber; |
| | | /** |
| | | * 支付用户类型(1=用户,2=管理员) |
| | | */ |
| | | @TableField("payUserType") |
| | | private Integer payUserType; |
| | | /** |
| | | * 支付状态(1=待支付,2=已支付) |
| | | */ |
| | | @TableField("payStatus") |
| | | private Integer payStatus; |
| | | /** |
| | | * 第三方支付流水号 |
| | | */ |
| | | @TableField("orderNumber") |
| | | private String orderNumber; |
| | | /** |
| | | * 支付用户id |
| | | */ |
| | | @TableField("payUserId") |
| | | private Integer payUserId; |
| | | /** |
| | | * 课程状态(1=正常,2=已退课) |
| | | */ |
| | | @TableField("status") |
| | | private Integer status; |
| | | /** |
| | | * 退课时间 |
| | | */ |
| | | @TableField("withdrawalTime") |
| | | @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") |
| | | private Date withdrawalTime; |
| | | /** |
| | | * 退课凭证 |
| | | */ |
| | | @TableField("certificate") |
| | | private String certificate; |
| | | /** |
| | | * 状态(1=正常,2=冻结,3=删除) |
| | | */ |
| | | @TableField("state") |
| | | private Integer state; |
| | | /** |
| | | * 添加时间 |
| | | */ |
| | | @TableField("insertTime") |
| | | @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") |
| | | private Date insertTime; |
| | | |
| | | |
| | | @TableField("useTime") |
| | | @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") |
| | | private Date useTime; |
| | | |
| | | /** |
| | | * 平台手动支付时使用 |
| | | */ |
| | | @TableField("payUserName") |
| | | private String payUserName; |
| | | } |
| | |
| | | public class GiftSearchDto { |
| | | String name; |
| | | String phone; |
| | | Integer id; |
| | | Long id; |
| | | } |
| | |
| | | ExchangeDetailsVo getIntegralExchangeDetails(@RequestBody Integer appUserId); |
| | | |
| | | @PostMapping("/base/pointMerchars/getSpecificsOfGoods") |
| | | public PointDetailsVo getSpecificsOfGoods(@RequestBody Integer speMercharsId); |
| | | public PointDetailsVo getSpecificsOfGoods(@RequestBody Long speMercharsId); |
| | | |
| | | @PostMapping("/base/pointMerchars/selectPointsMerchandiseById") |
| | | public PointsMerchandise selectPointsMerchandiseById(@RequestBody Integer speMercharsId); |
| | |
| | | package com.dsh.account.feignclient.course; |
| | | |
| | | import com.dsh.account.dto.TCoursePackagePayment1; |
| | | import com.dsh.account.feignclient.competition.model.BillingDataRequestVo; |
| | | import com.dsh.account.feignclient.course.model.*; |
| | | import com.dsh.account.model.BillingRequest; |
| | |
| | | |
| | | |
| | | @PostMapping("/base/coursePack/getCoursePackagePaymentById") |
| | | public TCoursePackagePayment getCoursePackagePaymentById(@RequestBody Integer id); |
| | | public TCoursePackagePayment getCoursePackagePaymentById(@RequestBody Long id); |
| | | |
| | | |
| | | @PostMapping("/base/coursePack/getCoursePackagePaymentById") |
| | | public TCoursePackagePayment1 getCoursePackagePaymentById1(@RequestBody Long id); |
| | | |
| | | @PostMapping("/base/coursePack/updatePaymentCoursePackage") |
| | | void updatePaymentCoursePackage(@RequestBody TCoursePackagePayment coursePackagePayment); |
| | |
| | | import java.util.List; |
| | | |
| | | @Data |
| | | public class PointDetailsVo { |
| | | public class PointDetailsVo { |
| | | |
| | | @ApiModelProperty(value = "记录id") |
| | | private Integer detailsId; |
| | | private Long detailsId; |
| | | |
| | | @ApiModelProperty(value = "图片集") |
| | | private List<String> pics; |
| | |
| | | List<ExchangeDetailsResponse> queryExchangeGoodsdetails(Integer userIdFormRedis, Integer useType, Integer goodType); |
| | | |
| | | |
| | | PointDetailsVo queryRedemptionDetails(Integer detailsId); |
| | | PointDetailsVo queryRedemptionDetails(Long detailsId); |
| | | |
| | | Page<UserIntegral> listAll(Page<UserIntegral> userIntegralPage, IntegralListQuery integralListQuery); |
| | | |
| | |
| | | if(tAppUser.getState() == 2){ |
| | | return ResultUtil.error("您的账号已被冻结", ""); |
| | | } |
| | | password = Md5Util.MD5Encode(password, null); |
| | | // password = Md5Util.MD5Encode(password, null); |
| | | if(!tAppUser.getPassword().equals(password)){ |
| | | return ResultUtil.error("账号密码错误", ""); |
| | | } |
| | |
| | | commodity.setShopIds(mcsClient.queryPointMerStoreIds(vicinityGood.getId())); |
| | | break; |
| | | default: |
| | | |
| | | break; |
| | | } |
| | | goods.add(commodity); |
| | |
| | | } |
| | | commodity.setBelongsType(allCoupon.getUserPopulation()); |
| | | commodity.setGoodsType(4); |
| | | commodity.setShopIds(ucponClient.getCouponStoreIds(allCoupon.getId())); |
| | | commodity.setNums(ucponClient.getRedeemedQuantity(allCoupon.getId())); |
| | | goods.add(commodity); |
| | | } |
| | |
| | | |
| | | import javax.annotation.Resource; |
| | | import java.math.BigDecimal; |
| | | import java.math.RoundingMode; |
| | | import java.text.ParseException; |
| | | import java.text.SimpleDateFormat; |
| | | import java.util.*; |
| | |
| | | student.setHeight(stu.getHeight()); |
| | | student.setWeight(stu.getWeight()); |
| | | BigDecimal bigDecimal = BigDecimal.valueOf(stu.getWeight()); |
| | | BigDecimal multiply = bigDecimal.subtract(BigDecimal.valueOf(stu.getHeight())).multiply(bigDecimal.subtract(BigDecimal.valueOf(stu.getHeight()))); |
| | | multiply.setScale(2); |
| | | student.setBmi(multiply.doubleValue()); |
| | | double v = stu.getHeight() / 100; |
| | | double v1 = v * v; |
| | | BigDecimal bigDecimal1 = new BigDecimal(v1).setScale(2, RoundingMode.HALF_UP); |
| | | double v2 = bigDecimal.doubleValue() / bigDecimal1.doubleValue(); |
| | | BigDecimal bigDecimal2 = new BigDecimal(v2).setScale(2, RoundingMode.HALF_UP); |
| | | student.setBmi(bigDecimal2.doubleValue()); |
| | | student.setInsertTime(new Date()); |
| | | student.setState(1); |
| | | |
| | | List<TStudent> tStudents = this.baseMapper.selectList(new LambdaQueryWrapper<TStudent>().eq(TStudent::getAppUserId, appUserId)); |
| | | if(tStudents.size()>0){ |
| | | student.setIsDefault(2); |
| | | }else { |
| | | student.setIsDefault(1); |
| | | } |
| | | this.baseMapper.insert(student); |
| | | |
| | | //同步信息到参赛人员信息中 |
| | |
| | | } |
| | | |
| | | @Override |
| | | public PointDetailsVo queryRedemptionDetails(Integer detailsId) { |
| | | return mcClient.getSpecificsOfGoods(detailsId); |
| | | public PointDetailsVo queryRedemptionDetails(Long detailsId) { |
| | | PointDetailsVo specificsOfGoods = mcClient.getSpecificsOfGoods(detailsId); |
| | | return specificsOfGoods; |
| | | } |
| | | |
| | | @Override |
| | |
| | | |
| | | @ResponseBody |
| | | @PostMapping("/base/pointMerchars/getSpecificsOfGoods") |
| | | public PointDetailsVo getSpecificsOfGoods(@RequestBody Integer speMercharsId){ |
| | | public PointDetailsVo getSpecificsOfGoods(@RequestBody Long speMercharsId){ |
| | | SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd"); |
| | | PointDetailsVo detailsVo = new PointDetailsVo(); |
| | | UserPointsMerchandise byId = upmseService.getById(speMercharsId); |
| | |
| | | switch (pmdsServiceById.getType()){ |
| | | case 1: |
| | | case 3: |
| | | List<String> list2 = Arrays.asList(StrUtils.splitStr2StrArr(pmdsServiceById.getProductImages(), ",")); |
| | | List<String> list10 = Arrays.asList(StrUtils.splitStr2StrArr(pmdsServiceById.getProductImages(), ",")); |
| | | ArrayList<String> list2 = new ArrayList<>(list10); |
| | | list2.add(pmdsServiceById.getCover()); |
| | | detailsVo.setPics(list2); |
| | | Collections.sort(detailsVo.getPics(), (s1, s2) -> { |
| | |
| | | break; |
| | | case 2: |
| | | CoursePackage coursePackage = cpClient.queryCoursePackageById(pmdsServiceById.getCoursePackageId()); |
| | | List<String> list1 = Arrays.asList(StrUtils.splitStr2StrArr(coursePackage.getDetailDrawing(), ",")); |
| | | List<String> list11 = Arrays.asList(StrUtils.splitStr2StrArr(coursePackage.getDetailDrawing(), ",")); |
| | | ArrayList<String> list1 = new ArrayList<>(list11); |
| | | list1.add(coursePackage.getCoverDrawing()); |
| | | detailsVo.setPics(list1); |
| | | CoursePackagePaymentConfig coursePackagePaymentConfig = cpClient.queryConfigCoursePackData(pmdsServiceById.getCoursePackageConfigId()); |
| | |
| | | break; |
| | | case 4: |
| | | Coupon coupon = iCouponService.getById(pmdsServiceById.getId()); |
| | | List<String> list3 = Arrays.asList(StrUtils.splitStr2StrArr(coupon.getProductImages(), ",")); |
| | | List<String> list13 = Arrays.asList(StrUtils.splitStr2StrArr(coupon.getProductImages(), ",")); |
| | | ArrayList<String> list3 = new ArrayList<>(list13); |
| | | list3.add(coupon.getCover()); |
| | | detailsVo.setPics(list3); |
| | | Collections.sort(detailsVo.getPics(), (s1, s2) -> { |
| | |
| | | if (list.size() > 0){ |
| | | storeIds = list.stream().map(PointsMerchandiseStore::getStoreId).collect(Collectors.toList()); |
| | | } |
| | | if(storeIds.size()==0){ |
| | | storeIds.add(-1); |
| | | } |
| | | return storeIds; |
| | | } |
| | | |
| | |
| | | if (list.size() > 0 ){ |
| | | storeIds = list.stream().map(CouponStore::getStoreId).collect(Collectors.toList()); |
| | | } |
| | | if(storeIds.size()==0){ |
| | | storeIds.add(-1); |
| | | } |
| | | return storeIds; |
| | | }catch (Exception e){ |
| | | e.printStackTrace(); |
| | |
| | | package com.dsh.activity.feignclient.account.model; |
| | | |
| | | import com.fasterxml.jackson.annotation.JsonFormat; |
| | | import lombok.Data; |
| | | |
| | | import java.util.Date; |
| | |
| | | /** |
| | | * 生日 |
| | | */ |
| | | @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") |
| | | private Date birthday; |
| | | /** |
| | | * 性别(1=男,2=女) |
| | |
| | | package com.dsh.competition.feignclient.account.model; |
| | | |
| | | import com.fasterxml.jackson.annotation.JsonFormat; |
| | | import lombok.Data; |
| | | |
| | | import java.util.Date; |
| | |
| | | /** |
| | | * 生日 |
| | | */ |
| | | @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") |
| | | private Date birthday; |
| | | /** |
| | | * 性别(1=男,2=女) |
| | |
| | | // 2.0 |
| | | ArrayList<Map<String,Object>> objects = new ArrayList<>(); |
| | | if(null != competition.getStoreId()){ |
| | | HashMap<String, Object> map = new HashMap<>(); |
| | | |
| | | String storeId = competition.getStoreId(); |
| | | for (String s : storeId.split(",")) { |
| | | HashMap<String, Object> map = new HashMap<>(); |
| | | Store store = storeClient.queryStoreById(Integer.valueOf(s)); |
| | | map.put("name",store.getName()); |
| | | map.put("address",store.getAddress()); |
| | |
| | | double wgs84 = new BigDecimal(distance.get("WGS84")).divide(new BigDecimal(1000)).setScale(2, RoundingMode.HALF_EVEN).doubleValue(); |
| | | map.put("distance",wgs84); |
| | | } |
| | | objects.add(map); |
| | | } |
| | | objects.add(map); |
| | | |
| | | } |
| | | competitionInfo.setStoreInfos(objects); |
| | | |
| | |
| | | import com.baomidou.mybatisplus.extension.activerecord.Model; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.dsh.course.entity.*; |
| | | import com.dsh.course.entity.TAppUser; |
| | | import com.dsh.course.feignclient.account.AppUserClient; |
| | | import com.dsh.course.feignclient.account.StudentClient; |
| | | import com.dsh.course.feignclient.account.model.AppUser; |
| | |
| | | |
| | | |
| | | @PostMapping("/base/coursePack/getCoursePackagePaymentById") |
| | | public TCoursePackagePayment getCoursePackagePaymentById(@RequestBody Integer id){ |
| | | return packagePaymentService.getById(id); |
| | | public TCoursePackagePayment getCoursePackagePaymentById(@RequestBody Long id){ |
| | | TCoursePackagePayment byId = packagePaymentService.getById(id); |
| | | System.out.println("======byId=========="+byId); |
| | | return byId; |
| | | } |
| | | |
| | | |
| | | @PostMapping("/base/coursePack/delPaymentCoursePackage") |
| | | public boolean delPaymentCoursePackage(@RequestBody Integer payId){ |
| | | return packagePaymentService.removeById(payId); |
| | |
| | | */ |
| | | @ResponseBody |
| | | @PostMapping("/coursePackagePayment/queryCoursePackagePaymentById") |
| | | public TCoursePackagePayment queryCoursePackagePaymentById(@RequestBody Long id){ |
| | | public TCoursePackagePayment queryCoursePackagePaymentById(@RequestParam("id")Long id){ |
| | | return packagePaymentService.getById(id); |
| | | } |
| | | |
| | |
| | | @ResponseBody |
| | | @PostMapping("/coursePackagePayment/editCoursePackagePayment") |
| | | public void editCoursePackagePayment(TCoursePackagePayment coursePackagePayment){ |
| | | coursePackagePayment.setAppUserId(null); |
| | | packagePaymentService.updateById(coursePackagePayment); |
| | | } |
| | | |
| | | |
| | | |
| | | /** |
| | | * 修改数据 |
| | | * @param coursePackagePayment |
| | | */ |
| | | @ResponseBody |
| | | @PostMapping("/coursePackagePayment/editCoursePackagePayment1") |
| | | public void editCoursePackagePayment1(@RequestBody TCoursePackagePayment coursePackagePayment){ |
| | | System.out.println("editCoursePackagePayment1====coursePackagePayment"+coursePackagePayment); |
| | | // coursePackagePayment.setCoursePackageId(null); |
| | | packagePaymentService.updateBytime(coursePackagePayment); |
| | | } |
| | | |
| | | |
| | |
| | | if (ToolUtil.isEmpty(packagePayment) || packagePayment.size()==0){ |
| | | return ResultUtil.error("该用户未购买该课包"); |
| | | } |
| | | List<CoursePackageScheduling> coursePackageSchedulings = coursePackageSchedulingMapper.selectList(new LambdaQueryWrapper<CoursePackageScheduling>() |
| | | .eq(CoursePackageScheduling::getCoursePackageId, Integer.valueOf(courseID)) |
| | | .like(CoursePackageScheduling::getClassDate, time) |
| | | ); |
| | | |
| | | List<CoursePackageStudent> coursePackageStudent = cspsService.list(new LambdaQueryWrapper<CoursePackageStudent>() |
| | | .in(CoursePackageStudent::getCoursePackagePaymentId,packagePayment.stream().map(TCoursePackagePayment::getId).collect(Collectors.toList())) |
| | | .in(CoursePackageStudent::getCoursePackageSchedulingId,coursePackageSchedulings.stream().map(CoursePackageScheduling::getId).collect(Collectors.toList())) |
| | | .eq(CoursePackageStudent::getCoursePackageId,courseID) |
| | | .eq(CoursePackageStudent::getStudentId,stuId) |
| | | .eq(CoursePackageStudent::getAppUserId,appUserId) |
| | |
| | | } |
| | | return ResultUtil.success(); |
| | | }catch (Exception e){ |
| | | e.printStackTrace(); |
| | | return ResultUtil.runErr(); |
| | | } |
| | | } |
| | |
| | | String classEndTime = tCoursePackage.getClassEndTime(); |
| | | String[] split1 = classEndTime.split(","); |
| | | ArrayList<String> strings = new ArrayList<>(); |
| | | for (int i1 = 0; i1 < split.length; i1++) { |
| | | String s = split[i1] + "-" + split1[i1]; |
| | | strings.add(s); |
| | | if(ToolUtil.isNotEmpty(classStartTime)){ |
| | | for (int i1 = 0; i1 < split.length; i1++) { |
| | | String s = split[i1].substring(0,5) + "-" + split1[i1].substring(0,5); |
| | | strings.add(s); |
| | | } |
| | | } |
| | | |
| | | detailsListVo.setTime(strings); |
| | | List<CoursePackagePaymentConfig> list2 = icppcService.list(new LambdaQueryWrapper<CoursePackagePaymentConfig>().eq(CoursePackagePaymentConfig::getCoursePackageId, tCoursePackage.getId()).orderByAsc(CoursePackagePaymentConfig::getCashPayment)); |
| | | if (list2.size() > 0) { |
| | |
| | | .eq(CoursePackageScheduling::getCoursePackageId, tCoursePackage.getId()) |
| | | .like(CoursePackageScheduling::getClassDate, courseDetailReq.getTime()) |
| | | ); |
| | | if(list3.size()==0){ |
| | | break; |
| | | } |
| | | List<Long> collect2 = list3.stream().map(CoursePackageScheduling::getId).collect(Collectors.toList()); |
| | | if(collect2.size()==0){ |
| | | collect2.add(-1l); |
| | |
| | | in(CoursePackageStudent::getCoursePackagePaymentId, ids) |
| | | ); |
| | | |
| | | detailsListVo.setType(1); |
| | | detailsListVo.setType(1); |
| | | if(list4.size()>0){ |
| | | Integer signInOrNot = list4.get(0).getSignInOrNot(); |
| | | if(signInOrNot==2){ |
| | | detailsListVo.setType(3); |
| | | } |
| | | detailsListVo.setIsType(list4.get(0).getType()); |
| | | } |
| | | |
| | | } else { |
| | |
| | | @ResponseBody |
| | | @PostMapping("/coursePackageScheduling/editCoursePackageScheduling") |
| | | public void editCoursePackageScheduling(@RequestBody CoursePackageScheduling coursePackageScheduling){ |
| | | coursePackageScheduling.setCoursePackageId(null); |
| | | coursePackageSchedulingService.updateById(coursePackageScheduling); |
| | | } |
| | | } |
| | |
| | | @ResponseBody |
| | | public List<SelectDto> getSelect(@RequestParam("payId")Long payId){ |
| | | |
| | | List<Integer> studentIds = paymentService.getStudentIds(payId); |
| | | TCoursePackagePayment byId = paymentService.getById(payId); |
| | | |
| | | List<Integer> studentIds = paymentService.getStudentIds(payId,byId.getCoursePackageId(),byId.getAppUserId()); |
| | | System.out.println("=========studentIds=================>"+studentIds); |
| | | |
| | | if (studentIds.size()>0){ |
| | |
| | | |
| | | |
| | | |
| | | orinPay.setTotalClassHours(0); |
| | | orinPay.setLaveClassHours(0); |
| | | orinPay.setAppUserId(null); |
| | | orinPay.setStudentId(6); |
| | | paymentService.updateById(orinPay); |
| | | |
| | | |
| | | CourseCounsum courseCounsum = new CourseCounsum(); |
| | | courseCounsum.setInsertTime(new Date()); |
| | | courseCounsum.setReason("赠课"); |
| | | courseCounsum.setNum(orinPay.getLaveClassHours()); |
| | | courseCounsum.setChangeType(0); |
| | | courseCounsum.setPaymentId(orinPay.getId()); |
| | | counsumService.save(courseCounsum); |
| | | |
| | | |
| | | |
| | | Student student = studentClient.queryStudentById(toClassDto.getToStudentId()); |
| | | TCoursePackagePayment to = new TCoursePackagePayment(); |
| | | to.setStudentId(toClassDto.getToStudentId()); |
| | |
| | | paymentService.save(to); |
| | | |
| | | |
| | | |
| | | orinPay.setTotalClassHours(0); |
| | | orinPay.setLaveClassHours(0); |
| | | orinPay.setAppUserId(null); |
| | | orinPay.setStatus(6); |
| | | paymentService.updateById(orinPay); |
| | | |
| | | |
| | | |
| | | |
| | | CourseCounsum courseCounsum = new CourseCounsum(); |
| | | courseCounsum.setInsertTime(new Date()); |
| | | courseCounsum.setReason("赠课"); |
| | | courseCounsum.setNum(orinPay.getLaveClassHours()); |
| | | courseCounsum.setChangeType(0); |
| | | courseCounsum.setPaymentId(orinPay.getId()); |
| | | counsumService.save(courseCounsum); |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | CourseCounsum courseCounsum1 = new CourseCounsum(); |
| | | courseCounsum1.setInsertTime(new Date()); |
| | | courseCounsum1.setReason("赠课"); |
| | |
| | | @TableField("insertTime") |
| | | @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") |
| | | private Date insertTime; |
| | | @TableField("type") |
| | | private Integer type; |
| | | |
| | | |
| | | @Override |
File was renamed from cloud-server-course/src/main/java/com/dsh/course/model/TAppUser.java |
| | |
| | | package com.dsh.course.model; |
| | | package com.dsh.course.entity; |
| | | |
| | | import com.baomidou.mybatisplus.annotation.IdType; |
| | | import com.baomidou.mybatisplus.annotation.TableField; |
| | |
| | | @EqualsAndHashCode(callSuper = false) |
| | | @Accessors(chain = true) |
| | | @TableName("t_app_user") |
| | | public class TAppUser { |
| | | public class TAppUser{ |
| | | |
| | | private static final long serialVersionUID = 1L; |
| | | |
New file |
| | |
| | | package com.dsh.course.entity.dto; |
| | | |
| | | import lombok.Data; |
| | | |
| | | import java.math.BigDecimal; |
| | | import java.util.Date; |
| | | |
| | | @Data |
| | | public class TCoursePackagePayment1 { |
| | | |
| | | /** |
| | | * 主键 |
| | | */ |
| | | private Integer id; |
| | | /** |
| | | * 用户id |
| | | */ |
| | | private Integer appUserId; |
| | | /** |
| | | * 学员id |
| | | */ |
| | | private Integer studentId; |
| | | /** |
| | | * 课包id |
| | | */ |
| | | private Integer coursePackageId; |
| | | /** |
| | | * 支付方式(1=微信,2=支付宝,3=玩湃币,4=积分,5=积分+微信,6=积分+支付宝) |
| | | */ |
| | | private Integer payType; |
| | | /** |
| | | * 课时数 |
| | | */ |
| | | private Integer classHours; |
| | | /** |
| | | * 现金支付价格 |
| | | */ |
| | | private BigDecimal cashPayment; |
| | | /** |
| | | * 玩湃币价格/积分 |
| | | */ |
| | | private Integer playPaiCoin; |
| | | /** |
| | | * 总课时 |
| | | */ |
| | | private Integer totalClassHours; |
| | | /** |
| | | * 剩余课时 |
| | | */ |
| | | private Integer laveClassHours; |
| | | /** |
| | | * 缺课次数 |
| | | */ |
| | | private Integer absencesNumber; |
| | | /** |
| | | * 支付用户类型(1=用户,2=管理员) |
| | | */ |
| | | private Integer payUserType; |
| | | /** |
| | | * 支付状态(1=待支付,2=已支付) |
| | | */ |
| | | private Integer payStatus; |
| | | /** |
| | | * 第三方支付流水号 |
| | | */ |
| | | private String orderNumber; |
| | | /** |
| | | * 支付用户id |
| | | */ |
| | | private Integer payUserId; |
| | | /** |
| | | * 课程状态(1=正常,2=已退课) |
| | | */ |
| | | private Integer status; |
| | | /** |
| | | * 退课时间 |
| | | */ |
| | | private Date withdrawalTime; |
| | | /** |
| | | * 退课凭证 |
| | | */ |
| | | private String certificate; |
| | | /** |
| | | * 状态(1=正常,2=冻结,3=删除) |
| | | */ |
| | | private Integer state; |
| | | /** |
| | | * 添加时间 |
| | | */ |
| | | private Date insertTime; |
| | | /** |
| | | * 业务编号 |
| | | */ |
| | | private String code; |
| | | /** |
| | | * 原价 |
| | | */ |
| | | private Double originalPrice; |
| | | |
| | | } |
| | |
| | | package com.dsh.course.feignclient.account; |
| | | |
| | | import com.dsh.course.entity.TAppUser; |
| | | import com.dsh.course.entity.dto.SelectDto; |
| | | import com.dsh.course.feignclient.account.model.AppUser; |
| | | import com.dsh.course.feignclient.account.model.TCourseInfoRecord; |
| | |
| | | package com.dsh.course.feignclient.account.model; |
| | | |
| | | import com.fasterxml.jackson.annotation.JsonFormat; |
| | | import lombok.Data; |
| | | |
| | | import java.util.Date; |
| | |
| | | /** |
| | | * 生日 |
| | | */ |
| | | @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") |
| | | private Date birthday; |
| | | /** |
| | | * 性别(1=男,2=女) |
| | |
| | | import com.dsh.course.entity.TCoursePackagePayment; |
| | | import com.dsh.course.model.QueryRegistrationRecord; |
| | | import com.dsh.course.model.BillingRequest; |
| | | import io.swagger.models.auth.In; |
| | | import org.apache.ibatis.annotations.Param; |
| | | |
| | | import java.util.Date; |
| | |
| | | |
| | | void updateUseTime(@Param("id")Long id, @Param("date") Date date); |
| | | |
| | | List<Integer> getStudentIds(@Param("id")Long payId); |
| | | List<Integer> getStudentIds(@Param("id")Long payId,@Param("classId")Integer classId,@Param("appId")Integer appId); |
| | | |
| | | boolean updateHoursById(@Param("id") Long id, @Param("i") int i); |
| | | |
| | | void updateBytime(@Param("coursePackagePayment") TCoursePackagePayment coursePackagePayment); |
| | | } |
| | |
| | | private Integer num; |
| | | |
| | | private Double money; |
| | | |
| | | private Integer isType=1; |
| | | } |
| | |
| | | import com.dsh.course.model.vo.request.*; |
| | | import com.dsh.course.model.vo.response.*; |
| | | import com.dsh.course.util.ResultUtil; |
| | | import io.swagger.models.auth.In; |
| | | |
| | | import java.util.Date; |
| | | import java.util.List; |
| | |
| | | |
| | | void updateUseTime(Long id, Date date); |
| | | |
| | | List<Integer> getStudentIds(Long payId); |
| | | List<Integer> getStudentIds(Long payId,Integer classId,Integer appId); |
| | | |
| | | boolean updateHoursById(TCoursePackagePayment byId, int i); |
| | | |
| | |
| | | |
| | | int changeState(CoursePackagePayDTO dto); |
| | | |
| | | void updateBytime(TCoursePackagePayment coursePackagePayment); |
| | | |
| | | List<RegisterOrderVO> listAllRegister(RegisterOrderQuery query); |
| | | |
| | | } |
| | |
| | | Long id = Long.valueOf(map.get("id").toString()); |
| | | int count = coursePackageStudentService.count(new QueryWrapper<CoursePackageStudent>().eq("coursePackageSchedulingId", id).eq("reservationStatus", 1)); |
| | | // map.put("registered", count); |
| | | int count1 = coursePackageStudentService.count(new QueryWrapper<CoursePackageStudent>().eq("coursePackageSchedulingId", id).eq("signInOrNot", 1)); |
| | | int count2 = coursePackageStudentService.count(new QueryWrapper<CoursePackageStudent>().eq("coursePackageSchedulingId", id).eq("signInOrNot", 2)); |
| | | int count1 = coursePackageStudentService.count(new QueryWrapper<CoursePackageStudent>().eq("coursePackageSchedulingId", id).eq("reservationStatus", 1)); |
| | | int count2 = coursePackageStudentService.count(new QueryWrapper<CoursePackageStudent>().eq("coursePackageSchedulingId", id).eq("reservationStatus", 0)); |
| | | map.put("registered", count2); |
| | | map.put("actualArrival", count1); |
| | | map.put("nonArrival", count - count1); |
| | | // Integer totalClassHours = (Integer) map.get("totalClassHours"); |
| | | // Integer laveClassHours = (Integer) map.get("laveClassHours"); |
| | | // map.put("already",totalClassHours-laveClassHours); |
| | | |
| | | |
| | | } |
| | | return list; |
| | | } |
| | |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import com.dsh.course.entity.CoursePackageStudent; |
| | | import com.dsh.course.entity.StudentClassInfo; |
| | | import com.dsh.course.entity.TAppUser; |
| | | import com.dsh.course.entity.dto.ClassListDto; |
| | | import com.dsh.course.feignclient.account.AppUserClient; |
| | | import com.dsh.course.feignclient.account.StudentClient; |
| | |
| | | for (Map<String, Object> map : list) { |
| | | Integer appUserId = Integer.valueOf(map.get("appUserId").toString()); |
| | | Integer student_Id = Integer.valueOf(map.get("studentId").toString()); |
| | | AppUser appUser = appUserClient.queryAppUser(appUserId); |
| | | TAppUser appUser = appUserClient.queryAppUser1(appUserId); |
| | | Student student = studentClient.queryStudentById(student_Id); |
| | | map.put("userName", appUser.getName()); |
| | | map.put("phone", student.getPhone()); |
| | |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import com.dsh.course.entity.*; |
| | | import com.dsh.course.entity.TAppUser; |
| | | import com.dsh.course.feignclient.account.AppUserClient; |
| | | import com.dsh.course.feignclient.account.CoachClient; |
| | | import com.dsh.course.feignclient.account.StudentClient; |
| | |
| | | import com.dsh.course.util.*; |
| | | import com.fasterxml.jackson.core.JsonProcessingException; |
| | | import com.fasterxml.jackson.databind.ObjectMapper; |
| | | import io.swagger.models.auth.In; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.http.HttpHeaders; |
| | | import org.springframework.http.MediaType; |
| | |
| | | list.add(value); |
| | | } |
| | | return cpConfigMapper.changeState(list,dto.getPayUserName(),dto.getUserId()); |
| | | } |
| | | |
| | | @Override |
| | | public void updateBytime(TCoursePackagePayment coursePackagePayment) { |
| | | this.baseMapper.updateBytime(coursePackagePayment); |
| | | } |
| | | |
| | | @Override |
| | |
| | | Long id = Long.valueOf(map.get("id").toString()); |
| | | Integer appUserId = Integer.valueOf(map.get("appUserId").toString()); |
| | | Integer studentId = Integer.valueOf(map.get("studentId").toString()); |
| | | AppUser appUser = appuClient.queryAppUser(appUserId); |
| | | |
| | | TAppUser appUser = appuClient.queryAppUser1(appUserId); |
| | | map.put("userName", null != appUser ? appUser.getName() : ""); |
| | | map.put("phone", null != appUser ? appUser.getPhone() : ""); |
| | | Student student = studentClient.queryStudentById(studentId); |
| | |
| | | student1.setSignInOrNot(0); |
| | | student1.setReservationStatus(1); |
| | | student1.setInsertTime(new Date()); |
| | | student1.setType(1); |
| | | cpsMapper.insert(student1); |
| | | } catch (Exception e) { |
| | | e.printStackTrace(); |
| | |
| | | } |
| | | |
| | | @Override |
| | | public List<Integer> getStudentIds(Long payId) { |
| | | return this.baseMapper.getStudentIds(payId); |
| | | public List<Integer> getStudentIds(Long payId, Integer classId, Integer appId) { |
| | | return this.baseMapper.getStudentIds(payId,classId,appId); |
| | | } |
| | | |
| | | @Override |
| | |
| | | ArrayList<String> classTime = new ArrayList<>(); |
| | | String[] split = classStartTime.split(","); |
| | | String[] split3 = classEndTime.split(","); |
| | | for (int i = 0; i < split.length; i++) { |
| | | String s = split[i] + "-" + split3[i]; |
| | | classTime.add(s); |
| | | if(ToolUtil.isNotEmpty(classStartTime)) { |
| | | for (int i = 0; i < split.length; i++) { |
| | | String s = split[i].substring(0,5) + "-" + split3[i].substring(0,5); |
| | | classTime.add(s); |
| | | } |
| | | } |
| | | coursePackageListVo.setClassStartTime(classTime); |
| | | coursePackageListVo.setType(coursePackage.getType()); |
| | |
| | | } |
| | | return listVos; |
| | | } |
| | | |
| | | |
| | | |
| | | @Override |
| | |
| | | TCoursePackage coursePackage = this.getById(id); |
| | | CoursePackageInfo coursePackageInfo = new CoursePackageInfo(); |
| | | coursePackageInfo.setId(id); |
| | | coursePackageInfo.setTime(coursePackage.getStartTime()+"-"+coursePackage.getEndTime()); |
| | | SimpleDateFormat format = new SimpleDateFormat("yyyy.MM.dd"); |
| | | if(coursePackage.getType()==2){ |
| | | |
| | | coursePackageInfo.setTime(format.format(coursePackage.getStartTime())+"-"+format.format(coursePackage.getEndTime())); |
| | | } |
| | | coursePackageInfo.setCoverDrawing(coursePackage.getCoverDrawing()); |
| | | coursePackageInfo.setName(coursePackage.getName()); |
| | | Store store = storeClient.queryStoreById(coursePackage.getStoreId()); |
| | |
| | | ArrayList<String> classTime = new ArrayList<>(); |
| | | String[] split4 = classStartTime.split(","); |
| | | String[] split3 = classEndTime.split(","); |
| | | for (int i = 0; i < split4.length; i++) { |
| | | String s = split4[i] + "-" + split3[i]; |
| | | classTime.add(s); |
| | | if(ToolUtil.isNotEmpty(classStartTime)){ |
| | | for (int i = 0; i < split4.length; i++) { |
| | | String s = split4[i].substring(0,5) + "-" + split3[i].substring(0,5); |
| | | classTime.add(s); |
| | | } |
| | | } |
| | | |
| | | coursePackageInfo.setTimes(classTime); |
| | | coursePackageInfo.setType(coursePackage.getType()); |
| | | |
| | |
| | | String[] students = paymentCourseVo.getStudentIds().split(";"); |
| | | for (CoursePackagePaymentConfigVo coursePackagePaymentConfigVo : list) { |
| | | if(paymentCourseVo.getCoursePackagePaymentConfigId().compareTo(coursePackagePaymentConfigVo.getId()) == 0){ |
| | | CoursePackagePaymentConfig byId = coursePackagePaymentConfigService.getById(paymentCourseVo.getCoursePackagePaymentConfigId()); |
| | | Double cashPayment = byId.getCashPayment(); |
| | | Integer payType = coursePackagePaymentConfigVo.getPayType(); |
| | | if(payType == 1 && paymentCourseVo.getPayType() == 3){//现金支付 |
| | | return ResultUtil.error("支付方式错误,请刷新后重试"); |
| | | Integer playPaiCoin1 = byId.getPlayPaiCoin(); |
| | | if(cashPayment!=null || cashPayment>0){ |
| | | payType=1; |
| | | } |
| | | if(payType == 2 && paymentCourseVo.getPayType() != 3){//玩湃币支付 |
| | | return ResultUtil.error("支付方式错误,请刷新后重试"); |
| | | if(playPaiCoin1!=null || playPaiCoin1>0){ |
| | | payType=2; |
| | | } |
| | | |
| | | if(cashPayment!=null && cashPayment>0 && playPaiCoin1 !=null && playPaiCoin1>0){ |
| | | }else { |
| | | if(payType == 1 && paymentCourseVo.getPayType() == 3){//现金支付 |
| | | return ResultUtil.error("支付方式错误,请刷新后重试"); |
| | | } |
| | | if(payType == 2 && paymentCourseVo.getPayType() != 3){//玩湃币支付 |
| | | return ResultUtil.error("支付方式错误,请刷新后重试"); |
| | | } |
| | | } |
| | | |
| | | Double paymentPrice = coursePackagePaymentConfigVo.getPaymentPrice();//支付价 |
| | | paymentPrice = new BigDecimal(students.length).multiply(new BigDecimal(paymentPrice)).setScale(2, RoundingMode.HALF_EVEN).doubleValue(); |
| | | Double playPaiCoin = coursePackagePaymentConfigVo.getPlayPaiCoin().doubleValue();//支付币 |
| | |
| | | try { |
| | | coursePackage.setAuditStatus(2); |
| | | this.baseMapper.insert(coursePackage); |
| | | //生成排课数据 |
| | | SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); |
| | | SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); |
| | | Date date = sdf1.parse(sdf.format(new Date()) + " 00:00:00"); |
| | | List<String> list = Arrays.asList(coursePackage.getClassWeeks().split(";")); |
| | | String value = coursePackage.getClassStartTime(); |
| | | String value1 = coursePackage.getClassEndTime().trim(); |
| | | |
| | | String[] star = value.split(","); |
| | | String[] end = value1.split(","); |
| | | if (coursePackage.getClassStartTime()!=null&&coursePackage.getClassStartTime()!="") { |
| | | //生成排课数据 |
| | | SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); |
| | | SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); |
| | | Date date = sdf1.parse(sdf.format(new Date()) + " 00:00:00"); |
| | | List<String> list = Arrays.asList(coursePackage.getClassWeeks().split(";")); |
| | | String value = coursePackage.getClassStartTime(); |
| | | String value1 = coursePackage.getClassEndTime().trim(); |
| | | |
| | | for (int i = 0; i < star.length; i++) { |
| | | String[] star = value.split(","); |
| | | String[] end = value1.split(","); |
| | | |
| | | for (int i = 0; i < star.length; i++) { |
| | | |
| | | // int index = star[i].indexOf(","); |
| | | // |
| | | // |
| | | // String result = value.substring(0, index).trim(); |
| | | String classStartTime = star[i]; |
| | | String[] split = classStartTime.split(":"); |
| | | String classStartTime = star[i]; |
| | | String[] split = classStartTime.split(":"); |
| | | // String value1 = en; |
| | | int index1 = value1.indexOf(","); |
| | | int index1 = value1.indexOf(","); |
| | | // String result1 = value.substring(0, index1).trim(); |
| | | String classEndTime = end[i]; |
| | | String[] split1 = classEndTime.split(":"); |
| | | Calendar s = Calendar.getInstance(); |
| | | s.setTime(date); |
| | | s.set(Calendar.DAY_OF_YEAR, s.get(Calendar.DAY_OF_YEAR) + 1); |
| | | s.set(Calendar.HOUR_OF_DAY, Integer.valueOf(split[0])); |
| | | s.set(Calendar.MINUTE, Integer.valueOf(split[1])); |
| | | s.set(Calendar.SECOND, 0); |
| | | |
| | | Calendar e = Calendar.getInstance(); |
| | | e.setTime(date); |
| | | e.set(Calendar.DAY_OF_YEAR, s.get(Calendar.DAY_OF_YEAR) + 13); |
| | | long timeInMillis = e.getTimeInMillis(); |
| | | |
| | | while (true){ |
| | | int w = s.get(Calendar.DAY_OF_WEEK); |
| | | WeekEnum weekEnum = WeekEnum.getWeekEnum(w); |
| | | if(list.contains(weekEnum.getChineseName())){ |
| | | Calendar classDate = Calendar.getInstance(); |
| | | classDate.setTime(s.getTime()); |
| | | classDate.set(Calendar.HOUR_OF_DAY, Integer.valueOf(split[0])); |
| | | classDate.set(Calendar.MINUTE, Integer.valueOf(split[1])); |
| | | classDate.set(Calendar.SECOND, 0); |
| | | |
| | | Calendar endDate = Calendar.getInstance(); |
| | | endDate.setTime(s.getTime()); |
| | | endDate.set(Calendar.HOUR_OF_DAY, Integer.valueOf(split1[0])); |
| | | endDate.set(Calendar.MINUTE, Integer.valueOf(split1[1])); |
| | | endDate.set(Calendar.SECOND, 0); |
| | | |
| | | CoursePackageScheduling coursePackageScheduling = new CoursePackageScheduling(); |
| | | coursePackageScheduling.setCoursePackageId(coursePackage.getId()); |
| | | coursePackageScheduling.setClassDate(classDate.getTime()); |
| | | coursePackageScheduling.setEndDate(endDate.getTime()); |
| | | coursePackageScheduling.setStatus(1); |
| | | coursePackageSchedulingService.save(coursePackageScheduling); |
| | | } |
| | | String classEndTime = end[i]; |
| | | String[] split1 = classEndTime.split(":"); |
| | | Calendar s = Calendar.getInstance(); |
| | | s.setTime(date); |
| | | s.set(Calendar.DAY_OF_YEAR, s.get(Calendar.DAY_OF_YEAR) + 1); |
| | | if(s.getTimeInMillis() > timeInMillis){ |
| | | break; |
| | | s.set(Calendar.HOUR_OF_DAY, Integer.valueOf(split[0])); |
| | | s.set(Calendar.MINUTE, Integer.valueOf(split[1])); |
| | | s.set(Calendar.SECOND, 0); |
| | | |
| | | Calendar e = Calendar.getInstance(); |
| | | e.setTime(date); |
| | | e.set(Calendar.DAY_OF_YEAR, s.get(Calendar.DAY_OF_YEAR) + 13); |
| | | long timeInMillis = e.getTimeInMillis(); |
| | | |
| | | while (true) { |
| | | int w = s.get(Calendar.DAY_OF_WEEK); |
| | | WeekEnum weekEnum = WeekEnum.getWeekEnum(w); |
| | | if (list.contains(weekEnum.getChineseName())) { |
| | | Calendar classDate = Calendar.getInstance(); |
| | | classDate.setTime(s.getTime()); |
| | | classDate.set(Calendar.HOUR_OF_DAY, Integer.valueOf(split[0])); |
| | | classDate.set(Calendar.MINUTE, Integer.valueOf(split[1])); |
| | | classDate.set(Calendar.SECOND, 0); |
| | | |
| | | Calendar endDate = Calendar.getInstance(); |
| | | endDate.setTime(s.getTime()); |
| | | endDate.set(Calendar.HOUR_OF_DAY, Integer.valueOf(split1[0])); |
| | | endDate.set(Calendar.MINUTE, Integer.valueOf(split1[1])); |
| | | endDate.set(Calendar.SECOND, 0); |
| | | |
| | | CoursePackageScheduling coursePackageScheduling = new CoursePackageScheduling(); |
| | | coursePackageScheduling.setCoursePackageId(coursePackage.getId()); |
| | | coursePackageScheduling.setClassDate(classDate.getTime()); |
| | | coursePackageScheduling.setEndDate(endDate.getTime()); |
| | | coursePackageScheduling.setStatus(1); |
| | | coursePackageSchedulingService.save(coursePackageScheduling); |
| | | } |
| | | s.set(Calendar.DAY_OF_YEAR, s.get(Calendar.DAY_OF_YEAR) + 1); |
| | | if (s.getTimeInMillis() > timeInMillis) { |
| | | break; |
| | | } |
| | | } |
| | | |
| | | } |
| | | |
| | | } |
| | | |
| | | |
| | | |
| | | return coursePackage.getId(); |
| | | }catch (Exception e){ |
| | |
| | | |
| | | |
| | | <select id="queryCoursePackageSchedulingList" resultType="map"> |
| | | select |
| | | CAST(id AS CHAR(20)) as id, |
| | | DATE_FORMAT(classDate, '%Y-%m-%d') as classDate, |
| | | courseId, |
| | | `status`, |
| | | cancelClasses, |
| | | deductClassHour, |
| | | integral |
| | | from t_course_package_scheduling where coursePackageId = #{item.coursePackageId} order by classDate desc |
| | | SELECT |
| | | CAST(id AS CHAR(20)) AS id, |
| | | CONCAT(DATE_FORMAT(classDate, '%Y-%m-%d %H:%i'), '-20:00') AS classDate, |
| | | courseId, |
| | | `status`, |
| | | cancelClasses, |
| | | deductClassHour, |
| | | integral |
| | | FROM t_course_package_scheduling where coursePackageId = #{item.coursePackageId} order by classDate desc |
| | | </select> |
| | | </mapper> |
| | |
| | | <select id="getStudentIds" resultType="java.lang.Integer"> |
| | | SELECT studentId |
| | | FROM t_course_package_payment |
| | | WHERE appUserId = ( |
| | | SELECT appUserId |
| | | FROM t_course_package_payment |
| | | WHERE id = #{id} |
| | | ) AND id != #{id} and coursePackageId=( |
| | | SELECT coursePackageId |
| | | FROM t_course_package_payment |
| | | WHERE id = #{id} |
| | | ) |
| | | WHERE appUserId = #{appId} AND id != #{id} and coursePackageId=#{classId} |
| | | |
| | | |
| | | </select> |
| | | |
| | | <update id="updateBytime"> |
| | | update t_course_package_payment |
| | | set laveClassHours = #{coursePackagePayment.laveClassHours},absencesNumber=#{coursePackagePayment.absencesNumber} |
| | | where id = #{coursePackagePayment.id} |
| | | </update> |
| | | </mapper> |
| | |
| | | import com.dsh.course.feignClient.course.model.TCoursePackagePayment; |
| | | import com.dsh.guns.modular.system.model.*; |
| | | import org.springframework.cloud.openfeign.FeignClient; |
| | | import org.springframework.web.bind.annotation.PostMapping; |
| | | import org.springframework.web.bind.annotation.RequestBody; |
| | | import org.springframework.web.bind.annotation.RequestMapping; |
| | | import org.springframework.web.bind.annotation.ResponseBody; |
| | | import org.springframework.web.bind.annotation.*; |
| | | |
| | | import java.util.List; |
| | | import java.util.Map; |
| | |
| | | * @return |
| | | */ |
| | | @PostMapping("/coursePackagePayment/queryCoursePackagePaymentById") |
| | | TCoursePackagePayment queryCoursePackagePaymentById(Long id); |
| | | TCoursePackagePayment queryCoursePackagePaymentById(@RequestParam("id")Long id); |
| | | |
| | | |
| | | /** |
| | |
| | | @PostMapping("/coursePackagePayment/editCoursePackagePayment") |
| | | void editCoursePackagePayment(TCoursePackagePayment coursePackagePayment); |
| | | |
| | | @PostMapping("/coursePackagePayment/editCoursePackagePayment1") |
| | | void editCoursePackagePayment1(@RequestBody TCoursePackagePayment coursePackagePayment); |
| | | |
| | | |
| | | @PostMapping("/coursePackagePayment/CountqueryByClassId") |
| | | Integer queryByClassId(Integer id); |
| | |
| | | |
| | | |
| | | System.out.println("========couponIds=========>"+list4.get(0).getCouponIds()); |
| | | |
| | | model.addAttribute("cashPayment", list4.get(0).getCashPayment() == 0 ? false : true); |
| | | model.addAttribute("playPaiCoin", list4.get(0).getPlayPaiCoin() == 0 ? false : true); |
| | | |
| | | model.addAttribute("couponIds", list4.get(0).getCouponIds()); |
| | | model.addAttribute("coursePackagePaymentConfig", list4.remove(0)); |
| | | for (int i = 0; i < list4.size(); i++) { |
| | |
| | | |
| | | model.addAttribute("coursePackagePaymentConfigs", list4); |
| | | model.addAttribute("index", 1); |
| | | if (list4.size()!=0) { |
| | | CoursePackagePaymentConfig coursePackagePaymentConfig = list4.get(0); |
| | | // if (list4.size()!=0) { |
| | | |
| | | model.addAttribute("cashPayment", coursePackagePaymentConfig.getCashPayment() == 0 ? false : true); |
| | | model.addAttribute("playPaiCoin", coursePackagePaymentConfig.getPlayPaiCoin() == 0 ? false : true); |
| | | System.out.println("=========coursePackagePaymentConfig=============>" + coursePackagePaymentConfig); |
| | | // model.addAttribute("couponIds", "3,2"); |
| | | // } |
| | | } |
| | | return PREFIX + "coursePackage_edit.html"; |
| | | } |
| | | |
| | |
| | | |
| | | |
| | | System.out.println("========couponIds=========>"+list4.get(0).getCouponIds()); |
| | | |
| | | model.addAttribute("cashPayment", list4.get(0).getCashPayment() == 0 ? false : true); |
| | | model.addAttribute("playPaiCoin", list4.get(0).getPlayPaiCoin() == 0 ? false : true); |
| | | |
| | | model.addAttribute("couponIds", list4.get(0).getCouponIds()); |
| | | model.addAttribute("coursePackagePaymentConfig", list4.remove(0)); |
| | | for (int i = 0; i < list4.size(); i++) { |
| | |
| | | |
| | | model.addAttribute("coursePackagePaymentConfigs", list4); |
| | | model.addAttribute("index", 1); |
| | | CoursePackagePaymentConfig coursePackagePaymentConfig = list4.get(0); |
| | | // if (list4.size()!=0) { |
| | | model.addAttribute("cashPayment", coursePackagePaymentConfig.getCashPayment() == 0 ? false : true); |
| | | model.addAttribute("playPaiCoin", coursePackagePaymentConfig.getPlayPaiCoin() == 0 ? false : true); |
| | | System.out.println("=========coursePackagePaymentConfig=============>" + coursePackagePaymentConfig); |
| | | if (list4.size()!=0) { |
| | | CoursePackagePaymentConfig coursePackagePaymentConfig = list4.get(0); |
| | | |
| | | model.addAttribute("cashPayment", coursePackagePaymentConfig.getCashPayment() == 0 ? false : true); |
| | | model.addAttribute("playPaiCoin", coursePackagePaymentConfig.getPlayPaiCoin() == 0 ? false : true); |
| | | System.out.println("=========coursePackagePaymentConfig=============>" + coursePackagePaymentConfig); |
| | | // model.addAttribute("couponIds", "3,2"); |
| | | // } |
| | | } |
| | | return PREFIX + "coursePackage_info.html"; |
| | | } |
| | | |
| | |
| | | model.addAttribute("times", strings); |
| | | model.addAttribute("counts", counts); |
| | | |
| | | |
| | | return PREFIX + "classRecord.html"; |
| | | } |
| | | |
| | | /** |
| | | * 假期跳转到上课记录列表页 |
| | | * @param model |
| | | * @param id |
| | | * @return |
| | | */ |
| | | @GetMapping("/openClassRecord1") |
| | | public String openClassRecord1(Model model, Integer id){ |
| | | TCoursePackage tCoursePackage = coursePackageClient.queryById(id); |
| | | String[] start = tCoursePackage.getClassStartTime().split(","); |
| | | String[] end = tCoursePackage.getClassEndTime().split(","); |
| | | Integer counts = packagePaymentClient.queryByClassId(id); |
| | | |
| | | |
| | | List<String> strings = new ArrayList<>(); |
| | | for (int i = 0; i <start.length ; i++) { |
| | | String outTime = start[i] +"-" +end[0]; |
| | | strings.add(outTime); |
| | | } |
| | | |
| | | TStore store = storeService.getById(tCoursePackage.getStoreId()); |
| | | Coach coach = coachClient.queryCoachById(tCoursePackage.getCoachId()); |
| | | model.addAttribute("item", tCoursePackage); |
| | | model.addAttribute("store", store); |
| | | model.addAttribute("coach", coach); |
| | | model.addAttribute("times", strings); |
| | | model.addAttribute("counts", counts); |
| | | |
| | | return PREFIX + "classRecord2.html"; |
| | | } |
| | | |
| | | |
| | |
| | | String jsonString = jsonArray.getString(i); |
| | | String[] split = jsonString.split(" - "); |
| | | first.add(split[0]); |
| | | second.add(split[1]); |
| | | |
| | | if (split.length>1) { |
| | | second.add(split[1]); |
| | | } |
| | | } |
| | | String firstString = String.join(",",first); |
| | | String secondString = String.join(",",second); |
| | |
| | | |
| | | /** |
| | | * 补课操作 |
| | | * @param coursePackagePaymentId |
| | | * @param id |
| | | * @return |
| | | */ |
| | | @ResponseBody |
| | | @PostMapping("/makeUpMissedLessons") |
| | | public ResultUtil makeUpMissedLessons(Long coursePackagePaymentId){ |
| | | return coursePackageService.makeUpMissedLessons(coursePackagePaymentId); |
| | | public ResultUtil makeUpMissedLessons(Long id){ |
| | | System.out.println("==========coursePackage补课PaymentId======"+id); |
| | | return coursePackageService.makeUpMissedLessons(id); |
| | | } |
| | | |
| | | |
| | |
| | | String roleid = UserExt.getUser().getRoleid(); |
| | | return PREFIX + "TShop_edit_three.html"; |
| | | } |
| | | @RequestMapping("/tShop_add_two1") |
| | | public String tCompetitionAddTwo1(Integer id,Model model) { |
| | | List<TCity> list = cityService.list(new LambdaQueryWrapper<TCity>().eq(TCity::getParentId, 0)); |
| | | model.addAttribute("list",list); |
| | | model.addAttribute("id",id); |
| | | String roleid = UserExt.getUser().getRoleid(); |
| | | return PREFIX + "TShop_add_two.html"; |
| | | } |
| | | |
| | | |
| | | /** |
| | |
| | | @RequestMapping("/tShop_update/{id}") |
| | | public String tCityUpdate(@PathVariable Integer id, Model model) { |
| | | TStore byId = storeService.getById(id); |
| | | System.out.println("======byId========="+byId); |
| | | model.addAttribute("item",byId); |
| | | List<TCity> list = cityService.list(new LambdaQueryWrapper<TCity>().eq(TCity::getParentId, 0)); |
| | | |
| | | // TCity one = cityService.getOne(new LambdaQueryWrapper<TCity>().eq(TCity::getCode, byId.getProvinceCode())); |
| | | TOperatorCity one = operatorCityService.getOne(new LambdaQueryWrapper<TOperatorCity>().eq(TOperatorCity::getOperatorId, byId.getOperatorId()).eq(TOperatorCity::getType, 1)); |
| | | List<TOperatorCity> ones = operatorCityService.list(new LambdaQueryWrapper<TOperatorCity>().eq(TOperatorCity::getOperatorId, byId.getOperatorId()).eq(TOperatorCity::getType, 1)); |
| | | model.addAttribute("list",ones); |
| | | List<TOperatorCity> list3 = operatorCityService.list(new LambdaQueryWrapper<TOperatorCity>().eq(TOperatorCity::getPid, one.getId()).eq(TOperatorCity::getType, 2)); |
| | | if(list3.size()>0){ |
| | | |
| | | if(ones.size()>0){ |
| | | model.addAttribute("list",ones); |
| | | List<TOperatorCity> list3 = operatorCityService.list(new LambdaQueryWrapper<TOperatorCity>().eq(TOperatorCity::getPid, one.getId()).eq(TOperatorCity::getType, 2)); |
| | | model.addAttribute("list1",list3); |
| | | System.out.println("===list3======="+list3); |
| | | |
| | | }else { |
| | | List<TCity> list2 = cityService.list(new LambdaQueryWrapper<TCity>().eq(TCity::getParentId, 0)); |
| | | model.addAttribute("list",list2); |
| | | TCity one1 = cityService.getOne(new LambdaQueryWrapper<TCity>().eq(TCity::getCode, byId.getProvinceCode())); |
| | | List<TCity> list1 = cityService.list(new LambdaQueryWrapper<TCity>().eq(TCity::getParentId,one1.getId())); |
| | | model.addAttribute("list1",list1); |
| | | System.out.println("===list1======="+list1); |
| | | } |
| | | CityListQuery cityListQuery = new CityListQuery(); |
| | | cityListQuery.setOffset(1); |
| | |
| | | |
| | | @RequestMapping(value = "/add") |
| | | @ResponseBody |
| | | public Object list(TStore tStore,String time,String userName,String userPhone,String ids,Integer type,Integer yyId,String lat,String lon) { |
| | | public Object list(TStore tStore,String time,String userName,String userPhone,String ids,Integer type,Integer yyId,String lat,String lon,String pCode1,String cCode1) { |
| | | try { |
| | | if(ToolUtil.isNotEmpty(tStore.getProvinceCode())) { |
| | | TOperatorCity byId = operatorCityService.getById(tStore.getProvinceCode()); |
| | | TCity one = cityService.getOne(new LambdaQueryWrapper<TCity>().eq(TCity::getCode, byId.getCode())); |
| | | tStore.setProvince(one.getName()); |
| | | tStore.setProvinceCode(one.getCode()); |
| | | List<TOperatorCity> list = operatorCityService.list(new LambdaQueryWrapper<TOperatorCity>().eq(TOperatorCity::getPid, byId.getId()).eq(TOperatorCity::getType, 2)); |
| | | if(list.size()>0){ |
| | | TOperatorCity byId1 = operatorCityService.getById(tStore.getCityCode()); |
| | | TCity one1 = cityService.getOne(new LambdaQueryWrapper<TCity>().eq(TCity::getCode, byId1.getCode())); |
| | | tStore.setCity(one1.getName()); |
| | | tStore.setCityCode(one1.getCode()); |
| | | if(yyId==null){ |
| | | yyId=0; |
| | | } |
| | | if(yyId!=0) { |
| | | List<TOperatorCity> list1 = operatorCityService.list(new LambdaQueryWrapper<TOperatorCity>().eq(TOperatorCity::getOperatorId, yyId)); |
| | | if(list1.size()>0){ |
| | | if (ToolUtil.isNotEmpty(tStore.getProvinceCode())) { |
| | | TOperatorCity byId = operatorCityService.getById(tStore.getProvinceCode()); |
| | | TCity one = cityService.getOne(new LambdaQueryWrapper<TCity>().eq(TCity::getCode, byId.getCode())); |
| | | tStore.setProvince(one.getName()); |
| | | tStore.setProvinceCode(one.getCode()); |
| | | List<TOperatorCity> list = operatorCityService.list(new LambdaQueryWrapper<TOperatorCity>().eq(TOperatorCity::getPid, byId.getId()).eq(TOperatorCity::getType, 2)); |
| | | if (list.size() > 0) { |
| | | TOperatorCity byId1 = operatorCityService.getById(tStore.getCityCode()); |
| | | TCity one1 = cityService.getOne(new LambdaQueryWrapper<TCity>().eq(TCity::getCode, byId1.getCode())); |
| | | tStore.setCity(one1.getName()); |
| | | tStore.setCityCode(one1.getCode()); |
| | | } else { |
| | | TCity byId1 = cityService.getById(tStore.getCityCode()); |
| | | TCity one1 = cityService.getOne(new LambdaQueryWrapper<TCity>().eq(TCity::getCode, byId1.getCode())); |
| | | tStore.setCity(one1.getName()); |
| | | tStore.setCityCode(one1.getCode()); |
| | | } |
| | | } |
| | | }else { |
| | | TCity byId1 = cityService.getById(tStore.getCityCode()); |
| | | TCity one1 = cityService.getOne(new LambdaQueryWrapper<TCity>().eq(TCity::getCode, byId1.getCode())); |
| | | TCity one = cityService.getOne(new LambdaQueryWrapper<TCity>().eq(TCity::getId, tStore.getProvinceCode())); |
| | | tStore.setProvince(one.getName()); |
| | | tStore.setProvinceCode(one.getCode()); |
| | | TCity one1 = cityService.getOne(new LambdaQueryWrapper<TCity>().eq(TCity::getId, tStore.getCityCode())); |
| | | tStore.setCity(one1.getName()); |
| | | tStore.setCityCode(one1.getCode()); |
| | | } |
| | | |
| | | }else { |
| | | TCity one = cityService.getOne(new LambdaQueryWrapper<TCity>().eq(TCity::getCode, pCode1)); |
| | | tStore.setProvince(one.getName()); |
| | | tStore.setProvinceCode(one.getCode()); |
| | | TCity one1 = cityService.getOne(new LambdaQueryWrapper<TCity>().eq(TCity::getCode, cCode1)); |
| | | tStore.setCity(one1.getName()); |
| | | tStore.setCityCode(one1.getCode()); |
| | | } |
| | | tStore.setStartTime(time.split(" - ")[0]); |
| | | tStore.setEndTime(time.split(" - ")[1]); |
| | |
| | | |
| | | @RequestMapping(value = "/update") |
| | | @ResponseBody |
| | | public Object update(TStore tStore,String time,String userName,String userPhone,String ids,Integer type,Integer yyId,String lat,String lon) { |
| | | public Object update(TStore tStore,String time,String userName,String userPhone,String ids,Integer type,Integer yyId,String lat,String lon,String pCode1,String cCode1) { |
| | | try { |
| | | TStore byId = storeService.getById(tStore.getId()); |
| | | TStore byIdc = storeService.getById(tStore.getId()); |
| | | |
| | | if(ToolUtil.isNotEmpty(tStore.getProvinceCode())) { |
| | | TOperatorCity tOperatorCity = operatorCityService.getById(tStore.getProvinceCode()); |
| | | TCity one = cityService.getOne(new LambdaQueryWrapper<TCity>().eq(TCity::getCode, tOperatorCity.getCode())); |
| | | tStore.setProvince(one.getName()); |
| | | tStore.setProvinceCode(one.getCode()); |
| | | List<TOperatorCity> list = operatorCityService.list(new LambdaQueryWrapper<TOperatorCity>().eq(TOperatorCity::getPid, tOperatorCity.getId()).eq(TOperatorCity::getType, 2)); |
| | | if(list.size()>0){ |
| | | TOperatorCity byId1 = operatorCityService.getById(tStore.getCityCode()); |
| | | TCity one1 = cityService.getOne(new LambdaQueryWrapper<TCity>().eq(TCity::getCode, byId1.getCode())); |
| | | tStore.setCity(one1.getName()); |
| | | tStore.setCityCode(one1.getCode()); |
| | | if(yyId==null){ |
| | | yyId=0; |
| | | } |
| | | if(tStore.getType()==1){ |
| | | yyId=0; |
| | | } |
| | | if(yyId!=0) { |
| | | List<TOperatorCity> list1 = operatorCityService.list(new LambdaQueryWrapper<TOperatorCity>().eq(TOperatorCity::getOperatorId, yyId)); |
| | | if(list1.size()>0){ |
| | | if (ToolUtil.isNotEmpty(tStore.getProvinceCode())) { |
| | | TOperatorCity byId = operatorCityService.getById(tStore.getProvinceCode()); |
| | | TCity one = cityService.getOne(new LambdaQueryWrapper<TCity>().eq(TCity::getCode, byId.getCode())); |
| | | tStore.setProvince(one.getName()); |
| | | tStore.setProvinceCode(one.getCode()); |
| | | List<TOperatorCity> list = operatorCityService.list(new LambdaQueryWrapper<TOperatorCity>().eq(TOperatorCity::getPid, byId.getId()).eq(TOperatorCity::getType, 2)); |
| | | if (list.size() > 0) { |
| | | TOperatorCity byId1 = operatorCityService.getById(tStore.getCityCode()); |
| | | TCity one1 = cityService.getOne(new LambdaQueryWrapper<TCity>().eq(TCity::getCode, byId1.getCode())); |
| | | tStore.setCity(one1.getName()); |
| | | tStore.setCityCode(one1.getCode()); |
| | | } else { |
| | | TCity byId1 = cityService.getById(tStore.getCityCode()); |
| | | TCity one1 = cityService.getOne(new LambdaQueryWrapper<TCity>().eq(TCity::getCode, byId1.getCode())); |
| | | tStore.setCity(one1.getName()); |
| | | tStore.setCityCode(one1.getCode()); |
| | | } |
| | | } |
| | | }else { |
| | | TCity byId1 = cityService.getById(tStore.getCityCode()); |
| | | TCity one1 = cityService.getOne(new LambdaQueryWrapper<TCity>().eq(TCity::getCode, byId1.getCode())); |
| | | TCity one = cityService.getOne(new LambdaQueryWrapper<TCity>().eq(TCity::getId, tStore.getProvinceCode())); |
| | | tStore.setProvince(one.getName()); |
| | | tStore.setProvinceCode(one.getCode()); |
| | | TCity one1 = cityService.getOne(new LambdaQueryWrapper<TCity>().eq(TCity::getId, tStore.getCityCode())); |
| | | tStore.setCity(one1.getName()); |
| | | tStore.setCityCode(one1.getCode()); |
| | | } |
| | | |
| | | }else { |
| | | TCity one = cityService.getOne(new LambdaQueryWrapper<TCity>().eq(TCity::getId, tStore.getProvinceCode())); |
| | | tStore.setProvince(one.getName()); |
| | | tStore.setProvinceCode(one.getCode()); |
| | | TCity one1 = cityService.getOne(new LambdaQueryWrapper<TCity>().eq(TCity::getId, tStore.getCityCode())); |
| | | tStore.setCity(one1.getName()); |
| | | tStore.setCityCode(one1.getCode()); |
| | | } |
| | | tStore.setStartTime(time.split(" - ")[0]); |
| | | tStore.setEndTime(time.split(" - ")[1]); |
| | |
| | | tStore.setType(type); |
| | | tStore.setOperatorId(yyId); |
| | | if(ToolUtil.isEmpty(tStore.getCoverDrawing())){ |
| | | tStore.setCoverDrawing(byId.getCoverDrawing()); |
| | | tStore.setCoverDrawing(byIdc.getCoverDrawing()); |
| | | } |
| | | User user = userMapper.selectById(byId.getStoreStaffId()); |
| | | User user = userMapper.selectById(byIdc.getStoreStaffId()); |
| | | List<User> users = userMapper.selectList(new LambdaQueryWrapper<User>().eq(User::getAccount, userPhone).ne(User::getId,tStore.getStoreStaffId())); |
| | | if(users.size()>0){ |
| | | return "5001"; |
| | |
| | | public Object onChange1(Integer oneId) { |
| | | try { |
| | | List<TOperatorCity> list = operatorCityService.list(new LambdaQueryWrapper<TOperatorCity>().eq(TOperatorCity::getOperatorId, oneId).eq(TOperatorCity::getType, 1)); |
| | | return list; |
| | | if(list.size()==0){ |
| | | List<TCity> list1 = cityService.list(new LambdaQueryWrapper<TCity>().eq(TCity::getParentId, 0)); |
| | | return list1; |
| | | }else { |
| | | |
| | | return list; |
| | | } |
| | | }catch (Exception e){ |
| | | e.printStackTrace(); |
| | | return ERROR; |
| | |
| | | try { |
| | | List<TOperatorCity> list1 = operatorCityService.list(new LambdaQueryWrapper<TOperatorCity>().eq(TOperatorCity::getOperatorId, oneId).eq(TOperatorCity::getType, 1)); |
| | | List<TOperatorCity> list = operatorCityService.list(new LambdaQueryWrapper<TOperatorCity>().eq(TOperatorCity::getPid, oneId).eq(TOperatorCity::getType, 2)); |
| | | |
| | | // 若是全国 为空 去找这个省下面的市 |
| | | if(list1.size()==0){ |
| | | TCity byId = cityService.getById(oneId); |
| | | List<TCity> list2 = cityService.list(new LambdaQueryWrapper<TCity>().eq(TCity::getParentId, byId.getId())); |
| | | return list2; |
| | | } |
| | | if(list.size()==0){ |
| | | TOperatorCity tOperatorCity = list1.get(0); |
| | | Integer code = tOperatorCity.getCode(); |
| | |
| | | } |
| | | } |
| | | User user = userService.getByAccount(username); |
| | | // todo 记得该回去!!!!!!!!!! |
| | | // password = AESUtils.decrypt(password); |
| | | // String s = MD5.md5(password); |
| | | // if(!user.getPassword().equals(s)){ |
| | | // model.addAttribute("tips", "账号密码错误"); |
| | | // return "/login.html"; |
| | | // } |
| | | password = AESUtils.decrypt(password); |
| | | String s = MD5.md5(password); |
| | | if(!user.getPassword().equals(s)){ |
| | | model.addAttribute("tips", "账号密码错误"); |
| | | return "/login.html"; |
| | | } |
| | | |
| | | |
| | | GetTokenRequest tokenRequest = new GetTokenRequest(); |
| | |
| | | payment.setId(Long.valueOf(tCoursePackage.getId())); |
| | | |
| | | BigDecimal cashPayment = payment.getCashPayment(); |
| | | if (cashPayment==null){ |
| | | cashPayment = BigDecimal.ZERO; |
| | | } |
| | | Integer totalClassHours = payment.getTotalClassHours(); |
| | | BigDecimal result = new BigDecimal(0); |
| | | if (totalClassHours!=0) { |
| | |
| | | public class GiftSearchDto { |
| | | String name; |
| | | String phone; |
| | | Integer id; |
| | | Long id; |
| | | } |
| | |
| | | |
| | | @Data |
| | | public class SelectDto { |
| | | Integer id; |
| | | Long id; |
| | | String value; |
| | | } |
| | |
| | | return coursePackageStudentClient.queryCoursePackageStudentList(queryCoursePackageStudentList); |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 取消预约 |
| | | * @param id |
| | |
| | | if(coursePackageStudent.getSignInOrNot() == 1){ |
| | | return ResultUtil.error("无法取消预约"); |
| | | } |
| | | // TCoursePackagePayment payment = coursePackagePaymentClient.queryCoursePackagePaymentById(coursePackageStudent.getCoursePackagePaymentId()); |
| | | // payment.setAbsencesNumber(payment.getAbsencesNumber()+1); |
| | | // coursePackagePaymentClient.editCoursePackagePayment(payment); |
| | | |
| | | |
| | | coursePackageStudent = new CoursePackageStudent(); |
| | | coursePackageStudent.setId(id); |
| | | coursePackageStudent.setReservationStatus(0); |
| | | |
| | | |
| | | |
| | | coursePackageStudent.getCoursePackagePaymentId(); |
| | | |
| | | coursePackageStudentClient.editCoursePackageStudent(coursePackageStudent); |
| | | return ResultUtil.success(); |
| | | } |
| | |
| | | } |
| | | TCoursePackagePayment tCoursePackagePayment = coursePackagePaymentClient.queryCoursePackagePaymentById(coursePackageStudent.getCoursePackagePaymentId()); |
| | | |
| | | if(tCoursePackagePayment.getLaveClassHours() - deductClassHour<0){ |
| | | coursePackageStudentClient.editCoursePackageStudent(coursePackageStudent); |
| | | continue; |
| | | if (deductClassHour!=null) { |
| | | if (tCoursePackagePayment.getLaveClassHours() - deductClassHour < 0) { |
| | | coursePackageStudentClient.editCoursePackageStudent(coursePackageStudent); |
| | | continue; |
| | | } |
| | | tCoursePackagePayment.setLaveClassHours(tCoursePackagePayment.getLaveClassHours() - deductClassHour); |
| | | } |
| | | tCoursePackagePayment.setLaveClassHours(tCoursePackagePayment.getLaveClassHours() - deductClassHour); |
| | | |
| | | |
| | | if(coursePackageStudent.getSignInOrNot() == 0){ |
| | | tCoursePackagePayment.setAbsencesNumber(tCoursePackagePayment.getAbsencesNumber() + 1); |
| | | } |
| | | coursePackagePaymentClient.editCoursePackagePayment(tCoursePackagePayment); |
| | | System.out.println("====tCoursePackagePayment====="+tCoursePackagePayment); |
| | | coursePackagePaymentClient.editCoursePackagePayment1(tCoursePackagePayment); |
| | | |
| | | CancelledClasses cancelledClasses = new CancelledClasses(); |
| | | cancelledClasses.setType(1); |
| | |
| | | cancelledClasses.setCoursePackagePaymentId(coursePackageStudent.getCoursePackagePaymentId()); |
| | | cancelledClasses.setCoursePackageSchedulingId(coursePackageStudent.getCoursePackageSchedulingId()); |
| | | cancelledClasses.setVoucher(cancelClasses); |
| | | cancelledClasses.setCancelledClassesNumber(deductClassHour); |
| | | if (deductClassHour!=null) { |
| | | cancelledClasses.setCancelledClassesNumber(deductClassHour);} |
| | | cancelledClasses.setInsertTime(new Date()); |
| | | cancelledClassesClient.addCancelledClasses(cancelledClasses); |
| | | } |
| | |
| | | @Override |
| | | public ResultUtil makeUpMissedLessons(Long coursePackagePaymentId) { |
| | | TCoursePackagePayment coursePackagePayment = coursePackagePaymentClient.queryCoursePackagePaymentById(coursePackagePaymentId); |
| | | System.out.println("=========coursePackagePayment=====>"+coursePackagePayment); |
| | | if(coursePackagePayment.getStatus() == 2){ |
| | | return ResultUtil.error("该学员已退课"); |
| | | } |
| | |
| | | </delete> |
| | | |
| | | <select id="listAll" resultType="com.dsh.guns.modular.system.model.TStoreListVo"> |
| | | select t1.*,t2.name userName,t2.phone userPhone from t_store t1 left join sys_user t2 on t1.storeStaffId = t2.id |
| | | |
| | | select t1.*,t2.name userName,t2.phone userPhone,t3.name yysName from t_store t1 left join sys_user t2 on t1.storeStaffId = t2.id left join t_operator t3 on t1.operatorId = t3.id |
| | | where 1=1 |
| | | <if test="provinceCode !=null and provinceCode !=''"> |
| | | and t1.provinceCode = #{provinceCode} |
| | |
| | | <#button name="发布课后练习" icon="fa-refresh" clickFun="ClassRecord.afterClassExercises()" space="true"/> |
| | | <#button name="上传消课记录" icon="fa-refresh" clickFun="ClassRecord.cancellationRecord(${item.codeTime})" space="true"/> |
| | | <#button name="查看消课记录" icon="fa-refresh" clickFun="ClassRecord.lookCancellationRecord()" space="true"/> |
| | | <#button name="手动预约" icon="fa-refresh" clickFun="ClassRecord.manualReservation()" space="true"/> |
| | | <!-- <#button name="手动预约" icon="fa-refresh" clickFun="ClassRecord.manualReservation()" space="true"/>--> |
| | | </div> |
| | | <#table id="managerTable"/> |
| | | </div> |
New file |
| | |
| | | @layout("/common/_container.html"){ |
| | | <link rel="stylesheet" href="${ctxPath}/layui/css/layui.css" media="all"> |
| | | <div class="row"> |
| | | <div class="col-sm-12"> |
| | | <div class="ibox float-e-margins"> |
| | | <div class="ibox-content"> |
| | | <div class="row row-lg"> |
| | | <div class="col-sm-12"> |
| | | <div class="row"> |
| | | <h3>课包信息</h3> |
| | | <input type="hidden" id="id" value="${item.id}"> |
| | | <input type="hidden" id="codeTime" value="${item.codeTime}"> |
| | | |
| | | <div class="form-group" style="height: 10px;"> |
| | | <label class="col-sm-1 control-label" style="text-align: right;">所属门店:</label> |
| | | <span class="col-sm-2" style="text-align: left;">${store.name}</span> |
| | | </div> |
| | | <div class="form-group" style="height: 10px;"> |
| | | <label class="col-sm-1 control-label" style="text-align: right;">课包名称:</label> |
| | | <span class="col-sm-1" style="text-align: left;" id="name">${item.name}</span> |
| | | </div> |
| | | <div class="form-group" style="height: 10px;"> |
| | | <label class="col-sm-1 control-label" style="text-align: right;">授课教师:</label> |
| | | <span class="col-sm-2" style="text-align: left;">${coach.name!}</span> |
| | | </div> |
| | | <div class="form-group" style="height: 10px;"> |
| | | <label class="col-sm-1 control-label" style="text-align: right;">已报名学员:</label> |
| | | <span class="col-sm-2" style="text-align: left;">${counts}</span> |
| | | </div> |
| | | <div class="form-group" style="height: 10px;"> |
| | | <label class="col-sm-1 control-label" style="text-align: right;">上课时间:</label> |
| | | <span class="col-sm-2" style="text-align: left;">${item.classWeeks}</span> |
| | | </div> |
| | | |
| | | @for(time in times){ |
| | | <div class="form-group" style="height: 10px;"> |
| | | <label class="col-sm-1 control-label" style="text-align: right;"></label> |
| | | <span class="col-sm-2" style="text-align: left;">${time}</span> |
| | | </div> |
| | | @} |
| | | |
| | | </div> |
| | | <div class="hidden-xs" id="managerTableToolbar" role="group"> |
| | | <#button name="查看学员" icon="fa-plus" clickFun="ClassRecord.classRecord()"/> |
| | | <#button name="取消本次" icon="fa-edit" clickFun="ClassRecord.cancelClassSchedule()" space="true"/> |
| | | <#button name="发布课后练习" icon="fa-refresh" clickFun="ClassRecord.afterClassExercises()" space="true"/> |
| | | <#button name="上传消课记录" icon="fa-refresh" clickFun="ClassRecord.cancellationRecord(${item.codeTime})" space="true"/> |
| | | <#button name="查看消课记录" icon="fa-refresh" clickFun="ClassRecord.lookCancellationRecord()" space="true"/> |
| | | <!-- <#button name="手动预约" icon="fa-refresh" clickFun="ClassRecord.manualReservation()" space="true"/>--> |
| | | </div> |
| | | <#table id="managerTable"/> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <script src="${ctxPath}/modular/system/coursePackage/classRecord2.js"></script> |
| | | <script src="${ctxPath}/layui/layui.js" charset="utf-8"></script> |
| | | <script> |
| | | laydate.render({ |
| | | elem: '#beginTime' |
| | | }); |
| | | laydate.render({ |
| | | elem: '#endTime' |
| | | }); |
| | | </script> |
| | | @} |
| | |
| | | </div> |
| | | </div> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">*课时有效期:</label> |
| | | <div class="col-sm-4"> |
| | | 购买后 <input id="validDays" name="validDays" type="number" min="0" placeholder="天数" style="width: 80px;background-color: #FFFFFF;background-image: none;border: 1px solid #e5e6e7;border-radius: 1px;color: inherit;padding: 6px 12px;"> 天内有效 |
| | | <label class="col-sm-3 control-label"${type == 2||type == 3 ? 'hidden=hidden' : ''}>*课时有效期:</label> |
| | | <div class="col-sm-4" ${type == 2||type == 3 ? 'hidden=hidden' : ''}> |
| | | 购买后 <input id="validDays" name="validDays" type="number" min="0" placeholder="天数" style="width: 80px;background-color: #FFFFFF;background-image: none;border: 1px solid #e5e6e7;border-radius: 1px;color: inherit;padding: 6px 12px;" > 天内有效 |
| | | </div> |
| | | </div> |
| | | <div id="price"> |
| | |
| | | @} |
| | | </span> |
| | | <input type="hidden" id="counpons${obj.id}" value="${obj.couponIds}" class="counpons"> <#button btnCss="info" name="优惠卷" id="ensure" icon="fa-check" clickFun="CoursePackageInfo.openDia(${obj.id})"/> |
| | | <i class="fa fa-trash-o" style="font-size:24px" onclick="removePrice(4, this)"></i> |
| | | <i class="fa fa-trash-o" style="font-size:24px" onclick="removePrice(this)"></i> |
| | | </div> |
| | | </div> |
| | | @} |
| | |
| | | <div class="row row-lg"> |
| | | <div class="col-sm-12"> |
| | | <div class="row"> |
| | | <input type="text" id="type" value="${type}"> |
| | | <input type="hidden" id="type" value="${type}"> |
| | | <input type="hidden" id="id" value="${item.id}"> |
| | | <input type="hidden" id="name" value="${item.name}"> |
| | | <div class="col-lg-10 col-sm-9"> |
| | |
| | | <div class="row row-lg"> |
| | | <div class="col-sm-12"> |
| | | <div class="row"> |
| | | <input type="text" id="type" value="${type}"> |
| | | <input type="hidden" id="type" value="${type}"> |
| | | <input type="hidden" id="id" value="${item.id}"> |
| | | <input type="hidden" id="name" value="${item.name}"> |
| | | <div class="col-lg-10 col-sm-9"> |
| | |
| | | <div class="row row-lg"> |
| | | <div class="col-sm-12"> |
| | | <div class="row"> |
| | | <input type="text" id="type" value="${type}"> |
| | | <input type="hidden" id="type" value="${type}"> |
| | | <input type="hidden" id="id" value="${item.id}"> |
| | | <input type="hidden" id="name" value="${item.name}"> |
| | | <div class="col-lg-10 col-sm-9"> |
| | |
| | | </div> |
| | | </div> |
| | | @if(role=='1'){ |
| | | <div class="form-group" id="yys" hidden > |
| | | <div id="yys" hidden> |
| | | <div class="form-group" > |
| | | <label class="col-sm-3 control-label">所属运营商:</label> |
| | | <div class="col-sm-9"> |
| | | <select class="form-control" id="account" name="account" onchange="TCarInfoDlg.oneChange1(this)"> |
| | |
| | | <select class="form-control" id="cCode" name="cCode" > |
| | | <option value="">选择市</option> |
| | | </select> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | |
| | | |
| | | <div id="yys1" > |
| | | <div class="form-group" id="provinceCode1"> |
| | | <label class="col-sm-3 control-label">所在省:</label> |
| | | <div class="col-sm-9"> |
| | | <select class="form-control" id="pCode1" name="pCode1" onchange="TCarInfoDlg.oneChange(this)"> |
| | | <option value="">选择省</option> |
| | | @for(i in list){ |
| | | <option value="${i.code}">${i.name}</option> |
| | | @} |
| | | </select> |
| | | </div> |
| | | </div> |
| | | <div class="form-group" id="cityCode1"> |
| | | <label class="col-sm-3 control-label">所在市:</label> |
| | | <div class="col-sm-9"> |
| | | <select class="form-control" id="cCode1" name="cCode1" > |
| | | <option value="">选择市</option> |
| | | </select> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | |
| | |
| | | function updateType(o) { |
| | | if(o==1){ |
| | | $("#yys").hide() |
| | | $("#yys1").show() |
| | | }else { |
| | | $("#yys").show() |
| | | $("#yys1").hide() |
| | | |
| | | } |
| | | |
| | |
| | | <!-- 创建地图容器--> |
| | | <div id="container" style="height: 500px;" ></div> |
| | | </div> |
| | | <#input id="time" name="营业时间" type="text" value="${time}"/> |
| | | <#input id="time" name="营业时间" type="text" value="${time}"/>v |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">门店介绍:</label> |
| | | <div class="col-sm-9"> |
| | |
| | | $("#yys").hide() |
| | | }else { |
| | | $("#yys").show() |
| | | queryStudentData |
| | | } |
| | | |
| | | } |
| | |
| | | "valueField": "id" |
| | | } |
| | | ], |
| | | "messages": { |
| | | }, |
| | | "messages": {}, |
| | | "loadingConfig": { |
| | | "show": true |
| | | "show": false |
| | | }, |
| | | "api": { |
| | | "url": "/tStudent/giftSelect", |
| | | "method": "post", |
| | | "messages": { |
| | | }, |
| | | "messages": {}, |
| | | "requestAdaptor": "", |
| | | "adaptor": "", |
| | | "dataType": "form-data", |
| | |
| | | "phone": "$phone", |
| | | "id": "$id" |
| | | } |
| | | } |
| | | }, |
| | | "initFetch": false |
| | | }, |
| | | { |
| | | "type": "input-text", |
| | |
| | | "method": "post", |
| | | "requestAdaptor": "", |
| | | "adaptor": "", |
| | | "messages": { |
| | | }, |
| | | "messages": {}, |
| | | "dataType": "form-data" |
| | | }, |
| | | "actions": [ |
| | | ], |
| | | "actions": [], |
| | | "onEvent": { |
| | | "submitSucc": { |
| | | "weight": 0, |
| | |
| | | { |
| | | "id": "u:59d68a32f7fd", |
| | | "type": "container", |
| | | "body": [ |
| | | ], |
| | | "body": [], |
| | | "style": { |
| | | "position": "static", |
| | | "display": "block" |
| | |
| | | "showLoading": true, |
| | | "className": "app-popover", |
| | | "id": "u:552bd1b3464d", |
| | | "actions": [ |
| | | ], |
| | | "actions": [], |
| | | "canAccessSuperData": false |
| | | } |
| | | } |
| | |
| | | "api": { |
| | | "url": "/tStudent/changelist/$id", |
| | | "method": "post", |
| | | "messages": { |
| | | }, |
| | | "messages": {}, |
| | | "requestAdaptor": "", |
| | | "adaptor": "", |
| | | "dataType": "form" |
| | |
| | | "name": "changeType", |
| | | "label": "变更类型", |
| | | "type": "mapping", |
| | | "id": "u:e2b292dd63d0" |
| | | "id": "u:e2b292dd63d0", |
| | | "map": { |
| | | "0": "减少", |
| | | "1": "增加" |
| | | } |
| | | }, |
| | | { |
| | | "type": "text", |
| | |
| | | "id": "u:8ba95bfd5e56" |
| | | } |
| | | ], |
| | | "bulkActions": [ |
| | | ], |
| | | "itemActions": [ |
| | | ], |
| | | "bulkActions": [], |
| | | "itemActions": [], |
| | | "features": [ |
| | | "filter" |
| | | ], |
| | |
| | | "perPageAvailable": [ |
| | | 10 |
| | | ], |
| | | "messages": { |
| | | }, |
| | | "messages": {}, |
| | | "perPageField": "size" |
| | | }, |
| | | { |
| | |
| | | "method": "post", |
| | | "requestAdaptor": "", |
| | | "adaptor": "", |
| | | "messages": { |
| | | }, |
| | | "messages": {}, |
| | | "dataType": "form-data" |
| | | }, |
| | | "actions": [ |
| | | ] |
| | | "actions": [] |
| | | } |
| | | ], |
| | | "showCloseButton": true, |
| | |
| | | "showLoading": true, |
| | | "className": "", |
| | | "id": "u:f66fa4de8251", |
| | | "actions": [ |
| | | ], |
| | | "actions": [], |
| | | "canAccessSuperData": false, |
| | | "wrapWithPanel": false, |
| | | "size": "xl", |
| | |
| | | "name": "id", |
| | | "id": "u:d038053014ca", |
| | | "mode": "horizontal", |
| | | "size": "md" |
| | | "size": "md", |
| | | "hidden": true |
| | | }, |
| | | { |
| | | "type": "input-text", |
| | |
| | | "name": "ids", |
| | | "id": "u:223b7f2a1a5b", |
| | | "mode": "horizontal", |
| | | "size": "md" |
| | | "size": "md", |
| | | "hidden": true |
| | | }, |
| | | { |
| | | "label": "换课课程:", |
| | |
| | | "name": "id", |
| | | "id": "u:d038053014ca", |
| | | "mode": "horizontal", |
| | | "size": "md" |
| | | "size": "md", |
| | | "hidden": true |
| | | }, |
| | | { |
| | | "type": "input-text", |
| | |
| | | "name": "ids", |
| | | "id": "u:223b7f2a1a5b", |
| | | "mode": "horizontal", |
| | | "size": "md" |
| | | "size": "md", |
| | | "hidden": true |
| | | }, |
| | | { |
| | | "label": "换课课程:", |
| | |
| | | {title: '请假学员', field: 'registered', align: 'center', valign: 'middle'}, |
| | | {title: '实到学员', field: 'actualArrival', align: 'center', valign: 'middle', |
| | | formatter: function (v, row) { |
| | | if (row.absencesNumber === undefined) { |
| | | if (row.cancelClasses === undefined) { |
| | | return 0; |
| | | } else { |
| | | return v; |
| | |
| | | } |
| | | }, |
| | | {title: '扣除课时', field: 'deductClassHour', align: 'center', valign: 'middle'}, |
| | | {title: '取消记录', field: 'absencesNumber', align: 'center', valign: 'middle', |
| | | {title: '消课凭证', field: 'cancelClasses', align: 'center', valign: 'middle', |
| | | formatter: function (v) { |
| | | if (typeof v === "undefined") { |
| | | return '未上传'; |
New file |
| | |
| | | /** |
| | | * 系统管理--用户管理的单例对象 |
| | | */ |
| | | let ClassRecord = { |
| | | id: "managerTable",//表格id |
| | | seItem: null, //选中的条目 |
| | | table: null, |
| | | layerIndex: -1, |
| | | courseList: null |
| | | }; |
| | | /** |
| | | * 初始化表格的列 |
| | | */ |
| | | ClassRecord.initColumn = function () { |
| | | let columns = [ |
| | | {field: 'selectItem', radio: true}, |
| | | {title: 'id', field: 'id', visible: false, align: 'center', valign: 'middle'}, |
| | | {title: '日期', field: 'classDate', align: 'center', valign: 'middle'}, |
| | | {title: '请假学员', field: 'registered', align: 'center', valign: 'middle'}, |
| | | {title: '实到学员', field: 'actualArrival', align: 'center', valign: 'middle', |
| | | formatter: function (v, row) { |
| | | if (row.absencesNumber === undefined) { |
| | | return 0; |
| | | } else { |
| | | return v; |
| | | } |
| | | } |
| | | }, |
| | | {title: '未到学员', field: 'nonArrival', align: 'center', valign: 'middle', |
| | | formatter: function (v, row) { |
| | | if (row.absencesNumber === undefined) { |
| | | return 0; |
| | | } else { |
| | | return v; |
| | | } |
| | | } |
| | | }, |
| | | {title: '课后练习', field: 'courseId', align: 'center', valign: 'middle', |
| | | formatter: function (v) { |
| | | if (typeof v === "undefined") { |
| | | return '未布置'; |
| | | } else { |
| | | return '已布置'; |
| | | } |
| | | } |
| | | }, |
| | | {title: '状态', field: 'status', align: 'center', valign: 'middle', |
| | | formatter: function (v) { |
| | | switch (v) { |
| | | case 1: |
| | | return '未开始'; |
| | | case 2: |
| | | return '已开始'; |
| | | case 3: |
| | | return '已结束'; |
| | | case 4: |
| | | return '已取消'; |
| | | } |
| | | } |
| | | }, |
| | | {title: '扣除课时', field: 'deductClassHour', align: 'center', valign: 'middle'}, |
| | | {title: '消课凭证', field: 'cancelClasses', align: 'center', valign: 'middle', |
| | | formatter: function (v) { |
| | | if (typeof v === "undefined") { |
| | | return '未上传'; |
| | | } else { |
| | | return '已上传'; |
| | | } |
| | | } |
| | | }, |
| | | ]; |
| | | return columns; |
| | | }; |
| | | |
| | | /** |
| | | * 检查是否选中 |
| | | */ |
| | | ClassRecord.check = function () { |
| | | let selected = $('#' + this.id).bootstrapTable('getSelections'); |
| | | if (selected.length == 0) { |
| | | Feng.info("请先选中表格中的某一记录!"); |
| | | return false; |
| | | } else { |
| | | ClassRecord.seItem = selected[0]; |
| | | return true; |
| | | } |
| | | }; |
| | | |
| | | |
| | | |
| | | /** |
| | | * 点击修改按钮时 |
| | | * @param userId 管理员id |
| | | */ |
| | | ClassRecord.classRecord = function () { |
| | | if (this.check()) { |
| | | let index = layer.open({ |
| | | type: 2, |
| | | title: '查看学员', |
| | | area: ['100%', '100%'], //宽高 |
| | | fix: false, //不固定 |
| | | maxmin: true, |
| | | content: Feng.ctxPath + '/coursePackage/openCoursePackageStudent?id=' + this.seItem.id |
| | | }); |
| | | this.layerIndex = index; |
| | | } |
| | | }; |
| | | |
| | | |
| | | |
| | | /** |
| | | * 删除用户 |
| | | */ |
| | | ClassRecord.cancelClassSchedule = function () { |
| | | if (this.check()) { |
| | | let operation = function(){ |
| | | let ajax = new $ax(Feng.ctxPath + "/coursePackage/cancelClassSchedule", function (res) { |
| | | if(res.code == 200){ |
| | | Feng.success("取消成功!"); |
| | | ClassRecord.table.refresh(); |
| | | }else{ |
| | | Feng.error(res.msg); |
| | | } |
| | | }, function (data) { |
| | | Feng.error("取消失败!" + data.responseJSON.message + "!"); |
| | | }); |
| | | ajax.set("id", ClassRecord.seItem.id); |
| | | ajax.start(); |
| | | }; |
| | | |
| | | Feng.confirm("确定取消本次",operation); |
| | | } |
| | | }; |
| | | |
| | | |
| | | |
| | | ClassRecord.afterClassExercises = function () { |
| | | if (this.check()) { |
| | | var ajax = new $ax(Feng.ctxPath + "/course/queryCourseByType", function (data) { |
| | | ClassRecord.courseList = data; |
| | | let htmlStr = |
| | | '<div class="form-horizontal">' + |
| | | ' <div class="col-sm-11" style="padding: 20px;">' + |
| | | ' <div class="form-group">\n' + |
| | | ' <label class="col-sm-3 control-label">视频类型:</label>\n' + |
| | | ' <div class="col-sm-9" style="margin-top: 6px;">\n' + |
| | | ' <span>课后练习</span>' + |
| | | ' </div>\n' + |
| | | ' </div>' + |
| | | ' <div class="form-group">\n' + |
| | | ' <label class="col-sm-3 control-label">视频名称:</label>\n' + |
| | | ' <div class="col-sm-9">\n' + |
| | | ' <select class="form-control" id="courseId">' + |
| | | ' <option value="">请选择</option>'; |
| | | for (let i = 0; i < data.length; i++) { |
| | | htmlStr += '<option value="' + data[i].id + '">' + data[i].name + '</option>'; |
| | | } |
| | | htmlStr += ' </select>' + |
| | | ' </div>\n' + |
| | | ' </div>' + |
| | | ' <div class="form-group">\n' + |
| | | ' <label class="col-sm-3 control-label">视频封面:</label>\n' + |
| | | ' <div class="col-sm-9">\n' + |
| | | ' <img src="" style="height: 150px;" id="coverDrawing"/>' + |
| | | ' </div>\n' + |
| | | ' </div>' + |
| | | ' <div class="form-group">\n' + |
| | | ' <label class="col-sm-3 control-label">视频简介:</label>\n' + |
| | | ' <div class="col-sm-9">\n' + |
| | | ' <textarea class="form-control" id="introduce" style="height: 200px;"></textarea>' + |
| | | ' </div>\n' + |
| | | ' </div>' + |
| | | ' <div class="form-group">\n' + |
| | | ' <label class="col-sm-3 control-label">可获得积分:</label>\n' + |
| | | ' <div class="col-sm-9">\n' + |
| | | ' <input class="form-control" id="integral" type="number" min="0">' + |
| | | ' </div>\n' + |
| | | ' </div>' + |
| | | ' </div>' + |
| | | '</div>'; |
| | | layer.open({ |
| | | type: 1 |
| | | , title: '选择课程' |
| | | , area: ['50%', '90%'] |
| | | , offset: 'auto' //具体配置参考:http://www.layui.com/doc/modules/layer.html#offset |
| | | , id: 'layerDemo' //防止重复弹出cge |
| | | , content: htmlStr |
| | | , btn: ['保存', '关闭'] |
| | | , btnAlign: 'c' //按钮居中 |
| | | , shade: 0.5 //不显示遮罩 |
| | | , yes: function () { |
| | | let courseId = $('#courseId').val(); |
| | | let integral = $('#integral').val(); |
| | | if(null == courseId || '' == courseId){ |
| | | Feng.error("请选择有效的课程"); |
| | | return |
| | | } |
| | | if(null == integral || '' == integral){ |
| | | Feng.error("请输入有效的积分"); |
| | | return |
| | | } |
| | | let ajax = new $ax(Feng.ctxPath + "/coursePackage/afterClassExercises", function (res) { |
| | | if(res.code == 200){ |
| | | Feng.success("保存成功!"); |
| | | layer.closeAll(); |
| | | RegistrationRecord.table.refresh(); |
| | | }else{ |
| | | Feng.error(res.msg); |
| | | } |
| | | }, function (data) { |
| | | Feng.error("保存失败!" + data.responseJSON.message + "!"); |
| | | }); |
| | | ajax.set("id", ClassRecord.seItem.id); |
| | | ajax.set("courseId", courseId); |
| | | ajax.set("integral", integral); |
| | | ajax.start(); |
| | | }, |
| | | }); |
| | | |
| | | $('#courseId').change(function () { |
| | | let id = $(this).val(); |
| | | for (let i = 0; i < ClassRecord.courseList.length; i++) { |
| | | if(ClassRecord.courseList[i].id == id){ |
| | | $('#coverDrawing').attr("src", ClassRecord.courseList[i].coverDrawing); |
| | | $('#introduce').text(ClassRecord.courseList[i].introduce); |
| | | } |
| | | } |
| | | }) |
| | | |
| | | $('#courseId').val(ClassRecord.seItem.courseId); |
| | | $('#integral').val(ClassRecord.seItem.integral); |
| | | |
| | | }, function (data) { |
| | | Feng.error("获取失败!" + data.responseJSON.message + "!"); |
| | | }); |
| | | ajax.set('type', 1); |
| | | ajax.start(); |
| | | } |
| | | }; |
| | | |
| | | |
| | | ClassRecord.cancellationRecord = function(i){ |
| | | if(this.check()){ |
| | | let htmlStr = |
| | | |
| | | '<div class="form-horizontal">' + |
| | | ' <div class="col-sm-11" style="padding: 20px;">' + |
| | | ' <div class="form-group">\n' + |
| | | ' <label class="col-sm-2"></label>'+ |
| | | ' <label class="col-sm-8 control-label" style="text-align: left;">课程名称:' + $("#name").text() + '</label>\n' + |
| | | ' </div>' + |
| | | ' <div class="form-group">\n' + |
| | | ' <label class="col-sm-2"></label>'+ |
| | | ' <label class="col-sm-8 control-label" style="text-align: left;">*上传凭证(请上传小于5张图片):</label>\n' + |
| | | ' </div>' + |
| | | ' <div class="form-group">\n' + |
| | | ' <label class="col-sm-2"></label>'+ |
| | | ' <div class="col-sm-8" style="min-height: 200px;">\n' + |
| | | ' <div id="cancelClasses"></div>' + |
| | | ' <input type="file" id="file" style="display: none;"/>' + |
| | | ' <button onclick="uploadImgs()" style="width: 60px;padding: 10px; color: white;background-color: #0d8ddb;border-radius: 5px;border: none;bottom: 50%;position: absolute;"> 上传 </button>' + |
| | | ' </div>\n' + |
| | | ' </div>' + |
| | | ' </div>' + |
| | | '</div>'; |
| | | layer.open({ |
| | | type: 1 |
| | | , title: '上传消课记录' |
| | | , area: ['80%', '90%'] |
| | | , offset: 'auto' //具体配置参考:http://www.layui.com/doc/modules/layer.html#offset |
| | | , id: 'layerDemo' //防止重复弹出cge |
| | | , content: htmlStr |
| | | , btn: ['保存', '关闭'] |
| | | , btnAlign: 'c' //按钮居中 |
| | | , shade: 0.5 //不显示遮罩 |
| | | , yes: function () { |
| | | let cancelClasses = $('#cancelClasses').html(); |
| | | let deductClassHour = $('#deductClassHour').val(); |
| | | if(null == cancelClasses || '' == cancelClasses){ |
| | | Feng.error("请上传凭证图片"); |
| | | return |
| | | } |
| | | // if(null == deductClassHour || '' == deductClassHour){ |
| | | // Feng.error("请输入有效的扣除课时数"); |
| | | // return |
| | | // } |
| | | let div_array = $('#cancelClasses').find('div'); |
| | | let str = ''; |
| | | for (let i = 0; i < div_array.length; i++) { |
| | | let v = $($(div_array[i]).find('img')[0]).attr('src'); |
| | | str += v + ";"; |
| | | } |
| | | |
| | | let ajax = new $ax(Feng.ctxPath + "/coursePackage/cancellationRecord", function (res) { |
| | | if(res.code == 200){ |
| | | Feng.success("保存成功!"); |
| | | layer.closeAll(); |
| | | RegistrationRecord.table.refresh(); |
| | | }else{ |
| | | Feng.error(res.msg); |
| | | } |
| | | }, function (data) { |
| | | Feng.error("保存失败!" + data.responseJSON.message + "!"); |
| | | }); |
| | | ajax.set("id", ClassRecord.seItem.id); |
| | | ajax.set("cancelClasses", str.substring(0, str.length - 1)); |
| | | ajax.set("deductClassHour", deductClassHour); |
| | | ajax.start(); |
| | | }, |
| | | }); |
| | | |
| | | $('#file').on('change', function () { |
| | | var formData = new FormData() //创建一个forData |
| | | formData.append('file', $('#file')[0].files[0]) //把file添加进去 name命名为img |
| | | layer.load(); //上传loading |
| | | $.ajax({ |
| | | url: Feng.ctxPath + '/mgr/uploadImg', |
| | | data: formData, |
| | | type: "POST", |
| | | async: true, |
| | | cache: false, |
| | | contentType: false, |
| | | processData: false, |
| | | success: function(res) { |
| | | layer.closeAll('loading'); //关闭loading |
| | | $('#file').val(''); |
| | | $('#cancelClasses').append('' + |
| | | '<div style="float: left; margin: 10px; width: 200px;">' + |
| | | ' <i class="fa fa-close" style="font-size:24px;color: red;position: relative;top: 10px;right: -190px" onclick="removeImg(this)"></i>' + |
| | | ' <div style="width: 100%;"><img src="' + res + '" style="width: 100%;"/></div>' + |
| | | '</div>') |
| | | } |
| | | }) |
| | | }) |
| | | } |
| | | } |
| | | |
| | | |
| | | ClassRecord.lookCancellationRecord = function(){ |
| | | if(this.check()){ |
| | | if(ClassRecord.seItem.cancelClasses == '' || ClassRecord.seItem.cancelClasses == null){ |
| | | Feng.error("请先上传消课凭证"); |
| | | return |
| | | } |
| | | let imgs = ClassRecord.seItem.cancelClasses.split(";"); |
| | | let htmlStr = |
| | | '<div class="form-horizontal">' + |
| | | ' <div class="col-sm-11" style="padding: 20px;">' + |
| | | ' <div class="form-group">\n' + |
| | | ' <label class="col-sm-8 control-label">课程名称:' + $("#name").text() + '</label>\n' + |
| | | ' </div>' + |
| | | ' <div class="form-group">\n' + |
| | | ' <label class="col-sm-8 control-label">*上传凭证(请上传小于5张图片):</label>\n' + |
| | | ' </div>' + |
| | | ' <div class="form-group">\n' + |
| | | ' <div class="col-sm-8" style="min-height: 200px;">\n' + |
| | | ' <div id="cancelClasses">'; |
| | | |
| | | for (let i = 0; i < imgs.length; i++) { |
| | | htmlStr += '<div><img src="' + imgs[i] + '" style="height: 150px;"/></div> '; |
| | | } |
| | | |
| | | htmlStr += '</div>' + |
| | | ' </div>\n' + |
| | | ' </div>' + |
| | | ' <div class="form-group">\n' + |
| | | ' <label class="col-sm-3 control-label">扣除课时数:</label>\n' + |
| | | ' <div class="col-sm-9">\n' + |
| | | ' <input class="form-control" id="deductClassHour" value="' + ClassRecord.seItem.deductClassHour + '" type="number" min="0">' + |
| | | ' </div>\n' + |
| | | ' </div>' + |
| | | ' </div>' + |
| | | '</div>'; |
| | | layer.open({ |
| | | type: 1 |
| | | , title: '查看消课记录' |
| | | , area: ['50%', '90%'] |
| | | , offset: 'auto' //具体配置参考:http://www.layui.com/doc/modules/layer.html#offset |
| | | , id: 'layerDemo' //防止重复弹出cge |
| | | , content: htmlStr |
| | | , btnAlign: 'c' //按钮居中 |
| | | , shade: 0.5 //不显示遮罩 |
| | | , yes: function () { |
| | | }, |
| | | }); |
| | | } |
| | | } |
| | | |
| | | ClassRecord.manualReservation = function(){ |
| | | if(this.check()){ |
| | | let index = layer.open({ |
| | | type: 2, |
| | | title: '手动预约', |
| | | area: ['100%', '100%'], //宽高 |
| | | fix: false, //不固定 |
| | | maxmin: true, |
| | | content: Feng.ctxPath + '/coursePackage/openManualReservation?id=' + this.seItem.id |
| | | }); |
| | | this.layerIndex = index; |
| | | } |
| | | } |
| | | |
| | | function uploadImgs(){ |
| | | let num = $('#cancelClasses>div').length; |
| | | if(num >= 5){ |
| | | Feng.error("最多只能上传5张图片"); |
| | | return; |
| | | } |
| | | $('#file').click(); |
| | | } |
| | | |
| | | |
| | | function removeImg(e){ |
| | | $(e).parent('div').remove(); |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | ClassRecord.resetSearch = function () { |
| | | ClassRecord.search(); |
| | | } |
| | | |
| | | ClassRecord.search = function () { |
| | | let queryData = {}; |
| | | queryData['id'] = $('#id').val(); |
| | | ClassRecord.table.refresh({query: queryData}); |
| | | } |
| | | |
| | | |
| | | $(function () { |
| | | let defaultColunms = ClassRecord.initColumn(); |
| | | let table = new BSTable(ClassRecord.id, "/coursePackage/queryClassRecord", defaultColunms); |
| | | // 设置物理分页server(逻辑分页client) |
| | | table.setPaginationType("server"); |
| | | table.setQueryParams({ |
| | | id: $('#id').val() |
| | | }) |
| | | ClassRecord.table = table.init(); |
| | | }); |
| | |
| | | Feng.error("授课教师不能为空"); |
| | | return |
| | | } |
| | | if(null == maxSubscribeNumber || '' == maxSubscribeNumber){ |
| | | Feng.error("最多预约人数不能为空"); |
| | | return |
| | | } |
| | | // if(null == maxSubscribeNumber || '' == maxSubscribeNumber){ |
| | | // Feng.error("最多预约人数不能为空"); |
| | | // return |
| | | // } |
| | | // if(null == codeTime || '' == codeTime){ |
| | | // Feng.error("扣除课时数不能为空不能为空"); |
| | | // return |
| | | // } |
| | | if(null == classStartTime || '' == classStartTime){ |
| | | Feng.error("上课时间不能为空"); |
| | | return |
| | | } |
| | | if(null == classWeeks || '' == classWeeks){ |
| | | Feng.error("上课时间不能为空"); |
| | | return |
| | | } |
| | | // if(null == classStartTime || '' == classStartTime){ |
| | | // Feng.error("上课时间不能为空"); |
| | | // return |
| | | // } |
| | | // if(null == classWeeks || '' == classWeeks){ |
| | | // Feng.error("上课时间不能为空"); |
| | | // return |
| | | // } |
| | | classWeeks = classWeeks.substring(0, classWeeks.length - 1); |
| | | |
| | | if(null == coverDrawing || '' == coverDrawing){ |
| | |
| | | Feng.error("课包介绍不能为空"); |
| | | return |
| | | } |
| | | if(null == validDays || '' == validDays){ |
| | | Feng.error("课时有效期不能为空"); |
| | | return |
| | | } |
| | | // if(null == validDays || '' == validDays){ |
| | | // Feng.error("课时有效期不能为空"); |
| | | // return |
| | | // } |
| | | |
| | | let obj = { |
| | | province: province, |
| | |
| | | Feng.error("授课教师不能为空"); |
| | | return |
| | | } |
| | | if(null == maxSubscribeNumber || '' == maxSubscribeNumber){ |
| | | Feng.error("最多预约人数不能为空"); |
| | | return |
| | | } if(null == codeTime || '' == codeTime){ |
| | | Feng.error("扣除课时不能为空"); |
| | | return |
| | | } |
| | | if(null == classStartTime || '' == classStartTime){ |
| | | Feng.error("上课时间不能为空"); |
| | | return |
| | | } |
| | | if(null == classWeeks || '' == classWeeks){ |
| | | Feng.error("上课时间不能为空"); |
| | | return |
| | | } |
| | | // if(null == maxSubscribeNumber || '' == maxSubscribeNumber){ |
| | | // Feng.error("最多预约人数不能为空"); |
| | | // return |
| | | // } |
| | | // if(null == codeTime || '' == codeTime){ |
| | | // Feng.error("扣除课时不能为空"); |
| | | // return |
| | | // } |
| | | // if(null == classStartTime || '' == classStartTime){ |
| | | // Feng.error("上课时间不能为空"); |
| | | // return |
| | | // } |
| | | // if(null == classWeeks || '' == classWeeks){ |
| | | // Feng.error("周不能为空"); |
| | | // return |
| | | // } |
| | | classWeeks = classWeeks.substring(0, classWeeks.length - 1); |
| | | |
| | | if(null == coverDrawing || '' == coverDrawing){ |
| | |
| | | Feng.error("课包介绍不能为空"); |
| | | return |
| | | } |
| | | if(null == validDays || '' == validDays){ |
| | | Feng.error("课时有效期不能为空"); |
| | | return |
| | | } |
| | | // if(null == validDays || '' == validDays){ |
| | | // Feng.error("课时有效期不能为空"); |
| | | // return |
| | | // } |
| | | |
| | | let obj = { |
| | | id: id, |
| | |
| | | {title: '购课学员', field: 'studentName', align: 'center', valign: 'middle'}, |
| | | {title: '报名时间', field: 'insertTime', align: 'center', valign: 'middle'}, |
| | | {title: '总课时数', field: 'totalClassHours', align: 'center', valign: 'middle'}, |
| | | {title: '剩余课时数', field: 'laveClassHours', align: 'center', valign: 'middle',rowStyle: function(row, index) { |
| | | // 参数说明: |
| | | //row, 行,row.xxx,能获取某个字段的值 |
| | | //index,索引,第几行 |
| | | |
| | | // 逻辑判断 |
| | | // ..... |
| | | return {"background-color":'rgba(208,9,9,0.7)'}; |
| | | { |
| | | title: '剩余课时数', |
| | | field: 'laveClassHours', |
| | | align: 'center', |
| | | valign: 'middle', |
| | | formatter: function (value, row) { |
| | | if (value < 3) { |
| | | return '<div style="color: red;">' + value + '</div>'; |
| | | } else { |
| | | return value; |
| | | } |
| | | } |
| | | }, |
| | | {title: '已上课时数', field: 'already', align: 'center', valign: 'middle'}, |
| | | { |
| | | title: '已上课时数', |
| | | field: 'already', |
| | | align: 'center', |
| | | valign: 'middle', |
| | | formatter: function (value, row) { |
| | | var totalClassHours = row.totalClassHours; |
| | | var laveClassHours = row.laveClassHours; |
| | | var alreadyClassHours = totalClassHours - laveClassHours; |
| | | return alreadyClassHours; |
| | | } |
| | | }, |
| | | {title: '请假次数', field: 'absencesNumber', align: 'center', valign: 'middle'}, |
| | | {title: '状态', field: 'status', align: 'center', valign: 'middle', |
| | | { |
| | | title: '状态', |
| | | field: 'status', |
| | | align: 'center', |
| | | valign: 'middle', |
| | | formatter: function (v) { |
| | | switch (v) { |
| | | case 1: |
| | | return '正常'; |
| | | case 2: |
| | | return '<a href="#" onclick="">已退课-查看凭证</a>'; |
| | | return '已退课'; |
| | | case 3: |
| | | return '换课中'; |
| | | case 4: |
| | | return '申请退费中'; |
| | | case 5: |
| | | return '已转移'; |
| | | case 6: |
| | | return '已赠课'; |
| | | default: |
| | | return ''; |
| | | } |
| | | } |
| | | } |
| | |
| | | */ |
| | | RegistrationRecord.check = function () { |
| | | let selected = $('#' + this.id).bootstrapTable('getSelections'); |
| | | if (selected.length > 1) { |
| | | Feng.info("只能选中表格中的一条记录!"); |
| | | return false; |
| | | } else { |
| | | RegistrationRecord.seItem = selected[0]; |
| | | RegistrationRecord.seItem1 = selected; |
| | | |
| | | return true; |
| | | } |
| | | }; |
| | | |
| | | RegistrationRecord.check1 = function () { |
| | | let selected = $('#' + this.id).bootstrapTable('getSelections'); |
| | | if (selected.length == 0) { |
| | | Feng.info("请先选中表格中的某一记录!"); |
| | | Feng.info("必须选中表格中的某一记录!"); |
| | | return false; |
| | | } else { |
| | | RegistrationRecord.seItem = selected[0]; |
| | |
| | | |
| | | |
| | | RegistrationRecord.holiClass = function () { |
| | | if (this.check()) { |
| | | if (this.check1()) { |
| | | var ids = RegistrationRecord.seItem1.map(function(item) { |
| | | return item.id; |
| | | }).join(","); |
| | |
| | | RegistrationRecord.makeUpMissedLessons = function () { |
| | | if (this.check()) { |
| | | let operation = function(){ |
| | | let ajax = new $ax(Feng.ctxPath + "/coursePackage/makeUpMissedLessons", function () { |
| | | Feng.success("补课成功!"); |
| | | let ajax = new $ax(Feng.ctxPath + "/coursePackage/makeUpMissedLessons", function (data) { |
| | | Feng.success(data.msg); |
| | | RegistrationRecord.table.refresh(); |
| | | }, function (data) { |
| | | Feng.error("补课失败!" + data.responseJSON.message + "!"); |
| | |
| | | area: ['100%', '100%'], //宽高 |
| | | fix: false, //不固定 |
| | | maxmin: true, |
| | | content: Feng.ctxPath + '/coursePackage/openClassRecord?id=' + $('#id').val() |
| | | content: Feng.ctxPath + '/coursePackage/openClassRecord1?id=' + $('#id').val() |
| | | }); |
| | | this.layerIndex = index; |
| | | }; |
| | |
| | | |
| | | } |
| | | }, |
| | | {title: '所属运营商', field: 'province', visible: role==1?true:false, align: 'center', valign: 'middle' |
| | | {title: '所属运营商', field: 'yysName', visible: role==1?true:false, align: 'center', valign: 'middle' |
| | | }, |
| | | {title: '省', field: 'province', visible: role==1?true:false, align: 'center', valign: 'middle' |
| | | }, |
| | |
| | | area: ['100%', '100%'], //宽高 |
| | | fix: false, //不固定 |
| | | maxmin: true, |
| | | content: Feng.ctxPath + '/tShop/tShop_add_two?id='+$("#id").val() |
| | | content: Feng.ctxPath + '/tShop/tShop_add_two1?id='+$("#id").val() |
| | | }); |
| | | this.layerIndex = index; |
| | | }; |
| | |
| | | } |
| | | let pCode = $("#pCode").val() |
| | | let cCode = $("#cCode").val() |
| | | let pCode1 = $("#pCode1").val() |
| | | let cCode1 = $("#cCode1").val() |
| | | |
| | | |
| | | let name = $("#name").val() |
| | | let phone = $("#phone").val() |
| | | |
| | | if(pCode=='' && $("#role")=="1"){ |
| | | if(pCode=='' && $("#role")=="1" && OBJradio==2){ |
| | | Feng.info("请选择省") |
| | | return; |
| | | } |
| | | if(cCode=='' && $("#role")=="1"){ |
| | | if(cCode=='' && $("#role")=="1" && OBJradio==2){ |
| | | Feng.info("请选择市") |
| | | return; |
| | | } |
| | | if(pCode1=='' && $("#role")=="1" && OBJradio==1){ |
| | | Feng.info("请选择省") |
| | | return; |
| | | } |
| | | if(cCode1=='' && $("#role")=="1" && OBJradio==12){ |
| | | Feng.info("请选择市") |
| | | return; |
| | | } |
| | |
| | | ajax.set("ids",$("#ids").val()); |
| | | ajax.set("type",OBJradio); |
| | | ajax.set("yyId",$("#account").val()); |
| | | ajax.set("pCode1",pCode1); |
| | | ajax.set("cCode1",cCode1); |
| | | ajax.start(); |
| | | } |
| | | var map = new AMap.Map('container', { |
| | |
| | | |
| | | let pCode = $("#pCode").val() |
| | | let cCode = $("#cCode").val() |
| | | let cCode1 = $("#cCode1").val() |
| | | let pCode1 = $("#pCode1").val() |
| | | let account = $("#account").val() |
| | | var OBJradio= $("input[name='type']:checked").val(); |
| | | if(OBJradio==2){ |
| | |
| | | let name = $("#name").val() |
| | | let phone = $("#phone").val() |
| | | |
| | | if(pCode=='' && $("#role")=="1"){ |
| | | if(pCode=='' && $("#role")=="1" && OBJradio==2){ |
| | | Feng.info("请选择省") |
| | | return; |
| | | } |
| | | if(cCode=='' && $("#role")=="1"){ |
| | | if(cCode=='' && $("#role")=="1" && OBJradio==2){ |
| | | Feng.info("请选择市") |
| | | return; |
| | | } |
| | | if(pCode1=='' && $("#role")=="1" && OBJradio==1){ |
| | | Feng.info("请选择省") |
| | | return; |
| | | } |
| | | if(cCode1=='' && $("#role")=="1" && OBJradio==12) { |
| | | Feng.info("请选择市") |
| | | } |
| | | if(name==''){ |
| | | Feng.info("门店名称不能为空") |
| | |
| | | var ajax = new $ax(Feng.ctxPath + "/tShop/update", function(data){ |
| | | if(data=="5001"){ |
| | | Feng.error("该店长手机号已经存在!") |
| | | }else |
| | | if(data.code == 200){ |
| | | }else if(data.code == 200){ |
| | | if(language==1){ |
| | | Feng.success("修改成功!"); |
| | | }else if(language==2){ |
| | |
| | | },function(data){ |
| | | Feng.error("修改失败!" + data.responseJSON.message + "!"); |
| | | }); |
| | | |
| | | ajax.set("provinceCode",pCode); |
| | | ajax.set("cityCode",cCode); |
| | | ajax.set("name",name); |
| | |
| | | ajax.set("ids",$("#ids").val()); |
| | | ajax.set("type",OBJradio); |
| | | ajax.set("yyId",$("#account").val()); |
| | | ajax.set("pCode1",pCode1); |
| | | ajax.set("cCode1",cCode1); |
| | | ajax.start(); |
| | | } |
| | | |
| | |
| | | $.each(data, function(k,v) { |
| | | content += "<option value='"+v.code+"'>"+v.name+"</option>"; |
| | | }); |
| | | $("#cCode").empty().append(content); |
| | | $("#cCode1").empty().append(content); |
| | | } |
| | | }); |
| | | ajax.set("oneId",oneId); |
| | |
| | | package com.dsh.other.feignclient.account.model; |
| | | |
| | | import com.fasterxml.jackson.annotation.JsonFormat; |
| | | import lombok.Data; |
| | | |
| | | import java.util.Date; |
| | |
| | | /** |
| | | * 生日 |
| | | */ |
| | | @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") |
| | | private Date birthday; |
| | | /** |
| | | * 性别(1=男,2=女) |