| | |
| | | <modules> |
| | | <module fileurl="file://$PROJECT_DIR$/.idea/PlayPai.iml" filepath="$PROJECT_DIR$/.idea/PlayPai.iml" /> |
| | | <module fileurl="file://$PROJECT_DIR$/cloud-server-course/mb-cloud-course.iml" filepath="$PROJECT_DIR$/cloud-server-course/mb-cloud-course.iml" /> |
| | | <module fileurl="file://$PROJECT_DIR$/cloud-server-parent/mb-cloud-parent.iml" filepath="$PROJECT_DIR$/cloud-server-parent/mb-cloud-parent.iml" /> |
| | | </modules> |
| | | </component> |
| | | </project> |
| | |
| | | </component> |
| | | <component name="ChangeListManager"> |
| | | <list default="true" id="cb08d02f-fd4f-4fa2-85fe-abd508fa83ac" name="Default Changelist" comment="9.15.1"> |
| | | <change afterPath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/controller/CourseStudentController.java" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/.idea/modules.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/modules.xml" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/cloud-server-account/src/main/java/com/dsh/account/controller/AppUserController.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-account/src/main/java/com/dsh/account/controller/AppUserController.java" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/cloud-server-account/src/main/java/com/dsh/account/controller/StudentController.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-account/src/main/java/com/dsh/account/controller/StudentController.java" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/cloud-server-account/src/main/java/com/dsh/account/mapper/TAppUserMapper.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-account/src/main/java/com/dsh/account/mapper/TAppUserMapper.java" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/cloud-server-account/src/main/java/com/dsh/account/feignclient/course/CoursePaymentClient.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-account/src/main/java/com/dsh/account/feignclient/course/CoursePaymentClient.java" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/cloud-server-account/src/main/java/com/dsh/account/mapper/TStudentMapper.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-account/src/main/java/com/dsh/account/mapper/TStudentMapper.java" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/cloud-server-account/src/main/java/com/dsh/account/service/TAppUserService.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-account/src/main/java/com/dsh/account/service/TAppUserService.java" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/cloud-server-account/src/main/java/com/dsh/account/service/TStudentService.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-account/src/main/java/com/dsh/account/service/TStudentService.java" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/cloud-server-account/src/main/java/com/dsh/account/service/impl/TAppUserServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-account/src/main/java/com/dsh/account/service/impl/TAppUserServiceImpl.java" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/cloud-server-account/src/main/java/com/dsh/account/service/impl/TStudentServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-account/src/main/java/com/dsh/account/service/impl/TStudentServiceImpl.java" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/cloud-server-account/src/main/resources/mapper/TAppUserMapper.xml" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-account/src/main/resources/mapper/TAppUserMapper.xml" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/cloud-server-account/src/main/resources/mapper/TStudentMapper.xml" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-account/src/main/resources/mapper/TStudentMapper.xml" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/entity/TCoursePackagePayment.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/entity/TCoursePackagePayment.java" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/cloud-server-activity/src/main/java/com/dsh/activity/feignclient/model/CouponListOfSearch.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-activity/src/main/java/com/dsh/activity/feignclient/model/CouponListOfSearch.java" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/cloud-server-activity/src/main/java/com/dsh/activity/mapper/CouponMapper.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-activity/src/main/java/com/dsh/activity/mapper/CouponMapper.java" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/cloud-server-activity/src/main/java/com/dsh/activity/service/impl/CouponServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-activity/src/main/java/com/dsh/activity/service/impl/CouponServiceImpl.java" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/cloud-server-activity/src/main/resources/mapper/CouponMapper.xml" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-activity/src/main/resources/mapper/CouponMapper.xml" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/cloud-server-course/pom.xml" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-course/pom.xml" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/controller/CancelSourceController.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/controller/CancelSourceController.java" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/controller/CoursePackagePaymentController.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/controller/CoursePackagePaymentController.java" 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/CoursePackagePaymentConfig.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/entity/CoursePackagePaymentConfig.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/ClassListDto.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/entity/dto/ClassListDto.java" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/feignclient/CoursePaymentClient.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/feignclient/CoursePaymentClient.java" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/feignclient/account/AppUserClient.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/feignclient/account/AppUserClient.java" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/mapper/CoursePackageStudentMapper.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/mapper/CoursePackageStudentMapper.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/service/CoursePackageStudentService.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/service/CoursePackageStudentService.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/CoursePackageStudentServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/service/impl/CoursePackageStudentServiceImpl.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/feignclient/account/StudentClient.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/feignclient/account/StudentClient.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/java/com/dsh/course/util/ResultUtil.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/util/ResultUtil.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/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/pom.xml" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/pom.xml" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/course/dto/ClassListDto.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/course/dto/ClassListDto.java" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/course/feignClient/account/AppUserClient.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/course/feignClient/account/AppUserClient.java" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/course/feignClient/activity/model/CouponListOfSearch.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/course/feignClient/activity/model/CouponListOfSearch.java" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/course/feignClient/course/CoursePackagePaymentClient.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/course/feignClient/course/CoursePackagePaymentClient.java" 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/CoursePackagePaymentConfig.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/course/feignClient/course/model/CoursePackagePaymentConfig.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/course/feignClient/course/model/TCoursePackagePayment.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/course/feignClient/course/model/TCoursePackagePayment.java" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/course/feignClient/other/HistoryClient.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/course/feignClient/other/HistoryClient.java" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCouponController.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCouponController.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/service/ITStudentService.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/service/ITStudentService.java" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/service/impl/TStudentServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/service/impl/TStudentServiceImpl.java" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/util/ResultUtil.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/util/ResultUtil.java" 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/java/com/dsh/guns/modular/system/model/TStudent.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/TStudent.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/classRecord.html" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/WEB-INF/view/system/coursePackage/classRecord.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/coursePackageStudent.html" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/WEB-INF/view/system/coursePackage/coursePackageStudent.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/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/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/tStudent/tStudent.js" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/static/modular/system/tStudent/tStudent.js" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/WEB-INF/view/system/tStudent/tStudentEdit_first.html" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/WEB-INF/view/system/tStudent/tStudentEdit_first.html" 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/coursePackageStudent.js" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/static/modular/system/coursePackage/coursePackageStudent.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-other/src/main/java/com/dsh/other/controller/BannerController.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-other/src/main/java/com/dsh/other/controller/BannerController.java" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/cloud-server-other/src/main/java/com/dsh/other/mapper/BannerMapper.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-other/src/main/java/com/dsh/other/mapper/BannerMapper.java" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/cloud-server-other/src/main/java/com/dsh/other/entity/GetHistoryDto.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-other/src/main/java/com/dsh/other/entity/GetHistoryDto.java" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/cloud-server-other/src/main/java/com/dsh/other/service/IBannerService.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-other/src/main/java/com/dsh/other/service/IBannerService.java" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/cloud-server-other/src/main/java/com/dsh/other/service/impl/BannerServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-other/src/main/java/com/dsh/other/service/impl/BannerServiceImpl.java" afterDir="false" /> |
| | | <change beforePath="$PROJECT_DIR$/cloud-server-other/src/main/resources/mapper/BannerMapper.xml" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-other/src/main/resources/mapper/BannerMapper.xml" afterDir="false" /> |
| | | </list> |
| | | <option name="SHOW_DIALOG" value="false" /> |
| | | <option name="HIGHLIGHT_CONFLICTS" value="true" /> |
| | |
| | | <option name="hideEmptyMiddlePackages" value="true" /> |
| | | <option name="showLibraryContents" value="true" /> |
| | | </component> |
| | | <component name="PropertiesComponent"><![CDATA[{ |
| | | "keyToString": { |
| | | "DefaultHtmlFileTemplate": "HTML File", |
| | | "RequestMappingsPanelOrder0": "0", |
| | | "RequestMappingsPanelOrder1": "1", |
| | | "RequestMappingsPanelWidth0": "75", |
| | | "RequestMappingsPanelWidth1": "75", |
| | | "WebServerToolWindowFactoryState": "false", |
| | | "git-widget-placeholder": "master", |
| | | "ignore.virus.scanning.warn.message": "true", |
| | | "last_opened_file_path": "D:/ttt/java/PlayPai/cloud-server-other/src/main/resources/mapper", |
| | | "node.js.detected.package.eslint": "true", |
| | | "node.js.detected.package.tslint": "true", |
| | | "node.js.selected.package.eslint": "(autodetect)", |
| | | "node.js.selected.package.tslint": "(autodetect)", |
| | | "project.structure.last.edited": "模块", |
| | | "project.structure.proportion": "0.15", |
| | | "project.structure.side.proportion": "0.54367816", |
| | | "spring.configuration.checksum": "7fb6c6ffe49cf7315145a28a96be3d8f", |
| | | "vue.rearranger.settings.migration": "true" |
| | | <component name="PropertiesComponent">{ |
| | | "keyToString": { |
| | | "DefaultHtmlFileTemplate": "HTML File", |
| | | "RequestMappingsPanelOrder0": "0", |
| | | "RequestMappingsPanelOrder1": "1", |
| | | "RequestMappingsPanelWidth0": "75", |
| | | "RequestMappingsPanelWidth1": "75", |
| | | "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/tStudent", |
| | | "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": "MavenSettings", |
| | | "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:\ttt\java\PlayPai\cloud-server-other\src\main\resources\mapper" /> |
| | | <recent name="D:\ttt\java\PlayPai\cloud-server-management\src\main\webapp\WEB-INF\view\system\tStudent" /> |
| | | <recent name="D:\ttt\java\PlayPai\cloud-server-management\src\main\webapp\static" /> |
| | | <recent name="D:\ttt\java\PlayPai\cloud-server-parent" /> |
| | | <recent name="D:\ttt\java\PlayPai\cloud-server-management\src\main\resources\mapper" /> |
| | | <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\coursePackage" /> |
| | | <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\coursePackage" /> |
| | | <recent name="D:\JavaTool\PlayPai1\cloud-server-management\src\main\webapp\WEB-INF\view\system" /> |
| | | </key> |
| | | <key name="MoveFile.RECENT_KEYS"> |
| | | <recent name="D:\JavaTool\PlayPai1\cloud-server-management\src\main\webapp\static\modular\system\tStudent" /> |
| | | <recent name="D:\JavaTool\PlayPai1\cloud-server-parent" /> |
| | | <recent name="D:\ttt\java\PlayPai\cloud-server-parent" /> |
| | | </key> |
| | | <key name="CopyClassDialog.RECENTS_KEY"> |
| | | <recent name="com.dsh.course.entity.dto" /> |
| | | <recent name="com.dsh.course.feignClient.other" /> |
| | | <recent name="com.dsh.course.dto" /> |
| | | <recent name="com.dsh.account.dto" /> |
| | | <recent name="com.dsh.course.mapper" /> |
| | | <recent name="com.dsh.course.service.impl" /> |
| | | <recent name="com.dsh.course.service" /> |
| | | <recent name="com.dsh.course.entity" /> |
| | | <recent name="com.dsh.course.entity.dto" /> |
| | | </key> |
| | | </component> |
| | | <component name="RunDashboard"> |
| | |
| | | </set> |
| | | </option> |
| | | </component> |
| | | <component name="RunManager" selected="Spring Boot.AuthApplication"> |
| | | <component name="RunManager" selected="Spring Boot.ManagementApplication"> |
| | | <configuration name="BigDecimalToChineseWords" type="Application" factoryName="Application" temporary="true" nameIsGenerated="true"> |
| | | <option name="MAIN_CLASS_NAME" value="com.dsh.guns.modular.system.util.BigDecimalToChineseWords" /> |
| | | <module name="mb-cloud-management" /> |
| | | <extension name="coverage"> |
| | | <pattern> |
| | | <option name="PATTERN" value="com.dsh.guns.modular.system.util.*" /> |
| | | <option name="ENABLED" value="true" /> |
| | | </pattern> |
| | | </extension> |
| | | <method v="2"> |
| | | <option name="Make" enabled="true" /> |
| | | </method> |
| | | </configuration> |
| | | <configuration name="AccountApplication" type="SpringBootApplicationConfigurationType" factoryName="Spring Boot"> |
| | | <module name="mb-cloud-account" /> |
| | | <option name="SHORTEN_COMMAND_LINE" value="MANIFEST" /> |
| | |
| | | </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.CourseApplication" /> |
| | | <item itemvalue="Spring Boot.OtherApplication" /> |
| | | <item itemvalue="Spring Boot.UserApplication" /> |
| | | <item itemvalue="Spring Boot.AuthApplication" /> |
| | | <item itemvalue="Spring Boot.ActivityApplication" /> |
| | | <item itemvalue="Spring Boot.CourseApplication" /> |
| | | <item itemvalue="Spring Boot.CompetitionApplication" /> |
| | | <item itemvalue="应用程序.BigDecimalToChineseWords" /> |
| | | </list> |
| | | <recent_temporary> |
| | | <list> |
| | | <item itemvalue="应用程序.BigDecimalToChineseWords" /> |
| | | </list> |
| | | </recent_temporary> |
| | | </component> |
| | | <component name="SpellCheckerSettings" RuntimeDictionaries="0" Folders="0" CustomDictionaries="0" DefaultDictionary="应用程序级" UseSingleDictionary="true" transferred="true" /> |
| | | <component name="SvnConfiguration"> |
| | |
| | | <workItem from="1694826468892" duration="22165000" /> |
| | | <workItem from="1694931109193" duration="31686000" /> |
| | | <workItem from="1695084815207" duration="29663000" /> |
| | | <workItem from="1695138476053" duration="63000" /> |
| | | <workItem from="1695138628399" duration="396000" /> |
| | | <workItem from="1695139199151" duration="117000" /> |
| | | <workItem from="1695139544607" duration="173000" /> |
| | | <workItem from="1695139722530" duration="14000" /> |
| | | <workItem from="1695139741242" duration="4527000" /> |
| | | <workItem from="1695162059666" duration="1120000" /> |
| | | <workItem from="1695163191288" duration="585000" /> |
| | | <workItem from="1695170647169" duration="6776000" /> |
| | | <workItem from="1695178072108" duration="30661000" /> |
| | | <workItem from="1695250896481" duration="445000" /> |
| | | <workItem from="1695255303249" duration="37521000" /> |
| | | <workItem from="1695342171677" duration="37810000" /> |
| | | <workItem from="1695430054273" duration="24288000" /> |
| | | </task> |
| | | <task id="LOCAL-00001" summary="后台代码删除"> |
| | | <created>1690249807612</created> |
| | |
| | | </breakpoints> |
| | | </breakpoint-manager> |
| | | </component> |
| | | <component name="XSLT-Support.FileAssociations.UIState"> |
| | | <expand /> |
| | | <select /> |
| | | </component> |
| | | <component name="masterDetails"> |
| | | <states> |
| | | <state key="ArtifactsStructureConfigurable.UI"> |
| | |
| | | package com.dsh.account.controller; |
| | | |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import com.dsh.account.dto.CreateHistoryDto; |
| | | import com.dsh.account.dto.GetHistoryDto; |
| | | import com.dsh.account.dto.StudentSearch; |
| | | import com.dsh.account.dto.TStudentDto; |
| | | import com.dsh.account.dto.*; |
| | | import com.dsh.account.entity.GiftSearchDto; |
| | | import com.dsh.account.entity.TStudent; |
| | | import com.dsh.account.feignclient.course.CoursePaymentClient; |
| | | import com.dsh.account.feignclient.course.model.TCoursePackagePayment; |
| | | import com.dsh.account.model.StudentVo; |
| | | import com.dsh.account.service.TAppUserService; |
| | | import com.dsh.account.service.TStudentService; |
| | | import com.dsh.account.util.ResultUtil; |
| | | import com.dsh.account.util.TokenUtil; |
| | | import io.micrometer.core.instrument.search.Search; |
| | | import io.swagger.annotations.ApiImplicitParam; |
| | | import io.swagger.annotations.ApiImplicitParams; |
| | | import io.swagger.annotations.ApiOperation; |
| | | import jdk.nashorn.internal.ir.annotations.Ignore; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.web.bind.annotation.*; |
| | | import springfox.documentation.swagger2.mappers.ModelMapper; |
| | | |
| | | import javax.annotation.Resource; |
| | | import java.text.SimpleDateFormat; |
| | | import java.util.ArrayList; |
| | | import java.util.Date; |
| | |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | /** |
| | | * 根据名称模糊搜索学员 |
| | | * @param name |
| | |
| | | |
| | | return getHistoryDtos; |
| | | } |
| | | |
| | | |
| | | @Resource |
| | | private CoursePaymentClient paymentClient; |
| | | @ResponseBody |
| | | @PostMapping("/student/giftSelect") |
| | | public List<SelectDto> giftSelect(@RequestBody GiftSearchDto giftSearchDto){ |
| | | System.out.println("======giftSelect=========giftSearchDto===="+giftSearchDto); |
| | | |
| | | // Integer appId = studentService.getGiftSelect(giftSearchDto); |
| | | TCoursePackagePayment coursePackagePaymentById = paymentClient.getCoursePackagePaymentById(giftSearchDto.getId()); |
| | | // System.out.println("=======giftSelect======appId====>"+appId); |
| | | List<TStudent> selectDtos = studentService.list(new QueryWrapper<TStudent>() |
| | | .select("name, id") |
| | | .eq("state", 1) |
| | | .eq("name", giftSearchDto.getName()).eq("phone",giftSearchDto.getPhone()).ne("appUserId",coursePackagePaymentById.getAppUserId())); |
| | | |
| | | |
| | | List<SelectDto> list = new ArrayList<>(); |
| | | for (TStudent student : selectDtos) { |
| | | SelectDto selectDto = new SelectDto(); |
| | | selectDto.setValue(student.getName()); |
| | | selectDto.setId(student.getId()); |
| | | list.add(selectDto); |
| | | } |
| | | System.out.println("=======giftSelect======selectDtos====>"+list); |
| | | return list; |
| | | } |
| | | } |
| | |
| | | @PostMapping("/base/coursePack/delPaymentCoursePackage") |
| | | public boolean delPaymentCoursePackage(@RequestBody Integer payId); |
| | | |
| | | |
| | | @PostMapping("/base/coursePack/getCoursePackagePaymentById") |
| | | public TCoursePackagePayment getCoursePackagePaymentById(@RequestBody Integer id); |
| | | |
| | | @PostMapping("/base/coursePack/updatePaymentCoursePackage") |
| | | void updatePaymentCoursePackage(@RequestBody TCoursePackagePayment coursePackagePayment); |
| | | |
| | |
| | | package com.dsh.account.mapper; |
| | | |
| | | import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
| | | import com.dsh.account.dto.CreateHistoryDto; |
| | | import com.dsh.account.dto.GetHistoryDto; |
| | | import com.dsh.account.dto.StudentSearch; |
| | | import com.dsh.account.dto.TStudentDto; |
| | | import com.dsh.account.dto.*; |
| | | import com.dsh.account.entity.GiftSearchDto; |
| | | import com.dsh.account.entity.TStudent; |
| | | import org.apache.ibatis.annotations.Mapper; |
| | | import org.apache.ibatis.annotations.Param; |
| | |
| | | void createHistory(@Param("createHistoryDto") CreateHistoryDto createHistoryDto); |
| | | |
| | | List<GetHistoryDto> getHistory(); |
| | | |
| | | |
| | | |
| | | Integer getGiftSelect(@Param("giftSearchDto")GiftSearchDto giftSearchDto); |
| | | } |
| | |
| | | package com.dsh.account.service; |
| | | |
| | | import com.baomidou.mybatisplus.extension.service.IService; |
| | | import com.dsh.account.dto.CreateHistoryDto; |
| | | import com.dsh.account.dto.GetHistoryDto; |
| | | import com.dsh.account.dto.StudentSearch; |
| | | import com.dsh.account.dto.TStudentDto; |
| | | import com.dsh.account.dto.*; |
| | | import com.dsh.account.entity.GiftSearchDto; |
| | | import com.dsh.account.entity.TStudent; |
| | | import com.dsh.account.feignclient.competition.model.PurchaseRecordVo; |
| | | import com.dsh.account.feignclient.course.model.RecordAppoint; |
| | |
| | | void createHistory(CreateHistoryDto createHistoryDto); |
| | | |
| | | List<GetHistoryDto> getHistory(); |
| | | |
| | | |
| | | Integer getGiftSelect(GiftSearchDto giftSearchDto); |
| | | } |
| | |
| | | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import com.dsh.account.dto.CreateHistoryDto; |
| | | import com.dsh.account.dto.GetHistoryDto; |
| | | import com.dsh.account.dto.StudentSearch; |
| | | import com.dsh.account.dto.TStudentDto; |
| | | import com.dsh.account.entity.Coach; |
| | | import com.dsh.account.entity.TAppUser; |
| | | import com.dsh.account.entity.TCourseInfoRecord; |
| | | import com.dsh.account.entity.TStudent; |
| | | import com.dsh.account.dto.*; |
| | | import com.dsh.account.entity.*; |
| | | import com.dsh.account.feignclient.activity.IntroduceRewardsClient; |
| | | import com.dsh.account.feignclient.activity.UserConponClient; |
| | | import com.dsh.account.feignclient.activity.model.IntrduceOfUserRequest; |
| | |
| | | return this.baseMapper.getHistory(); |
| | | } |
| | | |
| | | @Override |
| | | public Integer getGiftSelect(GiftSearchDto giftSearchDto) { |
| | | return this.baseMapper.getGiftSelect(giftSearchDto); |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | } |
| | |
| | | |
| | | </select> |
| | | |
| | | |
| | | |
| | | <select id="getGiftSelect" resultType="java.lang.Integer"> |
| | | SELECT appUserId FROM t_student |
| | | WHERE name = #{giftSearchDto.name} |
| | | AND phone = #{giftSearchDto.phone} |
| | | </select> |
| | | </mapper> |
| | |
| | | private Integer state; |
| | | |
| | | private Page<Map<String, Object>> page; |
| | | private String cityCode; |
| | | private Integer storeId; |
| | | |
| | | |
| | | } |
| | |
| | | @Param("userPopulation")Integer userPopulation, |
| | | @Param("status")Integer status, |
| | | @Param("state")Integer state, |
| | | @Param("page")Page<Map<String, Object>> page); |
| | | @Param("page")Page<Map<String, Object>> page, |
| | | @Param("cityCode") String cityCode, |
| | | @Param("storeId")Integer storeId |
| | | |
| | | ); |
| | | |
| | | List<Map<String, Object>> queryCouponExamineList(@Param("name")String name, |
| | | @Param("type")Integer type, |
| | |
| | | |
| | | @Override |
| | | public List<Map<String, Object>> queryCouponListOfSearch(CouponListOfSearch ofSearch) { |
| | | return this.baseMapper.queryCouponListOfSearch(ofSearch.getName(),ofSearch.getType(),ofSearch.getDistributionMethod(),ofSearch.getUserPopulation(),ofSearch.getStatus(),ofSearch.getState(),ofSearch.getPage()); |
| | | return this.baseMapper.queryCouponListOfSearch(ofSearch.getName(),ofSearch.getType(),ofSearch.getDistributionMethod(),ofSearch.getUserPopulation(),ofSearch.getStatus(),ofSearch.getState(),ofSearch.getPage(),ofSearch.getCityCode(),ofSearch.getStoreId()); |
| | | } |
| | | |
| | | @Override |
| | |
| | | illustrate |
| | | from t_coupon |
| | | where 1 = 1 |
| | | <if test="cityCode != null"> |
| | | and id in( |
| | | SELECT DISTINCT couponId FROM |
| | | |
| | | (SELECT DISTINCT couponId |
| | | from t_coupon_store |
| | | WHERE storeId = #{storeId} |
| | | UNION ALL |
| | | SELECT DISTINCT couponId |
| | | |
| | | from t_coupon_city |
| | | WHERE provinceCode = #{cityCode}) o) |
| | | </if> |
| | | <if test="name != null"> |
| | | and `name` like concat('%', #{name}, '%') |
| | | </if> |
| | |
| | | <artifactId>alipay-sdk-java</artifactId> |
| | | <version>4.8.10.ALL</version> |
| | | </dependency> |
| | | <dependency> |
| | | <groupId>com.huaweicloud</groupId> |
| | | <artifactId>esdk-obs-java-bundle</artifactId> |
| | | <version>3.23.5</version> |
| | | <scope>compile</scope> |
| | | </dependency> |
| | | </dependencies> |
| | | |
| | | <build> |
| | |
| | | import com.dsh.course.feignclient.model.GetStuSessionList; |
| | | import com.dsh.course.feignclient.model.PurchaseRecordVo; |
| | | import com.dsh.course.service.CancelledClassesService; |
| | | import com.dsh.course.service.CourseCounsumService; |
| | | import com.dsh.course.service.TCoursePackagePaymentService; |
| | | import io.swagger.annotations.Api; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | |
| | | @RestController |
| | | @RequestMapping("") |
| | | public class CancelSourceController { |
| | | |
| | | |
| | | @Autowired |
| | | private CancelledClassesService caceService; |
| | |
| | | import com.alibaba.fastjson.JSONObject; |
| | | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import com.baomidou.mybatisplus.extension.activerecord.Model; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.dsh.course.entity.*; |
| | | import com.dsh.course.feignclient.account.AppUserClient; |
| | |
| | | import io.swagger.annotations.ApiImplicitParam; |
| | | import io.swagger.annotations.ApiImplicitParams; |
| | | import io.swagger.annotations.ApiOperation; |
| | | import io.swagger.models.auth.In; |
| | | import org.slf4j.Logger; |
| | | import org.slf4j.LoggerFactory; |
| | | import org.springframework.beans.BeanUtils; |
| | |
| | | .eq("code",code)); |
| | | } |
| | | |
| | | |
| | | @PostMapping("/base/coursePack/getCoursePackagePaymentById") |
| | | public TCoursePackagePayment getCoursePackagePaymentById(@RequestBody Integer id){ |
| | | return packagePaymentService.getById(id); |
| | | } |
| | | @PostMapping("/base/coursePack/delPaymentCoursePackage") |
| | | public boolean delPaymentCoursePackage(@RequestBody Integer payId){ |
| | | return packagePaymentService.removeById(payId); |
| | |
| | | } |
| | | |
| | | |
| | | @ResponseBody |
| | | @PostMapping("/coursePackagePayment/CountqueryByClassId") |
| | | public Integer CountqueryByClassId(@RequestBody Integer id){ |
| | | int coursePackageId = packagePaymentService.count(new QueryWrapper<TCoursePackagePayment>().eq("coursePackageId", id)); |
| | | |
| | | |
| | | return coursePackageId; |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 修改数据 |
| | | * @param coursePackagePayment |
| | |
| | | import com.baomidou.mybatisplus.core.conditions.Wrapper; |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import com.baomidou.mybatisplus.core.toolkit.Wrappers; |
| | | import com.dsh.course.entity.StudentClassInfo; |
| | | import com.dsh.course.entity.TCoursePackagePayment; |
| | | import com.dsh.course.entity.dto.ClassListDto; |
| | | import com.dsh.course.entity.dto.SelectDto; |
| | | import com.dsh.course.entity.dto.updateTimeDto; |
| | | import com.dsh.course.entity.*; |
| | | import com.dsh.course.entity.dto.*; |
| | | import com.dsh.course.feignclient.account.AppUserClient; |
| | | import com.dsh.course.service.CoursePackageStudentService; |
| | | import com.dsh.course.service.TCoursePackagePaymentService; |
| | | import com.dsh.course.feignclient.account.StudentClient; |
| | | import com.dsh.course.feignclient.account.model.Student; |
| | | import com.dsh.course.model.dto.ToClassDto; |
| | | import com.dsh.course.service.*; |
| | | import com.dsh.course.util.ResultUtil; |
| | | import com.dsh.course.util.UUIDUtil; |
| | | import io.swagger.annotations.Api; |
| | | import org.apache.commons.lang.StringUtils; |
| | | import org.apache.commons.lang3.ArrayUtils; |
| | | import org.checkerframework.checker.units.qual.A; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.http.MediaType; |
| | | import org.springframework.web.bind.annotation.*; |
| | | |
| | | import javax.annotation.Resource; |
| | | import javax.swing.text.html.parser.Entity; |
| | | import java.util.ArrayList; |
| | | import java.util.Arrays; |
| | | import java.util.Date; |
| | | import java.util.List; |
| | | import java.util.stream.Collectors; |
| | | |
| | | @Api |
| | | @CrossOrigin |
| | |
| | | |
| | | // Date maxDate = studentService.getMaxDate(tStudentId); |
| | | Date minDate = studentService.getMinDate(tStudentId); |
| | | System.out.println("===========>"+studentClassInfo); |
| | | Integer totalHours = studentClassInfo.getTotalHours(); |
| | | Integer hasHours = studentClassInfo.getRestHours(); |
| | | Integer restHours = totalHours-hasHours; |
| | | studentClassInfo.setHasHours(restHours); |
| | | studentClassInfo.setInDate(minDate); |
| | | System.out.println("===========>"+studentClassInfo); |
| | | |
| | | return studentClassInfo; |
| | | } |
| | | //获取学员课程列表 |
| | |
| | | public List<ClassListDto> listClass(@RequestParam("tStudentId")Integer tStudentId) { |
| | | System.out.println("==========getClassList===tStudentId===="+tStudentId); |
| | | List<ClassListDto> listDtos = studentService.getClassList(tStudentId); |
| | | for (ClassListDto dto : listDtos){ |
| | | dto.setHasClassHours(dto.getTotalClassHours()-dto.getLaveClassHours()); |
| | | } |
| | | System.out.println("======listDtos======"+listDtos); |
| | | return listDtos; |
| | | |
| | |
| | | } |
| | | |
| | | |
| | | |
| | | //根据payid获取对应门店的常规课程 |
| | | |
| | | @Autowired |
| | | private TCoursePackageService packageService; |
| | | @RequestMapping("/holiSelect") |
| | | @ResponseBody |
| | | public List<SelectDto> getHoliSelect(@RequestParam("courseId")Integer id){ |
| | | |
| | | TCoursePackage byId = packageService.getById(id); |
| | | Integer storeId = byId.getStoreId(); |
| | | List<TCoursePackage> list = packageService.list(new QueryWrapper<TCoursePackage>() |
| | | .select("id", "name") |
| | | .eq("storeId", storeId) |
| | | .eq("type","2") |
| | | ); |
| | | List<SelectDto> selectDtos = new ArrayList<>(); |
| | | for (TCoursePackage t :list){ |
| | | SelectDto selectDto = new SelectDto(); |
| | | selectDto.setId(t.getId()); |
| | | selectDto.setValue(t.getName()); |
| | | selectDtos.add(selectDto); |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | return selectDtos; |
| | | } |
| | | |
| | | @RequestMapping("/transSelect") |
| | | @ResponseBody |
| | | public List<SelectDto> getTransSelect(@RequestParam("courseId")Integer id){ |
| | | |
| | | TCoursePackage byId = packageService.getById(id); |
| | | Integer storeId = byId.getStoreId(); |
| | | List<TCoursePackage> list = packageService.list(new QueryWrapper<TCoursePackage>() |
| | | .select("id", "name") |
| | | .eq("storeId", storeId) |
| | | .eq("type","1") |
| | | ); |
| | | List<SelectDto> selectDtos = new ArrayList<>(); |
| | | for (TCoursePackage t :list){ |
| | | SelectDto selectDto = new SelectDto(); |
| | | selectDto.setId(t.getId()); |
| | | selectDto.setValue(t.getName()); |
| | | selectDtos.add(selectDto); |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | return selectDtos; |
| | | } |
| | | |
| | | @Autowired |
| | | private CourseCounsumService counsumService; |
| | | @RequestMapping("/queryCounsum") |
| | | @ResponseBody |
| | | public List<CourseCounsum> queryCounsum(@RequestBody ConsumeQuery consumeQuery){ |
| | | System.out.println("======queryCounsum==========="+consumeQuery); |
| | | |
| | | QueryWrapper<CourseCounsum> queryWrapper = new QueryWrapper<>(); |
| | | queryWrapper.eq("paymentId",consumeQuery.getPayId()); |
| | | |
| | | |
| | | if (consumeQuery.getChangeType()!=null){ |
| | | queryWrapper.eq("changeType", consumeQuery.getChangeType()); |
| | | } |
| | | if (consumeQuery.getStart()!=null){ |
| | | queryWrapper.between("insertTime", consumeQuery.getStart(), consumeQuery.getEnd()); |
| | | } |
| | | if (consumeQuery.getReason()!=null&&consumeQuery.getReason()!=""){ |
| | | queryWrapper.like("reason", consumeQuery.getReason()); |
| | | |
| | | } |
| | | |
| | | List<CourseCounsum> list = counsumService.list(queryWrapper); |
| | | |
| | | |
| | | |
| | | |
| | | // List<CourseCounsum> list = counsumService.list(new QueryWrapper<CourseCounsum>().eq("paymentId", consumeQuery.getPayId()).eq("changeType", consumeQuery.getChangeType()).between("insertTime", consumeQuery.getStart(), consumeQuery.getEnd()).like("reason", consumeQuery.getReason())); |
| | | return list; |
| | | } |
| | | |
| | | |
| | | @RequestMapping("/insertBack") |
| | | @ResponseBody |
| | | public void insertBack(@RequestBody InsertBackDto insertBackDto){ |
| | | |
| | | MoneyBack moneyBack = new MoneyBack(); |
| | | moneyBack.setStudentId(insertBackDto.getId()); |
| | | moneyBack.setStatus(0); |
| | | moneyBack.setInsertTime(new Date()); |
| | | moneyBack.setIds(insertBackDto.getIds()); |
| | | moneyBackService.save(moneyBack); |
| | | |
| | | } |
| | | |
| | | |
| | | @RequestMapping("/queryByIds") |
| | | @ResponseBody |
| | | public List<TCoursePackagePayment> queryByIds(@RequestParam("ids")String ids){ |
| | | List<TCoursePackagePayment> paymentList = paymentService.list(new QueryWrapper<TCoursePackagePayment>() |
| | | .in("id", Arrays.asList(ids.split(",")))); |
| | | |
| | | System.out.println("========client==>"+paymentList); |
| | | return paymentList; |
| | | } |
| | | |
| | | @RequestMapping("/changeStatus") |
| | | @ResponseBody |
| | | public void changeStatus(@RequestParam("id")Integer id){ |
| | | MoneyBack byId = moneyBackService.getById(id); |
| | | byId.setStatus(1); |
| | | moneyBackService.updateById(byId); |
| | | |
| | | } |
| | | |
| | | @RequestMapping("/zeroClass") |
| | | @ResponseBody |
| | | public void zeroClass(@RequestParam("id")Integer id){ |
| | | MoneyBack byId = moneyBackService.getById(id); |
| | | String[] split = byId.getIds().split(","); |
| | | System.out.println("========split===>"+split); |
| | | List<TCoursePackagePayment> id1 = paymentService.list(new QueryWrapper<TCoursePackagePayment>().in("id", split)); |
| | | for (TCoursePackagePayment o :id1){ |
| | | o.setTotalClassHours(0); |
| | | o.setLaveClassHours(0); |
| | | o.setAppUserId(null); |
| | | } |
| | | paymentService.updateBatchById(id1); |
| | | } |
| | | |
| | | @RequestMapping("/cancel") |
| | | @ResponseBody |
| | | public void cancel(@RequestParam("ids")String ids){ |
| | | String[] split = ids.split(","); |
| | | List<CoursePackageStudent> coursePackagePaymentId = studentService.list(new QueryWrapper<CoursePackageStudent>().in("coursePackagePaymentId", split)); |
| | | for (CoursePackageStudent student :coursePackagePaymentId){ |
| | | student.setReservationStatus(2); |
| | | student.setAppUserId(null); |
| | | } |
| | | studentService.updateBatchById(coursePackagePaymentId); |
| | | |
| | | |
| | | } |
| | | |
| | | @Autowired |
| | | private MoneyBackService moneyBackService; |
| | | @RequestMapping("/getMoneyBack") |
| | | @ResponseBody |
| | | public List<MoneyBack> getMoneyBack(@RequestParam("tStudentId")Integer tStudentId){ |
| | | |
| | | List<MoneyBack> moneyBacksck = moneyBackService.list(new QueryWrapper<MoneyBack>().eq("studentId", tStudentId)); |
| | | return moneyBacksck; |
| | | } |
| | | |
| | | //课程转移 |
| | | @RequestMapping("/toClass") |
| | | @ResponseBody |
| | | public void toClass(@RequestBody ToClassDto toClassDto){ |
| | | System.out.println("===========到达getSelect======="+toClassDto); |
| | | TCoursePackagePayment orinPay = paymentService.getOne(new QueryWrapper<TCoursePackagePayment>().eq("id", toClassDto.getId())); |
| | | TCoursePackagePayment studentPay = paymentService.getOne(new QueryWrapper<TCoursePackagePayment>().eq("studentId", toClassDto.getToStudentId()).eq("coursePackageId",orinPay.getCoursePackageId())); |
| | | if (studentPay!=null) { |
| | | System.out.println("======orinPay=====>" + orinPay); |
| | | System.out.println("======studentPay=====>" + studentPay); |
| | | Integer laveClassHours = orinPay.getLaveClassHours(); |
| | | Integer totalClassHours = orinPay.getTotalClassHours(); |
| | | |
| | | orinPay.setTotalClassHours(0); |
| | | orinPay.setLaveClassHours(0); |
| | | orinPay.setAppUserId(null); |
| | | paymentService.updateById(orinPay); |
| | | |
| | | CourseCounsum courseCounsum = new CourseCounsum(); |
| | | courseCounsum.setInsertTime(new Date()); |
| | | courseCounsum.setReason("转课"); |
| | | courseCounsum.setNum(laveClassHours); |
| | | courseCounsum.setChangeType(0); |
| | | courseCounsum.setPaymentId(orinPay.getId()); |
| | | counsumService.save(courseCounsum); |
| | | |
| | | Integer laveClassHours1 = studentPay.getLaveClassHours(); |
| | | Integer totalClassHours1 = studentPay.getTotalClassHours(); |
| | | int total = totalClassHours + totalClassHours1; |
| | | int lave = laveClassHours + laveClassHours1; |
| | | |
| | | studentPay.setAppUserId(null); |
| | | studentPay.setLaveClassHours(lave); |
| | | studentPay.setTotalClassHours(total); |
| | | paymentService.updateById(studentPay); |
| | | |
| | | CourseCounsum courseCounsum1 = new CourseCounsum(); |
| | | courseCounsum1.setInsertTime(new Date()); |
| | | courseCounsum1.setReason("转课"); |
| | | courseCounsum1.setNum(laveClassHours); |
| | | courseCounsum1.setChangeType(1); |
| | | courseCounsum1.setPaymentId(studentPay.getId()); |
| | | counsumService.save(courseCounsum1); |
| | | |
| | | }else { |
| | | |
| | | |
| | | |
| | | orinPay.setTotalClassHours(0); |
| | | orinPay.setLaveClassHours(0); |
| | | orinPay.setAppUserId(null); |
| | | 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()); |
| | | to.setTotalClassHours(orinPay.getTotalClassHours()); |
| | | to.setLaveClassHours(orinPay.getLaveClassHours()); |
| | | to.setCoursePackageId(orinPay.getCoursePackageId()); |
| | | to.setState(1); |
| | | to.setAppUserId(student.getAppUserId()); |
| | | to.setPayStatus(2); |
| | | to.setStatus(1); |
| | | to.setInsertTime(new Date()); |
| | | paymentService.save(to); |
| | | |
| | | |
| | | CourseCounsum courseCounsum1 = new CourseCounsum(); |
| | | courseCounsum1.setInsertTime(new Date()); |
| | | courseCounsum1.setReason("赠课"); |
| | | courseCounsum1.setNum(orinPay.getLaveClassHours()); |
| | | courseCounsum1.setChangeType(1); |
| | | courseCounsum1.setPaymentId(to.getId()); |
| | | counsumService.save(courseCounsum); |
| | | |
| | | } |
| | | |
| | | |
| | | } |
| | | |
| | | @Resource |
| | | private StudentClient studentClient; |
| | | @RequestMapping(value = "/toHoli",produces = MediaType.APPLICATION_JSON_UTF8_VALUE, consumes = "application/json;charset=UTF-8") |
| | | @ResponseBody |
| | | public String toHoli(@RequestBody ToHoliDto toHoliDto){ |
| | | |
| | | String [] ids = toHoliDto.getIds(); |
| | | List<String> strings = new ArrayList<>(); |
| | | |
| | | |
| | | for (String id : ids){ |
| | | //扣除课时 |
| | | TCoursePackagePayment payment = paymentService.getById(id); |
| | | System.out.println("=====byId========="+payment); |
| | | |
| | | |
| | | Integer laveClassHours = payment.getLaveClassHours(); |
| | | |
| | | Integer classNum = toHoliDto.getClassNum(); |
| | | Integer totalClassHours = payment.getTotalClassHours(); |
| | | Student student = studentClient.queryStudentById(payment.getStudentId()); |
| | | |
| | | if (laveClassHours < classNum){ |
| | | strings.add(student.getName()); continue; |
| | | } |
| | | |
| | | Integer laveClassHoursnew = laveClassHours - classNum; |
| | | Integer totalClassHoursnew = totalClassHours - classNum; |
| | | payment.setLaveClassHours(laveClassHoursnew); |
| | | payment.setTotalClassHours(totalClassHoursnew); |
| | | payment.setAppUserId(null); |
| | | |
| | | paymentService.updateById(payment); |
| | | |
| | | //获取student信息 |
| | | |
| | | //新增课时 |
| | | |
| | | TCoursePackagePayment holi = new TCoursePackagePayment(); |
| | | holi.setAppUserId(student.getAppUserId()); |
| | | holi.setStudentId(student.getId()); |
| | | holi.setCoursePackageId(toHoliDto.getClassId()); |
| | | holi.setTotalClassHours(toHoliDto.getClassNum()); |
| | | holi.setLaveClassHours(toHoliDto.getClassNum()); |
| | | holi.setState(1); |
| | | holi.setInsertTime(new Date()); |
| | | paymentService.save(holi); |
| | | |
| | | System.out.println("保存成功=============》="+holi); |
| | | |
| | | |
| | | |
| | | } |
| | | String[] stringArray = strings.toArray(new String[strings.size()]); |
| | | |
| | | String join = StringUtils.join(stringArray, ","); |
| | | System.out.println("==========join========"+join); |
| | | return join; |
| | | |
| | | |
| | | |
| | | |
| | | } |
| | | |
| | | @RequestMapping(value = "/toTrans",produces = MediaType.APPLICATION_JSON_UTF8_VALUE, consumes = "application/json;charset=UTF-8") |
| | | @ResponseBody |
| | | public String toTrans(@RequestBody ToHoliDto toHoliDto){ |
| | | |
| | | String [] ids = toHoliDto.getIds(); |
| | | List<String> strings = new ArrayList<>(); |
| | | |
| | | |
| | | for (String id : ids){ |
| | | //扣除课时 |
| | | TCoursePackagePayment payment = paymentService.getById(id); |
| | | System.out.println("=====byId========="+payment); |
| | | |
| | | |
| | | Integer laveClassHours = payment.getLaveClassHours(); |
| | | |
| | | Integer classNum = toHoliDto.getClassNum(); |
| | | Integer totalClassHours = payment.getTotalClassHours(); |
| | | Student student = studentClient.queryStudentById(payment.getStudentId()); |
| | | |
| | | // if (laveClassHours < classNum){ |
| | | // strings.add(student.getName()); continue; |
| | | // } |
| | | // |
| | | // Integer laveClassHoursnew = laveClassHours - classNum; |
| | | // Integer totalClassHoursnew = totalClassHours - classNum; |
| | | payment.setLaveClassHours(0); |
| | | payment.setTotalClassHours(0); |
| | | payment.setAppUserId(null); |
| | | |
| | | paymentService.updateById(payment); |
| | | |
| | | //获取student信息 |
| | | |
| | | //新增课时 |
| | | |
| | | TCoursePackagePayment holi = new TCoursePackagePayment(); |
| | | holi.setAppUserId(student.getAppUserId()); |
| | | holi.setStudentId(student.getId()); |
| | | holi.setCoursePackageId(toHoliDto.getClassId()); |
| | | holi.setTotalClassHours(laveClassHours); |
| | | holi.setLaveClassHours(laveClassHours); |
| | | holi.setState(1); |
| | | holi.setInsertTime(new Date()); |
| | | paymentService.save(holi); |
| | | |
| | | System.out.println("保存成功=============》="+holi); |
| | | |
| | | |
| | | |
| | | } |
| | | String[] stringArray = strings.toArray(new String[strings.size()]); |
| | | |
| | | String join = StringUtils.join(stringArray, ","); |
| | | System.out.println("==========join========"+join); |
| | | return "转课成功"; |
| | | |
| | | |
| | | |
| | | |
| | | } |
| | | |
| | | |
| | | |
| | | } |
| | |
| | | private Integer playPaiCoin; |
| | | @TableField("couponIds") |
| | | private String couponIds; |
| | | |
| | | } |
| | |
| | | import com.baomidou.mybatisplus.annotation.TableId; |
| | | import com.baomidou.mybatisplus.annotation.TableName; |
| | | import com.baomidou.mybatisplus.extension.activerecord.Model; |
| | | import com.dsh.course.service.CourseCounsumService; |
| | | import com.fasterxml.jackson.annotation.JsonFormat; |
| | | import lombok.Data; |
| | | import lombok.EqualsAndHashCode; |
| | |
| | | @Accessors(chain = true) |
| | | @TableName("t_course_package") |
| | | public class TCoursePackage extends Model<TCoursePackage>{ |
| | | |
| | | |
| | | |
| | | private static final long serialVersionUID = 1L; |
| | | |
| | |
| | | */ |
| | | @TableField("maxSubscribeNumber") |
| | | private Integer maxSubscribeNumber; |
| | | |
| | | @TableField("codeTime") |
| | | private Integer codeTime; |
| | | /** |
| | | * 上课开始时间 |
| | | */ |
| | |
| | | package com.dsh.course.entity.dto; |
| | | |
| | | import com.fasterxml.jackson.databind.annotation.JsonSerialize; |
| | | import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; |
| | | import io.swagger.models.auth.In; |
| | | import lombok.Data; |
| | | |
| | | import java.util.Date; |
| | | |
| | | @Data |
| | | public class ClassListDto { |
| | | private Integer id; |
| | | |
| | | private Long id; |
| | | private String className; |
| | | |
| | | private String classType; |
| | | private Integer classType; |
| | | |
| | | private Date insertTime; |
| | | |
| | |
| | | @PostMapping("/base/coursePack/getPaymentCoursePackage") |
| | | public TCoursePackagePayment getCoursePackagePaymentByCode(@RequestBody String payId); |
| | | |
| | | @PostMapping("/base/coursePack/getCoursePackagePaymentById") |
| | | public TCoursePackagePayment getCoursePackagePaymentById(@RequestBody Integer id); |
| | | |
| | | |
| | | @PostMapping("/base/coursePack/delPaymentCoursePackage") |
| | | public boolean delPaymentCoursePackage(@RequestBody Integer payId); |
| | |
| | | |
| | | @PostMapping("/appUser/getSelects") |
| | | List<SelectDto> getSelects(List<Integer> studentIds); |
| | | |
| | | |
| | | } |
| | |
| | | package com.dsh.course.feignclient.account; |
| | | |
| | | import com.dsh.course.feignclient.account.model.Student; |
| | | import io.swagger.models.auth.In; |
| | | import org.springframework.cloud.openfeign.FeignClient; |
| | | import org.springframework.web.bind.annotation.PostMapping; |
| | | |
| | |
| | | */ |
| | | @PostMapping("/student/queryStudentListByName") |
| | | List<Student> queryStudentListByName(String name); |
| | | |
| | | |
| | | |
| | | } |
| | |
| | | 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 classStartTime = coursePackage.getClassStartTime(); |
| | | String[] split = classStartTime.split(":"); |
| | | String classEndTime = coursePackage.getClassEndTime(); |
| | | 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); |
| | | String value = coursePackage.getClassStartTime(); |
| | | String value1 = coursePackage.getClassEndTime(); |
| | | |
| | | Calendar e = Calendar.getInstance(); |
| | | e.setTime(date); |
| | | e.set(Calendar.DAY_OF_YEAR, s.get(Calendar.DAY_OF_YEAR) + 13); |
| | | long timeInMillis = e.getTimeInMillis(); |
| | | String[] star = value.split(","); |
| | | String[] end = value1.split(","); |
| | | |
| | | 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); |
| | | for (int i = 0; i < star.length; i++) { |
| | | |
| | | 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); |
| | | } |
| | | // int index = star[i].indexOf(","); |
| | | // |
| | | // |
| | | // String result = value.substring(0, index).trim(); |
| | | String classStartTime = star[i]; |
| | | String[] split = classStartTime.split(":"); |
| | | // String value1 = en; |
| | | 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); |
| | | 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){ |
| | | e.printStackTrace(); |
| | |
| | | package com.dsh.course.util; |
| | | |
| | | import com.alibaba.fastjson.JSONObject; |
| | | import io.swagger.annotations.ApiModel; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | |
| | | /** |
| | | * 定义统一返回对象 |
| | | */ |
| | | @ApiModel(value = "统一返回结果集") |
| | | public class ResultUtil<T> { |
| | | |
| | | public static final Integer SUCCESS = 200; |
| | |
| | | |
| | | public static final Integer ERROR = 500; |
| | | |
| | | public static final Integer TOKEN_ERROR = 600; |
| | | public static final String Token = "Token失效"; |
| | | |
| | | public static final Integer SIGN_ERROR = 700; |
| | | private Integer status;//状态码 |
| | | |
| | | public static final String Token = "TOKEN_INVALID"; |
| | | |
| | | public static final String SIGN = "SIGN_INVALID"; |
| | | |
| | | @ApiModelProperty(name = "code", value = "业务状态码 200:成功,300:参数错误,400:运行异常,500:其他异常, 600:token无效,需重新登录,700:签名无效") |
| | | private Integer code;//备用状态码 |
| | | |
| | | @ApiModelProperty(name = "msg", value = "返回结果说明") |
| | | private String msg;//返回说明 |
| | | |
| | | @ApiModelProperty(name = "data", value = "返回结果值") |
| | | private T data;//返回数据 |
| | | |
| | | private String str;//存储单个字符串值 |
| | | |
| | | |
| | | public Integer getStatus() { |
| | | return status; |
| | | } |
| | | |
| | | public String getMsg() { |
| | | return msg; |
| | |
| | | return data; |
| | | } |
| | | |
| | | public String getStr() { |
| | | return str; |
| | | } |
| | | |
| | | public Integer getCode() { |
| | | return code; |
| | | } |
| | | |
| | | private ResultUtil(Integer code, String msg) { |
| | | public ResultUtil(Integer status, Integer code, String msg) { |
| | | this.status = status; |
| | | this.code = code; |
| | | this.msg = msg; |
| | | } |
| | | |
| | | private ResultUtil(Integer code, String msg, T data) { |
| | | private ResultUtil(Integer status, Integer code, String msg, T data) { |
| | | this.status = status; |
| | | this.code = code; |
| | | this.msg = msg; |
| | | this.data = data; |
| | | } |
| | | |
| | | |
| | | public static <T> ResultUtil<T> getResult(Integer code, String msg){ |
| | | return new ResultUtil<>(code, msg); |
| | | public ResultUtil(Integer status, Integer code, String msg, T data, String str) { |
| | | this.status = status; |
| | | this.code = code; |
| | | this.msg = msg; |
| | | this.data = data; |
| | | this.str = str; |
| | | } |
| | | |
| | | public static <T> ResultUtil<T> getResult(Integer code, String msg, T data){ |
| | | return new ResultUtil<>(code, msg, data); |
| | | private ResultUtil(Integer status, Integer code, String msg, String str) { |
| | | this.status = status; |
| | | this.code = code; |
| | | this.msg = msg; |
| | | this.str = str; |
| | | } |
| | | |
| | | |
| | | public static <T> ResultUtil<T> getResult(Integer status, Integer code, String msg){ |
| | | return new ResultUtil<>(status, code, msg); |
| | | } |
| | | |
| | | public static <T> ResultUtil<T> getResult(Integer status, Integer code, String msg, T data){ |
| | | return new ResultUtil<>(status, code, msg, data); |
| | | } |
| | | |
| | | public static <T> ResultUtil<T> getResult(Integer status, Integer code, String msg, T data, String str){ |
| | | return new ResultUtil<>(status, code, msg, data, str); |
| | | } |
| | | |
| | | /** |
| | |
| | | * @return |
| | | */ |
| | | public static ResultUtil error(String mag){ |
| | | return ResultUtil.getResult(ResultUtil.ERROR, mag, new JSONObject()); |
| | | return ResultUtil.getResult(ResultUtil.ERROR, ResultUtil.ERROR, mag); |
| | | } |
| | | |
| | | /** |
| | |
| | | * @return |
| | | */ |
| | | public static <T> ResultUtil <T> error(String mag, T obj){ |
| | | return ResultUtil.getResult(ResultUtil.ERROR, mag, obj); |
| | | return ResultUtil.getResult(ResultUtil.ERROR, ResultUtil.ERROR, mag, obj); |
| | | } |
| | | |
| | | /** |
| | |
| | | * @return |
| | | */ |
| | | public static ResultUtil tokenErr(){ |
| | | return ResultUtil.getResult(ResultUtil.TOKEN_ERROR, ResultUtil.Token, new JSONObject()); |
| | | return ResultUtil.getResult(ResultUtil.ERROR, ResultUtil.ERROR, ResultUtil.Token); |
| | | } |
| | | |
| | | /** |
| | |
| | | * @return |
| | | */ |
| | | public static ResultUtil tokenErr(String msg){ |
| | | return ResultUtil.getResult(ResultUtil.TOKEN_ERROR, msg, new JSONObject()); |
| | | return ResultUtil.getResult(ResultUtil.ERROR, ResultUtil.ERROR, msg); |
| | | } |
| | | |
| | | /** |
| | | * 参数异常 |
| | | * @return |
| | | */ |
| | | public static ResultUtil paranErr(String ages){ |
| | | return ResultUtil.getResult(ResultUtil.PARAM_ERROR, "【" + ages + "】参数异常", new JSONObject()); |
| | | public static ResultUtil paranErr(){ |
| | | return ResultUtil.getResult(ResultUtil.PARAM_ERROR, ResultUtil.PARAM_ERROR, "参数异常"); |
| | | } |
| | | |
| | | /** |
| | |
| | | * @return |
| | | */ |
| | | public static <T> ResultUtil<T> paranErr(T data){ |
| | | return ResultUtil.getResult(ResultUtil.PARAM_ERROR, "PARAM_ERROR", data); |
| | | return ResultUtil.getResult(ResultUtil.PARAM_ERROR, ResultUtil.PARAM_ERROR, "参数异常", data); |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 运行异常 |
| | | * @return |
| | | */ |
| | | public static ResultUtil runErr(){ |
| | | return ResultUtil.getResult(ResultUtil.RUNTIME_ERROR, "SYSTEM_RUN_ERROR", new JSONObject()); |
| | | return ResultUtil.getResult(ResultUtil.RUNTIME_ERROR, ResultUtil.RUNTIME_ERROR, "服务器运行异常"); |
| | | } |
| | | |
| | | |
| | |
| | | * @return |
| | | */ |
| | | public static <T>ResultUtil<T> runErr(T data){ |
| | | return ResultUtil.getResult(ResultUtil.RUNTIME_ERROR, "SYSTEM_RUN_ERROR", data); |
| | | } |
| | | |
| | | /** |
| | | * 运行异常 |
| | | * @return |
| | | */ |
| | | public static <T>ResultUtil<T> runErr(T data, String msg){ |
| | | return ResultUtil.getResult(ResultUtil.RUNTIME_ERROR, msg, data); |
| | | return ResultUtil.getResult(ResultUtil.RUNTIME_ERROR, ResultUtil.RUNTIME_ERROR, "服务器运行异常", data); |
| | | } |
| | | |
| | | |
| | |
| | | * @return |
| | | */ |
| | | public static ResultUtil success(){ |
| | | return ResultUtil.getResult(ResultUtil.SUCCESS, "SUCCESS", new JSONObject()); |
| | | return ResultUtil.getResult(ResultUtil.SUCCESS, ResultUtil.SUCCESS, "成功"); |
| | | } |
| | | |
| | | |
| | |
| | | * @return |
| | | */ |
| | | public static <T> ResultUtil<T> success(T data){ |
| | | return ResultUtil.getResult(ResultUtil.SUCCESS, "SUCCESS", data); |
| | | return ResultUtil.getResult(ResultUtil.SUCCESS, ResultUtil.SUCCESS, "成功", data); |
| | | } |
| | | |
| | | /** |
| | | * 返回成功 |
| | | * @param msg |
| | | * @param data |
| | | * @param str |
| | | * @param <T> |
| | | * @return |
| | | */ |
| | | public static <T> ResultUtil<T> success(String msg, T data){ |
| | | return ResultUtil.getResult(ResultUtil.SUCCESS, msg, data); |
| | | public static <T> ResultUtil<T> success(T data, String str){ |
| | | return ResultUtil.getResult(ResultUtil.SUCCESS, ResultUtil.SUCCESS, "成功", data, str); |
| | | } |
| | | |
| | | public static <T> ResultUtil<T> success(String msg, T data){ |
| | | return ResultUtil.getResult(ResultUtil.SUCCESS, ResultUtil.SUCCESS, msg, data); |
| | | } |
| | | |
| | | /** |
| | | * 签名无效 |
| | | * @param <T> |
| | | * @return |
| | | */ |
| | | public static <T> ResultUtil<T> sign(){ |
| | | return ResultUtil.getResult(ResultUtil.SIGN_ERROR, SIGN); |
| | | public static <T> ResultUtil<T> success(String msg, T data, String str){ |
| | | return ResultUtil.getResult(ResultUtil.SUCCESS, ResultUtil.SUCCESS, msg, data, str); |
| | | } |
| | | |
| | | } |
| | |
| | | SELECT |
| | | *, |
| | | pg.NAME AS className, |
| | | ty.`name` AS classType |
| | | pg.`type` AS classType |
| | | FROM |
| | | t_course_package_payment py |
| | | LEFT JOIN t_course_package pg ON py.coursePackageId = pg.id |
| | | LEFT JOIN t_course_package_type ty ON pg.type = ty.id |
| | | |
| | | |
| | | <where> |
| | | <if test="null != tStudentId"> |
| | |
| | | SELECT appUserId |
| | | FROM t_course_package_payment |
| | | WHERE id = #{id} |
| | | ) AND id != #{id}; |
| | | ) AND id != #{id} and coursePackageId=( |
| | | SELECT coursePackageId |
| | | FROM t_course_package_payment |
| | | WHERE id = #{id} |
| | | ) |
| | | |
| | | |
| | | </select> |
| | |
| | | <version>2.3.1</version> |
| | | </dependency> |
| | | |
| | | |
| | | <!-- itext7html转pdf --> |
| | | <dependency> |
| | | <groupId>com.itextpdf</groupId> |
| | | <artifactId>html2pdf</artifactId> |
| | | <version>3.0.2</version> |
| | | </dependency> |
| | | <!-- 中文字体支持 --> |
| | | <dependency> |
| | | <groupId>com.itextpdf</groupId> |
| | | <artifactId>font-asian</artifactId> |
| | | <version>7.1.13</version> |
| | | </dependency> |
| | | </dependencies> |
| | | |
| | | <build> |
| | |
| | | <url>http://maven.magic-beans.cn/nexus/content/repositories/thirdparty/</url> |
| | | </repository> |
| | | |
| | | |
| | | |
| | | </repositories> |
| | | |
| | | |
| | |
| | | package com.dsh.course.dto; |
| | | |
| | | import com.fasterxml.jackson.databind.annotation.JsonSerialize; |
| | | import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; |
| | | import lombok.Data; |
| | | |
| | | import java.util.Date; |
| | | |
| | | @Data |
| | | public class ClassListDto { |
| | | private Integer id; |
| | | |
| | | @JsonSerialize(using = ToStringSerializer.class) |
| | | private Long id; |
| | | private String className; |
| | | |
| | | private String classType; |
| | | private Integer classType; |
| | | |
| | | private Date insertTime; |
| | | |
| | |
| | | import com.dsh.course.feignClient.account.model.QueryByNamePhone; |
| | | import com.dsh.course.feignClient.account.model.TAppUser; |
| | | import com.dsh.guns.modular.system.model.TStudent; |
| | | import com.dsh.guns.modular.system.model.dto.GiftSearchDto; |
| | | import com.dsh.guns.modular.system.model.dto.SelectDto; |
| | | import org.springframework.cloud.openfeign.FeignClient; |
| | | import org.springframework.web.bind.annotation.PostMapping; |
| | | import org.springframework.web.bind.annotation.RequestBody; |
| | |
| | | |
| | | @PostMapping("/student/getHisory") |
| | | List<GetHistoryDto> getHisory(); |
| | | @PostMapping("/student/giftSelect") |
| | | List<SelectDto> giftSelect(@RequestBody GiftSearchDto giftSearchDto); |
| | | } |
| | |
| | | private Integer state; |
| | | |
| | | private Page<Map<String, Object>> page; |
| | | private String cityCode; |
| | | private Integer storeId; |
| | | |
| | | } |
| | |
| | | */ |
| | | @PostMapping("/coursePackagePayment/editCoursePackagePayment") |
| | | void editCoursePackagePayment(TCoursePackagePayment coursePackagePayment); |
| | | |
| | | |
| | | @PostMapping("/coursePackagePayment/CountqueryByClassId") |
| | | Integer queryByClassId(Integer id); |
| | | } |
| | |
| | | |
| | | import com.dsh.course.dto.ClassListDto; |
| | | import com.dsh.course.dto.updateTimeDto; |
| | | import com.dsh.course.feignClient.course.model.TCoursePackagePayment; |
| | | import com.dsh.course.model.MoneyBack; |
| | | import com.dsh.course.model.dto.InsertBackDto; |
| | | import com.dsh.course.model.dto.StudentClassInfo; |
| | | import com.dsh.guns.modular.system.model.CourseCounsum; |
| | | import com.dsh.guns.modular.system.model.dto.ConsumeQuery; |
| | | import com.dsh.guns.modular.system.model.dto.SelectDto; |
| | | import com.dsh.guns.modular.system.model.dto.ToClassDto; |
| | | import com.dsh.guns.modular.system.model.dto.ToHoliDto; |
| | | import com.dsh.guns.modular.system.util.ResultUtil; |
| | | import io.swagger.models.auth.In; |
| | | import org.springframework.cloud.openfeign.FeignClient; |
| | | import org.springframework.http.MediaType; |
| | | 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.RequestParam; |
| | |
| | | */ |
| | | @RequestMapping("/courdent/getSelect") |
| | | List<SelectDto> getSelect(@RequestParam("payId") Integer payId); |
| | | /** |
| | | * 转移课程 |
| | | * @param toClassDto |
| | | * @return |
| | | */ |
| | | @RequestMapping("/courdent/toClass") |
| | | void toClass(@RequestBody ToClassDto toClassDto); |
| | | |
| | | |
| | | //获取常规假期课下拉框 |
| | | @RequestMapping("/courdent/holiSelect") |
| | | List<SelectDto> getGiftSelect(@RequestParam("courseId") Integer paymentId); |
| | | |
| | | @RequestMapping("/courdent/transSelect") |
| | | List<SelectDto> getTransSelect(@RequestParam("courseId") Integer paymentId); |
| | | |
| | | @RequestMapping(value = "/courdent/toHoli",produces = MediaType.APPLICATION_JSON_UTF8_VALUE, consumes = "application/json;charset=UTF-8") |
| | | String toHoli(@RequestBody ToHoliDto toHoliDto); |
| | | @RequestMapping(value = "/courdent/toTrans",produces = MediaType.APPLICATION_JSON_UTF8_VALUE, consumes = "application/json;charset=UTF-8") |
| | | |
| | | String toTrans(@RequestBody ToHoliDto toHoliDto); |
| | | |
| | | |
| | | @RequestMapping("/courdent/queryByIds") |
| | | List<TCoursePackagePayment> queryByIds(@RequestParam("ids")String ids); |
| | | |
| | | |
| | | @RequestMapping("/courdent/queryCounsum") |
| | | List<CourseCounsum> queryCounsum( @RequestBody ConsumeQuery consumeQuery); |
| | | |
| | | |
| | | @RequestMapping("/courdent/getMoneyBack") |
| | | |
| | | List<MoneyBack> getMoneyBack(@RequestParam("tStudentId")Integer tStudentId); |
| | | |
| | | @PostMapping("/courdent/insertBack") |
| | | |
| | | void insertBack(@RequestBody InsertBackDto insertBackDto); |
| | | |
| | | @RequestMapping("/courdent/changeStatus") |
| | | void changeStatus(@RequestParam("id")Integer id); |
| | | @RequestMapping("/courdent/cancel") |
| | | void cancel(@RequestParam("ids")String ids); |
| | | @RequestMapping("/courdent/zeroClass") |
| | | void zeroClass(@RequestParam("id")Integer id); |
| | | } |
| | |
| | | * 玩湃币价格 |
| | | */ |
| | | private Integer playPaiCoin; |
| | | private String couponIds; |
| | | } |
| | |
| | | * 最多预约人数 |
| | | */ |
| | | private Integer maxSubscribeNumber; |
| | | |
| | | private Integer codeTime; |
| | | |
| | | /** |
| | | * 上课开始时间 |
| | | */ |
| | |
| | | @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") |
| | | private Date insertTime; |
| | | |
| | | //课包单价 |
| | | private BigDecimal onePrice; |
| | | |
| | | //已学课时 |
| | | |
| | | private Integer hasHours; |
| | | |
| | | private BigDecimal restPrice; |
| | | |
| | | private String name; |
| | | |
| | | } |
| | |
| | | import com.dsh.course.dto.CreateHistoryDto; |
| | | import com.dsh.course.dto.GetHistoryDto; |
| | | import com.dsh.guns.modular.system.model.Store; |
| | | import com.dsh.guns.modular.system.model.dto.GiftSearchDto; |
| | | import com.dsh.guns.modular.system.model.dto.SelectDto; |
| | | import org.springframework.cloud.openfeign.FeignClient; |
| | | import org.springframework.web.bind.annotation.PostMapping; |
| | | import org.springframework.web.bind.annotation.RequestBody; |
| | |
| | | |
| | | @PostMapping("/class/gethisotory") |
| | | List<GetHistoryDto> getHisory(@RequestBody Integer studentId); |
| | | |
| | | |
| | | } |
| | |
| | | ofSearch.setState(state); |
| | | return client.getCouponListOfSearch(ofSearch); |
| | | } |
| | | |
| | | /** |
| | | * 获取 优惠券管理 |
| | | */ |
| | | @RequestMapping(value = "/list1") |
| | | @ResponseBody |
| | | public Object listOfDatas1(String name, Integer type, Integer distributionMethod , Integer userPopulation, Integer status, Integer state,String cityCode,Integer storeId) { |
| | | Page<Map<String, Object>> page = new PageFactory<Map<String, Object>>().defaultPage(); |
| | | CouponListOfSearch ofSearch = new CouponListOfSearch(); |
| | | ofSearch.setPage(page); |
| | | ofSearch.setName(name); |
| | | ofSearch.setType(type); |
| | | ofSearch.setDistributionMethod(distributionMethod); |
| | | ofSearch.setUserPopulation(userPopulation); |
| | | ofSearch.setStatus(status); |
| | | ofSearch.setState(state); |
| | | ofSearch.setCityCode(cityCode); |
| | | ofSearch.setStoreId(storeId); |
| | | return client.getCouponListOfSearch(ofSearch); |
| | | } |
| | | @RequestMapping(value = "/listRecord") |
| | | @ResponseBody |
| | | public Object listRecord(Integer id,String name, Integer type, String phone) { |
| | |
| | | package com.dsh.guns.modular.system.controller.code; |
| | | |
| | | import com.alibaba.fastjson.JSON; |
| | | import com.alibaba.fastjson.JSONArray; |
| | | import com.alibaba.fastjson.JSONObject; |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.dsh.course.feignClient.account.CityManagerClient; |
| | | import com.dsh.course.feignClient.account.CoachClient; |
| | | import com.dsh.course.feignClient.account.model.CityManager; |
| | | import com.dsh.course.feignClient.account.model.Coach; |
| | | import com.dsh.course.feignClient.course.CoursePackageClient; |
| | | import com.dsh.course.feignClient.course.CoursePackageDiscountClient; |
| | | import com.dsh.course.feignClient.course.CoursePackagePaymentConfigClient; |
| | | import com.dsh.course.feignClient.course.CoursePackageTypeClient; |
| | | import com.dsh.course.feignClient.course.*; |
| | | import com.dsh.course.feignClient.course.model.*; |
| | | import com.dsh.guns.config.UserExt; |
| | | import com.dsh.guns.core.base.controller.BaseController; |
| | |
| | | import com.dsh.guns.modular.system.service.IStoreService; |
| | | import com.dsh.guns.modular.system.service.ITSiteService; |
| | | import com.dsh.guns.modular.system.util.ResultUtil; |
| | | import io.swagger.models.auth.In; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Controller; |
| | | import org.springframework.ui.Model; |
| | | import org.springframework.web.bind.annotation.GetMapping; |
| | | import org.springframework.web.bind.annotation.PostMapping; |
| | | import org.springframework.web.bind.annotation.RequestMapping; |
| | | import org.springframework.web.bind.annotation.ResponseBody; |
| | | import org.springframework.web.bind.annotation.*; |
| | | |
| | | import javax.annotation.Resource; |
| | | import java.util.*; |
| | |
| | | * @return |
| | | */ |
| | | @GetMapping("/openAddCoursePackage") |
| | | public String openAddCoursePackage(Model model){ |
| | | public String openAddCoursePackage(Model model,Integer type){ |
| | | Integer objectType = UserExt.getUser().getObjectType(); |
| | | Integer objectId = UserExt.getUser().getObjectId(); |
| | | List<TCoursePackageType> tCoursePackageTypes = coursePackageTypeClient.queryAllCoursePackageType(); |
| | |
| | | model.addAttribute("site", list3); |
| | | List<Coach> coaches = coachClient.queryCoachByCity(code1); |
| | | model.addAttribute("coach", coaches); |
| | | |
| | | // System.out.println("========type========"+type); |
| | | // if (type ==1){ |
| | | // return PREFIX + "coursePackage_edit.html"; |
| | | // } |
| | | return PREFIX + "coursePackage_add.html"; |
| | | } |
| | | |
| | |
| | | List<Coach> coaches = coachClient.queryCoachByCity(cityCode); |
| | | model.addAttribute("coach", coaches); |
| | | List<CoursePackagePaymentConfig> list4 = coursePackagePaymentConfigClient.queryCoursePackagePaymentConfigList(id); |
| | | System.out.println("========couponIds=========>"+list4.get(0).getCouponIds()); |
| | | model.addAttribute("couponIds", list4.get(0).getCouponIds()); |
| | | model.addAttribute("coursePackagePaymentConfig", list4.remove(0)); |
| | | model.addAttribute("coursePackagePaymentConfigs", list4); |
| | | CoursePackagePaymentConfig coursePackagePaymentConfig = list4.get(0); |
| | | model.addAttribute("cashPayment", coursePackagePaymentConfig.getCashPayment() == 0 ? false : true); |
| | | model.addAttribute("playPaiCoin", coursePackagePaymentConfig.getPlayPaiCoin() == 0 ? false : true); |
| | | // 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"; |
| | | } |
| | | |
| | |
| | | CoursePackagePaymentConfig coursePackagePaymentConfig = list4.get(0); |
| | | model.addAttribute("cashPayment", coursePackagePaymentConfig.getCashPayment() == 0 ? false : true); |
| | | model.addAttribute("playPaiCoin", coursePackagePaymentConfig.getPlayPaiCoin() == 0 ? false : true); |
| | | // model.addAttribute("couponIds", coursePackagePaymentConfig.getCouponIds()); |
| | | return PREFIX + "coursePackage_info.html"; |
| | | } |
| | | |
| | |
| | | * @param id |
| | | * @return |
| | | */ |
| | | @GetMapping("/conpun/{id}") |
| | | public String conpun(@PathVariable Integer id,Model model){ |
| | | model.addAttribute("index",id); |
| | | return PREFIX + "TCoupon.html"; |
| | | } |
| | | |
| | | @GetMapping("/conpun1/{id}") |
| | | public String conpun1(Model model,@PathVariable Integer id,String conpunids){ |
| | | System.out.println("=====model=======conpunids======"+conpunids); |
| | | model.addAttribute("index",id); |
| | | |
| | | model.addAttribute("conpund",conpunids); |
| | | return PREFIX + "TCouponEdit.html"; |
| | | } |
| | | |
| | | /** |
| | | * 跳转到优惠卷选择表页 |
| | | * @param model |
| | | * @param id |
| | | * @return |
| | | */ |
| | | @GetMapping("/registrationRecord") |
| | | public String registrationRecord(Model model, Integer id){ |
| | | TCoursePackage tCoursePackage = coursePackageService.queryById(id); |
| | |
| | | return PREFIX + "registrationRecord.html"; |
| | | } |
| | | |
| | | |
| | | @Resource |
| | | @Autowired CoursePackagePaymentClient packagePaymentClient; |
| | | |
| | | /** |
| | | * 跳转到上课记录列表页 |
| | |
| | | @GetMapping("/openClassRecord") |
| | | public String openClassRecord(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 + "classRecord.html"; |
| | | } |
| | | |
| | |
| | | @PostMapping("/addCoursePackage") |
| | | public ResultUtil addCoursePackage(TCoursePackage coursePackage, String coursePackagePaymentConfig){ |
| | | String classStartTime = coursePackage.getClassStartTime(); |
| | | String classEndTime = coursePackage.getClassEndTime(); |
| | | classStartTime = classStartTime.substring(0, classStartTime.lastIndexOf(":")); |
| | | classEndTime = classEndTime.substring(0, classEndTime.lastIndexOf(":")); |
| | | coursePackage.setClassStartTime(classStartTime); |
| | | coursePackage.setClassEndTime(classEndTime); |
| | | // String classEndTime = coursePackage.getClassEndTime(); |
| | | |
| | | System.out.println("=======getClassStartTime============"+classStartTime); |
| | | String startTime = coursePackage.getClassStartTime(); |
| | | JSONArray jsonArray = JSON.parseArray(startTime); |
| | | System.out.println("=======jsonArray==========="+jsonArray); |
| | | |
| | | List<String> first = new ArrayList<>(); |
| | | List<String> second = new ArrayList<>(); |
| | | for (int i = 0; i < jsonArray.size(); i++) { |
| | | // JSONObject jsonObject = JSON.parseObject(jsonArray.getString(i)); |
| | | |
| | | String jsonString = jsonArray.getString(i); |
| | | String[] split = jsonString.split("-"); |
| | | first.add(split[0]); |
| | | second.add(split[1]); |
| | | |
| | | } |
| | | String firstString = String.join(",",first); |
| | | String secondString = String.join(",",second); |
| | | System.out.println("=========firstString========>"+firstString); |
| | | |
| | | System.out.println("=========secondString========>"+secondString); |
| | | // classStartTime = classStartTime.substring(0, classStartTime.lastIndexOf(":")); |
| | | // classEndTime = classEndTime.substring(0, classEndTime.lastIndexOf(":")); |
| | | coursePackage.setClassStartTime(firstString); |
| | | coursePackage.setClassEndTime(secondString); |
| | | coursePackage.setAuditStatus(1); |
| | | coursePackage.setStatus(1); |
| | | coursePackage.setState(1); |
| | |
| | | |
| | | import com.dsh.course.dto.*; |
| | | import com.dsh.course.feignClient.account.AppUserClient; |
| | | import com.dsh.course.feignClient.account.model.TAppUser; |
| | | import com.dsh.course.feignClient.course.CoursePackageClient; |
| | | import com.dsh.course.feignClient.course.CourseStuddentClient; |
| | | import com.dsh.course.feignClient.course.model.TCoursePackage; |
| | | import com.dsh.course.feignClient.course.model.TCoursePackagePayment; |
| | | import com.dsh.course.feignClient.other.HistoryClient; |
| | | import com.dsh.course.model.MoneyBack; |
| | | import com.dsh.course.model.dto.InsertBackDto; |
| | | import com.dsh.course.model.dto.StudentClassInfo; |
| | | import com.dsh.course.util.ChineseMoneyUtils; |
| | | import com.dsh.course.util.HtmlToPdfUtils; |
| | | import com.dsh.guns.config.UserExt; |
| | | import com.dsh.guns.core.base.controller.BaseController; |
| | | import com.dsh.guns.modular.system.model.CourseCounsum; |
| | | import com.dsh.guns.modular.system.model.TStudent; |
| | | import com.dsh.guns.modular.system.model.User; |
| | | import com.dsh.guns.modular.system.model.dto.SelectDto; |
| | | import com.dsh.guns.modular.system.model.dto.*; |
| | | import com.dsh.guns.modular.system.service.ITStudentService; |
| | | import com.dsh.guns.modular.system.util.BigDecimalToChineseAmountUtil; |
| | | import com.dsh.guns.modular.system.util.ResultUtil; |
| | | import io.swagger.models.auth.In; |
| | | import org.apache.ibatis.annotations.Param; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.http.HttpRequest; |
| | | import org.springframework.stereotype.Controller; |
| | | import org.springframework.ui.Model; |
| | | import org.springframework.web.bind.annotation.*; |
| | | |
| | | import javax.annotation.Resource; |
| | | import javax.servlet.http.HttpServletRequest; |
| | | import javax.servlet.http.HttpServletResponse; |
| | | import java.io.IOException; |
| | | import java.io.InputStream; |
| | | import java.io.OutputStream; |
| | | import java.math.BigDecimal; |
| | | import java.math.RoundingMode; |
| | | import java.text.ParseException; |
| | | import java.text.SimpleDateFormat; |
| | | import java.util.Date; |
| | |
| | | |
| | | |
| | | |
| | | @RequestMapping("download") |
| | | public void down(HttpServletRequest request, HttpServletResponse response) throws IOException { |
| | | // Get the InputStream from a file or any other source |
| | | InputStream inputStream = request.getInputStream(); // Obtain the InputStream |
| | | |
| | | // Set the content type of the response |
| | | response.setContentType("application/octet-stream"); |
| | | |
| | | // Set the headers for file download |
| | | response.setHeader("Content-Disposition", "attachment; filename=\"filename.extension\""); |
| | | |
| | | // Get the OutputStream from the response |
| | | OutputStream outputStream = response.getOutputStream(); |
| | | |
| | | // Copy the data from InputStream to OutputStream |
| | | byte[] buffer = new byte[1024]; |
| | | int bytesRead; |
| | | while ((bytesRead = inputStream.read(buffer)) != -1) { |
| | | outputStream.write(buffer, 0, bytesRead); |
| | | } |
| | | |
| | | HtmlToPdfUtils.convertToPdf(inputStream,null,outputStream); |
| | | |
| | | // Close the streams |
| | | inputStream.close(); |
| | | outputStream.close(); |
| | | } |
| | | |
| | | /** |
| | | * 获取变更列表 |
| | | */ |
| | | /** |
| | | * 获取有效期 |
| | | */ |
| | | @RequestMapping("/changelist/{payId}") |
| | | @ResponseBody |
| | | public ResultUtil changelist(@PathVariable("payId") Integer payId, ConsumeQuery consumeQuery) { |
| | | consumeQuery.setPayId(payId); |
| | | System.out.println("=======changelist==========="+consumeQuery); |
| | | List<CourseCounsum> courseCounsums = courseStuddentClient.queryCounsum(consumeQuery); |
| | | Map<String,List<CourseCounsum>> map = new HashMap<>(); |
| | | map.put("items",courseCounsums); |
| | | |
| | | return new ResultUtil<>(0,0,null,map,null); |
| | | } |
| | | |
| | | /** |
| | | * 跳转到首页 |
| | |
| | | return PREFIX + "tStudent.html"; |
| | | } |
| | | |
| | | @RequestMapping("TTT") |
| | | public String index1() { |
| | | return PREFIX + "tStudentEditTTT.html"; |
| | | } |
| | | |
| | | @RequestMapping("openAddCoursePackage") |
| | | public String index3() { |
| | | return PREFIX + "classelct.html"; |
| | | } |
| | | |
| | | @RequestMapping("trans") |
| | | public String index2() { |
| | | return PREFIX + "trans.html"; |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 跳转到添加 |
| | | */ |
| | |
| | | return PREFIX + "tStudent_add.html"; |
| | | } |
| | | |
| | | @Resource |
| | | private CoursePackageClient coursePackageClient; |
| | | |
| | | |
| | | /** |
| | | * 获取有效期 |
| | | */ |
| | | @RequestMapping("/getBackList/{tStudentId}") |
| | | @ResponseBody |
| | | public ResultUtil getBackList(@PathVariable("tStudentId") Integer tStudentId) { |
| | | |
| | | List<MoneyBack> moneyBacks = courseStuddentClient.getMoneyBack(tStudentId); |
| | | Map<String, List<MoneyBack>> map = new HashMap<>(); |
| | | map.put("items",moneyBacks); |
| | | |
| | | return new ResultUtil<>(0,0,null,map,null); |
| | | } |
| | | /** |
| | | * 跳转到退款 |
| | | */ |
| | | @RequestMapping("/backmoney") |
| | | public String backmoney(Integer id,String ids,Model model) { |
| | | |
| | | TStudentDto tStudentDto = appUserClient.queryOneWebUser(id); |
| | | model.addAttribute("id", id); |
| | | model.addAttribute("ids", ids); |
| | | |
| | | |
| | | TAppUser tAppUser = appUserClient.queryById(tStudentDto.getAppUserId()); |
| | | model.addAttribute("userName",tAppUser.getName()); |
| | | model.addAttribute("tStudentDto",tStudentDto); |
| | | |
| | | SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd"); |
| | | String formattedDate = dateFormat.format(new Date()); |
| | | model.addAttribute("reDate", formattedDate); |
| | | |
| | | List<TCoursePackagePayment> coursePackagePayments = courseStuddentClient.queryByIds(ids); |
| | | |
| | | BigDecimal countAll = new BigDecimal(0); |
| | | |
| | | for (TCoursePackagePayment payment : coursePackagePayments){ |
| | | |
| | | //课包名称 |
| | | TCoursePackage tCoursePackage = coursePackageClient.queryById(payment.getCoursePackageId()); |
| | | payment.setName(tCoursePackage.getName()); |
| | | payment.setId(Long.valueOf(tCoursePackage.getId())); |
| | | |
| | | BigDecimal cashPayment = payment.getCashPayment(); |
| | | Integer totalClassHours = payment.getTotalClassHours(); |
| | | BigDecimal result = new BigDecimal(0); |
| | | if (totalClassHours!=0) { |
| | | result = cashPayment.divide(BigDecimal.valueOf(totalClassHours), 2, RoundingMode.HALF_UP); |
| | | } |
| | | |
| | | |
| | | |
| | | //单价 |
| | | payment.setOnePrice(result); |
| | | |
| | | int has = payment.getTotalClassHours() - payment.getLaveClassHours(); |
| | | //剩余课时 |
| | | payment.setHasHours(has); |
| | | |
| | | |
| | | BigDecimal onePrice = payment.getOnePrice(); |
| | | Integer laveClassHours = payment.getLaveClassHours(); |
| | | BigDecimal result1 = onePrice.multiply(BigDecimal.valueOf(laveClassHours)); |
| | | //总价 |
| | | payment.setRestPrice(result1); |
| | | System.out.println("======="+result1); |
| | | countAll = countAll.add(result1); |
| | | |
| | | } |
| | | //中文总价 |
| | | // String allprice = BigDecimalToChineseAmountUtil.convertToChineseAmount(countAll); |
| | | String allprice = ChineseMoneyUtils.toChineseMoney(countAll); |
| | | model.addAttribute("countAll", countAll); |
| | | model.addAttribute("allprice", allprice); |
| | | model.addAttribute("coursePackagePayments", coursePackagePayments); |
| | | |
| | | model.addAttribute("index",1); |
| | | |
| | | System.out.println("=====ids========"+ids); |
| | | return PREFIX + "banckmoney.html"; |
| | | } |
| | | /** |
| | | * 跳转到修改 |
| | | */ |
| | |
| | | model.addAttribute("pic2", pics[1]); |
| | | System.out.println("=====pic2==" + pics[1]); |
| | | } |
| | | if (pics.length > 3) { |
| | | if (pics.length > 2) { |
| | | model.addAttribute("pic3", pics[2]); |
| | | System.out.println("=====pic3==" + pics[2]); |
| | | } |
| | |
| | | model.addAttribute("pic2", pics[1]); |
| | | System.out.println("=====pic2==" + pics[1]); |
| | | } |
| | | if (pics.length > 3) { |
| | | if (pics.length > 2) { |
| | | model.addAttribute("pic3", pics[2]); |
| | | System.out.println("=====pic3==" + pics[2]); |
| | | } |
| | |
| | | |
| | | |
| | | |
| | | |
| | | //保存退款记录 |
| | | @RequestMapping("/ttt") |
| | | @ResponseBody |
| | | public ResultUtil list1(StudentSearch search) { |
| | | public ResultUtil list1(Integer id, String ids) { |
| | | InsertBackDto insertBackDto= new InsertBackDto(); |
| | | insertBackDto.setId(id); |
| | | insertBackDto.setIds(ids); |
| | | System.out.println("=====insertBackDto========"+insertBackDto); |
| | | |
| | | courseStuddentClient.insertBack(insertBackDto); |
| | | |
| | | //取消排课 |
| | | courseStuddentClient.cancel(ids); |
| | | System.out.println("============学员查询接口========="); |
| | | return ResultUtil.success(); |
| | | } |
| | | |
| | | @RequestMapping("/changeStatus/{id}") |
| | | @ResponseBody |
| | | public ResultUtil changeStatus(@PathVariable Integer id) { |
| | | // InsertBackDto insertBackDto= new InsertBackDto(); |
| | | // insertBackDto.setId(id); |
| | | //// insertBackDto.setIds(ids); |
| | | // System.out.println("=====insertBackDto========"+insertBackDto); |
| | | |
| | | courseStuddentClient.changeStatus(id); |
| | | courseStuddentClient.zeroClass(id); |
| | | |
| | | System.out.println("============学员查询接口========="); |
| | | return new ResultUtil<>(0,0,"同意成功",null,null); |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 学员修改 |
| | |
| | | @RequestMapping(value = "/update") |
| | | @ResponseBody |
| | | |
| | | public ResultUtil update(@RequestBody TStudent tStudent, String image1, String image2, String image3 ) { |
| | | String lateralSurface = image1+";"+image2+";"+image3; |
| | | public ResultUtil update(@RequestBody TStudent tStudent) { |
| | | String lateralSurface = tStudent.getImage1()+";"+tStudent.getImage2()+";"+tStudent.getImage3(); |
| | | |
| | | System.out.println("=======lateralSurface======>?"+lateralSurface); |
| | | tStudent.setLateralSurface(lateralSurface); |
| | | System.out.println("学员体测表的值"+lateralSurface); |
| | | itStudentService.update(tStudent); |
| | |
| | | map.put("options",selectDtos); |
| | | return new ResultUtil(0,0,"编辑成功",map,""); |
| | | } |
| | | |
| | | /** |
| | | * 学员转移课程 |
| | | */ |
| | | @RequestMapping(value = "/toClass") |
| | | @ResponseBody |
| | | public ResultUtil toClass( Integer id,Integer toStudentId) { |
| | | ToClassDto toClassDto = new ToClassDto(); |
| | | toClassDto.setToStudentId(toStudentId); |
| | | toClassDto.setId(id); |
| | | |
| | | courseStuddentClient.toClass(toClassDto); |
| | | |
| | | // Map<String,List<SelectDto>> map = new HashMap<>(); |
| | | // map.put("options",selectDtos); |
| | | return new ResultUtil(0,0,"编辑成功",1,""); |
| | | } |
| | | |
| | | /** |
| | | * 赠送课时下拉框 |
| | | */ |
| | | @RequestMapping(value = "/giftSelect") |
| | | @ResponseBody |
| | | public ResultUtil giftSelect(GiftSearchDto giftSearchDto) { |
| | | |
| | | List<SelectDto> selectDtos = appUserClient.giftSelect(giftSearchDto); |
| | | |
| | | Map<String,List<SelectDto>> map = new HashMap<>(); |
| | | map.put("options",selectDtos); |
| | | // Map<String,List<SelectDto>> map = new HashMap<>(); |
| | | // map.put("options",selectDtos); |
| | | return new ResultUtil(0,0,"编辑成功",map,""); |
| | | } |
| | | |
| | | |
| | | //获取可报名假期课程下拉框 |
| | | @RequestMapping(value = "/getholi/{id}") |
| | | @ResponseBody |
| | | public ResultUtil giftSelect(@PathVariable("id") Integer id) { |
| | | List<SelectDto> selectDtos = courseStuddentClient.getGiftSelect(id); |
| | | |
| | | Map<String,List<SelectDto>> map = new HashMap<>(); |
| | | map.put("options",selectDtos); |
| | | |
| | | return new ResultUtil(0,0,"编辑成功",map,""); |
| | | } |
| | | |
| | | //获取可转换常规课程下拉框 |
| | | @RequestMapping(value = "/gettrans/{id}") |
| | | @ResponseBody |
| | | public ResultUtil gettrans(@PathVariable("id") Integer id) { |
| | | List<SelectDto> selectDtos = courseStuddentClient.getTransSelect(id); |
| | | |
| | | Map<String,List<SelectDto>> map = new HashMap<>(); |
| | | map.put("options",selectDtos); |
| | | |
| | | return new ResultUtil(0,0,"编辑成功",map,""); |
| | | } |
| | | //消耗时长可报名假期课程 |
| | | @RequestMapping(value = "/Toholi") |
| | | @ResponseBody |
| | | public ResultUtil Toholi(Integer id,String ids,Integer holiId,Integer classNum) { |
| | | |
| | | String[] stringArray = ids.split(","); |
| | | |
| | | ToHoliDto toHoliDto = new ToHoliDto(); |
| | | toHoliDto.setId(id); |
| | | toHoliDto.setIds(stringArray); |
| | | toHoliDto.setClassNum(classNum); |
| | | toHoliDto.setClassId(holiId); |
| | | |
| | | |
| | | String resultUtil = courseStuddentClient.toHoli(toHoliDto); |
| | | System.out.println("========ToHoliDto========="+resultUtil); |
| | | |
| | | |
| | | if (resultUtil==""){ |
| | | return new ResultUtil<>(0,0,"报名成功"); |
| | | }else |
| | | return new ResultUtil<>(0,0,"报名成功,以下学员剩余课时不足"+resultUtil); |
| | | } |
| | | |
| | | |
| | | @RequestMapping(value = "/ToTrans") |
| | | @ResponseBody |
| | | public ResultUtil Totans(Integer id,String ids,Integer holiId,Integer classNum) { |
| | | |
| | | String[] stringArray = ids.split(","); |
| | | |
| | | ToHoliDto toHoliDto = new ToHoliDto(); |
| | | toHoliDto.setId(id); |
| | | toHoliDto.setIds(stringArray); |
| | | toHoliDto.setClassNum(classNum); |
| | | toHoliDto.setClassId(holiId); |
| | | |
| | | |
| | | String resultUtil = courseStuddentClient.toTrans(toHoliDto); |
| | | System.out.println("========ToHoliDto========="+resultUtil); |
| | | |
| | | |
| | | if (resultUtil==""){ |
| | | return new ResultUtil<>(0,0,"报名成功"); |
| | | }else |
| | | return new ResultUtil<>(0,0,"报名成功,以下学员剩余课时不足"+resultUtil); |
| | | } |
| | | |
| | | //赠课 |
| | | |
| | | @RequestMapping(value = "/giftTo") |
| | | @ResponseBody |
| | | public ResultUtil toClagiftToss( Integer id,Integer toStudentId) { |
| | | ToClassDto toClassDto = new ToClassDto(); |
| | | toClassDto.setToStudentId(toStudentId); |
| | | toClassDto.setId(id); |
| | | |
| | | courseStuddentClient.toClass(toClassDto); |
| | | |
| | | // Map<String,List<SelectDto>> map = new HashMap<>(); |
| | | // map.put("options",selectDtos); |
| | | return new ResultUtil(0,0,"编辑成功",1,""); |
| | | } |
| | | |
| | | } |
| | |
| | | private Integer isDefault; |
| | | |
| | | |
| | | private String image1; |
| | | |
| | | private String image2; |
| | | private String image3; |
| | | } |
| | |
| | | Integer classHours = jsonObject.getInteger("classHours"); |
| | | Double cashPayment = jsonObject.getDouble("cashPayment"); |
| | | Integer playPaiCoin = jsonObject.getInteger("playPaiCoin"); |
| | | String couponIds = jsonObject.getString("couponIds"); |
| | | CoursePackagePaymentConfig coursePackagePaymentConfig1 = new CoursePackagePaymentConfig(); |
| | | coursePackagePaymentConfig1.setCoursePackageId(integer); |
| | | coursePackagePaymentConfig1.setClassHours(classHours); |
| | | coursePackagePaymentConfig1.setCashPayment(cashPayment); |
| | | coursePackagePaymentConfig1.setPlayPaiCoin(playPaiCoin); |
| | | coursePackagePaymentConfig1.setCouponIds(couponIds); |
| | | coursePackagePaymentConfigClient.addCoursePackagePaymentConfig(coursePackagePaymentConfig1); |
| | | } |
| | | } |
| | |
| | | Integer classHours = jsonObject.getInteger("classHours"); |
| | | Double cashPayment = jsonObject.getDouble("cashPayment"); |
| | | Integer playPaiCoin = jsonObject.getInteger("playPaiCoin"); |
| | | String couponIds = jsonObject.getString("couponIds"); |
| | | CoursePackagePaymentConfig coursePackagePaymentConfig1 = new CoursePackagePaymentConfig(); |
| | | coursePackagePaymentConfig1.setCoursePackageId(coursePackage.getId()); |
| | | coursePackagePaymentConfig1.setClassHours(classHours); |
| | | coursePackagePaymentConfig1.setCashPayment(cashPayment); |
| | | coursePackagePaymentConfig1.setPlayPaiCoin(playPaiCoin); |
| | | coursePackagePaymentConfig1.setCouponIds(couponIds); |
| | | coursePackagePaymentConfigClient.addCoursePackagePaymentConfig(coursePackagePaymentConfig1); |
| | | } |
| | | } |
| | |
| | | } |
| | | TCoursePackagePayment tCoursePackagePayment = coursePackagePaymentClient.queryCoursePackagePaymentById(coursePackageStudent.getCoursePackagePaymentId()); |
| | | tCoursePackagePayment.setLaveClassHours(tCoursePackagePayment.getLaveClassHours() - deductClassHour); |
| | | if(coursePackageStudent.getSignInOrNot() == 0){ |
| | | // if(coursePackageStudent.getSignInOrNot() == 0){ |
| | | tCoursePackagePayment.setAbsencesNumber(tCoursePackagePayment.getAbsencesNumber() + 1); |
| | | } |
| | | // } |
| | | coursePackagePaymentClient.editCoursePackagePayment(tCoursePackagePayment); |
| | | |
| | | CancelledClasses cancelledClasses = new CancelledClasses(); |
| | |
| | | <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-2" style="text-align: left;">${coach.name}</span> |
| | | <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;">${item.classStartTime + ' - ' + item.classEndTime}</span> |
| | | <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()" 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> |
| | |
| | | </div> |
| | | </div> |
| | | <div class="hidden-xs" id="managerTableToolbar" role="group"> |
| | | @if(shiro.hasPermission("/coursePackage/addCoursePackage")){ |
| | | <#button name="测试添加" icon="fa-plus" clickFun="CoursePackage.addCoursePackage1()"/> |
| | | |
| | | <#button name="添加" icon="fa-plus" clickFun="CoursePackage.addCoursePackage()"/> |
| | | @} |
| | | @if(shiro.hasPermission("/coursePackage/editCoursePackage")){ |
| | | <#button name="编辑" icon="fa-edit" clickFun="CoursePackage.editCoursePackage()" space="true"/> |
| | | @} |
| | | @if(shiro.hasPermission("/coursePackage/upCoursePackage")){ |
| | | <#button name="上架" icon="fa-refresh" clickFun="CoursePackage.editCoursePackageState(1)" space="true"/> |
| | | @} |
| | | @if(shiro.hasPermission("/coursePackage/downCoursePackage")){ |
| | | <#button name="下架" icon="fa-warning" clickFun="CoursePackage.editCoursePackageState(2)" space="true"/> |
| | | @} |
| | | @if(shiro.hasPermission("/coursePackage/coursePackageDiscount")){ |
| | | <#button name="折扣管理" icon="fa-check-circle" clickFun="CoursePackage.coursePackageDiscount()" space="true"/> |
| | | @} |
| | | @if(shiro.hasPermission("/coursePackage/detailsCoursePackage")){ |
| | | <#button name="详情" icon="fa-check-circle" clickFun="CoursePackage.detailsCoursePackage()" space="true"/> |
| | | @} |
| | | @if(shiro.hasPermission("/coursePackage/registrationRecord")){ |
| | | <#button name="报名信息" icon="fa-check-circle" clickFun="CoursePackage.registrationRecord()" space="true"/> |
| | | @} |
| | | |
| | | </div> |
| | | <#table id="managerTable"/> |
| | | </div> |
| | |
| | | <div class="row row-lg"> |
| | | <div class="col-sm-12"> |
| | | <input type="hidden" id="id" value="${id}"> |
| | | |
| | | <div class="row"> |
| | | <div class="col-lg-10 col-sm-9"> |
| | | <div class="row"> |
| | |
| | | </div> |
| | | </div> |
| | | <div class="hidden-xs" id="managerTableToolbar" role="group"> |
| | | <#button name="取消预约" icon="fa-plus" clickFun="CoursePackageStudent.cancelReservation()"/> |
| | | <#button name="未到" icon="fa-edit" clickFun="CoursePackageStudent.absence()" space="true"/> |
| | | <#button name="请假" icon="fa-plus" clickFun="CoursePackageStudent.cancelReservation()"/> |
| | | <#button name="旷课" icon="fa-edit" clickFun="CoursePackageStudent.absence()" space="true"/> |
| | | </div> |
| | | <#table id="managerTable"/> |
| | | </div> |
| | |
| | | <input class="form-control" id="maxSubscribeNumber" name="maxSubscribeNumber" type="number" min="0" placeholder="请输入最多预约人数"> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">*上课时间:</label> |
| | | <div class="col-sm-4"> |
| | | <input class="form-control" id="classStartTime" name="classStartTime" placeholder="请选择"> |
| | | </div> |
| | | </div> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label"></label> |
| | | <div class="col-sm-8"> |
| | | <input type="checkbox" name="classWeeks" value="周一"> 周一 |
| | | <input type="checkbox" name="classWeeks" value="周二"> 周二 |
| | | <input type="checkbox" name="classWeeks" value="周三"> 周三 |
| | |
| | | <input type="checkbox" name="classWeeks" value="周五"> 周五 |
| | | <input type="checkbox" name="classWeeks" value="周六"> 周六 |
| | | <input type="checkbox" name="classWeeks" value="周日"> 周日 |
| | | </div> |
| | | </div> |
| | | <div class="form-group" > |
| | | <label class="col-sm-3 control-label"></label> |
| | | |
| | | <div class="form-group" style="display: flex; align-items: center;" id = "dayTime" > |
| | | <div style="display:flex"> |
| | | <input class="form-control" id="classStartTime" name="classStartTime" placeholder="请选择" style="width: 200px;"> |
| | | |
| | | |
| | | <i class="fa fa-plus-circle" style="font-size: 24px; margin-left: 10px;" onclick="addTime()"></i> |
| | | </div> |
| | | |
| | | </div> |
| | | |
| | | |
| | | </div> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">*扣除课时数:</label> |
| | | <div class="col-sm-4"> |
| | | <input class="form-control" id="codeTime" name="codeTime" type="number" min="0" placeholder="请输入每节课扣除课时数"> |
| | | </div> |
| | | </div> |
| | | <div class="form-group"> |
| | |
| | | <span class="classNumber_span"><input class="classNumber" type="number" min="0" placeholder="请输入" style="width: 110px;background-color: #FFFFFF;background-image: none;border: 1px solid #e5e6e7;border-radius: 1px;color: inherit;padding: 6px 12px;"> </span> |
| | | <span class="cash_span"></span> |
| | | <span class="paiCoin_span"></span> |
| | | <#button btnCss="info" name="优惠卷" id="ensure" icon="fa-check" clickFun="CoursePackageInfo.openDia(1)"/> |
| | | <i class="fa fa-plus-circle" style="font-size:24px" onclick="addPrice()"></i> |
| | | <input type="text" id = "counpons1" class="counpons" > |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <!-- <input type="text" id = "counpons">--> |
| | | </div> |
| | | <div class="row btn-group-m-t"> |
| | | <div class="col-sm-10"> |
| | |
| | | var avatarUp1 = new $WebUpload("introduceDrawing"); |
| | | avatarUp1.setUploadBarId("progressBar"); |
| | | avatarUp1.init(); |
| | | function addTime(){ |
| | | var i = $('#dayTime > div').length |
| | | |
| | | let htmlStr =' <div style="display:flex">\n' + |
| | | ' <input class="form-control" id="classStartTime'+i+'" name="classStartTime" placeholder="请选择" style="width: 200px;">\n' + |
| | | ' <i class="fa fa-plus-circle" style="font-size: 24px; margin-left: 10px;" onclick="addTime()"></i>\n' + |
| | | ' </div>' |
| | | $('#dayTime').append(htmlStr); |
| | | console.log("========="+i) |
| | | laydate.render({ |
| | | elem: '#classStartTime'+i, |
| | | type: 'time', |
| | | range: true |
| | | }); |
| | | } |
| | | </script> |
| | | @} |
| | |
| | | @} |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">*扣除课时数:</label> |
| | | <div class="col-sm-4"> |
| | | <input class="form-control" id="codeTime" name="codeTime" value="${item.codeTime}" type="number" min="0" placeholder="请输入每节课扣除课时数"> |
| | | </div> |
| | | </div> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">*课包封面:</label> |
| | | <div class="col-sm-4"> |
| | |
| | | 玩湃币支付:<input class="paiCoin" type="number" value="${coursePackagePaymentConfig.playPaiCoin}" min="0" placeholder="请输入金额" style="width: 110px;background-color: #FFFFFF;background-image: none;border: 1px solid #e5e6e7;border-radius: 1px;color: inherit;padding: 6px 12px;"> 币 |
| | | @} |
| | | </span> |
| | | <input type="text" id="counpons1" value="${couponIds}" class="counpons"> |
| | | <#button btnCss="info" name="优惠卷" id="ensure" icon="fa-check" clickFun="CoursePackageInfo.openDia1(1)"/> |
| | | <i class="fa fa-plus-circle" style="font-size:24px" onclick="addPrice()"></i> |
| | | </div> |
| | | </div> |
| | |
| | | </div> |
| | | <script src="${ctxPath}/modular/system/coursePackage/coursePackage_info.js"></script> |
| | | <script type="text/javascript"> |
| | | |
| | | console.log("============>"+`${couponIds}`) |
| | | laydate.render({ |
| | | elem: '#classStartTime' |
| | | ,type: 'time' |
| | |
| | | <#button name="上课记录" icon="fa-plus" clickFun="RegistrationRecord.classRecord()"/> |
| | | <#button name="退课" icon="fa-edit" clickFun="RegistrationRecord.dropClass()" space="true"/> |
| | | <#button name="补课" icon="fa-refresh" clickFun="RegistrationRecord.makeUpMissedLessons()" space="true"/> |
| | | <#button name="更换假期班" icon="fa-refresh" clickFun="RegistrationRecord.holiClass()" space="true"/> |
| | | <#button name="换课" icon="fa-refresh" clickFun="RegistrationRecord.transClass()" space="true"/> |
| | | |
| | | </div> |
| | | <#table id="managerTable"/> |
| | | </div> |
| | |
| | | "size": "md", |
| | | "mode": "horizontal", |
| | | "hidden": true, |
| | | "value":`${item.id!}` |
| | | "value":`${item.id!}`, |
| | | |
| | | }, |
| | | { |
| | | "type": "input-text", |
| | |
| | | "name": "id", |
| | | "size": "md", |
| | | "mode": "horizontal", |
| | | "hidden": false |
| | | "hidden": true |
| | | }, |
| | | { |
| | | "type": "tpl", |
| | |
| | | "size": "md", |
| | | "mode": "horizontal", |
| | | "required": true, |
| | | "disabled": true |
| | | "disabled": true, |
| | | "value":`${item.userName!}` |
| | | }, |
| | | { |
| | | "type": "input-text", |
| | | "label": "       姓名", |
| | | "id": "u:0b2463bbffe8", |
| | | "name": "name", |
| | | "name": "name1", |
| | | "size": "md", |
| | | "mode": "horizontal", |
| | | "required": true |
| | | "required": true, |
| | | "value":`${item.name!}`, |
| | | "disabled": true, |
| | | }, |
| | | { |
| | | "type": "input-date", |
| | |
| | | "embed": false, |
| | | "format": "YYYY-MM-DD hh:mm:ss", |
| | | "inputFormat": "YYYY-MM-DD", |
| | | "required": true |
| | | "required": true, |
| | | "value":`${item.birthday!}`, |
| | | "disabled": true, |
| | | }, |
| | | { |
| | | "type": "select", |
| | |
| | | } |
| | | ], |
| | | "multiple": false, |
| | | "required": true |
| | | "required": true, |
| | | "value":`${item.sex!}`, |
| | | "disabled": true, |
| | | }, |
| | | { |
| | | "type": "input-text", |
| | | "label": "联系电话", |
| | | "name": "phone", |
| | | "name": "phone1", |
| | | "id": "u:e7cf50e4f755", |
| | | "size": "md", |
| | | "mode": "horizontal", |
| | |
| | | "validateOnChange": true, |
| | | "validations": { |
| | | "isPhoneNumber": true |
| | | } |
| | | }, |
| | | "value":`${item.phone!}`, |
| | | "disabled": true, |
| | | }, |
| | | { |
| | | "type": "input-text", |
| | |
| | | "addOn": { |
| | | "label": "cm", |
| | | "type": "text" |
| | | } |
| | | }, |
| | | "value":`${item.height!}`, |
| | | "disabled": true, |
| | | }, |
| | | { |
| | | "type": "input-text", |
| | |
| | | "validations": { |
| | | "maximum": 250, |
| | | "isNumeric": true |
| | | } |
| | | }, |
| | | "value":`${item.weight!}`, |
| | | "disabled": true, |
| | | }, |
| | | { |
| | | "type": "input-text", |
| | |
| | | "validateOnChange": true, |
| | | "validations": { |
| | | "isId": true |
| | | } |
| | | }, |
| | | "value":`${item.idCard!}`, |
| | | "disabled": true, |
| | | }, |
| | | { |
| | | "type": "tpl", |
| | |
| | | "multiple": false, |
| | | "hideUploadButton": false, |
| | | "fixedSize": false, |
| | | "mode": "inline" |
| | | "mode": "inline", |
| | | "value":`${pic1!}`, |
| | | "disabled": true, |
| | | }, |
| | | { |
| | | "type": "input-image", |
| | |
| | | "multiple": false, |
| | | "hideUploadButton": false, |
| | | "fixedSize": false, |
| | | "mode": "inline" |
| | | "mode": "inline", |
| | | "value":`${pic2!}`, |
| | | "disabled": true, |
| | | }, |
| | | { |
| | | "type": "input-image", |
| | |
| | | "multiple": false, |
| | | "hideUploadButton": false, |
| | | "fixedSize": false, |
| | | "mode": "inline" |
| | | }, |
| | | { |
| | | "type": "container", |
| | | "body": [ |
| | | { |
| | | "type": "tpl", |
| | | "id": "u:8224ab367da8", |
| | | "tpl": "                                                                          ", |
| | | "inline": true, |
| | | "wrapperComponent": "" |
| | | }, |
| | | { |
| | | "type": "button", |
| | | "id": "u:783ce71739db", |
| | | "label": "保存", |
| | | "onEvent": { |
| | | "click": { |
| | | "actions": [ |
| | | { |
| | | "componentId": "u:7c5f75a3b7b5", |
| | | "args": { |
| | | }, |
| | | "outputVar": "responseResult", |
| | | "actionType": "submit" |
| | | }, |
| | | { |
| | | "args": { |
| | | }, |
| | | "script": "parent.layer.close(window.parent.TStudent.layerIndex);\n\n window.parent.TStudent.table.refresh();", |
| | | "actionType": "custom" |
| | | } |
| | | ] |
| | | } |
| | | }, |
| | | "level": "info" |
| | | }, |
| | | { |
| | | "type": "tpl", |
| | | "id": "u:8224ab367da8", |
| | | "tpl": "   ", |
| | | "inline": true, |
| | | "wrapperComponent": "" |
| | | }, |
| | | { |
| | | "type": "button", |
| | | "id": "u:008bc32396cc", |
| | | "label": "取消", |
| | | "onEvent": { |
| | | "click": { |
| | | "actions": [ |
| | | { |
| | | "args": { |
| | | }, |
| | | "script": "parent.layer.close(window.parent.TStudent.layerIndex);\nconsole.log(\"===关闭\")", |
| | | "actionType": "custom" |
| | | } |
| | | ] |
| | | } |
| | | }, |
| | | "block": false |
| | | } |
| | | ], |
| | | "style": { |
| | | "position": "static", |
| | | "display": "block" |
| | | }, |
| | | "id": "u:59d68a32f7fd" |
| | | "mode": "inline", |
| | | "value":`${pic3!}`, |
| | | "disabled": true, |
| | | }, |
| | | { |
| | | "type": "divider", |
| | |
| | | "embed": false, |
| | | "mode": "inline", |
| | | "size": "md", |
| | | "value":`${studentClassInfo.inDate}` |
| | | "value":`${studentClassInfo.inDate}`, |
| | | "disabled": true, |
| | | }, |
| | | { |
| | | "type": "tpl", |
| | |
| | | "multiple": false, |
| | | "hideUploadButton": false, |
| | | "receiver": { |
| | | "url": "/mgr/uploadImg", |
| | | "url": "/mgr/uploadImgAmis", |
| | | "method": "post" |
| | | }, |
| | | "value": "https://we-park-life.oss-cn-beijing.aliyuncs.com/img/99325878956443d68bb835145a8dca49.png" |
| | | } |
| | | }, |
| | | { |
| | | "type": "input-image", |
| | |
| | | "multiple": false, |
| | | "hideUploadButton": false, |
| | | "receiver": { |
| | | "url": "/mgr/uploadImg", |
| | | "url": "/mgr/uploadImgAmis", |
| | | "method": "post" |
| | | }, |
| | | "value": "https://we-park-life.oss-cn-beijing.aliyuncs.com/img/99325878956443d68bb835145a8dca49.png" |
| | | } |
| | | }, |
| | | { |
| | | "type": "container", |
| | |
| | | "method": "post", |
| | | "requestAdaptor": "", |
| | | "adaptor": "", |
| | | "messages": { |
| | | }, |
| | | "messages": {}, |
| | | "dataType": "form-data" |
| | | } |
| | | }, |
| | | "actions": [] |
| | | } |
| | | ], |
| | | "showCloseButton": true, |
| | |
| | | "showLoading": true, |
| | | "className": "app-popover", |
| | | "id": "u:044fac037276", |
| | | "closeOnEsc": false |
| | | "closeOnEsc": false, |
| | | "actions": [] |
| | | } |
| | | }, |
| | | { |
| | | "componentId": "u:59d68a32f7fd", |
| | | "actionType": "reload", |
| | | "data": null |
| | | } |
| | | ] |
| | | } |
| | |
| | | "actionType": "dialog", |
| | | "dialog": { |
| | | "type": "form", |
| | | "title": "弹框标题", |
| | | "title": "", |
| | | "body": [ |
| | | { |
| | | "type": "input-text", |
| | | "label": "id", |
| | | "name": "id", |
| | | "id": "u:0a5bc6f58ee8" |
| | | "id": "u:0a5bc6f58ee8", |
| | | "hidden": true |
| | | }, |
| | | { |
| | | "type": "crud", |
| | |
| | | }, |
| | | "columns": [ |
| | | { |
| | | "name": "insertTime", |
| | | "name": "date", |
| | | "label": "操作时间", |
| | | "type": "date", |
| | | "id": "u:b652786dc9df" |
| | | "id": "u:b652786dc9df", |
| | | "valueFormat": "YYYY-MM-DD HH:mm:ss", |
| | | "format": "YYYY-MM-DD HH:mm", |
| | | "placeholder": "-" |
| | | }, |
| | | { |
| | | "type": "text", |
| | |
| | | { |
| | | "type": "image", |
| | | "label": "申请凭证", |
| | | "name": "picPlease", |
| | | "name": "pleasePic", |
| | | "id": "u:b22cfb737009" |
| | | }, |
| | | { |
| | | "type": "image", |
| | | "label": "同意凭证", |
| | | "name": "picPass", |
| | | "name": "passPic", |
| | | "id": "u:2a9071d0bda1" |
| | | } |
| | | ], |
| | |
| | | "showErrorMsg": true, |
| | | "showLoading": true, |
| | | "className": "app-popover", |
| | | "id": "u:c4e97065bccb" |
| | | "id": "u:c4e97065bccb", |
| | | "actions": [ |
| | | { |
| | | "type": "flex", |
| | | "className": "p-1", |
| | | "items": [ |
| | | { |
| | | "type": "container", |
| | | "body": [ |
| | | { |
| | | "type": "flex", |
| | | "className": "p-1", |
| | | "items": [ |
| | | { |
| | | "type": "button", |
| | | "id": "u:98fc618e3ec6", |
| | | "label": "关闭", |
| | | "onEvent": { |
| | | "click": { |
| | | "actions": [ |
| | | { |
| | | "actionType": "closeDialog" |
| | | } |
| | | ] |
| | | } |
| | | }, |
| | | "block": false |
| | | } |
| | | ], |
| | | "style": { |
| | | "position": "relative" |
| | | }, |
| | | "id": "u:4a1662323b46" |
| | | } |
| | | ], |
| | | "size": "xs", |
| | | "style": { |
| | | "position": "relative", |
| | | "display": "inline-block", |
| | | "flex": "1 1 auto", |
| | | "flexGrow": 1, |
| | | "flexBasis": "auto", |
| | | "inset": "auto" |
| | | }, |
| | | "wrapperBody": false, |
| | | "isFixedHeight": false, |
| | | "isFixedWidth": false, |
| | | "id": "u:ffdcf3def663" |
| | | } |
| | | ], |
| | | "style": { |
| | | "position": "relative" |
| | | }, |
| | | "id": "u:ad4c2c8f0190" |
| | | } |
| | | ], |
| | | "size": "md" |
| | | } |
| | | } |
| | | ] |
| | |
| | | } |
| | | }, |
| | | "labelClassName": "labelClassName-49dd1bda82f4", |
| | | "value":`${studentClassInfo.totalHours}` |
| | | "value":`${studentClassInfo.totalHours}`, |
| | | "disabled": true, |
| | | }, |
| | | { |
| | | "type": "input-text", |
| | |
| | | "name": "idCard1", |
| | | "mode": "horizontal", |
| | | "size": "md", |
| | | "value":`${studentClassInfo.hasHours}` |
| | | "value":`${studentClassInfo.hasHours}`, |
| | | "disabled": true, |
| | | }, |
| | | { |
| | | "type": "input-text", |
| | |
| | | "name": "idCard2", |
| | | "mode": "horizontal", |
| | | "size": "md", |
| | | "value":`${studentClassInfo.restHours}` |
| | | "value":`${studentClassInfo.restHours}`, |
| | | "disabled": true, |
| | | }, |
| | | { |
| | | "type": "input-text", |
| | |
| | | "name": "idCard3", |
| | | "mode": "horizontal", |
| | | "size": "md", |
| | | "value":`${studentClassInfo.giftHours}` |
| | | "value":`${studentClassInfo.giftHours}`, |
| | | "disabled": true, |
| | | }, { |
| | | "type": "tpl", |
| | | "id": "u:8224ab367da8", |
| | | "tpl": "          ", |
| | | "inline": true, |
| | | "wrapperComponent": "", |
| | | "style": { |
| | | "paddingBottom": "100", |
| | | "marginBottom": "100" |
| | | } |
| | | }, |
| | | { |
| | | "type": "tpl", |
| | | "id": "u:e6a3e106fac0", |
| | | "tpl": "退费申请:", |
| | | "inline": true, |
| | | "wrapperComponent": "", |
| | | "style": { |
| | | "paddingBottom": "100", |
| | | "marginBottom": "100" |
| | | } |
| | | }, |
| | | { |
| | | "type": "button", |
| | | "id": "u:4b1f37ea569c", |
| | | "label": "退费列表", |
| | | "level": "info", |
| | | "onEvent": { |
| | | "click": { |
| | | "weight": 0, |
| | | "actions": [ |
| | | { |
| | | "actionType": "dialog", |
| | | "dialog": { |
| | | "type": "dialog", |
| | | "title": "弹框标题", |
| | | "body": [ |
| | | |
| | | { |
| | | "type": "input-text", |
| | | "id": "u:895313026d71", |
| | | "label": "id", |
| | | "name": "id", |
| | | "hidden": true |
| | | }, |
| | | { |
| | | "type": "crud", |
| | | "syncLocation": false, |
| | | "name":"crud", |
| | | "api": { |
| | | "method": "get", |
| | | "url": "/tStudent/getBackList/$id" |
| | | }, |
| | | "columns": [ |
| | | { |
| | | "type": "date", |
| | | "name": "insertTime", |
| | | "label": "申请时间", |
| | | "id": "u:6948dfe01afd", |
| | | "valueFormat": "YYYY-MM-DD HH:mm:ss", |
| | | "format": "YYYY-MM-DD HH:mm" |
| | | }, |
| | | { |
| | | "name": "status", |
| | | "label": "审核状态", |
| | | "type": "mapping", |
| | | "id": "u:1f2a09737a98", |
| | | "map": { |
| | | "0": "待审核", |
| | | "1": "同意", |
| | | "2": "拒绝" |
| | | } |
| | | }, |
| | | { |
| | | "type": "operation", |
| | | "id": "u:b0e34eccd864", |
| | | "buttons": [ |
| | | { |
| | | "type": "button", |
| | | "label": "查看详情", |
| | | "onEvent": { |
| | | "click": { |
| | | "actions": [ |
| | | { |
| | | "actionType": "url", |
| | | "args": { |
| | | "url": "/tStudent/backmoney", |
| | | "params": { |
| | | "ids": "$ids", |
| | | "id": "$id" |
| | | } |
| | | } |
| | | } |
| | | ], |
| | | "weight": 0 |
| | | } |
| | | }, |
| | | "id": "u:38a6f5402e72", |
| | | "level": "link", |
| | | "actionType": "ajax" |
| | | }, |
| | | { |
| | | "type": "button", |
| | | "label": "同意", |
| | | "onEvent": { |
| | | "click": { |
| | | "actions": [ |
| | | ], |
| | | "weight": 0 |
| | | } |
| | | }, |
| | | "id": "u:4450de076e9f", |
| | | "level": "link", |
| | | "actionType": "ajax", |
| | | "hiddenOn": "this.status === 1 || this.status === 2", |
| | | "api": { |
| | | "method": "post", |
| | | "url": "/tStudent/changeStatus/$id" |
| | | }, |
| | | "reload": "pay" |
| | | } |
| | | ], |
| | | "placeholder": "-", |
| | | "label": "操作" |
| | | } |
| | | ], |
| | | "bulkActions": [], |
| | | "itemActions": [], |
| | | "features": [ |
| | | "view", |
| | | "delete" |
| | | ], |
| | | "id": "u:a4ce7e3ae181" |
| | | } |
| | | ], |
| | | "showCloseButton": true, |
| | | "showErrorMsg": true, |
| | | "showLoading": true, |
| | | "className": "app-popover", |
| | | "id": "u:b91085026056" |
| | | } |
| | | } |
| | | ] |
| | | } |
| | | }, |
| | | "size": "xs" |
| | | }, |
| | | { |
| | | "type": "crud", |
| | | "name":"pay", |
| | | "syncLocation": false, |
| | | "api": { |
| | | "method": "get", |
| | |
| | | "name": "classType", |
| | | "id": "u:2f1091a380a8", |
| | | "map": { |
| | | "*": "通配值" |
| | | "1": "常规课", |
| | | "2": "假期课", |
| | | "3": "体验课" |
| | | } |
| | | }, |
| | | { |
| | | "type": "date", |
| | | "label": "报名时间", |
| | | "name": "reportDate", |
| | | "id": "u:36ab5e408a48" |
| | | "name": "insertTime", |
| | | "id": "u:36ab5e408a48", |
| | | "valueFormat": "x" |
| | | }, |
| | | { |
| | | "type": "text", |
| | | "label": "总课时数", |
| | | "name": "totalTime", |
| | | "name": "totalClassHours", |
| | | "id": "u:fba93556fb2e" |
| | | }, |
| | | { |
| | | "type": "text", |
| | | "label": "已上课时数", |
| | | "name": "haveTime", |
| | | "id": "u:b55a5ac7f49d" |
| | | "name": "hasClassHours", |
| | | "id": "u:b55a5ac7f49d", |
| | | "value": "$totalClassHours-$totalClassHours" |
| | | }, |
| | | { |
| | | "type": "text", |
| | | "label": "剩余课时数", |
| | | "name": "restTime", |
| | | "id": "u:abb78021df40" |
| | | "name": "laveClassHours", |
| | | "id": "u:abb78021df40", |
| | | "placeholder": "-" |
| | | }, |
| | | { |
| | | "type": "operation", |
| | |
| | | "title": "弹框标题", |
| | | "body": [ |
| | | { |
| | | "type": "select", |
| | | "label": "请选择被转移学员", |
| | | "name": "select", |
| | | "id": "u:80a2266885a3", |
| | | "multiple": false, |
| | | "mode": "horizontal", |
| | | "size": "lg", |
| | | "horizontal": { |
| | | "leftFixed": "lg" |
| | | }, |
| | | "source": { |
| | | "url": "/tStudent/getUserSlect/$id", |
| | | "method": "get" |
| | | }, |
| | | "labelField": "value", |
| | | "valueField": "id" |
| | | }, |
| | | { |
| | | "type": "input-text", |
| | | "label": "id", |
| | | "name": "id", |
| | | "id": "u:1e2c394fa299" |
| | | }, |
| | | { |
| | | "type": "tpl", |
| | | "tpl": "对,你刚刚点击了", |
| | | "wrapperComponent": "", |
| | | "inline": false, |
| | | "id": "u:7c4a5a6b60d0" |
| | | "type": "form", |
| | | "id": "u:db6a651c2979", |
| | | "title": "", |
| | | "body": [ |
| | | { |
| | | "label": "请选择被转移学员", |
| | | "type": "select", |
| | | "name": "toStudentId", |
| | | "id": "u:80a2266885a3", |
| | | "multiple": false, |
| | | "mode": "horizontal", |
| | | "size": "lg", |
| | | "horizontal": { |
| | | "leftFixed": "lg" |
| | | }, |
| | | "source": { |
| | | "url": "/tStudent/getUserSlect/$id", |
| | | "method": "get" |
| | | }, |
| | | "labelField": "value", |
| | | "valueField": "id" |
| | | }, |
| | | { |
| | | "label": "id", |
| | | "type": "input-text", |
| | | "name": "id", |
| | | "id": "u:1e2c394fa299", |
| | | "hidden": true |
| | | }, |
| | | { |
| | | "type": "container", |
| | | "id": "u:59d68a32f7fd", |
| | | "body": [ |
| | | { |
| | | "type": "tpl", |
| | | "id": "u:8224ab367da8", |
| | | "tpl": "                                                 ", |
| | | "inline": true, |
| | | "wrapperComponent": "" |
| | | }, |
| | | { |
| | | "type": "button", |
| | | "id": "u:783ce71739db", |
| | | "label": "保存", |
| | | "onEvent": { |
| | | "click": { |
| | | "actions": [ |
| | | { |
| | | "componentId": "u:db6a651c2979", |
| | | "actionType": "submit" |
| | | } |
| | | ] |
| | | } |
| | | }, |
| | | "level": "info" |
| | | }, |
| | | { |
| | | "type": "tpl", |
| | | "id": "u:8224ab367da8", |
| | | "tpl": "   ", |
| | | "inline": true, |
| | | "wrapperComponent": "" |
| | | }, |
| | | { |
| | | "type": "button", |
| | | "id": "u:008bc32396cc", |
| | | "label": "取消", |
| | | "onEvent": { |
| | | "click": { |
| | | "actions": [ |
| | | { |
| | | "actionType": "closeDialog" |
| | | } |
| | | ] |
| | | } |
| | | }, |
| | | "block": false |
| | | } |
| | | ], |
| | | "style": { |
| | | "position": "static", |
| | | "display": "block" |
| | | } |
| | | } |
| | | ], |
| | | "api": { |
| | | "url": "/tStudent/toClass", |
| | | "method": "post", |
| | | "requestAdaptor": "", |
| | | "adaptor": "", |
| | | "messages": { |
| | | }, |
| | | "dataType": "form-data" |
| | | } |
| | | } |
| | | ], |
| | | "showCloseButton": true, |
| | | "showErrorMsg": true, |
| | | "showLoading": true, |
| | | "className": "app-popover", |
| | | "id": "u:a612413d932d" |
| | | "id": "u:a612413d932d", |
| | | "api": { |
| | | "url": "/tStudent/toClass", |
| | | "method": "post", |
| | | "messages": { |
| | | } |
| | | }, |
| | | "actions": [ |
| | | ] |
| | | } |
| | | } |
| | | ] |
| | |
| | | "title": "弹框标题", |
| | | "body": [ |
| | | { |
| | | "type": "input-text", |
| | | "label": "用户姓名:", |
| | | "name": "text", |
| | | "id": "u:c260d6dbc161", |
| | | "mode": "horizontal" |
| | | }, |
| | | { |
| | | "type": "input-text", |
| | | "label": "用户电话", |
| | | "name": "phone", |
| | | "id": "u:c00d1204430d", |
| | | "mode": "horizontal" |
| | | }, |
| | | { |
| | | "type": "service", |
| | | "id": "u:f6ab941852f1", |
| | | "type": "form", |
| | | "id": "u:57ea84073397", |
| | | "title": "", |
| | | "body": [ |
| | | { |
| | | "type": "select", |
| | | "id": "u:a7766815916b", |
| | | "label": "选择学员", |
| | | "name": "select", |
| | | "multiple": false, |
| | | "mode": "horizontal", |
| | | "size": "lg", |
| | | "value": "" |
| | | "type": "service", |
| | | "id": "u:f6ab941852f1", |
| | | "body": [ |
| | | { |
| | | "type": "input-text", |
| | | "id": "u:c00d1204430d", |
| | | "label": "用户电话", |
| | | "name": "phone", |
| | | "mode": "horizontal", |
| | | "size": "md" |
| | | }, |
| | | { |
| | | "type": "input-text", |
| | | "id": "u:9a9f18e09fb9", |
| | | "label": "        用户姓名:", |
| | | "name": "name", |
| | | "mode": "inline", |
| | | "size": "md" |
| | | }, |
| | | { |
| | | "type": "button", |
| | | "label": "搜索", |
| | | "onEvent": { |
| | | "click": { |
| | | "actions": [ |
| | | { |
| | | "componentId": "u:f6ab941852f1", |
| | | "actionType": "reload", |
| | | "dataMergeMode": "merge" |
| | | } |
| | | ] |
| | | } |
| | | }, |
| | | "id": "u:5fcf1222f6ea", |
| | | "level": "info" |
| | | }, |
| | | { |
| | | "type": "select", |
| | | "id": "u:a7766815916b", |
| | | "label": "选择学员", |
| | | "name": "toStudentId", |
| | | "multiple": false, |
| | | "mode": "horizontal", |
| | | "size": "md", |
| | | "value": "", |
| | | "source": "$options", |
| | | "labelField": "value", |
| | | "valueField": "id" |
| | | } |
| | | ], |
| | | "messages": {}, |
| | | "loadingConfig": { |
| | | "show": true |
| | | }, |
| | | "api": { |
| | | "url": "/tStudent/giftSelect", |
| | | "method": "post", |
| | | "messages": {}, |
| | | "requestAdaptor": "", |
| | | "adaptor": "", |
| | | "dataType": "form-data", |
| | | "data": { |
| | | "name": "$name", |
| | | "phone": "$phone", |
| | | "id": "$id" |
| | | } |
| | | } |
| | | }, |
| | | { |
| | | "type": "input-text", |
| | | "id": "u:fe0979ee23df", |
| | | "label": "id", |
| | | "name": "id", |
| | | "hidden": true |
| | | }, |
| | | { |
| | | "type": "container", |
| | | "id": "u:59d68a32f7fd", |
| | | "body": [ |
| | | { |
| | | "type": "tpl", |
| | | "id": "u:8224ab367da8", |
| | | "tpl": "                                                 ", |
| | | "inline": true, |
| | | "wrapperComponent": "" |
| | | }, |
| | | { |
| | | "type": "button", |
| | | "id": "u:783ce71739db", |
| | | "label": "保存", |
| | | "onEvent": { |
| | | "click": { |
| | | "actions": [ |
| | | { |
| | | "componentId": "u:57ea84073397", |
| | | "actionType": "submit" |
| | | } |
| | | ] |
| | | } |
| | | }, |
| | | "level": "info" |
| | | }, |
| | | { |
| | | "type": "tpl", |
| | | "id": "u:8224ab367da8", |
| | | "tpl": "   ", |
| | | "inline": true, |
| | | "wrapperComponent": "" |
| | | }, |
| | | { |
| | | "type": "button", |
| | | "id": "u:008bc32396cc", |
| | | "label": "取消", |
| | | "onEvent": { |
| | | "click": { |
| | | "actions": [ |
| | | { |
| | | "actionType": "closeDialog" |
| | | } |
| | | ] |
| | | } |
| | | }, |
| | | "block": false |
| | | } |
| | | ], |
| | | "style": { |
| | | "position": "static", |
| | | "display": "block" |
| | | } |
| | | } |
| | | ] |
| | | }, |
| | | { |
| | | "type": "button", |
| | | "label": "按钮", |
| | | "onEvent": { |
| | | "click": { |
| | | "actions": [ |
| | | ] |
| | | } |
| | | ], |
| | | "api": { |
| | | "url": "/tStudent/giftTo", |
| | | "method": "post", |
| | | "requestAdaptor": "", |
| | | "adaptor": "", |
| | | "messages": {}, |
| | | "dataType": "form-data" |
| | | }, |
| | | "id": "u:5fcf1222f6ea" |
| | | "actions": [] |
| | | }, |
| | | { |
| | | "type": "input-text", |
| | | "label": "id", |
| | | "name": "id", |
| | | "id": "u:fe0979ee23df" |
| | | }, |
| | | { |
| | | "type": "tpl", |
| | | "tpl": "对,你刚刚点击了", |
| | | "wrapperComponent": "", |
| | | "inline": false, |
| | | "id": "u:5fe4b4c9e423" |
| | | "id": "u:59d68a32f7fd", |
| | | "type": "container", |
| | | "body": [], |
| | | "style": { |
| | | "position": "static", |
| | | "display": "block" |
| | | } |
| | | } |
| | | ], |
| | | "showCloseButton": true, |
| | | "showErrorMsg": true, |
| | | "showLoading": true, |
| | | "className": "app-popover", |
| | | "id": "u:552bd1b3464d" |
| | | "id": "u:552bd1b3464d", |
| | | "actions": [], |
| | | "canAccessSuperData": false |
| | | } |
| | | } |
| | | ] |
| | |
| | | }, |
| | | "id": "u:ae1e6e73beb9", |
| | | "level": "link" |
| | | }, |
| | | { |
| | | "type": "button", |
| | | "label": "变更记录", |
| | | "onEvent": { |
| | | "click": { |
| | | "actions": [ |
| | | { |
| | | "actionType": "dialog", |
| | | "dialog": { |
| | | "type": "dialog", |
| | | "title": "弹框标题", |
| | | "body": [ |
| | | { |
| | | "type": "form", |
| | | "id": "u:4468428b5d24", |
| | | "title": "", |
| | | "body": [ |
| | | { |
| | | "type": "crud", |
| | | "id": "u:8072454d25d8", |
| | | "api": { |
| | | "url": "/tStudent/changelist/$id", |
| | | "method": "post", |
| | | "messages": { |
| | | }, |
| | | "requestAdaptor": "", |
| | | "adaptor": "", |
| | | "dataType": "form" |
| | | }, |
| | | "syncLocation": false, |
| | | "columns": [ |
| | | { |
| | | "name": "insertTime", |
| | | "label": "时间", |
| | | "type": "date", |
| | | "id": "u:e13821cad6ba", |
| | | "valueFormat": "x" |
| | | }, |
| | | { |
| | | "name": "changeType", |
| | | "label": "变更类型", |
| | | "type": "mapping", |
| | | "id": "u:e2b292dd63d0" |
| | | }, |
| | | { |
| | | "type": "text", |
| | | "label": "课时数", |
| | | "name": "num", |
| | | "id": "u:24b1375ff173" |
| | | }, |
| | | { |
| | | "type": "text", |
| | | "label": "变更原因", |
| | | "name": "reason", |
| | | "id": "u:8ba95bfd5e56" |
| | | } |
| | | ], |
| | | "bulkActions": [ |
| | | ], |
| | | "itemActions": [ |
| | | ], |
| | | "features": [ |
| | | "filter" |
| | | ], |
| | | "filterColumnCount": 3, |
| | | "filter": { |
| | | "title": "", |
| | | "body": [ |
| | | { |
| | | "type": "input-date-range", |
| | | "name": "start", |
| | | "label": "上传时间", |
| | | "id": "u:b2fb064aa9ac", |
| | | "inputFormat": "YYYY-MM-DD HH:mm", |
| | | "format": "YYYY-MM-DD HH:mm", |
| | | "embed": false, |
| | | "extraName": "end" |
| | | }, |
| | | { |
| | | "type": "select", |
| | | "label": "是否启用", |
| | | "name": "changeType", |
| | | "options": [ |
| | | { |
| | | "label": "全部" |
| | | }, |
| | | { |
| | | "label": "增加", |
| | | "value": 1 |
| | | }, |
| | | { |
| | | "label": "减少", |
| | | "value": 0 |
| | | } |
| | | ], |
| | | "id": "u:6dbebedca3b9", |
| | | "multiple": false, |
| | | "clearable": true, |
| | | "size": "md", |
| | | "value": "" |
| | | }, |
| | | { |
| | | "type": "select", |
| | | "label": "变更原因", |
| | | "name": "reason", |
| | | "options": [ |
| | | { |
| | | "label": "全部" |
| | | }, |
| | | { |
| | | "label": "购课", |
| | | "value": "购课" |
| | | }, |
| | | { |
| | | "label": "消课", |
| | | "value": 0 |
| | | }, |
| | | { |
| | | "label": "体验购课", |
| | | "value": "体验购课" |
| | | }, |
| | | { |
| | | "label": "报名赛事", |
| | | "value": "报名赛事" |
| | | }, |
| | | { |
| | | "label": "报名假期班", |
| | | "value": "报名假期班" |
| | | }, |
| | | { |
| | | "label": "续课", |
| | | "value": 1 |
| | | }, |
| | | { |
| | | "label": "课时转移", |
| | | "value": "课时转移" |
| | | }, |
| | | { |
| | | "label": "赠课", |
| | | "value": "赠课" |
| | | }, |
| | | { |
| | | "label": "退费", |
| | | "value": "退费" |
| | | }, |
| | | { |
| | | "label": "介绍有礼", |
| | | "value": "介绍有礼" |
| | | }, |
| | | { |
| | | "label": "换课", |
| | | "value": "换课" |
| | | } |
| | | ], |
| | | "id": "u:a3db438ccfdd", |
| | | "multiple": false, |
| | | "clearable": true, |
| | | "size": "md", |
| | | "value": "" |
| | | } |
| | | ], |
| | | "id": "u:5c936e95b286" |
| | | }, |
| | | "perPageAvailable": [ |
| | | 10 |
| | | ], |
| | | "messages": { |
| | | }, |
| | | "perPageField": "size" |
| | | }, |
| | | { |
| | | "type": "input-text", |
| | | "id": "u:5f73d0cbffee", |
| | | "label": "id", |
| | | "name": "id", |
| | | "hidden": true |
| | | }, |
| | | { |
| | | "type": "container", |
| | | "id": "u:0576f915b9e3", |
| | | "body": [ |
| | | { |
| | | "type": "tpl", |
| | | "id": "u:9c56f7ef3419", |
| | | "tpl": "                                                                                                             ", |
| | | "inline": true, |
| | | "wrapperComponent": "" |
| | | }, |
| | | { |
| | | "type": "tpl", |
| | | "id": "u:a2cba9bb8751", |
| | | "tpl": "   ", |
| | | "inline": true, |
| | | "wrapperComponent": "" |
| | | }, |
| | | { |
| | | "type": "button", |
| | | "id": "u:98fc618e3ec6", |
| | | "label": "关闭", |
| | | "onEvent": { |
| | | "click": { |
| | | "actions": [ |
| | | { |
| | | "actionType": "closeDialog" |
| | | } |
| | | ] |
| | | } |
| | | }, |
| | | "block": false |
| | | } |
| | | ], |
| | | "style": { |
| | | "position": "static", |
| | | "display": "block" |
| | | } |
| | | } |
| | | ], |
| | | "api": { |
| | | "url": "/tStudent/changelist/$id", |
| | | "method": "post", |
| | | "requestAdaptor": "", |
| | | "adaptor": "", |
| | | "messages": { |
| | | }, |
| | | "dataType": "form-data" |
| | | }, |
| | | "actions": [ |
| | | ] |
| | | } |
| | | ], |
| | | "showCloseButton": true, |
| | | "showErrorMsg": true, |
| | | "showLoading": true, |
| | | "className": "", |
| | | "id": "u:f66fa4de8251", |
| | | "actions": [ |
| | | ], |
| | | "canAccessSuperData": false, |
| | | "wrapWithPanel": false, |
| | | "size": "xl", |
| | | "closeOnEsc": false |
| | | } |
| | | } |
| | | ] |
| | | } |
| | | }, |
| | | "id": "u:dd3110deaf9d", |
| | | "level": "link" |
| | | } |
| | | |
| | | ] |
| | | } |
| | | ], |
| | |
| | | "wrapperComponent": "" |
| | | }, |
| | | { |
| | | "label": "ajax请求", |
| | | "type": "button", |
| | | "label": "退费", |
| | | "actionType": "ajax", |
| | | "api": { |
| | | "method": "get", |
| | | "url": "/ttt", |
| | | "data": { |
| | | "item": "$items" |
| | | }, |
| | | "id": "u:f706584d4a0c" |
| | | }, |
| | | "id": "u:38a6f5402e72" |
| | | "id": "u:38a6f5402e72", |
| | | "onEvent": { |
| | | "click": { |
| | | "weight": 0, |
| | | "actions": [ |
| | | { |
| | | "actionType": "url", |
| | | "args": { |
| | | "url": "/tStudent/backmoney", |
| | | "params": { |
| | | "ids": "$ids", |
| | | "id": "$id" |
| | | } |
| | | } |
| | | } |
| | | ] |
| | | } |
| | | } |
| | | }, |
| | | { |
| | | "label": "退费", |
| | | "type": "button", |
| | | "id": "u:4b1f37ea569c" |
| | | "label": "退费申请", |
| | | "id": "u:4b1f37ea569c", |
| | | "level": "info", |
| | | "onEvent": { |
| | | "click": { |
| | | "weight": 0, |
| | | "actions": [ |
| | | { |
| | | "actionType": "dialog", |
| | | "dialog": { |
| | | "type": "dialog", |
| | | "title": "弹框标题", |
| | | "body": [ |
| | | { |
| | | "type": "tpl", |
| | | "tpl": "对,你刚刚点击了", |
| | | "wrapperComponent": "", |
| | | "inline": false, |
| | | "id": "u:d72b44ae6de4" |
| | | }, |
| | | { |
| | | "type": "crud", |
| | | "syncLocation": false, |
| | | "api": { |
| | | "method": "get", |
| | | "url": "/tStudent/getBackList/$id" |
| | | }, |
| | | "columns": [ |
| | | { |
| | | "name": "inserTtime", |
| | | "label": "申请时间", |
| | | "type": "date", |
| | | "id": "u:6948dfe01afd" |
| | | }, |
| | | { |
| | | "name": "status", |
| | | "label": "审核状态", |
| | | "type": "mapping", |
| | | "id": "u:1f2a09737a98" |
| | | }, |
| | | { |
| | | "type": "operation", |
| | | "id": "u:b0e34eccd864", |
| | | "buttons": [ |
| | | { |
| | | "type": "button", |
| | | "label": "退费", |
| | | "onEvent": { |
| | | "click": { |
| | | "actions": [ |
| | | { |
| | | "actionType": "url", |
| | | "args": { |
| | | "url": "/tStudent/backmoney", |
| | | "params": { |
| | | "ids": "$ids", |
| | | "id": "$id" |
| | | } |
| | | } |
| | | } |
| | | ], |
| | | "weight": 0 |
| | | } |
| | | }, |
| | | "id": "u:38a6f5402e72", |
| | | "actionType": "ajax", |
| | | "level": "info" |
| | | } |
| | | ] |
| | | } |
| | | ], |
| | | "bulkActions": [], |
| | | "itemActions": [], |
| | | "features": [ |
| | | "view", |
| | | "delete" |
| | | ], |
| | | "id": "u:a4ce7e3ae181" |
| | | } |
| | | ], |
| | | "showCloseButton": true, |
| | | "showErrorMsg": true, |
| | | "showLoading": true, |
| | | "className": "app-popover", |
| | | "id": "u:b91085026056" |
| | | } |
| | | } |
| | | ] |
| | | } |
| | | } |
| | | }, |
| | | { |
| | | "label": "退费", |
| | |
| | | "uploadType": "fileReceptor", |
| | | "imageClassName": "r w-full", |
| | | "receiver": { |
| | | "url": "/mgr/uploadImg", |
| | | "url": "/mgr/uploadImgAmis", |
| | | "method": "post" |
| | | }, |
| | | "accept": ".jpeg, .jpg, .png, .gif", |
| | |
| | | "uploadType": "fileReceptor", |
| | | "imageClassName": "r w-full", |
| | | "receiver": { |
| | | "url": "/mgr/uploadImg", |
| | | "url": "/mgr/uploadImgAmis", |
| | | "method": "post" |
| | | }, |
| | | "accept": ".jpeg, .jpg, .png, .gif", |
| | |
| | | "uploadType": "fileReceptor", |
| | | "imageClassName": "r w-full", |
| | | "receiver": { |
| | | "url": "/mgr/uploadImg", |
| | | "url": "/mgr/uploadImgAmis", |
| | | "method": "post" |
| | | }, |
| | | "accept": ".jpeg, .jpg, .png, .gif", |
| | |
| | | {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'}, |
| | | {title: '未到学员', field: 'nonArrival', 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"){ |
| | | if (typeof v === "undefined") { |
| | | return '未布置'; |
| | | }else{ |
| | | } else { |
| | | return '已布置'; |
| | | } |
| | | } |
| | |
| | | {title: '扣除课时', field: 'deductClassHour', align: 'center', valign: 'middle'}, |
| | | {title: '取消记录', field: 'absencesNumber', align: 'center', valign: 'middle', |
| | | formatter: function (v) { |
| | | if(typeof v == "undefined"){ |
| | | if (typeof v === "undefined") { |
| | | return '未上传'; |
| | | }else{ |
| | | } else { |
| | | return '已上传'; |
| | | } |
| | | } |
| | |
| | | }; |
| | | |
| | | |
| | | ClassRecord.cancellationRecord = function(){ |
| | | ClassRecord.cancellationRecord = function(i){ |
| | | if(this.check()){ |
| | | let htmlStr = |
| | | '<div class="form-horizontal">' + |
| | | |
| | | '<div class="form-horizontal">' + |
| | | ' <div class="col-sm-11" style="padding: 20px;">' + |
| | | ' <div class="form-group">\n' + |
| | | ' <label class="col-sm-2"></label>'+ |
| | |
| | | ' <div class="form-group">\n' + |
| | | ' <label class="col-sm-2"></label>'+ |
| | | ' <label class="control-label" style="text-align: left;">扣除课时数:</label>\n' + |
| | | ' <input id="deductClassHour" type="number" min="0" style="background-color: #FFFFFF;background-image: none;border: 1px solid #e5e6e7;border-radius: 1px;color: inherit;padding: 6px 12px;">' + |
| | | ' <input id="deductClassHour" value="'+i+'" type="number" min="0" style="background-color: #FFFFFF;background-image: none;border: 1px solid #e5e6e7;border-radius: 1px;color: inherit;padding: 6px 12px;">' + |
| | | ' </div>' + |
| | | ' </div>' + |
| | | '</div>'; |
| | |
| | | this.layerIndex = index; |
| | | }; |
| | | |
| | | |
| | | |
| | | CoursePackage.addCoursePackage1 = function () { |
| | | let index = layer.open({ |
| | | type: 2, |
| | | title: '添加', |
| | | area: ['100%', '100%'], //宽高 |
| | | fix: false, //不固定 |
| | | maxmin: true, |
| | | content: Feng.ctxPath + '/tStudent/openAddCoursePackage' |
| | | }); |
| | | this.layerIndex = index; |
| | | }; |
| | | |
| | | /** |
| | | * 点击修改按钮时 |
| | | * @param userId 管理员id |
| | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | CoursePackage.resetSearch = function () { |
| | | $("#provinceCode").val(""); |
| | | $("#cityCode").val(""); |
| | |
| | | {title: '年龄', field: 'age', align: 'center', valign: 'middle'}, |
| | | {title: '性别', field: 'sex', align: 'center', valign: 'middle', |
| | | formatter: function (v) { |
| | | if(v == 1){ |
| | | if (v == 1) { |
| | | return '男'; |
| | | }else{ |
| | | } else { |
| | | return '女'; |
| | | } |
| | | } |
| | | }, |
| | | {title: '到课状态', field: 'signInOrNot', align: 'center', valign: 'middle', |
| | | formatter: function (v) { |
| | | switch (v) { |
| | | case 0: |
| | | return '未到'; |
| | | case 1: |
| | | return '已到'; |
| | | formatter: function (v, row) { |
| | | if (row.reservationStatus === 0) { |
| | | return '请假'; |
| | | } else { |
| | | switch (v) { |
| | | case 0: |
| | | return '旷课'; |
| | | case 1: |
| | | return '已到'; |
| | | } |
| | | } |
| | | } |
| | | }, |
| | | {title: '预定状态', field: 'reservationStatus', align: 'center', valign: 'middle', |
| | | {title: '预定状态', field: 'reservationStatus', align: 'center', valign: 'middle',hidden:true, |
| | | formatter: function (v) { |
| | | if(v == 0){ |
| | | if (v == 0) { |
| | | return '已取消'; |
| | | }else{ |
| | | } else { |
| | | return '正常'; |
| | | } |
| | | } |
| | |
| | | }; |
| | | |
| | | |
| | | CoursePackageInfo.openDia = function (i) { |
| | | |
| | | let index = layer.open({ |
| | | type: 2, |
| | | title: '编辑', |
| | | area: ['80%', '80%'], //宽高 |
| | | fix: false, //不固定 |
| | | maxmin: true, |
| | | content: Feng.ctxPath + '/coursePackage/conpun/'+i |
| | | }); |
| | | this.layerIndex = index; |
| | | }; |
| | | |
| | | CoursePackageInfo.openDia1 = function (i) { |
| | | var ids = $("#counpons"+i).val() |
| | | |
| | | console.log($("#counpons"+i).val()) |
| | | let index = layer.open({ |
| | | type: 2, |
| | | title: '编辑', |
| | | area: ['80%', '80%'], //宽高 |
| | | fix: false, //不固定 |
| | | maxmin: true, |
| | | content: Feng.ctxPath + '/coursePackage/conpun1'+'/'+i+'?conpunids='+ids |
| | | }); |
| | | this.layerIndex = index; |
| | | }; |
| | | /** |
| | | * 提交添加用户 |
| | | */ |
| | |
| | | let siteId = $('#siteId').val(); |
| | | let coachId = $('#coachId').val(); |
| | | let maxSubscribeNumber = $('#maxSubscribeNumber').val(); |
| | | let classStartTime = $('#classStartTime').val(); |
| | | let codeTime = $('#codeTime').val(); |
| | | |
| | | // let classStartTime = JSON.stringify($('#classStartTime').val()); |
| | | |
| | | |
| | | var inputElements = document.querySelectorAll('input[name="classStartTime"]'); |
| | | let classStartTime = JSON.stringify(Array.from(inputElements).map(function(element) { |
| | | return element.value; |
| | | })) |
| | | |
| | | let classWeeks = ''; |
| | | $('input[name="classWeeks"]:checked').each(function (index, e) { |
| | | classWeeks += $(e).val() + ";"; |
| | |
| | | let sort = $('#sort').val(); |
| | | let validDays = $('#validDays').val(); |
| | | let price = []; |
| | | $('#price>.form-group').each(function (i, e) { |
| | | $('#price > .form-group').each(function (i, e) { |
| | | let classHours = $($(e).find(".classNumber_span input[class='classNumber']")[0]).val(); |
| | | let cash = $($(e).find(".cash_span input[class='cash']")[0]).val(); |
| | | let paiCoin = $($(e).find(".paiCoin_span input[class='paiCoin']")[0]).val(); |
| | | let counpons = $($(e).find(".counpons")).val(); |
| | | price.push({ |
| | | classHours: classHours, |
| | | cashPayment: typeof cash == "undefined" ? 0 : cash, |
| | | playPaiCoin: typeof paiCoin == "undefined" ? 0 : paiCoin |
| | | }) |
| | | playPaiCoin: typeof paiCoin == "undefined" ? 0 : paiCoin, |
| | | couponIds: typeof counpons == "undefined" ? 0 : counpons |
| | | }); |
| | | }); |
| | | if(null == provinceCode || '' == provinceCode){ |
| | | Feng.error("所在省不能为空"); |
| | |
| | | return |
| | | } |
| | | if(null == maxSubscribeNumber || '' == maxSubscribeNumber){ |
| | | Feng.error("最多预约人数不能为空"); |
| | | return |
| | | } |
| | | if(null == codeTime || '' == codeTime){ |
| | | Feng.error("最多预约人数不能为空"); |
| | | return |
| | | } |
| | |
| | | siteId: siteId, |
| | | coachId: coachId, |
| | | maxSubscribeNumber: maxSubscribeNumber, |
| | | classStartTime: classStartTime.split(" - ")[0], |
| | | classEndTime: classStartTime.split(" - ")[1], |
| | | classStartTime: classStartTime, |
| | | codeTime:codeTime, |
| | | // classStartTime: classStartTime.split(" - ")[0], |
| | | // classEndTime: classStartTime.split(" - ")[1], |
| | | classWeeks: classWeeks, |
| | | coverDrawing: coverDrawing, |
| | | detailDrawing: detailDrawing, |
| | |
| | | let siteId = $('#siteId').val(); |
| | | let coachId = $('#coachId').val(); |
| | | let maxSubscribeNumber = $('#maxSubscribeNumber').val(); |
| | | let codeTime = $('#codeTime').val(); |
| | | |
| | | let classStartTime = $('#classStartTime').val(); |
| | | let classWeeks = ''; |
| | | $('input[name="classWeeks"]:checked').each(function (index, e) { |
| | |
| | | let introduceDrawing = $('#introduceDrawing').val(); |
| | | let sort = $('#sort').val(); |
| | | let validDays = $('#validDays').val(); |
| | | // let counpons = $($(e).find(".counpons")).val(); |
| | | |
| | | let price = []; |
| | | $('#price>.form-group').each(function (i, e) { |
| | | let classHours = $($(e).find(".classNumber_span input[class='classNumber']")[0]).val(); |
| | | let cash = $($(e).find(".cash_span input[class='cash']")[0]).val(); |
| | | let paiCoin = $($(e).find(".paiCoin_span input[class='paiCoin']")[0]).val(); |
| | | let counpons = $($(e).find(".counpons")).val(); |
| | | |
| | | price.push({ |
| | | classHours: classHours, |
| | | cashPayment: typeof cash == "undefined" ? 0 : cash, |
| | | playPaiCoin: typeof paiCoin == "undefined" ? 0 : paiCoin |
| | | playPaiCoin: typeof paiCoin == "undefined" ? 0 : paiCoin, |
| | | couponIds: typeof counpons == "undefined" ? 0 : counpons |
| | | |
| | | }) |
| | | }); |
| | | if(null == provinceCode || '' == provinceCode){ |
| | |
| | | } |
| | | if(null == maxSubscribeNumber || '' == maxSubscribeNumber){ |
| | | Feng.error("最多预约人数不能为空"); |
| | | return |
| | | } if(null == codeTime || '' == codeTime){ |
| | | Feng.error("扣除课时不能为空"); |
| | | return |
| | | } |
| | | if(null == classStartTime || '' == classStartTime){ |
| | |
| | | siteId: siteId, |
| | | coachId: coachId, |
| | | maxSubscribeNumber: maxSubscribeNumber, |
| | | codeTime: codeTime, |
| | | |
| | | classStartTime: classStartTime.split(" - ")[0], |
| | | classEndTime: classStartTime.split(" - ")[1], |
| | | classWeeks: classWeeks, |
| | |
| | | paiCoin = true; |
| | | } |
| | | }) |
| | | |
| | | var i = $('#price > div').length+1 |
| | | let htmlStr = '' + |
| | | '<div class="form-group">\n' + |
| | | ' <label class="col-sm-3 control-label">*课时数:</label>\n' + |
| | |
| | | if(paiCoin){ |
| | | htmlStr += '玩湃币支付:<input class="paiCoin" type="number" min="0" placeholder="请输入金额" style="width: 110px;background-color: #FFFFFF;background-image: none;border: 1px solid #e5e6e7;border-radius: 1px;color: inherit;padding: 6px 12px;"> 币 \n'; |
| | | } |
| | | htmlStr += '</span> <i class="fa fa-trash-o" style="font-size:24px" onclick="removePrice(this)"></i>\n' + |
| | | '</div>\n' + |
| | | htmlStr += '<button type="button" class="btn btn-info " onclick="CoursePackageInfo.openDia('+i+')" id="ensure">\n' + |
| | | ' <i class="fa fa-check"></i> 优惠卷\n' + |
| | | '</button>'; |
| | | |
| | | htmlStr += '</span> <i class="fa fa-trash-o" style="font-size:24px" onclick="removePrice(this)"></i>\n' + |
| | | '</div>\n' +'<input type="text" class = "counpons" id = "counpons'+i+'" >'+i+ |
| | | '</div>'; |
| | | $('#price').append(htmlStr); |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | function removePrice(e){ |
| | | $(e).parent('div').parent('div').remove(); |
| | | } |
| | |
| | | */ |
| | | RegistrationRecord.initColumn = function () { |
| | | let columns = [ |
| | | {field: 'selectItem', radio: true}, |
| | | {field: 'selectItem', checkbox: true}, |
| | | {title: 'id', field: 'id', visible: false, align: 'center', valign: 'middle'}, |
| | | {title: '购买用户', field: 'userName', align: 'center', valign: 'middle'}, |
| | | {title: '联系方式', field: 'phone', align: 'center', valign: 'middle'}, |
| | |
| | | return false; |
| | | } else { |
| | | RegistrationRecord.seItem = selected[0]; |
| | | RegistrationRecord.seItem1 = selected; |
| | | |
| | | return true; |
| | | } |
| | | }; |
| | |
| | | this.layerIndex = index; |
| | | }; |
| | | |
| | | |
| | | RegistrationRecord.holiClass = function () { |
| | | if (this.check()) { |
| | | var ids = RegistrationRecord.seItem1.map(function(item) { |
| | | return item.id; |
| | | }).join(","); |
| | | let index = layer.open({ |
| | | type: 2, |
| | | title: '报名信息', |
| | | area: ['50%', '50%'], //宽高 |
| | | fix: false, //不固定 |
| | | maxmin: true, |
| | | content: Feng.ctxPath + '/tStudent/TTT?ids='+ids+'&id='+$('#id').val() |
| | | }); |
| | | this.layerIndex = index; |
| | | } |
| | | }; |
| | | |
| | | RegistrationRecord.transClass = function () { |
| | | if (this.check()) { |
| | | var ids = RegistrationRecord.seItem1.map(function(item) { |
| | | return item.id; |
| | | }).join(","); |
| | | let index = layer.open({ |
| | | type: 2, |
| | | title: '报名信息', |
| | | area: ['50%', '50%'], //宽高 |
| | | fix: false, //不固定 |
| | | maxmin: true, |
| | | content: Feng.ctxPath + '/tStudent/trans?ids='+ids+'&id='+$('#id').val() |
| | | }); |
| | | this.layerIndex = index; |
| | | } |
| | | }; |
| | | |
| | | |
| | | /** |
| | | * 点击修改按钮时 |
| | | * @param userId 管理员id |
| | |
| | | import com.dsh.other.entity.CreateHistoryDto; |
| | | import com.dsh.other.entity.GetHistoryDto; |
| | | import com.dsh.other.model.BannerVo; |
| | | import com.dsh.other.model.dto.siteDto.SelectDto; |
| | | import com.dsh.other.model.vo.questionVo.QuestionSearchVO; |
| | | import com.dsh.other.service.IBannerService; |
| | | import com.dsh.other.util.ResultUtil; |
| | |
| | | @ResponseBody |
| | | @PostMapping("/class/gethisotory") |
| | | public List<GetHistoryDto> getHistory(@RequestBody Integer studentId){ |
| | | List<GetHistoryDto> list = bannerService.gethistory(studentId); |
| | | |
| | | return bannerService.gethistory(studentId); |
| | | |
| | | System.out.println("=-======GetHistoryDto========"+list); |
| | | return list; |
| | | |
| | | } |
| | | |
| | | |
| | | } |
| | |
| | | private String pleasePic; |
| | | private String passPic; |
| | | private String createBy; |
| | | @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") |
| | | private Date date; |
| | | } |
| | |
| | | void createHistory(CreateHistoryDto createHistoryDto); |
| | | |
| | | List<GetHistoryDto> gethistory(Integer studentId); |
| | | |
| | | } |
| | |
| | | public List<Banner> listAll(AdvertisementQuery query) { |
| | | return bannerMapper.listAll(query); |
| | | } |
| | | |
| | | |
| | | } |
| | |
| | | |
| | | </insert> |
| | | <select id="getHistory" resultType="com.dsh.other.entity.GetHistoryDto"> |
| | | SELECT hs.insertTime,hs.passPic,hs.pleasePic,us.`name` |
| | | SELECT hs.insertTime as date,hs.passPic,hs.pleasePic,us.`name` as createBy |
| | | from t_usetime_history hs |
| | | LEFT JOIN sys_user us on hs.createBy = us.id |
| | | where hs.studentId = #{studentId} |
| | | |
| | | </select> |
| | | |
| | | </mapper> |