From cf28c25d1a8e360ab328c5435d289c5cb9b414c1 Mon Sep 17 00:00:00 2001 From: nickchange <126672920+nickchange@users.noreply.github.com> Date: 星期六, 25 十一月 2023 21:06:34 +0800 Subject: [PATCH] 11.26 --- cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/system/TStudentController.java | 29 cloud-server-account/src/main/resources/mapper/TStudentMapper.xml | 5 cloud-server-course/src/main/java/com/dsh/course/controller/CoursePackagePaymentController.java | 336 +++++++----- cloud-server-course/src/main/resources/mapper/TCoursePackagePaymentMapper.xml | 2 cloud-server-other/src/main/java/com/dsh/other/service/IUserService.java | 23 cloud-server-other/src/main/java/com/dsh/other/controller/SiteController.java | 13 cloud-server-course/src/main/java/com/dsh/course/service/ICoursePackageOrderStudentService.java | 12 cloud-server-other/src/main/java/com/dsh/other/mapper/UserMapper.java | 24 cloud-server-other/src/main/java/com/dsh/other/model/User.java | 270 ++++++++++ cloud-server-course/src/main/java/com/dsh/course/entity/CoursePackageScheduling.java | 15 cloud-server-account/src/main/java/com/dsh/account/service/impl/EvaluateStudentServiceImpl.java | 17 cloud-server-account/src/main/java/com/dsh/account/feignclient/other/SiteClient.java | 3 cloud-server-account/src/main/java/com/dsh/account/service/impl/TStudentServiceImpl.java | 116 --- cloud-server-other/src/main/java/com/dsh/other/service/impl/UserServiceImpl.java | 29 + cloud-server-course/src/main/java/com/dsh/config/Sharding_jdbc/ShardingConfig.java | 3 cloud-server-account/src/main/java/com/dsh/account/entity/User.java | 270 ++++++++++ cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackagePaymentServiceImpl.java | 176 ++---- cloud-server-course/src/main/java/com/dsh/course/service/impl/CoursePackageOrderStudentServiceImpl.java | 189 ++++++ cloud-server-other/src/main/java/com/dsh/other/util/TaskUtil.java | 3 cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackageServiceImpl.java | 23 cloud-server-management/src/main/webapp/WEB-INF/view/system/tStudent/tStudentEdit.html | 6 21 files changed, 1,164 insertions(+), 400 deletions(-) diff --git a/cloud-server-account/src/main/java/com/dsh/account/entity/User.java b/cloud-server-account/src/main/java/com/dsh/account/entity/User.java new file mode 100644 index 0000000..12feb49 --- /dev/null +++ b/cloud-server-account/src/main/java/com/dsh/account/entity/User.java @@ -0,0 +1,270 @@ +package com.dsh.account.entity; + + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; + +import java.io.Serializable; +import java.util.Date; + +/** + * <p> + * 管理员表 + * </p> + * + * @author stylefeng + * @since 2017-07-11 + */ +@TableName("sys_user") +public class User extends Model<User> { + + private static final long serialVersionUID = 1L; + + /** + * 主键id + */ + @TableId(value="id", type= IdType.AUTO) + private Integer id; + /** + * 头像 + */ + private String avatar; + /** + * 账号 + */ + private String account; + /** + * 密码 + */ + private String password; + /** + * md5密码盐 + */ + private String salt; + /** + * 名字 + */ + private String name; + /** + * 生日 + */ + private Date birthday; + /** + * 性别(1:男 2:女) + */ + private Integer sex; + /** + * 电子邮件 + */ + private String email; + /** + * 电话 + */ + private String phone; + /** + * 角色id + */ + private String roleid; + /** + * 部门id + */ + private Integer deptid; + /** + * 状态(1:启用 2:冻结 3:删除) + */ + private Integer status; + /** + * 创建时间 + */ + private Date createtime; + /** + * 保留字段 + */ + private Integer version; + /** + * 对象类型(1=平台,2=城市管理员,3=门店) + */ + @TableField("objectType") + private Integer objectType; + /** + * objectId + */ + @TableField("objectId") + private Integer objectId; + @TableField("idCard") + private String idCard; + + public String getIdCard() { + return idCard; + } + + public void setIdCard(String idCard) { + this.idCard = idCard; + } + + public Integer getId() { + return id; + } + + public void setId(Integer id) { + this.id = id; + } + + public String getAvatar() { + return avatar; + } + + public void setAvatar(String avatar) { + this.avatar = avatar; + } + + public String getAccount() { + return account; + } + + public void setAccount(String account) { + this.account = account; + } + + public String getPassword() { + return password; + } + + + public void setPassword(String password) { + this.password = password; + } + + public String getSalt() { + return salt; + } + + public void setSalt(String salt) { + this.salt = salt; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public Date getBirthday() { + return birthday; + } + + public void setBirthday(Date birthday) { + this.birthday = birthday; + } + + public Integer getSex() { + return sex; + } + + public void setSex(Integer sex) { + this.sex = sex; + } + + public String getEmail() { + return email; + } + + public void setEmail(String email) { + this.email = email; + } + + public String getPhone() { + return phone; + } + + public void setPhone(String phone) { + this.phone = phone; + } + + public String getRoleid() { + return roleid; + } + + public void setRoleid(String roleid) { + this.roleid = roleid; + } + + public Integer getDeptid() { + return deptid; + } + + public void setDeptid(Integer deptid) { + this.deptid = deptid; + } + + public Integer getStatus() { + return status; + } + + public void setStatus(Integer status) { + this.status = status; + } + + public Date getCreatetime() { + return createtime; + } + + public void setCreatetime(Date createtime) { + this.createtime = createtime; + } + + public Integer getVersion() { + return version; + } + + public void setVersion(Integer version) { + this.version = version; + } + + public Integer getObjectType() { + return objectType; + } + + public void setObjectType(Integer objectType) { + this.objectType = objectType; + } + + public Integer getObjectId() { + return objectId; + } + + public void setObjectId(Integer objectId) { + this.objectId = objectId; + } + + @Override + protected Serializable pkVal() { + return this.id; + } + + @Override + public String toString() { + return "User{" + + "id=" + id + + ", avatar=" + avatar + + ", account=" + account + + ", password=" + password + + ", salt=" + salt + + ", name=" + name + + ", birthday=" + birthday + + ", sex=" + sex + + ", email=" + email + + ", phone=" + phone + + ", roleid=" + roleid + + ", deptid=" + deptid + + ", status=" + status + + ", createtime=" + createtime + + ", version=" + version + + "}"; + } +} diff --git a/cloud-server-account/src/main/java/com/dsh/account/feignclient/other/SiteClient.java b/cloud-server-account/src/main/java/com/dsh/account/feignclient/other/SiteClient.java index 59cb8b6..bb4f0a6 100644 --- a/cloud-server-account/src/main/java/com/dsh/account/feignclient/other/SiteClient.java +++ b/cloud-server-account/src/main/java/com/dsh/account/feignclient/other/SiteClient.java @@ -1,6 +1,7 @@ package com.dsh.account.feignclient.other; import com.dsh.account.entity.OperatorUser; +import com.dsh.account.entity.User; import com.dsh.account.feignclient.competition.model.BillingDataRequestVo; import com.dsh.account.feignclient.other.model.SiteBooking; import com.dsh.account.model.BillingRequestOfType; @@ -39,4 +40,6 @@ @PostMapping("/base/site/counts") Integer counts(Integer stuId); + @PostMapping("/base/site/queryUserName") + User queryUserName(Integer coachId); } diff --git a/cloud-server-account/src/main/java/com/dsh/account/service/impl/EvaluateStudentServiceImpl.java b/cloud-server-account/src/main/java/com/dsh/account/service/impl/EvaluateStudentServiceImpl.java index 29503c8..a1d0052 100644 --- a/cloud-server-account/src/main/java/com/dsh/account/service/impl/EvaluateStudentServiceImpl.java +++ b/cloud-server-account/src/main/java/com/dsh/account/service/impl/EvaluateStudentServiceImpl.java @@ -5,6 +5,8 @@ import com.dsh.account.entity.Coach; import com.dsh.account.entity.EvaluateStudent; import com.dsh.account.entity.TStudent; +import com.dsh.account.entity.User; +import com.dsh.account.feignclient.other.SiteClient; import com.dsh.account.mapper.EvaluateStudentMapper; import com.dsh.account.mapper.TStudentMapper; import com.dsh.account.model.vo.commentDetail.StuCommentsVo; @@ -38,24 +40,27 @@ @Autowired private CoachService coachService; - + @Resource + private SiteClient siteClient; @Override public List<StuCommentsVo> queryStuCommentsList(Integer stuId) { List<StuCommentsVo> stuCommentsVos = new ArrayList<>(); TStudent tStudent = tstuMapper.selectById(stuId); List<EvaluateStudent> evaluateStudents = this.list(new QueryWrapper<EvaluateStudent>() - .eq("studentId", stuId)); + .eq("studentId",stuId )); - if (evaluateStudents.size() > 0) { + if (evaluateStudents.size() > 0){ for (EvaluateStudent evaluateStudent : evaluateStudents) { StuCommentsVo vo = new StuCommentsVo(); - Coach coach = coachService.getById(evaluateStudent.getCoachId()); +// Coach coach = coachService.getById(evaluateStudent.getCoachId()); + User user = siteClient.queryUserName(evaluateStudent.getCoachId()); + // vo.setHeadImg(tStudent.getHeadImg()); - vo.setHeadImg(coach.getDiploma()); + vo.setHeadImg(user.getAvatar()); // vo.setStuName(tStudent.getName()); - vo.setStuName(coach.getName()); + vo.setStuName(user.getName()); vo.setComTime(format.format(tStudent.getInsertTime())); vo.setContents(evaluateStudent.getContent()); String imgs = evaluateStudent.getImgs(); diff --git a/cloud-server-account/src/main/java/com/dsh/account/service/impl/TStudentServiceImpl.java b/cloud-server-account/src/main/java/com/dsh/account/service/impl/TStudentServiceImpl.java index 870a43f..17ea143 100644 --- a/cloud-server-account/src/main/java/com/dsh/account/service/impl/TStudentServiceImpl.java +++ b/cloud-server-account/src/main/java/com/dsh/account/service/impl/TStudentServiceImpl.java @@ -234,107 +234,7 @@ @Override public List<PurchaseRecordVo> queryDeduRecordDetails(RecordTimeRequest timeRequest, Integer appUserId) { - List<PurchaseRecordVo> purchaseRecordVoList = new ArrayList<>(); - String time = timeRequest.getTime(); - List<PurchaseRecordVo> record1 = sessionNameClient.getRecord(timeRequest); - -// -// Date monthStart = null; -// Date monthEnd = null; -// if (StringUtils.hasText(time)) { -// monthStart = DateTimeHelper.getCurrentIdetMouthStart(time); -// monthEnd = DateTimeHelper.getCurrentIdeaMouthEnd(time); -// } else { -// monthStart = DateTimeHelper.getCurrentMouthStart(); -// monthEnd = DateTimeHelper.getCurrentMouthEnd(); -// } -// -// SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM"); -// Date startTime = DateTimeHelper.getCurrentIdetMouthStart(simpleDateFormat.format(monthStart)); -// Date endTime = DateTimeHelper.getCurrentIdeaMouthEnd(simpleDateFormat.format(monthEnd)); -// GetStuSourseList getStuSourseList = new GetStuSourseList(); -// getStuSourseList.setStartTime(startTime); -// getStuSourseList.setEndTime(endTime); -// getStuSourseList.setAppUserId(appUserId); -// // 报名赛事 -// List<PurchaseRecordVo> stuSourseList = dcttClient.getStuSourseList1(getStuSourseList); -// purchaseRecordVoList.addAll(stuSourseList); -// -// GetStuSessionList sessionList = new GetStuSessionList(); -// sessionList.setStartTime(startTime); -// sessionList.setEndTime(endTime); -// sessionList.setStuId(timeRequest.getStuId()); -// sessionList.setAppUserId(appUserId); -// List<PurchaseRecordVo> cancelCourseList = cancelcClient.getCancelCourseList(sessionList); -// -// purchaseRecordVoList.addAll(cancelCourseList); -// GetStuSessionList getStuSessionList = new GetStuSessionList(); -// getStuSessionList.setStartTime(startTime); -// getStuSessionList.setEndTime(endTime); -// getStuSessionList.setStuId(timeRequest.getStuId()); -// getStuSessionList.setAppUserId(appUserId); -// // 购买课包 -// List<PurchaseRecordVo> purchaseRecordVos = sessionNameClient.queryCourseDetails(getStuSessionList); -// purchaseRecordVoList.addAll(purchaseRecordVos); -// List<TAppUser> tAppUsers = tauMapper.selectList(new QueryWrapper<TAppUser>() -// .eq("referralUserId",appUserId ) -// .between("insertTime",startTime ,endTime)); -// if (ToolUtil.isNotEmpty(tAppUsers)){ -// List<Integer> userIds = tAppUsers.stream().map(TAppUser::getId).collect(Collectors.toList()); -// IntrduceOfUserRequest request = new IntrduceOfUserRequest(); -// request.setStartTime(startTime); -// request.setEndTime(endTime); -// request.setUserIds(userIds); -// // 介绍有礼 -// List<PurchaseRecordVo> purchaseRecordVos1 = idrClient.queryAppUsersofIntroduce(request); -// purchaseRecordVoList.addAll(purchaseRecordVos1); -// } -// -// LambdaQueryWrapper<TCourseInfoRecord> eq = new LambdaQueryWrapper<TCourseInfoRecord>().eq(TCourseInfoRecord::getUserId, appUserId); -// if(timeRequest.getType()!=null){ -// eq.eq(TCourseInfoRecord::getType,timeRequest.getType()); -// } -// if (timeRequest.getLessionId()!=null){ -// eq.eq(TCourseInfoRecord::getCourseId,timeRequest.getLessionId()); -// -// } -// // 2.0其他记录 -// List<TCourseInfoRecord> list = courseInfoRecordService.list(eq); -// List<PurchaseRecordVo> list1=new ArrayList<>(); -// for (TCourseInfoRecord tCourseInfoRecord : list) { -// PurchaseRecordVo purchaseRecordVo = new PurchaseRecordVo(); -// purchaseRecordVo.setPurchaseTime(new SimpleDateFormat("MM-dd HH:mm").format(tCourseInfoRecord.getTime())); -// purchaseRecordVo.setPurchaseType(tCourseInfoRecord.getName()); -// if(tCourseInfoRecord.getType()==1){ -// purchaseRecordVo.setPurchaseAmount("+"+tCourseInfoRecord.getNum()); -// }else { -// purchaseRecordVo.setPurchaseAmount("-"+tCourseInfoRecord.getNum()); -// } -// list1.add(purchaseRecordVo); -// } -// purchaseRecordVoList.addAll(list1); -// -// if (purchaseRecordVoList.size() > 0 ){ -// purchaseRecordVoList = purchaseRecordVoList.stream() -// .filter(record -> { -// String fieldValue = record.getPurchaseAmount(); -// if (ToolUtil.isNotEmpty(timeRequest.getType())){ -// switch (timeRequest.getType()){ -// case 2: -// return fieldValue != null && !fieldValue.isEmpty() && fieldValue.charAt(0) == '-'; -// case 1: -// return fieldValue != null && !fieldValue.isEmpty() && fieldValue.charAt(0) == '+'; -// default: -// break; -// } -// } -// return true; -// }) -// .collect(Collectors.toList()); -// } -// -// purchaseRecordVoList = dealDataOfTime(purchaseRecordVoList); return record1; } @@ -879,9 +779,23 @@ return this.baseMapper.getGiftSelect(giftSearchDto); } + @Resource + private SiteClient siteClient; + + @Override public List<Map<String, Object>> queryCom(Integer id) { - return this.baseMapper.queryCom(id); + List<Map<String, Object>> maps = this.baseMapper.queryCom(id); + for (Map<String, Object> map : maps) { + Integer coachId = (Integer) map.get("coachId"); + System.err.println("==============XXXXXXXXXXXX"+coachId); + if (coachId!=null) { + User name = siteClient.queryUserName(coachId); + map.put("name",name.getName()); + } + } + + return maps; } diff --git a/cloud-server-account/src/main/resources/mapper/TStudentMapper.xml b/cloud-server-account/src/main/resources/mapper/TStudentMapper.xml index 8b2cf72..078ea64 100644 --- a/cloud-server-account/src/main/resources/mapper/TStudentMapper.xml +++ b/cloud-server-account/src/main/resources/mapper/TStudentMapper.xml @@ -86,13 +86,10 @@ <select id="queryCom" resultType="java.util.Map"> SELECT - es.id as id ,tc.name,es.content,es.insertTime,es.imgs as images + es.id as id ,es.coachId,es.content,es.insertTime,es.imgs as images FROM t_evaluate_student es - - left JOIN t_student ts on es.studentId = ts.id - LEFT JOIN t_coach tc on es.coachId = tc.id where es.studentId = #{id} diff --git a/cloud-server-course/src/main/java/com/dsh/config/Sharding_jdbc/ShardingConfig.java b/cloud-server-course/src/main/java/com/dsh/config/Sharding_jdbc/ShardingConfig.java index df8dabe..cc0cc02 100644 --- a/cloud-server-course/src/main/java/com/dsh/config/Sharding_jdbc/ShardingConfig.java +++ b/cloud-server-course/src/main/java/com/dsh/config/Sharding_jdbc/ShardingConfig.java @@ -70,6 +70,7 @@ //分片规则配置 ShardingRuleConfiguration result1 = new ShardingRuleConfiguration(); + result1.getTables().add(getCoursePackagePaymentTableRuleConfiguration()); Properties props1 = new Properties(); props1.setProperty("algorithm-expression", "t_course_package_payment$->{appUserId % 5 + 1}"); @@ -107,7 +108,7 @@ //分片规则配置 result1.getTables().add(getCoursePackageOrderTableRuleConfiguration()); Properties props6 = new Properties(); - props1.setProperty("algorithm-expression", "t_course_package_order$->{appUserId % 5 + 1}"); + props6.setProperty("algorithm-expression", "t_course_package_order$->{appUserId % 5 + 1}"); result1.getShardingAlgorithms().put("t_course_package_order-inline", new AlgorithmConfiguration("INLINE", props6)); result1.getKeyGenerators().put("t_course_package_order-snowflake", new AlgorithmConfiguration("SNOWFLAKE", new Properties())); 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 fc98bb4..c0019bf 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 @@ -21,6 +21,7 @@ import com.dsh.course.feignclient.other.StoreClient; import com.dsh.course.feignclient.other.model.Store; import com.dsh.course.mapper.CoursePackageSchedulingMapper; +import com.dsh.course.mapper.TCoursePackageMapper; import com.dsh.course.model.*; import com.dsh.course.model.dto.DiscountJsonDto; import com.dsh.course.model.vo.CourseDetailRequest; @@ -28,6 +29,7 @@ import com.dsh.course.model.vo.request.*; import com.dsh.course.model.vo.response.*; import com.dsh.course.service.*; +import com.dsh.course.service.impl.CoursePackageOrderStudentServiceImpl; import com.dsh.course.util.*; import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.ObjectMapper; @@ -585,6 +587,8 @@ } } + @Autowired + private ICoursePackageOrderStudentService orderStudentService; /** * 课程名称列表 @@ -592,12 +596,12 @@ @PostMapping("/base/coursePack/sessionNames") public List<StuSessionDetailsVo> getStuSessionList(@RequestBody CourseDetailRequest request) { List<StuSessionDetailsVo> detailsVos = new ArrayList<>(); - List<TCoursePackagePayment> byUserId = packagePaymentService.list(new QueryWrapper<TCoursePackagePayment>() + List<CoursePackageOrderStudent> byUserId = orderStudentService.list(new QueryWrapper<CoursePackageOrderStudent>() .between("insertTime", request.getStartTime(), request.getEndTime()) .eq("appUserId", request.getAppUserId()) .eq("studentId", request.getStuId())); if (byUserId.size() > 0) { - List<Integer> collect = byUserId.stream().map(TCoursePackagePayment::getCoursePackageId).collect(Collectors.toList()); + List<Integer> collect = byUserId.stream().map(CoursePackageOrderStudent::getCoursePackageId).collect(Collectors.toList()); List<TCoursePackage> list = tcpService.list(new QueryWrapper<TCoursePackage>() .in("id", collect)); @@ -670,22 +674,23 @@ @PostMapping("/base/coursePack/getRecord") public List<PurchaseRecordVo> getRecord(@RequestBody RecordTimeRequest recordTimeRequest) { - List<TCoursePackagePayment> list = new ArrayList<>(); + List<CoursePackageOrderStudent> list = new ArrayList<>(); Integer[] changes = {1, 0}; if (recordTimeRequest.getType() == null) { - list = coursePackagePaymentService.list(new QueryWrapper<TCoursePackagePayment>().eq("studentId", recordTimeRequest.getStuId()).eq("coursePackageId", recordTimeRequest.getLessionId()).orderByDesc("insertTime")); + list = coursePackageOrderStudentService.list(new QueryWrapper<CoursePackageOrderStudent>().eq("studentId", recordTimeRequest.getStuId()).eq("coursePackageId", recordTimeRequest.getLessionId()).orderByDesc("insertTime")); } else { - list = coursePackagePaymentService.list(new QueryWrapper<TCoursePackagePayment>().eq("studentId", recordTimeRequest.getStuId()).eq("coursePackageId", recordTimeRequest.getLessionId()).orderByDesc("insertTime")); - + list = coursePackageOrderStudentService.list(new QueryWrapper<CoursePackageOrderStudent>().eq("studentId", recordTimeRequest.getStuId()).eq("coursePackageId", recordTimeRequest.getLessionId()).orderByDesc("insertTime")); } - List<Long> ids = new ArrayList<>(); - for (TCoursePackagePayment coursePackagePayment : list) { - ids.add(coursePackagePayment.getId()); - } + List<Integer> appUserIds = list.stream().map(CoursePackageOrderStudent::getAppUserId).collect(Collectors.toList()); + List<CoursePackageOrderStudent> list1 = coursePackageOrderStudentService.list(new QueryWrapper<CoursePackageOrderStudent>() + .in("appUserId", appUserIds) + .eq("coursePackageId", recordTimeRequest.getLessionId()) + .eq("state", 1) + ); + List<Long> collect = list1.stream().map(CoursePackageOrderStudent::getId).collect(Collectors.toList()); - - QueryWrapper<CourseCounsum> in = new QueryWrapper<CourseCounsum>().in("paymentId", ids).in("changeType", changes); + QueryWrapper<CourseCounsum> in = new QueryWrapper<CourseCounsum>().in("paymentId", collect).in("changeType", changes); if (recordTimeRequest.getType() != null) { if (recordTimeRequest.getType() == 2) { @@ -1255,8 +1260,8 @@ @PostMapping("/coursePackagePayment/queryResidueClassHourById") public Integer queryResidueClassHourById(@RequestBody Long id) { try { - TCoursePackagePayment list = packagePaymentService.getById(id); - return list.getLaveClassHours(); + CoursePackageOrderStudent coursePackageOrderStudent = coursePackageOrderStudentService.getById(id); + return coursePackageOrderStudent.getLaveClassHours(); } catch (Exception e) { e.printStackTrace(); return 0; @@ -1293,128 +1298,162 @@ public void paymentDeductionClassHour(@RequestBody PaymentDeductionClassHour paymentDeductionClassHour) { try { // 2.0 用id进行查询 - TCoursePackagePayment coursePackagePayment = packagePaymentService.getOne(new QueryWrapper<TCoursePackagePayment>().eq("id", paymentDeductionClassHour.getCourseId()).eq("payStatus", 2) - .eq("status", 1).eq("state", 1).gt("laveClassHours", 0)); - Integer classHour = paymentDeductionClassHour.getClassHour(); +// TCoursePackagePayment coursePackagePayment = packagePaymentService.getOne(new QueryWrapper<TCoursePackagePayment>().eq("id", paymentDeductionClassHour.getCourseId()).eq("payStatus", 2) +// .eq("status", 1).eq("state", 1).gt("laveClassHours", 0)); +// Integer classHour = paymentDeductionClassHour.getClassHour(); // for (TCoursePackagePayment coursePackagePayment : list) { - if (coursePackagePayment.getLaveClassHours().compareTo(classHour) >= 0) { - coursePackagePayment.setLaveClassHours(coursePackagePayment.getLaveClassHours() - classHour); - coursePackagePayment.setAppUserId(null); - packagePaymentService.updateById(coursePackagePayment); - - CourseCounsum courseCounsum = new CourseCounsum(); - courseCounsum.setPaymentId(coursePackagePayment.getId()); - courseCounsum.setChangeType(0); - courseCounsum.setNum(classHour); - courseCounsum.setInsertTime(new Date()); - courseCounsum.setReason("报名赛事"); - courseCounsumService.save(courseCounsum); - List<CoursePackageStudent> studentCourse = coursePackageStudentService.list(new QueryWrapper<CoursePackageStudent>().eq("studentId", coursePackagePayment.getStudentId()).eq("coursePackageId", coursePackagePayment.getCoursePackageId())); - List<Long> collect = studentCourse.stream().map(CoursePackageStudent::getCoursePackageSchedulingId).collect(Collectors.toList()); - coursePackageSchedulingService.remove(new QueryWrapper<CoursePackageScheduling>().in("id", collect)); - coursePackageStudentService.remove(new QueryWrapper<CoursePackageStudent>().eq("studentId", paymentDeductionClassHour.getId()).eq("coursePackageId", coursePackagePayment.getCoursePackageId())); + CoursePackageOrderStudent coursePackageOrderStudent = coursePackageOrderStudentService.getById(paymentDeductionClassHour.getCourseId()); +// if (paymentDeductionClassHour.getClassHour() > coursePackageOrderStudent.getLaveClassHours()) { +// return ResultUtil.error("当前课包课时数不足"); +// } + TCoursePackage coursePackage = coursePackageService.getById(coursePackageOrderStudent.getCoursePackageId()); + coursePackageOrderStudent.setLaveClassHours(coursePackageOrderStudent.getLaveClassHours() - paymentDeductionClassHour.getClassHour()); + coursePackageOrderStudentService.updateById(coursePackageOrderStudent); + //判断剩余课时是否已经全部进行排课,如果排课需要删除已经排好的记录 + List<CoursePackageScheduling> list1 = coursePackageSchedulingService.list(new QueryWrapper<CoursePackageScheduling>() + .eq("studentId", coursePackageOrderStudent.getStudentId()).eq("status", 1) + .eq("type", 1).orderByDesc("classDate")); + //已经排课但没有使用的课时数量 + int number = list1.size() * coursePackage.getNeedNum(); + Integer laveClassHours1 = coursePackageOrderStudent.getLaveClassHours(); + //需要删除多余的排课记录 + if(number > laveClassHours1){ + int n = number - laveClassHours1; + for (int i = 0; i < n; i++) { + CoursePackageScheduling coursePackageScheduling = list1.get(i); + coursePackageSchedulingService.getBaseMapper().deleteById(coursePackageScheduling.getId()); - TCoursePackage tCoursePackage = packageService.getById(coursePackagePayment.getCoursePackageId()); - String classWeeks = tCoursePackage.getClassWeeks(); - List<Integer> week = week(classWeeks); - - TCoursePackagePayment pay = packagePaymentService.getOne(new QueryWrapper<TCoursePackagePayment>().eq("coursePackageId", coursePackagePayment.getCoursePackageId()).eq("studentId", coursePackagePayment.getStudentId())); - - Date today = new Date(); - Calendar calendar = Calendar.getInstance(); - calendar.add(Calendar.DATE, -1); - today = calendar.getTime(); - - - Integer laveClassHours = pay.getLaveClassHours(); - Integer codeTime = tCoursePackage.getCodeTime(); - Integer can = laveClassHours / codeTime; - - int count = 0; - String[] split = tCoursePackage.getClassStartTime().split(","); - String[] split1 = tCoursePackage.getClassEndTime().split(","); - SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd"); - SimpleDateFormat format1 = new SimpleDateFormat("yyyy-MM-dd HH:mm"); - - Date[] dates = generateDateArray(14, today); - for (Date date : dates) { - if (count == can) { - break; - } - int wei = cn.hutool.core.date.DateUtil.dayOfWeek(date); - if (week.contains(wei)) { - for (int i1 = 0; i1 < split.length; i1++) { - if (count == can) { - break; - } - CoursePackageScheduling coursePackageScheduling = new CoursePackageScheduling(); - coursePackageScheduling.setCoursePackageId(tCoursePackage.getId()); - Date parse = format1.parse(format.format(date) + " " + split[i1]); - Date parse1 = format1.parse(format.format(date) + " " + split1[i1]); - coursePackageScheduling.setClassDate(parse); - coursePackageScheduling.setEndDate(parse1); - coursePackageScheduling.setStatus(1); - coursePackageSchedulingService.save(coursePackageScheduling); - CoursePackageStudent student1 = new CoursePackageStudent(); - student1.setAppUserId(pay.getAppUserId()); - student1.setStudentId(pay.getStudentId()); - student1.setCoursePackageId(pay.getCoursePackageId()); - student1.setCoursePackagePaymentId(pay.getId()); - student1.setCoursePackageSchedulingId(coursePackageScheduling.getId()); - student1.setSignInOrNot(1); - student1.setReservationStatus(1); - student1.setInsertTime(new Date()); - studentService.save(student1); - count++; - } - } + coursePackageStudentService.getBaseMapper().delete(new QueryWrapper<CoursePackageStudent>() + .eq("coursePackageSchedulingId", coursePackageScheduling.getId())); } - - - // 2.0 少于3课时 推送 - if (coursePackagePayment.getLaveClassHours() <= 3) { - Integer appUserId = coursePackagePayment.getAppUserId(); - - //调用推送 - HttpHeaders headers = new HttpHeaders(); - // 以表单的方式提交 - headers.setContentType(MediaType.APPLICATION_FORM_URLENCODED); - String s1 = appUserId + "_" + "Three"; - //定时修改排课状态 - String s = internalRestTemplate.getForObject("http://mb-cloud-gateway/netty/sendMsgToClient?id=" + s1, String.class); - JSONObject jsonObject1 = JSON.parseObject(s, JSONObject.class); - if (jsonObject1.getIntValue("code") != 200) { - System.err.println(jsonObject1.getString("msg")); - } - } - - CancelledClasses cancelledClasses = new CancelledClasses(); - cancelledClasses.setType(2); - cancelledClasses.setVoucher(paymentDeductionClassHour.getCode()); - cancelledClasses.setCoursePackageId(coursePackagePayment.getCoursePackageId()); - cancelledClasses.setCoursePackagePaymentId(coursePackagePayment.getId()); - cancelledClasses.setCancelledClassesNumber(classHour); - cancelledClasses.setInsertTime(new Date()); - cancelledClassesService.save(cancelledClasses); - - } else { - CancelledClasses cancelledClasses = new CancelledClasses(); - cancelledClasses.setType(2); - cancelledClasses.setVoucher(paymentDeductionClassHour.getCode()); - cancelledClasses.setCoursePackageId(coursePackagePayment.getCoursePackageId()); - cancelledClasses.setCoursePackagePaymentId(coursePackagePayment.getId()); - cancelledClasses.setCancelledClassesNumber(coursePackagePayment.getLaveClassHours()); - cancelledClasses.setInsertTime(new Date()); - cancelledClassesService.save(cancelledClasses); - - coursePackagePayment.setLaveClassHours(0); - packagePaymentService.updateById(coursePackagePayment); - - classHour -= cancelledClasses.getCancelledClassesNumber(); } + + + + + + +// if (coursePackagePayment.getLaveClassHours().compareTo(classHour) >= 0) { +// coursePackagePayment.setLaveClassHours(coursePackagePayment.getLaveClassHours() - classHour); +// coursePackagePayment.setAppUserId(null); +// packagePaymentService.updateById(coursePackagePayment); +// +// CourseCounsum courseCounsum = new CourseCounsum(); +// courseCounsum.setPaymentId(coursePackagePayment.getId()); +// courseCounsum.setChangeType(0); +// courseCounsum.setNum(classHour); +// courseCounsum.setInsertTime(new Date()); +// courseCounsum.setReason("报名赛事"); +// courseCounsumService.save(courseCounsum); +// +// +// List<CoursePackageStudent> studentCourse = coursePackageStudentService.list(new QueryWrapper<CoursePackageStudent>().eq("studentId", coursePackagePayment.getStudentId()).eq("coursePackageId", coursePackagePayment.getCoursePackageId())); +// List<Long> collect = studentCourse.stream().map(CoursePackageStudent::getCoursePackageSchedulingId).collect(Collectors.toList()); +// coursePackageSchedulingService.remove(new QueryWrapper<CoursePackageScheduling>().in("id", collect)); +// coursePackageStudentService.remove(new QueryWrapper<CoursePackageStudent>().eq("studentId", paymentDeductionClassHour.getId()).eq("coursePackageId", coursePackagePayment.getCoursePackageId())); +// +// +// TCoursePackage tCoursePackage = packageService.getById(coursePackagePayment.getCoursePackageId()); +// String classWeeks = tCoursePackage.getClassWeeks(); +// List<Integer> week = week(classWeeks); +// +// TCoursePackagePayment pay = packagePaymentService.getOne(new QueryWrapper<TCoursePackagePayment>().eq("coursePackageId", coursePackagePayment.getCoursePackageId()).eq("studentId", coursePackagePayment.getStudentId())); +// +// Date today = new Date(); +// Calendar calendar = Calendar.getInstance(); +// calendar.add(Calendar.DATE, -1); +// today = calendar.getTime(); +// +// +// Integer laveClassHours = pay.getLaveClassHours(); +// Integer codeTime = tCoursePackage.getCodeTime(); +// Integer can = laveClassHours / codeTime; +// +// int count = 0; +// String[] split = tCoursePackage.getClassStartTime().split(","); +// String[] split1 = tCoursePackage.getClassEndTime().split(","); +// SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd"); +// SimpleDateFormat format1 = new SimpleDateFormat("yyyy-MM-dd HH:mm"); +// +// Date[] dates = generateDateArray(14, today); +// for (Date date : dates) { +// if (count == can) { +// break; +// } +// int wei = cn.hutool.core.date.DateUtil.dayOfWeek(date); +// if (week.contains(wei)) { +// for (int i1 = 0; i1 < split.length; i1++) { +// if (count == can) { +// break; +// } +// CoursePackageScheduling coursePackageScheduling = new CoursePackageScheduling(); +// coursePackageScheduling.setCoursePackageId(tCoursePackage.getId()); +// Date parse = format1.parse(format.format(date) + " " + split[i1]); +// Date parse1 = format1.parse(format.format(date) + " " + split1[i1]); +// coursePackageScheduling.setClassDate(parse); +// coursePackageScheduling.setEndDate(parse1); +// coursePackageScheduling.setStatus(1); +// coursePackageSchedulingService.save(coursePackageScheduling); +// CoursePackageStudent student1 = new CoursePackageStudent(); +// student1.setAppUserId(pay.getAppUserId()); +// student1.setStudentId(pay.getStudentId()); +// student1.setCoursePackageId(pay.getCoursePackageId()); +// student1.setCoursePackagePaymentId(pay.getId()); +// student1.setCoursePackageSchedulingId(coursePackageScheduling.getId()); +// student1.setSignInOrNot(1); +// student1.setReservationStatus(1); +// student1.setInsertTime(new Date()); +// studentService.save(student1); +// count++; +// } +// } +// } +// +// +// // 2.0 少于3课时 推送 +// if (coursePackagePayment.getLaveClassHours() <= 3) { +// Integer appUserId = coursePackagePayment.getAppUserId(); +// +// //调用推送 +// HttpHeaders headers = new HttpHeaders(); +// // 以表单的方式提交 +// headers.setContentType(MediaType.APPLICATION_FORM_URLENCODED); +// String s1 = appUserId + "_" + "Three"; +// //定时修改排课状态 +// String s = internalRestTemplate.getForObject("http://mb-cloud-gateway/netty/sendMsgToClient?id=" + s1, String.class); +// JSONObject jsonObject1 = JSON.parseObject(s, JSONObject.class); +// if (jsonObject1.getIntValue("code") != 200) { +// System.err.println(jsonObject1.getString("msg")); +// } +// } +// +// CancelledClasses cancelledClasses = new CancelledClasses(); +// cancelledClasses.setType(2); +// cancelledClasses.setVoucher(paymentDeductionClassHour.getCode()); +// cancelledClasses.setCoursePackageId(coursePackagePayment.getCoursePackageId()); +// cancelledClasses.setCoursePackagePaymentId(coursePackagePayment.getId()); +// cancelledClasses.setCancelledClassesNumber(classHour); +// cancelledClasses.setInsertTime(new Date()); +// cancelledClassesService.save(cancelledClasses); +// +// } else { +// CancelledClasses cancelledClasses = new CancelledClasses(); +// cancelledClasses.setType(2); +// cancelledClasses.setVoucher(paymentDeductionClassHour.getCode()); +// cancelledClasses.setCoursePackageId(coursePackagePayment.getCoursePackageId()); +// cancelledClasses.setCoursePackagePaymentId(coursePackagePayment.getId()); +// cancelledClasses.setCancelledClassesNumber(coursePackagePayment.getLaveClassHours()); +// cancelledClasses.setInsertTime(new Date()); +// cancelledClassesService.save(cancelledClasses); +// +// coursePackagePayment.setLaveClassHours(0); +// packagePaymentService.updateById(coursePackagePayment); +// +// classHour -= cancelledClasses.getCancelledClassesNumber(); +// } // } @@ -1478,6 +1517,8 @@ } + @Resource + private TCoursePackageMapper tcpmapper; /** * 找出符合门店的课包 * @@ -1499,21 +1540,42 @@ for (String s2 : split1) { storeIds.add(Integer.valueOf(s2)); } - List<TCoursePackagePayment> list = packagePaymentService.list(new LambdaQueryWrapper<TCoursePackagePayment>().eq(TCoursePackagePayment::getAppUserId, integer).ge(TCoursePackagePayment::getLaveClassHours, 0).eq(TCoursePackagePayment::getStatus, 1).eq(TCoursePackagePayment::getState, 1)); - for (TCoursePackagePayment tCoursePackagePayment : list) { - Integer coursePackageId = tCoursePackagePayment.getCoursePackageId(); - TCoursePackage byId = tcpService.getById(coursePackageId); - if (byId.getType() == 3) { +// List<TCoursePackagePayment> list = packagePaymentService.list(new LambdaQueryWrapper<TCoursePackagePayment>().eq(TCoursePackagePayment::getAppUserId, integer).ge(TCoursePackagePayment::getLaveClassHours, 0).eq(TCoursePackagePayment::getStatus, 1).eq(TCoursePackagePayment::getState, 1)); +// for (TCoursePackagePayment tCoursePackagePayment : list) { +// Integer coursePackageId = tCoursePackagePayment.getCoursePackageId(); +// TCoursePackage byId = tcpService.getById(coursePackageId); +// if (byId.getType() == 3) { +// continue; +// } +// if (storeIds.contains(byId.getStoreId())) { +// PayCourseRes payCourseRes = new PayCourseRes(); +// payCourseRes.setCourseNum(tCoursePackagePayment.getLaveClassHours()); +// payCourseRes.setId(tCoursePackagePayment.getId()); +// payCourseRes.setName(byId.getName()); +// objects.add(payCourseRes); +// } +// } + + + + List<CoursePackageOrderStudent> tCoursePackagePayments = coursePackageOrderStudentService.list(new LambdaQueryWrapper<CoursePackageOrderStudent>().eq(CoursePackageOrderStudent::getAppUserId, integer)); +// ArrayList<PayCourseRes> payCourseRes = new ArrayList<>(); + for (CoursePackageOrderStudent tCoursePackagePayment : tCoursePackagePayments) { + TCoursePackage tCoursePackage = tcpmapper.selectById(tCoursePackagePayment.getCoursePackageId()); + if (tCoursePackage.getType() != 1) { continue; } - if (storeIds.contains(byId.getStoreId())) { + if (storeIds.contains(tCoursePackage.getStoreId())) { PayCourseRes payCourseRes = new PayCourseRes(); payCourseRes.setCourseNum(tCoursePackagePayment.getLaveClassHours()); payCourseRes.setId(tCoursePackagePayment.getId()); - payCourseRes.setName(byId.getName()); + payCourseRes.setName(tCoursePackage.getName()); objects.add(payCourseRes); + } } + + return objects; } @@ -1880,7 +1942,7 @@ @PostMapping("/base/coursePack/obtainStudentClassDetails") public List<RecordAppoint> obtainStudentClassDetailsData(@RequestBody WeeksOfCourseRest stuId) { // try { - return packagePaymentService.obtainStuClassDetails(stuId.getStuId(), stuId.getAppUserId(), stuId.getPageNum()); + return coursePackageOrderStudentService.obtainStuClassDetails(stuId.getStuId(), stuId.getAppUserId(), stuId.getPageNum()); // }catch (Exception e){ // e.printStackTrace(); // throw new RuntimeException(); diff --git a/cloud-server-course/src/main/java/com/dsh/course/entity/CoursePackageScheduling.java b/cloud-server-course/src/main/java/com/dsh/course/entity/CoursePackageScheduling.java index 238c0e6..c78d505 100644 --- a/cloud-server-course/src/main/java/com/dsh/course/entity/CoursePackageScheduling.java +++ b/cloud-server-course/src/main/java/com/dsh/course/entity/CoursePackageScheduling.java @@ -35,6 +35,21 @@ @TableId(value = "id", type = IdType.NONE) private Long id; /** + * 1=常规,2=假期,3=体验购课 + */ + @TableField("type") + private Integer type; + /** + * 用户id + */ + @TableField("appUserId") + private Integer appUserId; + /** + * 学员id + */ + @TableField("studentId") + private Integer studentId; + /** * 课包id */ @TableField("coursePackageId") diff --git a/cloud-server-course/src/main/java/com/dsh/course/service/ICoursePackageOrderStudentService.java b/cloud-server-course/src/main/java/com/dsh/course/service/ICoursePackageOrderStudentService.java index 6c8f98f..b8c867e 100644 --- a/cloud-server-course/src/main/java/com/dsh/course/service/ICoursePackageOrderStudentService.java +++ b/cloud-server-course/src/main/java/com/dsh/course/service/ICoursePackageOrderStudentService.java @@ -2,10 +2,22 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.dsh.course.entity.CoursePackageOrderStudent; +import com.dsh.course.feignclient.model.RecordAppoint; + +import java.util.List; /** * @author zhibing.pu * @Date 2023/11/25 14:05 */ public interface ICoursePackageOrderStudentService extends IService<CoursePackageOrderStudent> { + + /** + * 查询学员的课包上课记录 + * + * @param stuId + * @param appUserId + * @return + */ + List<RecordAppoint> obtainStuClassDetails(Integer stuId, Integer appUserId, Integer pageNum); } diff --git a/cloud-server-course/src/main/java/com/dsh/course/service/impl/CoursePackageOrderStudentServiceImpl.java b/cloud-server-course/src/main/java/com/dsh/course/service/impl/CoursePackageOrderStudentServiceImpl.java index c8f143b..c4a56a5 100644 --- a/cloud-server-course/src/main/java/com/dsh/course/service/impl/CoursePackageOrderStudentServiceImpl.java +++ b/cloud-server-course/src/main/java/com/dsh/course/service/impl/CoursePackageOrderStudentServiceImpl.java @@ -1,10 +1,30 @@ package com.dsh.course.service.impl; +import cn.hutool.http.HttpRequest; +import cn.hutool.http.HttpResponse; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.dsh.course.entity.CoursePackageOrderStudent; -import com.dsh.course.mapper.CoursePackageOrderStudentMapper; +import com.dsh.course.entity.*; +import com.dsh.course.feignclient.model.RecordAppoint; +import com.dsh.course.feignclient.other.StoreClient; +import com.dsh.course.feignclient.other.model.Store; +import com.dsh.course.mapper.*; import com.dsh.course.service.ICoursePackageOrderStudentService; +import com.dsh.course.service.ICoursePackageSchedulingService; +import com.dsh.course.util.DateTimeHelper; +import com.dsh.course.util.DateUtil; +import com.dsh.course.util.ToolUtil; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.text.ParseException; +import java.text.SimpleDateFormat; +import java.util.*; /** * @author zhibing.pu @@ -12,4 +32,169 @@ */ @Service public class CoursePackageOrderStudentServiceImpl extends ServiceImpl<CoursePackageOrderStudentMapper, CoursePackageOrderStudent> implements ICoursePackageOrderStudentService { + + + @Resource + private CoursePackageStudentMapper cpsMapper; + + @Resource + private CancelledClassesMapper cacMapper; + + @Autowired + private ICoursePackageSchedulingService coursePackageSchedulingService; + + @Resource + private TCoursePackageMapper tcpmapper; + + @Resource + private StoreClient stoClient; + + + + @Override + public List<RecordAppoint> obtainStuClassDetails(Integer stuId, Integer appUserId, Integer pageNum) { + List<RecordAppoint> recordVoList = new ArrayList<>(); + List<CoursePackageOrderStudent> tCoursePackagePayments = this.baseMapper.selectList(new QueryWrapper<CoursePackageOrderStudent>() + .eq("studentId", stuId) + .eq("appUserId", appUserId) + .eq("status", 1) + .orderByDesc("insertTime")); + + List<Integer> ids = new ArrayList<>(); + for (CoursePackageOrderStudent tCoursePackagePayment : tCoursePackagePayments) { + ids.add(tCoursePackagePayment.getCoursePackageId()); + } + SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy.MM.dd"); + SimpleDateFormat format = new SimpleDateFormat("yyyy.MM.dd HH:mm"); + if (tCoursePackagePayments.size() > 0) { + +// int pageNum = 1; // 页码 + int pageSize = 10; // 每页记录数 + Page<CoursePackageStudent> page = new Page<>(pageNum, pageSize); + IPage<CoursePackageStudent> coursePackageStudentPage = cpsMapper.selectPage(page, new QueryWrapper<CoursePackageStudent>() + .in("coursePackageId", ids) + .eq("studentId", stuId) + .eq("appUserId", appUserId) + .eq("reservationStatus", 1)); + List<CoursePackageStudent> coursePackageStudent1 = coursePackageStudentPage.getRecords(); + + + if (ToolUtil.isNotEmpty(coursePackageStudent1) && coursePackageStudent1.size() > 0) { + TCoursePackage coursePackage = new TCoursePackage(); + Integer coursePackageId = -1; + for (CoursePackageStudent coursePackageStudent : coursePackageStudent1) { + RecordAppoint recordVo = new RecordAppoint(); + recordVo.setCoursePackageId(coursePackageStudent.getCoursePackageId()); + + if (!coursePackageStudent.getCoursePackageId().equals(coursePackageId)) { + coursePackage = tcpmapper.selectById(coursePackageStudent.getCoursePackageId()); + coursePackageId = coursePackageStudent.getCoursePackageId(); + } + + recordVo.setSid(Arrays.asList(coursePackage.getStoreId())); + List<Integer> rid = stoClient.querySiteId(coursePackage.getStoreId()); + recordVo.setRid(rid); + recordVo.setUserId(appUserId); + recordVo.setSiteId(coursePackage.getSiteId()); + List<Integer> ids1 = getIds(coursePackage.getSiteId()); + recordVo.setIds(ids1); + + recordVo.setCoursePackageName(coursePackage.getName()); + for (CoursePackageOrderStudent tCoursePackagePayment : tCoursePackagePayments) { + if (Objects.equals(coursePackageStudent.getCoursePackageId(), tCoursePackagePayment.getCoursePackageId())) { + recordVo.setCourseHours(tCoursePackagePayment.getTotalClassHours()); + } + } + + + CoursePackageScheduling byId = coursePackageSchedulingService.getById(coursePackageStudent.getCoursePackageSchedulingId()); + if (byId == null) { + continue; + } + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + String dateString1 = sdf.format(byId.getClassDate()); + String dateString2 = sdf.format(byId.getEndDate()); + + + recordVo.setTimeFrame(dateString1 + "-" + dateString2.substring(11)); + + Store store = stoClient.queryStoreById(coursePackage.getStoreId()); + recordVo.setStoreNameAddr(store.getName() + store.getAddress()); + recordVo.setCourseStuRecordId(coursePackageStudent.getId()); + String classWeeks = coursePackage.getClassWeeks(); + String[] split = classWeeks.split(";"); + List<String> integerList = Arrays.asList(split); + String weekOfDate = DateTimeHelper.getWeekOfDate(new Date()); + if (integerList.contains(weekOfDate)) { + String dat = simpleDateFormat.format(byId.getClassDate()) + " " + dateString1.substring(11); + + Date start = null; + try { + start = format.parse(dat); + } catch (ParseException e) { + throw new RuntimeException(e); + } + //已取消 + if (byId.getStatus() == 4) { + recordVo.setStatus(4); + } else if (coursePackageStudent.getSignInOrNot() == 2) { + //已请假 + recordVo.setStatus(5); + } else if (start.after(new Date())) { + //待上课 + recordVo.setStatus(1); + } + else { + CancelledClasses cancelledClasses = cacMapper.selectOne(new QueryWrapper<CancelledClasses>() + .eq("coursePackageSchedulingId", byId.getId()).last("limit 1")); + if (ToolUtil.isNotEmpty(cancelledClasses)) { + recordVo.setStatus(3); + // 消课 到课状态0 旷课 + if (coursePackageStudent.getSignInOrNot() == 0) { + recordVo.setStatus(6); + } + + } else { + Date now = new Date(); + if (now.after(byId.getClassDate()) && now.before(byId.getEndDate())) { + recordVo.setStatus(2); + } else { + recordVo.setStatus(3); + + } + } + } + } else { + recordVo.setStatus(1); + } + recordVoList.add(recordVo); + } + + } else { + } + + } + + return recordVoList; + } + + + + public List<Integer> getIds(Integer siteId) { + HttpRequest httpRequest = HttpRequest.get("https://try.daowepark.com/v7/user_api/general/get_space_area?space_id=" + siteId); + HttpResponse execute = httpRequest.execute(); + String body = execute.body(); + JSONObject jsonObject = JSONObject.parseObject(body); + Object data = jsonObject.get("data"); + JSONArray array = JSONArray.parseArray(data.toString()); + List<Integer> ids = new ArrayList<>(); + for (Object o : array) { + JSONObject jsonObject1 = JSONObject.parseObject(o.toString()); + Object id = jsonObject1.get("id"); + Integer integer = Integer.valueOf(id.toString()); + ids.add(integer); + } + return ids; + + } } 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 3d6656f..3f681cd 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 @@ -502,12 +502,31 @@ @Autowired private ICoursePackageOrderService coursePackageOrderService; + @Autowired + private ICoursePackageOrderStudentService coursePackageOrderStudentService; + + @Autowired + private TCoursePackageService coursePackageService; + + + @Override public CourseDetailsResponse queryRegisteredCourseDetails(Long coursePayId, Integer appUserId, String lon, String lat) { AppUser appUser = appuClient.queryAppUser(appUserId); CourseDetailsResponse response = new CourseDetailsResponse(); - CoursePackageOrder coursePackageOrder = coursePackageOrderService.getById(coursePayId); + CoursePackageOrderStudent coursePackageOrderStudent = coursePackageOrderStudentService.getById(coursePayId); + CoursePackageOrder coursePackageOrder = coursePackageOrderService.getOne(new QueryWrapper<CoursePackageOrder>() + .eq("appUserId", coursePackageOrderStudent.getAppUserId()) + .eq("coursePackageId", coursePackageOrderStudent.getCoursePackageId()) + .eq("payStatus", 2) + .eq("state", 1) + .like("studentIds", coursePackageOrderStudent.getStudentId()) + .orderByDesc("insertTime") + .last(" limit 0, 1") + ); + + response.setChooseHours(coursePackageOrder.getClassHours()); if (null != coursePackageOrder) { @@ -1215,10 +1234,6 @@ Integer integer = cpsMapper.selectCount(new QueryWrapper<CoursePackageStudent>().eq("appUserId", appUserId) .eq("studentId", studentId).eq("coursePackagePaymentId", id).eq("signInOrNot", 2)); map.put("already", integer); -// if (student != null && student.getName().equals("杨锴1")) { -// map.put("totalClassHours", "测试"); -// } - ; } return list; } @@ -1277,9 +1292,9 @@ @Override public List<PayCourseRes> getMyCourseList(Integer storeId, Integer appUserId) { // 找到购买的课包 - List<TCoursePackagePayment> tCoursePackagePayments = this.baseMapper.selectList(new LambdaQueryWrapper<TCoursePackagePayment>().eq(TCoursePackagePayment::getAppUserId, appUserId)); + List<CoursePackageOrderStudent> tCoursePackagePayments = coursePackageOrderStudentService.list(new LambdaQueryWrapper<CoursePackageOrderStudent>().eq(CoursePackageOrderStudent::getAppUserId, appUserId)); ArrayList<PayCourseRes> payCourseRes = new ArrayList<>(); - for (TCoursePackagePayment tCoursePackagePayment : tCoursePackagePayments) { + for (CoursePackageOrderStudent tCoursePackagePayment : tCoursePackagePayments) { TCoursePackage tCoursePackage = tcpmapper.selectById(tCoursePackagePayment.getCoursePackageId()); if (tCoursePackage.getType() != 1) { continue; @@ -1396,121 +1411,46 @@ // 添加购买课时 paytyoe为7 // 排课可期 判断课程时间段 添加排课表 添加上课记录表 // 找到原来的课包 扣课时 - TCoursePackagePayment tCoursePackagePayment = this.baseMapper.selectById(req.getOldCourseId()); - if (req.getNum() > tCoursePackagePayment.getLaveClassHours()) { + CoursePackageOrderStudent coursePackageOrderStudent = coursePackageOrderStudentService.getById(req.getOldCourseId()); + if (req.getNum() > coursePackageOrderStudent.getLaveClassHours()) { return ResultUtil.error("当前课包课时数不足"); } - tCoursePackagePayment.setLaveClassHours(tCoursePackagePayment.getLaveClassHours() - req.getNum()); - this.baseMapper.updateHoursById(tCoursePackagePayment.getId(), -req.getNum()); + TCoursePackage coursePackage = coursePackageService.getById(coursePackageOrderStudent.getCoursePackageId()); + coursePackageOrderStudent.setLaveClassHours(coursePackageOrderStudent.getLaveClassHours() - req.getNum()); + coursePackageOrderStudentService.updateById(coursePackageOrderStudent); + //判断剩余课时是否已经全部进行排课,如果排课需要删除已经排好的记录 + List<CoursePackageScheduling> list1 = coursePackageSchedulingService.list(new QueryWrapper<CoursePackageScheduling>() + .eq("studentId", coursePackageOrderStudent.getStudentId()).eq("status", 1) + .eq("type", 1).orderByDesc("classDate")); + //已经排课但没有使用的课时数量 + int number = list1.size() * coursePackage.getNeedNum(); + Integer laveClassHours1 = coursePackageOrderStudent.getLaveClassHours(); + //需要删除多余的排课记录 + if(number > laveClassHours1){ + int n = number - laveClassHours1; + for (int i = 0; i < n; i++) { + CoursePackageScheduling coursePackageScheduling = list1.get(i); + coursePackageSchedulingService.getBaseMapper().deleteById(coursePackageScheduling.getId()); - - List<CoursePackageStudent> studentCourse = coursePackageStudentService.list(new QueryWrapper<CoursePackageStudent>().eq("studentId", tCoursePackagePayment.getStudentId()).eq("coursePackageId", tCoursePackagePayment.getCoursePackageId())); - List<Long> collect = studentCourse.stream().map(CoursePackageStudent::getCoursePackageSchedulingId).collect(Collectors.toList()); - - List<CoursePackageScheduling> list = coursePackageSchedulingService.list(new QueryWrapper<CoursePackageScheduling>().in("id", collect).le("classDate", new Date())); - coursePackageSchedulingService.remove(new QueryWrapper<CoursePackageScheduling>().in("id", collect).le("classDate", new Date())); - List<Long> collect1 = list.stream().map(CoursePackageScheduling::getId).collect(Collectors.toList()); - - -// coursePackageSchedulingService.remove(new QueryWrapper<CoursePackageScheduling>().in("id",collect)); - coursePackageStudentService.remove(new QueryWrapper<CoursePackageStudent>().eq("studentId", tCoursePackagePayment.getStudentId()).eq("coursePackageId", tCoursePackagePayment.getCoursePackageId())); - - TCoursePackage tCoursePackage = tcpmapper.selectById(req.getCourseId()); - String classWeeks = tCoursePackage.getClassWeeks(); - List<Integer> week = week(classWeeks); - - TCoursePackagePayment pay = packagePaymentService.getOne(new QueryWrapper<TCoursePackagePayment>().eq("coursePackageId", tCoursePackagePayment.getCoursePackageId()).eq("studentId", tCoursePackagePayment.getStudentId())); - - - Date today = new Date(); - Calendar calendar = Calendar.getInstance(); - calendar.add(Calendar.DATE, -1); - today = calendar.getTime(); - - Integer laveClassHours = pay.getLaveClassHours(); - Integer codeTime = tCoursePackage.getCodeTime(); - Integer can = laveClassHours / codeTime; - - int count = 0; - String[] split = tCoursePackage.getClassStartTime().split(","); - String[] split1 = tCoursePackage.getClassEndTime().split(","); - SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd"); - SimpleDateFormat format1 = new SimpleDateFormat("yyyy-MM-dd HH:mm"); - - Date[] dates = generateDateArray(14, today); - for (Date date : dates) { - if (count == can) { - break; - } - int wei = cn.hutool.core.date.DateUtil.dayOfWeek(date); - if (week.contains(wei)) { - for (int i1 = 0; i1 < split.length; i1++) { - if (count == can) { - break; - } - CoursePackageScheduling coursePackageScheduling = new CoursePackageScheduling(); - coursePackageScheduling.setCoursePackageId(tCoursePackage.getId()); - Date parse = format1.parse(format.format(date) + " " + split[i1]); - Date parse1 = format1.parse(format.format(date) + " " + split1[i1]); - coursePackageScheduling.setClassDate(parse); - coursePackageScheduling.setEndDate(parse1); - coursePackageScheduling.setStatus(1); - coursePackageSchedulingService.save(coursePackageScheduling); - CoursePackageStudent student1 = new CoursePackageStudent(); - student1.setAppUserId(pay.getAppUserId()); - student1.setStudentId(pay.getStudentId()); - student1.setCoursePackageId(pay.getCoursePackageId()); - student1.setCoursePackagePaymentId(pay.getId()); - student1.setCoursePackageSchedulingId(coursePackageScheduling.getId()); - student1.setSignInOrNot(1); - student1.setReservationStatus(1); - student1.setInsertTime(new Date()); - coursePackageStudentService.save(student1); - count++; - } + coursePackageStudentService.getBaseMapper().delete(new QueryWrapper<CoursePackageStudent>() + .eq("coursePackageSchedulingId", coursePackageScheduling.getId())); } } -// TCoursePackage tCoursePackage = tcpmapper.selectById(req.getCourseId()); - // 添加课包 - TCoursePackagePayment tCoursePackagePayment1 = new TCoursePackagePayment(); -// tCoursePackagePayment1.setAppUserId(userId); -// Student student = studentClient.queryDefaultStudent(userId); -// // student ID -// -// Integer sId=null; -// if(student!=null){ -// tCoursePackagePayment1.setStudentId(student.getId()); -// sId=student.getId(); -// } - tCoursePackagePayment1.setCoursePackageId(tCoursePackage.getId()); - tCoursePackagePayment1.setStudentId(req.getStuId()); - tCoursePackagePayment1.setPayType(7); - tCoursePackagePayment1.setClassHours(req.getNum()); - tCoursePackagePayment1.setOriginalPrice(0.0); - tCoursePackagePayment1.setTotalClassHours(req.getNum()); - tCoursePackagePayment1.setLaveClassHours(req.getNum()); - tCoursePackagePayment1.setAbsencesNumber(0); - tCoursePackagePayment1.setPayUserType(1); - tCoursePackagePayment1.setPayStatus(2); - tCoursePackagePayment1.setPayUserId(userId); - tCoursePackagePayment1.setStatus(1); - tCoursePackagePayment1.setAppUserId(userId); - tCoursePackagePayment1.setState(1); - tCoursePackagePayment1.setInsertTime(new Date()); - this.baseMapper.insert(tCoursePackagePayment1); - // 找出课包时间段 -// SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm"); - String classStartTime = tCoursePackage.getClassStartTime(); - String classEndTime = tCoursePackage.getClassEndTime(); + SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd"); + String classStartTime = coursePackage.getClassStartTime(); + String classEndTime = coursePackage.getClassEndTime(); String[] split5 = classStartTime.split(","); String[] split6 = classEndTime.split(","); List<String> time = req.getTime(); for (String s : time) { for (int i = 0; i < split5.length; i++) { CoursePackageScheduling coursePackageScheduling = new CoursePackageScheduling(); - coursePackageScheduling.setCoursePackageId(tCoursePackage.getId()); + coursePackageScheduling.setType(3); + coursePackageScheduling.setAppUserId(userId); + coursePackageScheduling.setStudentId(req.getStuId()); + coursePackageScheduling.setCoursePackageId(coursePackage.getId()); try { Date parse = format.parse(s + " " + split5[i]); Date parse1 = format.parse(s + " " + split6[i]); @@ -1522,8 +1462,8 @@ CoursePackageStudent student1 = new CoursePackageStudent(); student1.setAppUserId(userId); student1.setStudentId(req.getStuId()); - student1.setCoursePackageId(tCoursePackage.getId()); - student1.setCoursePackagePaymentId(tCoursePackagePayment1.getId()); + student1.setCoursePackageId(coursePackage.getId()); + student1.setCoursePackagePaymentId(coursePackageOrderStudent.getId()); student1.setCoursePackageSchedulingId(coursePackageScheduling.getId()); student1.setSignInOrNot(1); student1.setReservationStatus(1); @@ -1538,18 +1478,10 @@ } - // 2.0 -// TCourseInfoRecord tCourseInfoRecord = new TCourseInfoRecord(); -// tCourseInfoRecord.setUserId(userId); -// tCourseInfoRecord.setCourseId(req.getCourseId()); -// tCourseInfoRecord.setName("体验购课"); -// tCourseInfoRecord.setNum(req.getNum()); -// tCourseInfoRecord.setTime(new Date()); -// tCourseInfoRecord.setType(2); -// appuClient.addCourseInfoRecord(tCourseInfoRecord); + CourseCounsum courseCounsum = new CourseCounsum(); - courseCounsum.setPaymentId(tCoursePackagePayment.getId()); + courseCounsum.setPaymentId(coursePackageOrderStudent.getId()); courseCounsum.setChangeType(0); courseCounsum.setNum(req.getNum()); courseCounsum.setInsertTime(new Date()); @@ -1558,7 +1490,7 @@ courseCounsumService.save(courseCounsum); - if (tCoursePackagePayment.getLaveClassHours() <= 3) { + if (coursePackageOrderStudent.getLaveClassHours() <= 3) { Integer appUserId = userId; //调用推送 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 199a25d..9db33b0 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 @@ -1001,7 +1001,7 @@ coursePackageOrder1.setOrderNumber(transaction_id); coursePackageOrder1.setAppUserId(null); coursePackageOrderService.updateById(coursePackageOrder1); - addCoursePackageOrderStudent(coursePackageOrder1, coursePackagePaymentConfig); + addCoursePackageOrderStudent(coursePackageOrder1.getId(), coursePackagePaymentConfig); break; } if ("USERPAYING".equals(s)) { @@ -1091,7 +1091,7 @@ coursePackageOrder1.setOrderNumber(tradeNo); coursePackageOrder1.setAppUserId(null); coursePackageOrderService.updateById(coursePackageOrder1); - addCoursePackageOrderStudent(coursePackageOrder1, coursePackagePaymentConfig); + addCoursePackageOrderStudent(coursePackageOrder1.getId(), coursePackagePaymentConfig); break; } if ("WAIT_BUYER_PAY".equals(s)) { @@ -1147,7 +1147,7 @@ coursePackageOrder.setInsertTime(new Date()); coursePackageOrderService.save(coursePackageOrder); - addCoursePackageOrderStudent(coursePackageOrder, coursePackagePaymentConfig); + addCoursePackageOrderStudent(coursePackageOrder.getId(), coursePackagePaymentConfig); return ResultUtil.success(); } @@ -1172,7 +1172,7 @@ coursePackageOrderService.updateById(coursePackageOrder1); CoursePackagePaymentConfig coursePackagePaymentConfig = coursePackagePaymentConfigService.getById(attach); - addCoursePackageOrderStudent(coursePackageOrder1, coursePackagePaymentConfig); + addCoursePackageOrderStudent(coursePackageOrder1.getId(), coursePackagePaymentConfig); return ResultUtil.success(); } @@ -1180,10 +1180,10 @@ /** * 支付成功后添加学员课时数据 * - * @param coursePackageOrder * @param coursePackagePaymentConfig */ - public void addCoursePackageOrderStudent(CoursePackageOrder coursePackageOrder, CoursePackagePaymentConfig coursePackagePaymentConfig) { + public void addCoursePackageOrderStudent(Long coursePackageOrderId, CoursePackagePaymentConfig coursePackagePaymentConfig) { + CoursePackageOrder coursePackageOrder = coursePackageOrderService.getById(coursePackageOrderId); // 发放优惠券 userCouponClient.sendUserCoupon(new SendCouponReq(coursePackageOrder.getAppUserId(), coursePackagePaymentConfig.getCouponIds())); @@ -1211,6 +1211,7 @@ calendar.setTime(new Date()); calendar.set(Calendar.DAY_OF_YEAR, calendar.get(Calendar.DAY_OF_YEAR) + validDays); coursePackageOrderStudent.setUseTime(calendar.getTime()); + coursePackageOrderStudentService.saveOrUpdate(coursePackageOrderStudent); //开始排课 addPackageStudent(coursePackage, coursePackageOrder.getAppUserId(), Integer.valueOf(id), coursePackageOrderStudent); @@ -1223,15 +1224,15 @@ calendar.setTime(useTime.compareTo(new Date()) < 0 ? new Date() : useTime); calendar.set(Calendar.DAY_OF_YEAR, calendar.get(Calendar.DAY_OF_YEAR) + validDays); coursePackageOrderStudent.setUseTime(calendar.getTime()); + coursePackageOrderStudentService.saveOrUpdate(coursePackageOrderStudent); //中间断课,没有连续续费的情况需要重新排课 if (useTime.compareTo(new Date()) < 0) { addPackageStudent(coursePackage, coursePackageOrder.getAppUserId(), Integer.valueOf(id), coursePackageOrderStudent); } } - coursePackageOrderStudentService.saveOrUpdate(coursePackageOrderStudent); CourseCounsum courseCounsum = new CourseCounsum(); - courseCounsum.setPaymentId(coursePackageOrder.getId()); + courseCounsum.setPaymentId(coursePackageOrderStudent.getId()); courseCounsum.setChangeType(1); courseCounsum.setNum(coursePackagePaymentConfig.getClassHours()); courseCounsum.setInsertTime(new Date()); @@ -1301,6 +1302,9 @@ laveClassHours -= codeTime; CoursePackageScheduling coursePackageScheduling = new CoursePackageScheduling(); + coursePackageScheduling.setType(tCoursePackage.getType()); + coursePackageScheduling.setAppUserId(userId); + coursePackageScheduling.setStudentId(sId); coursePackageScheduling.setCoursePackageId(tCoursePackage.getId()); Date parse = format1.parse(format.format(time) + " " + split[j]); Date parse1 = format1.parse(format.format(time) + " " + split1[j]); @@ -1360,6 +1364,9 @@ break; } CoursePackageScheduling coursePackageScheduling = new CoursePackageScheduling(); + coursePackageScheduling.setType(tCoursePackage.getType()); + coursePackageScheduling.setAppUserId(userId); + coursePackageScheduling.setStudentId(sId); coursePackageScheduling.setCoursePackageId(tCoursePackage.getId()); Date parse = format1.parse(format.format(time) + " " + split[j]); Date parse1 = format1.parse(format.format(time) + " " + split1[j]); diff --git a/cloud-server-course/src/main/resources/mapper/TCoursePackagePaymentMapper.xml b/cloud-server-course/src/main/resources/mapper/TCoursePackagePaymentMapper.xml index e8062f9..b8d8fcb 100644 --- a/cloud-server-course/src/main/resources/mapper/TCoursePackagePaymentMapper.xml +++ b/cloud-server-course/src/main/resources/mapper/TCoursePackagePaymentMapper.xml @@ -75,7 +75,7 @@ laveClassHours, absencesNumber, `status` - from t_course_package_payment where payStatus = 2 and state = 1 + from t_course_package_order_student where state = 1 <if test="null != coursePackageId"> and coursePackageId = #{coursePackageId} </if> 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 5b4453d..ada2d2a 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 @@ -260,17 +260,19 @@ //查询学员信息 TStudentDto tStudentDto = itStudentService.listOne(tStudentId); model.addAttribute("item", tStudentDto); - if (tStudentDto.getLateralSurface()!=null) { + if (tStudentDto.getLateralSurface()!=null&&!tStudentDto.getLateralSurface().equals("")) { String[] pics = tStudentDto.getLateralSurface().split(";"); - model.addAttribute("pic1", pics[0]); - System.out.println("=====pic1==" + pics[0]); - if (pics.length > 1) { - model.addAttribute("pic2", pics[1]); - System.out.println("=====pic2==" + pics[1]); - } - if (pics.length > 2) { - model.addAttribute("pic3", pics[2]); - System.out.println("=====pic3==" + pics[2]); + if (pics.length>0) { + model.addAttribute("pic1", pics[0]); + System.out.println("=====pic1==" + pics[0]); + if (pics.length > 1) { + model.addAttribute("pic2", pics[1]); + System.out.println("=====pic2==" + pics[1]); + } + if (pics.length > 2) { + model.addAttribute("pic3", pics[2]); + System.out.println("=====pic3==" + pics[2]); + } } } @@ -306,7 +308,7 @@ model.addAttribute("item", tStudentDto); - if (tStudentDto.getLateralSurface()!=null) { + if (tStudentDto.getLateralSurface()!=null&&!tStudentDto.equals("")) { String[] pics = tStudentDto.getLateralSurface().split(";"); model.addAttribute("pic1", pics[0]); System.out.println("=====pic1==" + pics[0]); @@ -434,8 +436,6 @@ List<Map<String,Object>> maps = studentClient.listCom(id); - - return maps; } @@ -450,7 +450,8 @@ evaluateStudent.setImgs(image); // evaluateStudent.setInsertTime(new Date()); - + User user = UserExt.getUser(); + evaluateStudent.setCoachId(user.getId()); appUserClient.save(evaluateStudent); // evaluateStudentService.save(evaluateStudent); 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 a2fd628..7861601 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 @@ -1369,7 +1369,7 @@ "actionType": "dialog", "dialog": { "type": "dialog", - "title": "弹框标题", + "title": "课时变更记录", "body": [ { "type": "form", @@ -1431,7 +1431,7 @@ { "type": "input-date-range", "name": "start", - "label": "上传时间", + "label": "时间", "id": "u:b2fb064aa9ac", "inputFormat": "YYYY-MM-DD HH:mm", "format": "YYYY-MM-DD HH:mm", @@ -1440,7 +1440,7 @@ }, { "type": "select", - "label": "是否启用", + "label": "变更类型", "name": "changeType", "options": [ { diff --git a/cloud-server-other/src/main/java/com/dsh/other/controller/SiteController.java b/cloud-server-other/src/main/java/com/dsh/other/controller/SiteController.java index c1ba97c..2e5d486 100644 --- a/cloud-server-other/src/main/java/com/dsh/other/controller/SiteController.java +++ b/cloud-server-other/src/main/java/com/dsh/other/controller/SiteController.java @@ -682,6 +682,19 @@ } + @Autowired + private IUserService userService; + + + @ResponseBody + @PostMapping("/base/site/queryUserName") + public User queryUserName(@RequestBody Integer coachId){ + User byId = userService.getById(coachId); + + return byId; + + } + @ResponseBody @PostMapping("/base/site/queryOperator") public OperatorUser queryOperator(@RequestBody List<Integer> stores) { diff --git a/cloud-server-other/src/main/java/com/dsh/other/mapper/UserMapper.java b/cloud-server-other/src/main/java/com/dsh/other/mapper/UserMapper.java new file mode 100644 index 0000000..7cc394a --- /dev/null +++ b/cloud-server-other/src/main/java/com/dsh/other/mapper/UserMapper.java @@ -0,0 +1,24 @@ +package com.dsh.other.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; + +import com.dsh.other.model.User; +import org.apache.ibatis.annotations.Param; + +import java.util.List; +import java.util.Map; + +/** + * <p> + * 管理员表 Mapper 接口 + * </p> + * + * @author stylefeng + * @since 2017-07-11 + */ +public interface UserMapper extends BaseMapper<User> { + + + +} \ No newline at end of file diff --git a/cloud-server-other/src/main/java/com/dsh/other/model/User.java b/cloud-server-other/src/main/java/com/dsh/other/model/User.java new file mode 100644 index 0000000..7f4b888 --- /dev/null +++ b/cloud-server-other/src/main/java/com/dsh/other/model/User.java @@ -0,0 +1,270 @@ +package com.dsh.other.model; + + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; + +import java.io.Serializable; +import java.util.Date; + +/** + * <p> + * 管理员表 + * </p> + * + * @author stylefeng + * @since 2017-07-11 + */ +@TableName("sys_user") +public class User extends Model<User> { + + private static final long serialVersionUID = 1L; + + /** + * 主键id + */ + @TableId(value="id", type= IdType.AUTO) + private Integer id; + /** + * 头像 + */ + private String avatar; + /** + * 账号 + */ + private String account; + /** + * 密码 + */ + private String password; + /** + * md5密码盐 + */ + private String salt; + /** + * 名字 + */ + private String name; + /** + * 生日 + */ + private Date birthday; + /** + * 性别(1:男 2:女) + */ + private Integer sex; + /** + * 电子邮件 + */ + private String email; + /** + * 电话 + */ + private String phone; + /** + * 角色id + */ + private String roleid; + /** + * 部门id + */ + private Integer deptid; + /** + * 状态(1:启用 2:冻结 3:删除) + */ + private Integer status; + /** + * 创建时间 + */ + private Date createtime; + /** + * 保留字段 + */ + private Integer version; + /** + * 对象类型(1=平台,2=城市管理员,3=门店) + */ + @TableField("objectType") + private Integer objectType; + /** + * objectId + */ + @TableField("objectId") + private Integer objectId; + @TableField("idCard") + private String idCard; + + public String getIdCard() { + return idCard; + } + + public void setIdCard(String idCard) { + this.idCard = idCard; + } + + public Integer getId() { + return id; + } + + public void setId(Integer id) { + this.id = id; + } + + public String getAvatar() { + return avatar; + } + + public void setAvatar(String avatar) { + this.avatar = avatar; + } + + public String getAccount() { + return account; + } + + public void setAccount(String account) { + this.account = account; + } + + public String getPassword() { + return password; + } + + + public void setPassword(String password) { + this.password = password; + } + + public String getSalt() { + return salt; + } + + public void setSalt(String salt) { + this.salt = salt; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public Date getBirthday() { + return birthday; + } + + public void setBirthday(Date birthday) { + this.birthday = birthday; + } + + public Integer getSex() { + return sex; + } + + public void setSex(Integer sex) { + this.sex = sex; + } + + public String getEmail() { + return email; + } + + public void setEmail(String email) { + this.email = email; + } + + public String getPhone() { + return phone; + } + + public void setPhone(String phone) { + this.phone = phone; + } + + public String getRoleid() { + return roleid; + } + + public void setRoleid(String roleid) { + this.roleid = roleid; + } + + public Integer getDeptid() { + return deptid; + } + + public void setDeptid(Integer deptid) { + this.deptid = deptid; + } + + public Integer getStatus() { + return status; + } + + public void setStatus(Integer status) { + this.status = status; + } + + public Date getCreatetime() { + return createtime; + } + + public void setCreatetime(Date createtime) { + this.createtime = createtime; + } + + public Integer getVersion() { + return version; + } + + public void setVersion(Integer version) { + this.version = version; + } + + public Integer getObjectType() { + return objectType; + } + + public void setObjectType(Integer objectType) { + this.objectType = objectType; + } + + public Integer getObjectId() { + return objectId; + } + + public void setObjectId(Integer objectId) { + this.objectId = objectId; + } + + @Override + protected Serializable pkVal() { + return this.id; + } + + @Override + public String toString() { + return "User{" + + "id=" + id + + ", avatar=" + avatar + + ", account=" + account + + ", password=" + password + + ", salt=" + salt + + ", name=" + name + + ", birthday=" + birthday + + ", sex=" + sex + + ", email=" + email + + ", phone=" + phone + + ", roleid=" + roleid + + ", deptid=" + deptid + + ", status=" + status + + ", createtime=" + createtime + + ", version=" + version + + "}"; + } +} diff --git a/cloud-server-other/src/main/java/com/dsh/other/service/IUserService.java b/cloud-server-other/src/main/java/com/dsh/other/service/IUserService.java new file mode 100644 index 0000000..9c54f65 --- /dev/null +++ b/cloud-server-other/src/main/java/com/dsh/other/service/IUserService.java @@ -0,0 +1,23 @@ +package com.dsh.other.service; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.IService; + +import com.dsh.other.model.User; +import org.apache.ibatis.annotations.Param; + +import java.util.List; +import java.util.Map; + +/** + * <p> + * 管理员表 服务类 + * </p> + * + * @author stylefeng123 + * @since 2018-02-22 + */ +public interface IUserService extends IService<User> { + + +} diff --git a/cloud-server-other/src/main/java/com/dsh/other/service/impl/UserServiceImpl.java b/cloud-server-other/src/main/java/com/dsh/other/service/impl/UserServiceImpl.java new file mode 100644 index 0000000..9d7ef68 --- /dev/null +++ b/cloud-server-other/src/main/java/com/dsh/other/service/impl/UserServiceImpl.java @@ -0,0 +1,29 @@ +package com.dsh.other.service.impl; + +import java.util.List; + +import java.util.Map; + + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.dsh.other.mapper.UserMapper; +import com.dsh.other.model.User; +import com.dsh.other.service.IUserService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + + + +/** + * <p> + * 管理员表 服务实现类 + * </p> + * + * @author stylefeng123 + * @since 2018-02-22 + */ +@Service +public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements IUserService { + + +} diff --git a/cloud-server-other/src/main/java/com/dsh/other/util/TaskUtil.java b/cloud-server-other/src/main/java/com/dsh/other/util/TaskUtil.java index c406008..4b95453 100644 --- a/cloud-server-other/src/main/java/com/dsh/other/util/TaskUtil.java +++ b/cloud-server-other/src/main/java/com/dsh/other/util/TaskUtil.java @@ -36,7 +36,8 @@ long l = time + 1800 * 1000; if (System.currentTimeMillis() > l) { siteBooking.setStatus(5); - siteBookingMapper.deleteById(siteBooking.getId()); + siteBookingMapper.updateById(siteBooking); +// siteBookingMapper.deleteById(siteBooking.getId()); } } //定时修改赛事状态 -- Gitblit v1.7.1