From d954784593cb24b0455529ea28588a317c5d766f Mon Sep 17 00:00:00 2001 From: luo <2855143437@qq.com> Date: 星期二, 26 九月 2023 17:05:30 +0800 Subject: [PATCH] 9.26 --- cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/system/TStudentController.java | 3 cloud-server-management/src/main/webapp/WEB-INF/view/system/coursePackage/registrationRecord2.html | 2 cloud-server-course/src/main/java/com/dsh/course/controller/CoursePackagePaymentController.java | 8 cloud-server-course/src/main/resources/mapper/TCoursePackagePaymentMapper.xml | 10 cloud-server-account/src/main/java/com/dsh/account/controller/StudentController.java | 2 cloud-server-course/src/main/java/com/dsh/course/controller/CourseStudentController.java | 20 cloud-server-management/src/main/webapp/WEB-INF/view/system/coursePackage/classRecord2.html | 68 +++ cloud-server-management/src/main/webapp/WEB-INF/view/system/coursePackage/registrationRecord.html | 2 cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TShopController.java | 4 cloud-server-account/src/main/java/com/dsh/account/entity/GiftSearchDto.java | 2 cloud-server-course/src/main/java/com/dsh/course/service/TCoursePackagePaymentService.java | 3 cloud-server-management/src/main/webapp/WEB-INF/view/system/coursePackage/registrationRecord3.html | 2 cloud-server-management/src/main/webapp/static/modular/system/coursePackage/registrationRecord.js | 58 ++ .idea/workspace.xml | 94 ++- cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackageServiceImpl.java | 110 ++-- cloud-server-course/src/main/java/com/dsh/course/mapper/TCoursePackagePaymentMapper.java | 3 cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/dto/GiftSearchDto.java | 2 cloud-server-management/src/main/webapp/WEB-INF/view/system/coursePackage/classRecord.html | 2 cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/dto/SelectDto.java | 2 cloud-server-management/src/main/webapp/static/modular/system/coursePackage/coursePackage_info.js | 48 +- cloud-server-account/src/main/java/com/dsh/account/dto/SelectDto.java | 1 cloud-server-course/src/main/java/com/dsh/course/entity/dto/TCoursePackagePayment1.java | 100 ++++ cloud-server-account/src/main/java/com/dsh/account/feignclient/course/CoursePaymentClient.java | 7 cloud-server-account/src/main/java/com/dsh/account/dto/TCoursePackagePayment1.java | 163 +++++++ cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCoursePackageController.java | 39 + cloud-server-management/src/main/webapp/static/modular/system/coursePackage/classRecord2.js | 440 ++++++++++++++++++++ cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackagePaymentServiceImpl.java | 5 cloud-server-management/src/main/webapp/static/modular/system/coursePackage/registrationRecord2.js | 2 cloud-server-management/src/main/webapp/WEB-INF/view/system/tStudent/tStudentEditTTT.html | 6 cloud-server-management/src/main/webapp/WEB-INF/view/system/tStudent/tStudentEdit.html | 23 30 files changed, 1,052 insertions(+), 179 deletions(-) diff --git a/.idea/workspace.xml b/.idea/workspace.xml index fdcc0cf..be2394c 100644 --- a/.idea/workspace.xml +++ b/.idea/workspace.xml @@ -24,15 +24,31 @@ <component name="ChangeListManager"> <list default="true" id="cb08d02f-fd4f-4fa2-85fe-abd508fa83ac" name="Default Changelist" comment="9.25"> <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/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/dto/SelectDto.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-account/src/main/java/com/dsh/account/dto/SelectDto.java" afterDir="false" /> + <change beforePath="$PROJECT_DIR$/cloud-server-account/src/main/java/com/dsh/account/entity/GiftSearchDto.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-account/src/main/java/com/dsh/account/entity/GiftSearchDto.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-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/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/model/TAppUser.java" beforeDir="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/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/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/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-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-course/src/main/java/com/dsh/course/service/impl/TCoursePackageServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackageServiceImpl.java" afterDir="false" /> + <change beforePath="$PROJECT_DIR$/cloud-server-course/src/main/resources/mapper/TCoursePackagePaymentMapper.xml" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-course/src/main/resources/mapper/TCoursePackagePaymentMapper.xml" afterDir="false" /> <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/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/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/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/java/com/dsh/guns/modular/system/controller/code/TShopController.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TShopController.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/model/dto/GiftSearchDto.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/dto/GiftSearchDto.java" afterDir="false" /> + <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/dto/SelectDto.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/dto/SelectDto.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/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/coursePackage/registrationRecord2.html" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/WEB-INF/view/system/coursePackage/registrationRecord2.html" afterDir="false" /> + <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/WEB-INF/view/system/coursePackage/registrationRecord3.html" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/WEB-INF/view/system/coursePackage/registrationRecord3.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/WEB-INF/view/system/tStudent/tStudentEditTTT.html" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/WEB-INF/view/system/tStudent/tStudentEditTTT.html" afterDir="false" /> <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/static/modular/system/coursePackage/coursePackage_info.js" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/static/modular/system/coursePackage/coursePackage_info.js" afterDir="false" /> + <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/static/modular/system/coursePackage/registrationRecord.js" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/static/modular/system/coursePackage/registrationRecord.js" afterDir="false" /> + <change beforePath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/static/modular/system/coursePackage/registrationRecord2.js" beforeDir="false" afterPath="$PROJECT_DIR$/cloud-server-management/src/main/webapp/static/modular/system/coursePackage/registrationRecord2.js" afterDir="false" /> </list> <option name="SHOW_DIALOG" value="false" /> <option name="HIGHLIGHT_CONFLICTS" value="true" /> @@ -78,39 +94,39 @@ <option name="hideEmptyMiddlePackages" value="true" /> <option name="showLibraryContents" value="true" /> </component> - <component name="PropertiesComponent">{ - "keyToString": { - "DefaultHtmlFileTemplate": "HTML File", - "RequestMappingsPanelOrder0": "0", - "RequestMappingsPanelOrder1": "1", - "RequestMappingsPanelWidth0": "75", - "RequestMappingsPanelWidth1": "75", - "RunOnceActivity.OpenProjectViewOnStart": "true", - "RunOnceActivity.ShowReadmeOnStart": "true", - "WebServerToolWindowFactoryState": "false", - "git-widget-placeholder": "master", - "ignore.virus.scanning.warn.message": "true", - "last_opened_file_path": "D:/JavaTool/PlayPai1/cloud-server-management/src/main/webapp/WEB-INF/view/system/coursePackage", - "node.js.detected.package.eslint": "true", - "node.js.detected.package.tslint": "true", - "node.js.selected.package.eslint": "(autodetect)", - "node.js.selected.package.tslint": "(autodetect)", - "nodejs_package_manager_path": "npm", - "project.structure.last.edited": "模块", - "project.structure.proportion": "0.15", - "project.structure.side.proportion": "0.54367816", - "settings.editor.selected.configurable": "preferences.pluginManager", - "spring.configuration.checksum": "b0c8222ba40624e179f539b98c2e8cad", - "vue.rearranger.settings.migration": "true" + <component name="PropertiesComponent"><![CDATA[{ + "keyToString": { + "DefaultHtmlFileTemplate": "HTML File", + "RequestMappingsPanelOrder0": "0", + "RequestMappingsPanelOrder1": "1", + "RequestMappingsPanelWidth0": "75", + "RequestMappingsPanelWidth1": "75", + "RunOnceActivity.OpenProjectViewOnStart": "true", + "RunOnceActivity.ShowReadmeOnStart": "true", + "WebServerToolWindowFactoryState": "false", + "git-widget-placeholder": "master", + "ignore.virus.scanning.warn.message": "true", + "last_opened_file_path": "D:/JavaTool/PlayPai1/cloud-server-management/src/main/webapp/static/modular/system/coursePackage", + "node.js.detected.package.eslint": "true", + "node.js.detected.package.tslint": "true", + "node.js.selected.package.eslint": "(autodetect)", + "node.js.selected.package.tslint": "(autodetect)", + "nodejs_package_manager_path": "npm", + "project.structure.last.edited": "模块", + "project.structure.proportion": "0.15", + "project.structure.side.proportion": "0.54367816", + "settings.editor.selected.configurable": "preferences.pluginManager", + "spring.configuration.checksum": "b0c8222ba40624e179f539b98c2e8cad", + "vue.rearranger.settings.migration": "true" } -}</component> +}]]></component> <component name="ReactorSettings"> <option name="notificationShown" value="true" /> </component> <component name="RecentsManager"> <key name="CopyFile.RECENT_KEYS"> - <recent name="D:\JavaTool\PlayPai1\cloud-server-management\src\main\webapp\WEB-INF\view\system\coursePackage" /> <recent name="D:\JavaTool\PlayPai1\cloud-server-management\src\main\webapp\static\modular\system\coursePackage" /> + <recent name="D:\JavaTool\PlayPai1\cloud-server-management\src\main\webapp\WEB-INF\view\system\coursePackage" /> <recent name="D:\JavaTool\PlayPai1\cloud-server-management\src\main\webapp\WEB-INF\view\system\tStudent" /> <recent name="D:\JavaTool\PlayPai1\cloud-server-management\src\main\webapp\static\modular\system\tCoupon" /> <recent name="D:\JavaTool\PlayPai1\cloud-server-management\src\main\webapp\WEB-INF\view\system" /> @@ -252,7 +268,7 @@ </component> <component name="SpellCheckerSettings" RuntimeDictionaries="0" Folders="0" CustomDictionaries="0" DefaultDictionary="应用程序级" UseSingleDictionary="true" transferred="true" /> <component name="SvnConfiguration"> - <configuration /> + <configuration>C:\Users\luo\AppData\Roaming\Subversion</configuration> </component> <component name="TaskManager"> <task active="true" id="Default" summary="Default task"> @@ -292,7 +308,9 @@ <workItem from="1695520475699" duration="28522000" /> <workItem from="1695602623205" duration="24182000" /> <workItem from="1695633570775" duration="65000" /> - <workItem from="1695633789585" duration="2320000" /> + <workItem from="1695633789585" duration="4703000" /> + <workItem from="1695638521906" duration="1415000" /> + <workItem from="1695689815334" duration="13353000" /> </task> <task id="LOCAL-00001" summary="后台代码删除"> <created>1690249807612</created> @@ -425,7 +443,15 @@ <option name="project" value="LOCAL" /> <updated>1695629926005</updated> </task> - <option name="localTasksCounter" value="19" /> + <task id="LOCAL-00019" summary="9.25"> + <option name="closed" value="true" /> + <created>1695636138175</created> + <option name="number" value="00019" /> + <option name="presentableId" value="LOCAL-00019" /> + <option name="project" value="LOCAL" /> + <updated>1695636138175</updated> + </task> + <option name="localTasksCounter" value="20" /> <servers /> </component> <component name="TypeScriptGeneratedFilesManager"> diff --git a/cloud-server-account/src/main/java/com/dsh/account/controller/StudentController.java b/cloud-server-account/src/main/java/com/dsh/account/controller/StudentController.java index 8be82ce..93c7845 100644 --- a/cloud-server-account/src/main/java/com/dsh/account/controller/StudentController.java +++ b/cloud-server-account/src/main/java/com/dsh/account/controller/StudentController.java @@ -204,7 +204,7 @@ System.out.println("======giftSelect=========giftSearchDto===="+giftSearchDto); // Integer appId = studentService.getGiftSelect(giftSearchDto); - TCoursePackagePayment coursePackagePaymentById = paymentClient.getCoursePackagePaymentById(giftSearchDto.getId()); + TCoursePackagePayment1 coursePackagePaymentById = paymentClient.getCoursePackagePaymentById1(giftSearchDto.getId()); // System.out.println("=======giftSelect======appId====>"+appId); List<TStudent> selectDtos = studentService.list(new QueryWrapper<TStudent>() .select("name, id") diff --git a/cloud-server-account/src/main/java/com/dsh/account/dto/SelectDto.java b/cloud-server-account/src/main/java/com/dsh/account/dto/SelectDto.java index 28cac4b..fda50a5 100644 --- a/cloud-server-account/src/main/java/com/dsh/account/dto/SelectDto.java +++ b/cloud-server-account/src/main/java/com/dsh/account/dto/SelectDto.java @@ -1,5 +1,6 @@ package com.dsh.account.dto; +import io.swagger.models.auth.In; import lombok.Data; @Data diff --git a/cloud-server-account/src/main/java/com/dsh/account/dto/TCoursePackagePayment1.java b/cloud-server-account/src/main/java/com/dsh/account/dto/TCoursePackagePayment1.java new file mode 100644 index 0000000..30b6e89 --- /dev/null +++ b/cloud-server-account/src/main/java/com/dsh/account/dto/TCoursePackagePayment1.java @@ -0,0 +1,163 @@ +package com.dsh.account.dto; + +import com.baomidou.mybatisplus.annotation.*; +import com.baomidou.mybatisplus.extension.activerecord.Model; +import com.dsh.account.feignclient.course.model.TCoursePackagePayment; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +import java.math.BigDecimal; +import java.util.Date; + +/** + * <p> + * 用户课程包购买记录 + * </p> + * + * @author administrator + * @since 2023-06-14 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +@TableName("t_course_package_payment") +public class TCoursePackagePayment1 { + private static final long serialVersionUID = 1L; + + /** + * 主键 + */ + @TableId(value = "id", type = IdType.NONE) + @TableField(updateStrategy = FieldStrategy.NEVER) + private Long id; + /** + * 业务编号 + */ + @TableField("code") + private String code; + /** + * 用户id + */ + @TableField("appUserId") + private Integer appUserId; + /** + * 学员id + */ + @TableField("studentId") + private Integer studentId; + /** + * 课包id + */ + @TableField("coursePackageId") + private Integer coursePackageId; + /** + * 支付方式(1=微信,2=支付宝,3=玩湃币,4=积分,5=积分+微信,6=积分+支付宝) + */ + @TableField("payType") + private Integer payType; + /** + * 课时数 + */ + @TableField("classHours") + private Integer classHours; + /** + * 原价 + */ + @TableField("originalPrice") + private Double originalPrice; + /** + * 优惠券id + */ + @TableField("userCouponId") + private Long userCouponId; + /** + * 现金支付价格 + */ + @TableField("cashPayment") + private BigDecimal cashPayment; + /** + * 玩湃币价格/积分 + */ + @TableField("playPaiCoin") + private Integer playPaiCoin; + /** + * 总课时 + */ + @TableField("totalClassHours") + private Integer totalClassHours; + /** + * 剩余课时 + */ + @TableField("laveClassHours") + private Integer laveClassHours; + /** + * 缺课次数 + */ + @TableField("absencesNumber") + private Integer absencesNumber; + /** + * 退课课时 + */ + @TableField(exist = false) + private Integer dropoutsNumber; + /** + * 支付用户类型(1=用户,2=管理员) + */ + @TableField("payUserType") + private Integer payUserType; + /** + * 支付状态(1=待支付,2=已支付) + */ + @TableField("payStatus") + private Integer payStatus; + /** + * 第三方支付流水号 + */ + @TableField("orderNumber") + private String orderNumber; + /** + * 支付用户id + */ + @TableField("payUserId") + private Integer payUserId; + /** + * 课程状态(1=正常,2=已退课) + */ + @TableField("status") + private Integer status; + /** + * 退课时间 + */ + @TableField("withdrawalTime") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + private Date withdrawalTime; + /** + * 退课凭证 + */ + @TableField("certificate") + private String certificate; + /** + * 状态(1=正常,2=冻结,3=删除) + */ + @TableField("state") + private Integer state; + /** + * 添加时间 + */ + @TableField("insertTime") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + private Date insertTime; + + + @TableField("useTime") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + private Date useTime; + + /** + * 平台手动支付时使用 + */ + @TableField("payUserName") + private String payUserName; +} diff --git a/cloud-server-account/src/main/java/com/dsh/account/entity/GiftSearchDto.java b/cloud-server-account/src/main/java/com/dsh/account/entity/GiftSearchDto.java index 712302d..21b1b1a 100644 --- a/cloud-server-account/src/main/java/com/dsh/account/entity/GiftSearchDto.java +++ b/cloud-server-account/src/main/java/com/dsh/account/entity/GiftSearchDto.java @@ -7,5 +7,5 @@ public class GiftSearchDto { String name; String phone; - Integer id; + Long id; } diff --git a/cloud-server-account/src/main/java/com/dsh/account/feignclient/course/CoursePaymentClient.java b/cloud-server-account/src/main/java/com/dsh/account/feignclient/course/CoursePaymentClient.java index d035236..18393df 100644 --- a/cloud-server-account/src/main/java/com/dsh/account/feignclient/course/CoursePaymentClient.java +++ b/cloud-server-account/src/main/java/com/dsh/account/feignclient/course/CoursePaymentClient.java @@ -1,5 +1,6 @@ package com.dsh.account.feignclient.course; +import com.dsh.account.dto.TCoursePackagePayment1; import com.dsh.account.feignclient.competition.model.BillingDataRequestVo; import com.dsh.account.feignclient.course.model.*; import com.dsh.account.model.BillingRequest; @@ -50,7 +51,11 @@ @PostMapping("/base/coursePack/getCoursePackagePaymentById") - public TCoursePackagePayment getCoursePackagePaymentById(@RequestBody Integer id); + public TCoursePackagePayment getCoursePackagePaymentById(@RequestBody Long id); + + + @PostMapping("/base/coursePack/getCoursePackagePaymentById") + public TCoursePackagePayment1 getCoursePackagePaymentById1(@RequestBody Long id); @PostMapping("/base/coursePack/updatePaymentCoursePackage") void updatePaymentCoursePackage(@RequestBody TCoursePackagePayment coursePackagePayment); diff --git a/cloud-server-course/src/main/java/com/dsh/course/controller/CoursePackagePaymentController.java b/cloud-server-course/src/main/java/com/dsh/course/controller/CoursePackagePaymentController.java index f2c8f54..55722f8 100644 --- a/cloud-server-course/src/main/java/com/dsh/course/controller/CoursePackagePaymentController.java +++ b/cloud-server-course/src/main/java/com/dsh/course/controller/CoursePackagePaymentController.java @@ -1144,9 +1144,13 @@ @PostMapping("/base/coursePack/getCoursePackagePaymentById") - public TCoursePackagePayment getCoursePackagePaymentById(@RequestBody Integer id){ - return packagePaymentService.getById(id); + public TCoursePackagePayment getCoursePackagePaymentById(@RequestBody Long id){ + TCoursePackagePayment byId = packagePaymentService.getById(id); + System.out.println("======byId=========="+byId); + return byId; } + + @PostMapping("/base/coursePack/delPaymentCoursePackage") public boolean delPaymentCoursePackage(@RequestBody Integer payId){ return packagePaymentService.removeById(payId); diff --git a/cloud-server-course/src/main/java/com/dsh/course/controller/CourseStudentController.java b/cloud-server-course/src/main/java/com/dsh/course/controller/CourseStudentController.java index 2bd56b6..8433f71 100644 --- a/cloud-server-course/src/main/java/com/dsh/course/controller/CourseStudentController.java +++ b/cloud-server-course/src/main/java/com/dsh/course/controller/CourseStudentController.java @@ -107,7 +107,9 @@ @ResponseBody public List<SelectDto> getSelect(@RequestParam("payId")Long payId){ - List<Integer> studentIds = paymentService.getStudentIds(payId); + TCoursePackagePayment byId = paymentService.getById(payId); + + List<Integer> studentIds = paymentService.getStudentIds(payId,byId.getCoursePackageId(),byId.getAppUserId()); System.out.println("=========studentIds=================>"+studentIds); if (studentIds.size()>0){ @@ -371,7 +373,13 @@ counsumService.save(courseCounsum1); }else { - + CourseCounsum courseCounsum = new CourseCounsum(); + courseCounsum.setInsertTime(new Date()); + courseCounsum.setReason("赠课"); + courseCounsum.setNum(orinPay.getLaveClassHours()); + courseCounsum.setChangeType(0); + courseCounsum.setPaymentId(orinPay.getId()); + counsumService.save(courseCounsum); orinPay.setTotalClassHours(0); @@ -381,13 +389,7 @@ 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); + diff --git a/cloud-server-course/src/main/java/com/dsh/course/entity/dto/TCoursePackagePayment1.java b/cloud-server-course/src/main/java/com/dsh/course/entity/dto/TCoursePackagePayment1.java new file mode 100644 index 0000000..38e0806 --- /dev/null +++ b/cloud-server-course/src/main/java/com/dsh/course/entity/dto/TCoursePackagePayment1.java @@ -0,0 +1,100 @@ +package com.dsh.course.entity.dto; + +import lombok.Data; + +import java.math.BigDecimal; +import java.util.Date; + +@Data +public class TCoursePackagePayment1 { + + /** + * 主键 + */ + private Integer id; + /** + * 用户id + */ + private Integer appUserId; + /** + * 学员id + */ + private Integer studentId; + /** + * 课包id + */ + private Integer coursePackageId; + /** + * 支付方式(1=微信,2=支付宝,3=玩湃币,4=积分,5=积分+微信,6=积分+支付宝) + */ + private Integer payType; + /** + * 课时数 + */ + private Integer classHours; + /** + * 现金支付价格 + */ + private BigDecimal cashPayment; + /** + * 玩湃币价格/积分 + */ + private Integer playPaiCoin; + /** + * 总课时 + */ + private Integer totalClassHours; + /** + * 剩余课时 + */ + private Integer laveClassHours; + /** + * 缺课次数 + */ + private Integer absencesNumber; + /** + * 支付用户类型(1=用户,2=管理员) + */ + private Integer payUserType; + /** + * 支付状态(1=待支付,2=已支付) + */ + private Integer payStatus; + /** + * 第三方支付流水号 + */ + private String orderNumber; + /** + * 支付用户id + */ + private Integer payUserId; + /** + * 课程状态(1=正常,2=已退课) + */ + private Integer status; + /** + * 退课时间 + */ + private Date withdrawalTime; + /** + * 退课凭证 + */ + private String certificate; + /** + * 状态(1=正常,2=冻结,3=删除) + */ + private Integer state; + /** + * 添加时间 + */ + private Date insertTime; + /** + * 业务编号 + */ + private String code; + /** + * 原价 + */ + private Double originalPrice; + +} diff --git a/cloud-server-course/src/main/java/com/dsh/course/mapper/TCoursePackagePaymentMapper.java b/cloud-server-course/src/main/java/com/dsh/course/mapper/TCoursePackagePaymentMapper.java index 6cf9d59..de5d28d 100644 --- a/cloud-server-course/src/main/java/com/dsh/course/mapper/TCoursePackagePaymentMapper.java +++ b/cloud-server-course/src/main/java/com/dsh/course/mapper/TCoursePackagePaymentMapper.java @@ -5,6 +5,7 @@ import com.dsh.course.entity.TCoursePackagePayment; import com.dsh.course.model.QueryRegistrationRecord; import com.dsh.course.model.BillingRequest; +import io.swagger.models.auth.In; import org.apache.ibatis.annotations.Param; import java.util.Date; @@ -61,7 +62,7 @@ void updateUseTime(@Param("id")Long id, @Param("date") Date date); - List<Integer> getStudentIds(@Param("id")Long payId); + List<Integer> getStudentIds(@Param("id")Long payId,@Param("classId")Integer classId,@Param("appId")Integer appId); boolean updateHoursById(@Param("id") Long id, @Param("i") int i); } diff --git a/cloud-server-course/src/main/java/com/dsh/course/service/TCoursePackagePaymentService.java b/cloud-server-course/src/main/java/com/dsh/course/service/TCoursePackagePaymentService.java index f017ec9..8e5d9f0 100644 --- a/cloud-server-course/src/main/java/com/dsh/course/service/TCoursePackagePaymentService.java +++ b/cloud-server-course/src/main/java/com/dsh/course/service/TCoursePackagePaymentService.java @@ -10,6 +10,7 @@ import com.dsh.course.model.vo.request.*; import com.dsh.course.model.vo.response.*; import com.dsh.course.util.ResultUtil; +import io.swagger.models.auth.In; import java.util.Date; import java.util.List; @@ -119,7 +120,7 @@ void updateUseTime(Long id, Date date); - List<Integer> getStudentIds(Long payId); + List<Integer> getStudentIds(Long payId,Integer classId,Integer appId); boolean updateHoursById(TCoursePackagePayment byId, int i); diff --git a/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackagePaymentServiceImpl.java b/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackagePaymentServiceImpl.java index 57f34a3..bd53a3d 100644 --- a/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackagePaymentServiceImpl.java +++ b/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackagePaymentServiceImpl.java @@ -34,6 +34,7 @@ import com.dsh.course.util.*; import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.ObjectMapper; +import io.swagger.models.auth.In; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.HttpHeaders; import org.springframework.http.MediaType; @@ -1039,8 +1040,8 @@ } @Override - public List<Integer> getStudentIds(Long payId) { - return this.baseMapper.getStudentIds(payId); + public List<Integer> getStudentIds(Long payId, Integer classId, Integer appId) { + return this.baseMapper.getStudentIds(payId,classId,appId); } @Override diff --git a/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackageServiceImpl.java b/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackageServiceImpl.java index ee64ebb..cf2a792 100644 --- a/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackageServiceImpl.java +++ b/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackageServiceImpl.java @@ -1215,74 +1215,76 @@ try { coursePackage.setAuditStatus(2); this.baseMapper.insert(coursePackage); - //生成排课数据 - SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); - SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); - Date date = sdf1.parse(sdf.format(new Date()) + " 00:00:00"); - List<String> list = Arrays.asList(coursePackage.getClassWeeks().split(";")); - String value = coursePackage.getClassStartTime(); - String value1 = coursePackage.getClassEndTime().trim(); - String[] star = value.split(","); - String[] end = value1.split(","); + if (coursePackage.getClassStartTime()!=null&&coursePackage.getClassStartTime()!="") { + //生成排课数据 + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); + SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + Date date = sdf1.parse(sdf.format(new Date()) + " 00:00:00"); + List<String> list = Arrays.asList(coursePackage.getClassWeeks().split(";")); + String value = coursePackage.getClassStartTime(); + String value1 = coursePackage.getClassEndTime().trim(); - for (int i = 0; i < star.length; i++) { + String[] star = value.split(","); + String[] end = value1.split(","); + + for (int i = 0; i < star.length; i++) { // int index = star[i].indexOf(","); // // // String result = value.substring(0, index).trim(); - String classStartTime = star[i]; - String[] split = classStartTime.split(":"); + String classStartTime = star[i]; + String[] split = classStartTime.split(":"); // String value1 = en; - int index1 = value1.indexOf(","); + int index1 = value1.indexOf(","); // String result1 = value.substring(0, index1).trim(); - String classEndTime = end[i]; - String[] split1 = classEndTime.split(":"); - Calendar s = Calendar.getInstance(); - s.setTime(date); - s.set(Calendar.DAY_OF_YEAR, s.get(Calendar.DAY_OF_YEAR) + 1); - s.set(Calendar.HOUR_OF_DAY, Integer.valueOf(split[0])); - s.set(Calendar.MINUTE, Integer.valueOf(split[1])); - s.set(Calendar.SECOND, 0); - - Calendar e = Calendar.getInstance(); - e.setTime(date); - e.set(Calendar.DAY_OF_YEAR, s.get(Calendar.DAY_OF_YEAR) + 13); - long timeInMillis = e.getTimeInMillis(); - - while (true){ - int w = s.get(Calendar.DAY_OF_WEEK); - WeekEnum weekEnum = WeekEnum.getWeekEnum(w); - if(list.contains(weekEnum.getChineseName())){ - Calendar classDate = Calendar.getInstance(); - classDate.setTime(s.getTime()); - classDate.set(Calendar.HOUR_OF_DAY, Integer.valueOf(split[0])); - classDate.set(Calendar.MINUTE, Integer.valueOf(split[1])); - classDate.set(Calendar.SECOND, 0); - - Calendar endDate = Calendar.getInstance(); - endDate.setTime(s.getTime()); - endDate.set(Calendar.HOUR_OF_DAY, Integer.valueOf(split1[0])); - endDate.set(Calendar.MINUTE, Integer.valueOf(split1[1])); - endDate.set(Calendar.SECOND, 0); - - CoursePackageScheduling coursePackageScheduling = new CoursePackageScheduling(); - coursePackageScheduling.setCoursePackageId(coursePackage.getId()); - coursePackageScheduling.setClassDate(classDate.getTime()); - coursePackageScheduling.setEndDate(endDate.getTime()); - coursePackageScheduling.setStatus(1); - coursePackageSchedulingService.save(coursePackageScheduling); - } + String classEndTime = end[i]; + String[] split1 = classEndTime.split(":"); + Calendar s = Calendar.getInstance(); + s.setTime(date); s.set(Calendar.DAY_OF_YEAR, s.get(Calendar.DAY_OF_YEAR) + 1); - if(s.getTimeInMillis() > timeInMillis){ - break; + s.set(Calendar.HOUR_OF_DAY, Integer.valueOf(split[0])); + s.set(Calendar.MINUTE, Integer.valueOf(split[1])); + s.set(Calendar.SECOND, 0); + + Calendar e = Calendar.getInstance(); + e.setTime(date); + e.set(Calendar.DAY_OF_YEAR, s.get(Calendar.DAY_OF_YEAR) + 13); + long timeInMillis = e.getTimeInMillis(); + + while (true) { + int w = s.get(Calendar.DAY_OF_WEEK); + WeekEnum weekEnum = WeekEnum.getWeekEnum(w); + if (list.contains(weekEnum.getChineseName())) { + Calendar classDate = Calendar.getInstance(); + classDate.setTime(s.getTime()); + classDate.set(Calendar.HOUR_OF_DAY, Integer.valueOf(split[0])); + classDate.set(Calendar.MINUTE, Integer.valueOf(split[1])); + classDate.set(Calendar.SECOND, 0); + + Calendar endDate = Calendar.getInstance(); + endDate.setTime(s.getTime()); + endDate.set(Calendar.HOUR_OF_DAY, Integer.valueOf(split1[0])); + endDate.set(Calendar.MINUTE, Integer.valueOf(split1[1])); + endDate.set(Calendar.SECOND, 0); + + CoursePackageScheduling coursePackageScheduling = new CoursePackageScheduling(); + coursePackageScheduling.setCoursePackageId(coursePackage.getId()); + coursePackageScheduling.setClassDate(classDate.getTime()); + coursePackageScheduling.setEndDate(endDate.getTime()); + coursePackageScheduling.setStatus(1); + coursePackageSchedulingService.save(coursePackageScheduling); + } + s.set(Calendar.DAY_OF_YEAR, s.get(Calendar.DAY_OF_YEAR) + 1); + if (s.getTimeInMillis() > timeInMillis) { + break; + } } + } } - - return coursePackage.getId(); }catch (Exception e){ diff --git a/cloud-server-course/src/main/resources/mapper/TCoursePackagePaymentMapper.xml b/cloud-server-course/src/main/resources/mapper/TCoursePackagePaymentMapper.xml index 74a7466..0da6c9e 100644 --- a/cloud-server-course/src/main/resources/mapper/TCoursePackagePaymentMapper.xml +++ b/cloud-server-course/src/main/resources/mapper/TCoursePackagePaymentMapper.xml @@ -132,15 +132,7 @@ <select id="getStudentIds" resultType="java.lang.Integer"> SELECT studentId FROM t_course_package_payment - WHERE appUserId = ( - SELECT appUserId - FROM t_course_package_payment - WHERE id = #{id} - ) AND id != #{id} and coursePackageId=( - SELECT coursePackageId - FROM t_course_package_payment - WHERE id = #{id} - ) + WHERE appUserId = #{appId} AND id != #{id} and coursePackageId=#{classId} </select> diff --git a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCoursePackageController.java b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCoursePackageController.java index 9337926..b29cf19 100644 --- a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCoursePackageController.java +++ b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCoursePackageController.java @@ -470,7 +470,39 @@ model.addAttribute("times", strings); model.addAttribute("counts", counts); + return PREFIX + "classRecord.html"; + } + + /** + * 假期跳转到上课记录列表页 + * @param model + * @param id + * @return + */ + @GetMapping("/openClassRecord1") + public String openClassRecord1(Model model, Integer id){ + TCoursePackage tCoursePackage = coursePackageClient.queryById(id); + String[] start = tCoursePackage.getClassStartTime().split(","); + String[] end = tCoursePackage.getClassEndTime().split(","); + Integer counts = packagePaymentClient.queryByClassId(id); + + + List<String> strings = new ArrayList<>(); + for (int i = 0; i <start.length ; i++) { + String outTime = start[i] +"-" +end[0]; + strings.add(outTime); + } + + TStore store = storeService.getById(tCoursePackage.getStoreId()); + Coach coach = coachClient.queryCoachById(tCoursePackage.getCoachId()); + model.addAttribute("item", tCoursePackage); + model.addAttribute("store", store); + model.addAttribute("coach", coach); + model.addAttribute("times", strings); + model.addAttribute("counts", counts); + + return PREFIX + "classRecord2.html"; } @@ -692,8 +724,9 @@ String jsonString = jsonArray.getString(i); String[] split = jsonString.split(" - "); first.add(split[0]); - second.add(split[1]); - + if (split.length>1) { + second.add(split[1]); + } } String firstString = String.join(",",first); String secondString = String.join(",",second); @@ -944,7 +977,7 @@ @ResponseBody @PostMapping("/makeUpMissedLessons") public ResultUtil makeUpMissedLessons(Long id){ - System.out.println("==========coursePackagePaymentId======"+id); + System.out.println("==========coursePackage补课PaymentId======"+id); return coursePackageService.makeUpMissedLessons(id); } diff --git a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TShopController.java b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TShopController.java index 3598333..84bd171 100644 --- a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TShopController.java +++ b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TShopController.java @@ -127,6 +127,7 @@ @RequestMapping("/tShop_update/{id}") public String tCityUpdate(@PathVariable Integer id, Model model) { TStore byId = storeService.getById(id); + System.out.println("======byId========="+byId); model.addAttribute("item",byId); List<TCity> list = cityService.list(new LambdaQueryWrapper<TCity>().eq(TCity::getParentId, 0)); @@ -137,10 +138,13 @@ List<TOperatorCity> list3 = operatorCityService.list(new LambdaQueryWrapper<TOperatorCity>().eq(TOperatorCity::getPid, one.getId()).eq(TOperatorCity::getType, 2)); if(list3.size()>0){ model.addAttribute("list1",list3); + System.out.println("===list3======="+list3); + }else { TCity one1 = cityService.getOne(new LambdaQueryWrapper<TCity>().eq(TCity::getCode, byId.getProvinceCode())); List<TCity> list1 = cityService.list(new LambdaQueryWrapper<TCity>().eq(TCity::getParentId,one1.getId())); model.addAttribute("list1",list1); + System.out.println("===list1======="+list1); } CityListQuery cityListQuery = new CityListQuery(); cityListQuery.setOffset(1); diff --git a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/system/TStudentController.java b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/system/TStudentController.java index 7ac3954..4af6710 100644 --- a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/system/TStudentController.java +++ b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/system/TStudentController.java @@ -194,6 +194,9 @@ payment.setId(Long.valueOf(tCoursePackage.getId())); BigDecimal cashPayment = payment.getCashPayment(); + if (cashPayment==null){ + cashPayment = BigDecimal.ZERO; + } Integer totalClassHours = payment.getTotalClassHours(); BigDecimal result = new BigDecimal(0); if (totalClassHours!=0) { diff --git a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/dto/GiftSearchDto.java b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/dto/GiftSearchDto.java index 61424c4..505f15b 100644 --- a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/dto/GiftSearchDto.java +++ b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/dto/GiftSearchDto.java @@ -7,5 +7,5 @@ public class GiftSearchDto { String name; String phone; - Integer id; + Long id; } diff --git a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/dto/SelectDto.java b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/dto/SelectDto.java index 0916ff1..26908f5 100644 --- a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/dto/SelectDto.java +++ b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/model/dto/SelectDto.java @@ -4,6 +4,6 @@ @Data public class SelectDto { - Integer id; + Long id; String value; } diff --git a/cloud-server-management/src/main/webapp/WEB-INF/view/system/coursePackage/classRecord.html b/cloud-server-management/src/main/webapp/WEB-INF/view/system/coursePackage/classRecord.html index 38673a9..7e6c1c8 100644 --- a/cloud-server-management/src/main/webapp/WEB-INF/view/system/coursePackage/classRecord.html +++ b/cloud-server-management/src/main/webapp/WEB-INF/view/system/coursePackage/classRecord.html @@ -46,7 +46,7 @@ <#button name="发布课后练习" icon="fa-refresh" clickFun="ClassRecord.afterClassExercises()" space="true"/> <#button name="上传消课记录" icon="fa-refresh" clickFun="ClassRecord.cancellationRecord(${item.codeTime})" space="true"/> <#button name="查看消课记录" icon="fa-refresh" clickFun="ClassRecord.lookCancellationRecord()" space="true"/> - <#button name="手动预约" icon="fa-refresh" clickFun="ClassRecord.manualReservation()" space="true"/> +<!-- <#button name="手动预约" icon="fa-refresh" clickFun="ClassRecord.manualReservation()" space="true"/>--> </div> <#table id="managerTable"/> </div> diff --git a/cloud-server-management/src/main/webapp/WEB-INF/view/system/coursePackage/classRecord2.html b/cloud-server-management/src/main/webapp/WEB-INF/view/system/coursePackage/classRecord2.html new file mode 100644 index 0000000..f400693 --- /dev/null +++ b/cloud-server-management/src/main/webapp/WEB-INF/view/system/coursePackage/classRecord2.html @@ -0,0 +1,68 @@ +@layout("/common/_container.html"){ +<link rel="stylesheet" href="${ctxPath}/layui/css/layui.css" media="all"> +<div class="row"> + <div class="col-sm-12"> + <div class="ibox float-e-margins"> + <div class="ibox-content"> + <div class="row row-lg"> + <div class="col-sm-12"> + <div class="row"> + <h3>课包信息</h3> + <input type="hidden" id="id" value="${item.id}"> + <input type="hidden" id="codeTime" value="${item.codeTime}"> + + <div class="form-group" style="height: 10px;"> + <label class="col-sm-1 control-label" style="text-align: right;">所属门店:</label> + <span class="col-sm-2" style="text-align: left;">${store.name}</span> + </div> + <div class="form-group" style="height: 10px;"> + <label class="col-sm-1 control-label" style="text-align: right;">课包名称:</label> + <span class="col-sm-1" style="text-align: left;" id="name">${item.name}</span> + </div> + <div class="form-group" style="height: 10px;"> + <label class="col-sm-1 control-label" style="text-align: right;">授课教师:</label> + <span class="col-sm-2" style="text-align: left;">${coach.name!}</span> + </div> + <div class="form-group" style="height: 10px;"> + <label class="col-sm-1 control-label" style="text-align: right;">已报名学员:</label> + <span class="col-sm-2" style="text-align: left;">${counts}</span> + </div> + <div class="form-group" style="height: 10px;"> + <label class="col-sm-1 control-label" style="text-align: right;">上课时间:</label> + <span class="col-sm-2" style="text-align: left;">${item.classWeeks}</span> + </div> + + @for(time in times){ + <div class="form-group" style="height: 10px;"> + <label class="col-sm-1 control-label" style="text-align: right;"></label> + <span class="col-sm-2" style="text-align: left;">${time}</span> + </div> + @} + + </div> + <div class="hidden-xs" id="managerTableToolbar" role="group"> + <#button name="查看学员" icon="fa-plus" clickFun="ClassRecord.classRecord()"/> + <#button name="取消本次" icon="fa-edit" clickFun="ClassRecord.cancelClassSchedule()" space="true"/> + <#button name="发布课后练习" icon="fa-refresh" clickFun="ClassRecord.afterClassExercises()" space="true"/> + <#button name="上传消课记录" icon="fa-refresh" clickFun="ClassRecord.cancellationRecord(${item.codeTime})" space="true"/> + <#button name="查看消课记录" icon="fa-refresh" clickFun="ClassRecord.lookCancellationRecord()" space="true"/> +<!-- <#button name="手动预约" icon="fa-refresh" clickFun="ClassRecord.manualReservation()" space="true"/>--> + </div> + <#table id="managerTable"/> + </div> + </div> + </div> + </div> + </div> +</div> +<script src="${ctxPath}/modular/system/coursePackage/classRecord2.js"></script> +<script src="${ctxPath}/layui/layui.js" charset="utf-8"></script> +<script> + laydate.render({ + elem: '#beginTime' + }); + laydate.render({ + elem: '#endTime' + }); +</script> +@} diff --git a/cloud-server-management/src/main/webapp/WEB-INF/view/system/coursePackage/registrationRecord.html b/cloud-server-management/src/main/webapp/WEB-INF/view/system/coursePackage/registrationRecord.html index 0c3bf46..7c08efb 100644 --- a/cloud-server-management/src/main/webapp/WEB-INF/view/system/coursePackage/registrationRecord.html +++ b/cloud-server-management/src/main/webapp/WEB-INF/view/system/coursePackage/registrationRecord.html @@ -7,7 +7,7 @@ <div class="row row-lg"> <div class="col-sm-12"> <div class="row"> - <input type="text" id="type" value="${type}"> + <input type="hidden" id="type" value="${type}"> <input type="hidden" id="id" value="${item.id}"> <input type="hidden" id="name" value="${item.name}"> <div class="col-lg-10 col-sm-9"> diff --git a/cloud-server-management/src/main/webapp/WEB-INF/view/system/coursePackage/registrationRecord2.html b/cloud-server-management/src/main/webapp/WEB-INF/view/system/coursePackage/registrationRecord2.html index 4a22f03..5b260a5 100644 --- a/cloud-server-management/src/main/webapp/WEB-INF/view/system/coursePackage/registrationRecord2.html +++ b/cloud-server-management/src/main/webapp/WEB-INF/view/system/coursePackage/registrationRecord2.html @@ -7,7 +7,7 @@ <div class="row row-lg"> <div class="col-sm-12"> <div class="row"> - <input type="text" id="type" value="${type}"> + <input type="hidden" id="type" value="${type}"> <input type="hidden" id="id" value="${item.id}"> <input type="hidden" id="name" value="${item.name}"> <div class="col-lg-10 col-sm-9"> diff --git a/cloud-server-management/src/main/webapp/WEB-INF/view/system/coursePackage/registrationRecord3.html b/cloud-server-management/src/main/webapp/WEB-INF/view/system/coursePackage/registrationRecord3.html index 5f422d4..8b9a709 100644 --- a/cloud-server-management/src/main/webapp/WEB-INF/view/system/coursePackage/registrationRecord3.html +++ b/cloud-server-management/src/main/webapp/WEB-INF/view/system/coursePackage/registrationRecord3.html @@ -7,7 +7,7 @@ <div class="row row-lg"> <div class="col-sm-12"> <div class="row"> - <input type="text" id="type" value="${type}"> + <input type="hidden" id="type" value="${type}"> <input type="hidden" id="id" value="${item.id}"> <input type="hidden" id="name" value="${item.name}"> <div class="col-lg-10 col-sm-9"> diff --git a/cloud-server-management/src/main/webapp/WEB-INF/view/system/tStudent/tStudentEdit.html b/cloud-server-management/src/main/webapp/WEB-INF/view/system/tStudent/tStudentEdit.html index 229b1df..7f04db7 100644 --- a/cloud-server-management/src/main/webapp/WEB-INF/view/system/tStudent/tStudentEdit.html +++ b/cloud-server-management/src/main/webapp/WEB-INF/view/system/tStudent/tStudentEdit.html @@ -1228,16 +1228,14 @@ "valueField": "id" } ], - "messages": { - }, + "messages": {}, "loadingConfig": { - "show": true + "show": false }, "api": { "url": "/tStudent/giftSelect", "method": "post", - "messages": { - }, + "messages": {}, "requestAdaptor": "", "adaptor": "", "dataType": "form-data", @@ -1246,7 +1244,8 @@ "phone": "$phone", "id": "$id" } - } + }, + "initFetch": false }, { "type": "input-text", @@ -1316,12 +1315,10 @@ "method": "post", "requestAdaptor": "", "adaptor": "", - "messages": { - }, + "messages": {}, "dataType": "form-data" }, - "actions": [ - ], + "actions": [], "onEvent": { "submitSucc": { "weight": 0, @@ -1341,8 +1338,7 @@ { "id": "u:59d68a32f7fd", "type": "container", - "body": [ - ], + "body": [], "style": { "position": "static", "display": "block" @@ -1354,8 +1350,7 @@ "showLoading": true, "className": "app-popover", "id": "u:552bd1b3464d", - "actions": [ - ], + "actions": [], "canAccessSuperData": false } } diff --git a/cloud-server-management/src/main/webapp/WEB-INF/view/system/tStudent/tStudentEditTTT.html b/cloud-server-management/src/main/webapp/WEB-INF/view/system/tStudent/tStudentEditTTT.html index b348230..d02be05 100644 --- a/cloud-server-management/src/main/webapp/WEB-INF/view/system/tStudent/tStudentEditTTT.html +++ b/cloud-server-management/src/main/webapp/WEB-INF/view/system/tStudent/tStudentEditTTT.html @@ -60,7 +60,8 @@ "name": "id", "id": "u:d038053014ca", "mode": "horizontal", - "size": "md" + "size": "md", + "hidden": true }, { "type": "input-text", @@ -68,7 +69,8 @@ "name": "ids", "id": "u:223b7f2a1a5b", "mode": "horizontal", - "size": "md" + "size": "md", + "hidden": true }, { "label": "换课课程:", diff --git a/cloud-server-management/src/main/webapp/static/modular/system/coursePackage/classRecord2.js b/cloud-server-management/src/main/webapp/static/modular/system/coursePackage/classRecord2.js new file mode 100644 index 0000000..fd03170 --- /dev/null +++ b/cloud-server-management/src/main/webapp/static/modular/system/coursePackage/classRecord2.js @@ -0,0 +1,440 @@ +/** + * 系统管理--用户管理的单例对象 + */ +let ClassRecord = { + id: "managerTable",//表格id + seItem: null, //选中的条目 + table: null, + layerIndex: -1, + courseList: null +}; +/** + * 初始化表格的列 + */ +ClassRecord.initColumn = function () { + let columns = [ + {field: 'selectItem', radio: true}, + {title: 'id', field: 'id', visible: false, align: 'center', valign: 'middle'}, + {title: '日期', field: 'classDate', align: 'center', valign: 'middle'}, + {title: '请假学员', field: 'registered', align: 'center', valign: 'middle'}, + {title: '实到学员', field: 'actualArrival', align: 'center', valign: 'middle', + formatter: function (v, row) { + if (row.absencesNumber === undefined) { + return 0; + } else { + return v; + } + } + }, + {title: '未到学员', field: 'nonArrival', align: 'center', valign: 'middle', + formatter: function (v, row) { + if (row.absencesNumber === undefined) { + return 0; + } else { + return v; + } + } + }, + {title: '课后练习', field: 'courseId', align: 'center', valign: 'middle', + formatter: function (v) { + if (typeof v === "undefined") { + return '未布置'; + } else { + return '已布置'; + } + } + }, + {title: '状态', field: 'status', align: 'center', valign: 'middle', + formatter: function (v) { + switch (v) { + case 1: + return '未开始'; + case 2: + return '已开始'; + case 3: + return '已结束'; + case 4: + return '已取消'; + } + } + }, + {title: '扣除课时', field: 'deductClassHour', align: 'center', valign: 'middle'}, + {title: '取消记录', field: 'absencesNumber', align: 'center', valign: 'middle', + formatter: function (v) { + if (typeof v === "undefined") { + return '未上传'; + } else { + return '已上传'; + } + } + }, + ]; + return columns; +}; + +/** + * 检查是否选中 + */ +ClassRecord.check = function () { + let selected = $('#' + this.id).bootstrapTable('getSelections'); + if (selected.length == 0) { + Feng.info("请先选中表格中的某一记录!"); + return false; + } else { + ClassRecord.seItem = selected[0]; + return true; + } +}; + + + +/** + * 点击修改按钮时 + * @param userId 管理员id + */ +ClassRecord.classRecord = function () { + if (this.check()) { + let index = layer.open({ + type: 2, + title: '查看学员', + area: ['100%', '100%'], //宽高 + fix: false, //不固定 + maxmin: true, + content: Feng.ctxPath + '/coursePackage/openCoursePackageStudent?id=' + this.seItem.id + }); + this.layerIndex = index; + } +}; + + + +/** + * 删除用户 + */ +ClassRecord.cancelClassSchedule = function () { + if (this.check()) { + let operation = function(){ + let ajax = new $ax(Feng.ctxPath + "/coursePackage/cancelClassSchedule", function (res) { + if(res.code == 200){ + Feng.success("取消成功!"); + ClassRecord.table.refresh(); + }else{ + Feng.error(res.msg); + } + }, function (data) { + Feng.error("取消失败!" + data.responseJSON.message + "!"); + }); + ajax.set("id", ClassRecord.seItem.id); + ajax.start(); + }; + + Feng.confirm("确定取消本次",operation); + } +}; + + + +ClassRecord.afterClassExercises = function () { + if (this.check()) { + var ajax = new $ax(Feng.ctxPath + "/course/queryCourseByType", function (data) { + ClassRecord.courseList = data; + let htmlStr = + '<div class="form-horizontal">' + + ' <div class="col-sm-11" style="padding: 20px;">' + + ' <div class="form-group">\n' + + ' <label class="col-sm-3 control-label">视频类型:</label>\n' + + ' <div class="col-sm-9" style="margin-top: 6px;">\n' + + ' <span>课后练习</span>' + + ' </div>\n' + + ' </div>' + + ' <div class="form-group">\n' + + ' <label class="col-sm-3 control-label">视频名称:</label>\n' + + ' <div class="col-sm-9">\n' + + ' <select class="form-control" id="courseId">' + + ' <option value="">请选择</option>'; + for (let i = 0; i < data.length; i++) { + htmlStr += '<option value="' + data[i].id + '">' + data[i].name + '</option>'; + } + htmlStr += ' </select>' + + ' </div>\n' + + ' </div>' + + ' <div class="form-group">\n' + + ' <label class="col-sm-3 control-label">视频封面:</label>\n' + + ' <div class="col-sm-9">\n' + + ' <img src="" style="height: 150px;" id="coverDrawing"/>' + + ' </div>\n' + + ' </div>' + + ' <div class="form-group">\n' + + ' <label class="col-sm-3 control-label">视频简介:</label>\n' + + ' <div class="col-sm-9">\n' + + ' <textarea class="form-control" id="introduce" style="height: 200px;"></textarea>' + + ' </div>\n' + + ' </div>' + + ' <div class="form-group">\n' + + ' <label class="col-sm-3 control-label">可获得积分:</label>\n' + + ' <div class="col-sm-9">\n' + + ' <input class="form-control" id="integral" type="number" min="0">' + + ' </div>\n' + + ' </div>' + + ' </div>' + + '</div>'; + layer.open({ + type: 1 + , title: '选择课程' + , area: ['50%', '90%'] + , offset: 'auto' //具体配置参考:http://www.layui.com/doc/modules/layer.html#offset + , id: 'layerDemo' //防止重复弹出cge + , content: htmlStr + , btn: ['保存', '关闭'] + , btnAlign: 'c' //按钮居中 + , shade: 0.5 //不显示遮罩 + , yes: function () { + let courseId = $('#courseId').val(); + let integral = $('#integral').val(); + if(null == courseId || '' == courseId){ + Feng.error("请选择有效的课程"); + return + } + if(null == integral || '' == integral){ + Feng.error("请输入有效的积分"); + return + } + let ajax = new $ax(Feng.ctxPath + "/coursePackage/afterClassExercises", function (res) { + if(res.code == 200){ + Feng.success("保存成功!"); + layer.closeAll(); + RegistrationRecord.table.refresh(); + }else{ + Feng.error(res.msg); + } + }, function (data) { + Feng.error("保存失败!" + data.responseJSON.message + "!"); + }); + ajax.set("id", ClassRecord.seItem.id); + ajax.set("courseId", courseId); + ajax.set("integral", integral); + ajax.start(); + }, + }); + + $('#courseId').change(function () { + let id = $(this).val(); + for (let i = 0; i < ClassRecord.courseList.length; i++) { + if(ClassRecord.courseList[i].id == id){ + $('#coverDrawing').attr("src", ClassRecord.courseList[i].coverDrawing); + $('#introduce').text(ClassRecord.courseList[i].introduce); + } + } + }) + + $('#courseId').val(ClassRecord.seItem.courseId); + $('#integral').val(ClassRecord.seItem.integral); + + }, function (data) { + Feng.error("获取失败!" + data.responseJSON.message + "!"); + }); + ajax.set('type', 1); + ajax.start(); + } +}; + + +ClassRecord.cancellationRecord = function(i){ + if(this.check()){ + let htmlStr = + + '<div class="form-horizontal">' + + ' <div class="col-sm-11" style="padding: 20px;">' + + ' <div class="form-group">\n' + + ' <label class="col-sm-2"></label>'+ + ' <label class="col-sm-8 control-label" style="text-align: left;">课程名称:' + $("#name").text() + '</label>\n' + + ' </div>' + + ' <div class="form-group">\n' + + ' <label class="col-sm-2"></label>'+ + ' <label class="col-sm-8 control-label" style="text-align: left;">*上传凭证(请上传小于5张图片):</label>\n' + + ' </div>' + + ' <div class="form-group">\n' + + ' <label class="col-sm-2"></label>'+ + ' <div class="col-sm-8" style="min-height: 200px;">\n' + + ' <div id="cancelClasses"></div>' + + ' <input type="file" id="file" style="display: none;"/>' + + ' <button onclick="uploadImgs()" style="width: 60px;padding: 10px; color: white;background-color: #0d8ddb;border-radius: 5px;border: none;bottom: 50%;position: absolute;"> 上传 </button>' + + ' </div>\n' + + ' </div>' + + ' </div>' + + '</div>'; + layer.open({ + type: 1 + , title: '上传消课记录' + , area: ['80%', '90%'] + , offset: 'auto' //具体配置参考:http://www.layui.com/doc/modules/layer.html#offset + , id: 'layerDemo' //防止重复弹出cge + , content: htmlStr + , btn: ['保存', '关闭'] + , btnAlign: 'c' //按钮居中 + , shade: 0.5 //不显示遮罩 + , yes: function () { + let cancelClasses = $('#cancelClasses').html(); + let deductClassHour = $('#deductClassHour').val(); + if(null == cancelClasses || '' == cancelClasses){ + Feng.error("请上传凭证图片"); + return + } + if(null == deductClassHour || '' == deductClassHour){ + Feng.error("请输入有效的扣除课时数"); + return + } + let div_array = $('#cancelClasses').find('div'); + let str = ''; + for (let i = 0; i < div_array.length; i++) { + let v = $($(div_array[i]).find('img')[0]).attr('src'); + str += v + ";"; + } + + let ajax = new $ax(Feng.ctxPath + "/coursePackage/cancellationRecord", function (res) { + if(res.code == 200){ + Feng.success("保存成功!"); + layer.closeAll(); + RegistrationRecord.table.refresh(); + }else{ + Feng.error(res.msg); + } + }, function (data) { + Feng.error("保存失败!" + data.responseJSON.message + "!"); + }); + ajax.set("id", ClassRecord.seItem.id); + ajax.set("cancelClasses", str.substring(0, str.length - 1)); + ajax.set("deductClassHour", deductClassHour); + ajax.start(); + }, + }); + + $('#file').on('change', function () { + var formData = new FormData() //创建一个forData + formData.append('file', $('#file')[0].files[0]) //把file添加进去 name命名为img + layer.load(); //上传loading + $.ajax({ + url: Feng.ctxPath + '/mgr/uploadImg', + data: formData, + type: "POST", + async: true, + cache: false, + contentType: false, + processData: false, + success: function(res) { + layer.closeAll('loading'); //关闭loading + $('#file').val(''); + $('#cancelClasses').append('' + + '<div style="float: left; margin: 10px; width: 200px;">' + + ' <i class="fa fa-close" style="font-size:24px;color: red;position: relative;top: 10px;right: -190px" onclick="removeImg(this)"></i>' + + ' <div style="width: 100%;"><img src="' + res + '" style="width: 100%;"/></div>' + + '</div>') + } + }) + }) + } +} + + +ClassRecord.lookCancellationRecord = function(){ + if(this.check()){ + if(ClassRecord.seItem.cancelClasses == '' || ClassRecord.seItem.cancelClasses == null){ + Feng.error("请先上传消课凭证"); + return + } + let imgs = ClassRecord.seItem.cancelClasses.split(";"); + let htmlStr = + '<div class="form-horizontal">' + + ' <div class="col-sm-11" style="padding: 20px;">' + + ' <div class="form-group">\n' + + ' <label class="col-sm-8 control-label">课程名称:' + $("#name").text() + '</label>\n' + + ' </div>' + + ' <div class="form-group">\n' + + ' <label class="col-sm-8 control-label">*上传凭证(请上传小于5张图片):</label>\n' + + ' </div>' + + ' <div class="form-group">\n' + + ' <div class="col-sm-8" style="min-height: 200px;">\n' + + ' <div id="cancelClasses">'; + + for (let i = 0; i < imgs.length; i++) { + htmlStr += '<div><img src="' + imgs[i] + '" style="height: 150px;"/></div> '; + } + + htmlStr += '</div>' + + ' </div>\n' + + ' </div>' + + ' <div class="form-group">\n' + + ' <label class="col-sm-3 control-label">扣除课时数:</label>\n' + + ' <div class="col-sm-9">\n' + + ' <input class="form-control" id="deductClassHour" value="' + ClassRecord.seItem.deductClassHour + '" type="number" min="0">' + + ' </div>\n' + + ' </div>' + + ' </div>' + + '</div>'; + layer.open({ + type: 1 + , title: '查看消课记录' + , area: ['50%', '90%'] + , offset: 'auto' //具体配置参考:http://www.layui.com/doc/modules/layer.html#offset + , id: 'layerDemo' //防止重复弹出cge + , content: htmlStr + , btnAlign: 'c' //按钮居中 + , shade: 0.5 //不显示遮罩 + , yes: function () { + }, + }); + } +} + +ClassRecord.manualReservation = function(){ + if(this.check()){ + let index = layer.open({ + type: 2, + title: '手动预约', + area: ['100%', '100%'], //宽高 + fix: false, //不固定 + maxmin: true, + content: Feng.ctxPath + '/coursePackage/openManualReservation?id=' + this.seItem.id + }); + this.layerIndex = index; + } +} + +function uploadImgs(){ + let num = $('#cancelClasses>div').length; + if(num >= 5){ + Feng.error("最多只能上传5张图片"); + return; + } + $('#file').click(); +} + + +function removeImg(e){ + $(e).parent('div').remove(); +} + + + + +ClassRecord.resetSearch = function () { + ClassRecord.search(); +} + +ClassRecord.search = function () { + let queryData = {}; + queryData['id'] = $('#id').val(); + ClassRecord.table.refresh({query: queryData}); +} + + +$(function () { + let defaultColunms = ClassRecord.initColumn(); + let table = new BSTable(ClassRecord.id, "/coursePackage/queryClassRecord", defaultColunms); + // 设置物理分页server(逻辑分页client) + table.setPaginationType("server"); + table.setQueryParams({ + id: $('#id').val() + }) + ClassRecord.table = table.init(); +}); diff --git a/cloud-server-management/src/main/webapp/static/modular/system/coursePackage/coursePackage_info.js b/cloud-server-management/src/main/webapp/static/modular/system/coursePackage/coursePackage_info.js index 454d17d..0ff0c09 100644 --- a/cloud-server-management/src/main/webapp/static/modular/system/coursePackage/coursePackage_info.js +++ b/cloud-server-management/src/main/webapp/static/modular/system/coursePackage/coursePackage_info.js @@ -119,22 +119,22 @@ Feng.error("授课教师不能为空"); return } - if(null == maxSubscribeNumber || '' == maxSubscribeNumber){ - Feng.error("最多预约人数不能为空"); - return - } + // if(null == maxSubscribeNumber || '' == maxSubscribeNumber){ + // Feng.error("最多预约人数不能为空"); + // return + // } // if(null == codeTime || '' == codeTime){ // Feng.error("扣除课时数不能为空不能为空"); // return // } - if(null == classStartTime || '' == classStartTime){ - Feng.error("上课时间不能为空"); - return - } - if(null == classWeeks || '' == classWeeks){ - Feng.error("上课时间不能为空"); - return - } + // if(null == classStartTime || '' == classStartTime){ + // Feng.error("上课时间不能为空"); + // return + // } + // if(null == classWeeks || '' == classWeeks){ + // Feng.error("上课时间不能为空"); + // return + // } classWeeks = classWeeks.substring(0, classWeeks.length - 1); if(null == coverDrawing || '' == coverDrawing){ @@ -276,22 +276,22 @@ Feng.error("授课教师不能为空"); return } - if(null == maxSubscribeNumber || '' == maxSubscribeNumber){ - Feng.error("最多预约人数不能为空"); - return - } + // if(null == maxSubscribeNumber || '' == maxSubscribeNumber){ + // Feng.error("最多预约人数不能为空"); + // return + // } // if(null == codeTime || '' == codeTime){ // Feng.error("扣除课时不能为空"); // return // } - if(null == classStartTime || '' == classStartTime){ - Feng.error("上课时间不能为空"); - return - } - if(null == classWeeks || '' == classWeeks){ - Feng.error("上课时间不能为空"); - return - } + // if(null == classStartTime || '' == classStartTime){ + // Feng.error("上课时间不能为空"); + // return + // } + // if(null == classWeeks || '' == classWeeks){ + // Feng.error("周不能为空"); + // return + // } classWeeks = classWeeks.substring(0, classWeeks.length - 1); if(null == coverDrawing || '' == coverDrawing){ diff --git a/cloud-server-management/src/main/webapp/static/modular/system/coursePackage/registrationRecord.js b/cloud-server-management/src/main/webapp/static/modular/system/coursePackage/registrationRecord.js index 991e711..11084e8 100644 --- a/cloud-server-management/src/main/webapp/static/modular/system/coursePackage/registrationRecord.js +++ b/cloud-server-management/src/main/webapp/static/modular/system/coursePackage/registrationRecord.js @@ -20,25 +20,42 @@ {title: '购课学员', field: 'studentName', align: 'center', valign: 'middle'}, {title: '报名时间', field: 'insertTime', align: 'center', valign: 'middle'}, {title: '总课时数', field: 'totalClassHours', align: 'center', valign: 'middle'}, - {title: '剩余课时数', field: 'laveClassHours', align: 'center', valign: 'middle',rowStyle: function(row, index) { - // 参数说明: - //row, 行,row.xxx,能获取某个字段的值 - //index,索引,第几行 - - // 逻辑判断 - // ..... - return {"background-color":'rgba(208,9,9,0.7)'}; + { + title: '剩余课时数', + field: 'laveClassHours', + align: 'center', + valign: 'middle', + formatter: function (value, row) { + if (value < 3) { + return '<div style="color: red;">' + value + '</div>'; + } else { + return value; + } } }, {title: '已上课时数', field: 'already', align: 'center', valign: 'middle'}, {title: '请假次数', field: 'absencesNumber', align: 'center', valign: 'middle'}, - {title: '状态', field: 'status', align: 'center', valign: 'middle', + { + title: '状态', + field: 'status', + align: 'center', + valign: 'middle', formatter: function (v) { switch (v) { case 1: return '正常'; case 2: - return '<a href="#" onclick="">已退课-查看凭证</a>'; + return '已退课'; + case 3: + return '换课中'; + case 4: + return '申请退费中'; + case 5: + return '已转移'; + case 6: + return '已赠课'; + default: + return ''; } } } @@ -51,8 +68,21 @@ */ RegistrationRecord.check = function () { let selected = $('#' + this.id).bootstrapTable('getSelections'); + if (selected.length > 1) { + Feng.info("只能选中表格中的一条记录!"); + return false; + } else { + RegistrationRecord.seItem = selected[0]; + RegistrationRecord.seItem1 = selected; + + return true; + } +}; + +RegistrationRecord.check1 = function () { + let selected = $('#' + this.id).bootstrapTable('getSelections'); if (selected.length == 0) { - Feng.info("请先选中表格中的某一记录!"); + Feng.info("必须选中表格中的某一记录!"); return false; } else { RegistrationRecord.seItem = selected[0]; @@ -79,7 +109,7 @@ RegistrationRecord.holiClass = function () { - if (this.check()) { + if (this.check1()) { var ids = RegistrationRecord.seItem1.map(function(item) { return item.id; }).join(","); @@ -215,8 +245,8 @@ RegistrationRecord.makeUpMissedLessons = function () { if (this.check()) { let operation = function(){ - let ajax = new $ax(Feng.ctxPath + "/coursePackage/makeUpMissedLessons", function () { - Feng.success("补课成功!"); + let ajax = new $ax(Feng.ctxPath + "/coursePackage/makeUpMissedLessons", function (data) { + Feng.success(data.msg); RegistrationRecord.table.refresh(); }, function (data) { Feng.error("补课失败!" + data.responseJSON.message + "!"); diff --git a/cloud-server-management/src/main/webapp/static/modular/system/coursePackage/registrationRecord2.js b/cloud-server-management/src/main/webapp/static/modular/system/coursePackage/registrationRecord2.js index e7b35e4..34e71bc 100644 --- a/cloud-server-management/src/main/webapp/static/modular/system/coursePackage/registrationRecord2.js +++ b/cloud-server-management/src/main/webapp/static/modular/system/coursePackage/registrationRecord2.js @@ -72,7 +72,7 @@ area: ['100%', '100%'], //宽高 fix: false, //不固定 maxmin: true, - content: Feng.ctxPath + '/coursePackage/openClassRecord?id=' + $('#id').val() + content: Feng.ctxPath + '/coursePackage/openClassRecord1?id=' + $('#id').val() }); this.layerIndex = index; }; -- Gitblit v1.7.1