From eb6b6dbb35a9f029e0b7d269773685c19fd40976 Mon Sep 17 00:00:00 2001 From: 无关风月 <443237572@qq.com> Date: 星期四, 11 七月 2024 10:47:51 +0800 Subject: [PATCH] 玩湃微信商户认证代码 --- cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/system/TStudentController.java | 380 +++++++++++++++++++++++++++++++++++++++++++++-------- 1 files changed, 318 insertions(+), 62 deletions(-) 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 7b0eccb..f60f2d6 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 @@ -1,13 +1,22 @@ package com.dsh.guns.modular.system.controller.system; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.dsh.course.dto.*; +import com.dsh.course.entity.CoursePackageOrderStudent; +import com.dsh.course.entity.EvaluateStudent; import com.dsh.course.feignClient.account.AppUserClient; +import com.dsh.course.feignClient.account.StudentClient; import com.dsh.course.feignClient.account.model.TAppUser; +import com.dsh.course.feignClient.competition.CompetitionClient; +import com.dsh.course.feignClient.competition.model.ListQuery; import com.dsh.course.feignClient.course.CoursePackageClient; +import com.dsh.course.feignClient.course.CoursePackagePaymentClient; import com.dsh.course.feignClient.course.CourseStuddentClient; import com.dsh.course.feignClient.course.model.TCoursePackage; import com.dsh.course.feignClient.course.model.TCoursePackagePayment; +import com.dsh.course.feignClient.other.BallClient; import com.dsh.course.feignClient.other.HistoryClient; import com.dsh.course.model.MoneyBack; import com.dsh.course.model.dto.InsertBackDto; @@ -16,15 +25,14 @@ import com.dsh.course.util.HtmlToPdfUtils; import com.dsh.guns.config.UserExt; import com.dsh.guns.core.base.controller.BaseController; -import com.dsh.guns.modular.system.model.CourseCounsum; -import com.dsh.guns.modular.system.model.TStudent; -import com.dsh.guns.modular.system.model.User; +import com.dsh.guns.modular.system.model.*; import com.dsh.guns.modular.system.model.dto.*; -import com.dsh.guns.modular.system.service.ITStudentService; +import com.dsh.guns.modular.system.service.*; import com.dsh.guns.modular.system.util.BigDecimalToChineseAmountUtil; import com.dsh.guns.modular.system.util.ResultUtil; import io.swagger.models.auth.In; import org.apache.ibatis.annotations.Param; +import org.bouncycastle.math.raw.Mod; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.HttpRequest; import org.springframework.stereotype.Controller; @@ -32,6 +40,7 @@ import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; +import javax.management.relation.RelationService; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; @@ -41,10 +50,8 @@ import java.math.RoundingMode; import java.text.ParseException; import java.text.SimpleDateFormat; -import java.util.Date; -import java.util.HashMap; -import java.util.List; -import java.util.Map; +import java.util.*; +import java.util.stream.Collectors; /** * 控制器 @@ -66,7 +73,14 @@ @Resource private HistoryClient historyClient; - + @Autowired + private IStoreService storeService; + @Autowired + private CompetitionClient competitionClient; + @Autowired + private ICityService cityService; + @Autowired + private CoursePackagePaymentClient coursePackagePaymentClient; @RequestMapping("download") public void down(HttpServletRequest request, HttpServletResponse response) throws IOException { @@ -118,7 +132,11 @@ * 跳转到首页 */ @RequestMapping("") - public String index() { + public String index(Model model) { + Integer objectType = UserExt.getUser().getObjectType(); + model.addAttribute("objectType",objectType); + List<TCity> list = cityService.list(new LambdaQueryWrapper<TCity>().eq(TCity::getParentId, 0)); + model.addAttribute("list",list); return PREFIX + "tStudent.html"; } @@ -177,22 +195,35 @@ model.addAttribute("userName",tAppUser.getName()); model.addAttribute("tStudentDto",tStudentDto); - SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd"); + SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); String formattedDate = dateFormat.format(new Date()); model.addAttribute("reDate", formattedDate); - List<TCoursePackagePayment> coursePackagePayments = courseStuddentClient.queryByIds(ids); + List<CoursePackageOrderStudent> coursePackagePayments = courseStuddentClient.queryByIds(ids); BigDecimal countAll = new BigDecimal(0); - for (TCoursePackagePayment payment : coursePackagePayments){ + for (CoursePackageOrderStudent payment : coursePackagePayments){ //课包名称 TCoursePackage tCoursePackage = coursePackageClient.queryById(payment.getCoursePackageId()); + List<CoursePackageOrder> ordes = courseStuddentClient.getOrder(payment.getId()); + + + payment.setName(tCoursePackage.getName()); payment.setId(Long.valueOf(tCoursePackage.getId())); - BigDecimal cashPayment = payment.getCashPayment(); + + BigDecimal cashPayment = BigDecimal.ZERO; + for (CoursePackageOrder order : ordes) { + BigDecimal cashPayment1 = order.getCashPayment(); + if (cashPayment1 != null) { + cashPayment = cashPayment.add(cashPayment1); + } + } + payment.setCashPayment(cashPayment); +// BigDecimal cashPayment = payment.getCashPayment(); if (cashPayment==null){ cashPayment = BigDecimal.ZERO; } @@ -244,17 +275,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]); + } } } @@ -271,24 +304,43 @@ return PREFIX + "tStudentEdit_first.html"; } + @Autowired + private IMenuService menuService; + + @Autowired + private IRelationService relationService; @RequestMapping("/tStudent_info/{tStudentId}") public String tStudentInfo(@PathVariable("tStudentId") Integer tStudentId, Model model) { System.out.println("======>t"+tStudentId); //查询学员信息 TStudentDto tStudentDto = itStudentService.listOne(tStudentId); + // 查询该学员第一次购买课包的时间 + String time = coursePackagePaymentClient.getTime(tStudentId); + SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd"); + try { + if (time!=null){ + Date parse = format.parse(time); + tStudentDto.setTime(parse); + } + } catch (ParseException e) { + e.printStackTrace(); + } + + model.addAttribute("item", tStudentDto); - if (tStudentDto.getLateralSurface()!=null) { - 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 (tStudentDto.getLateralSurface()!=null&&!tStudentDto.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]); +// } + model.addAttribute("images",tStudentDto.getLateralSurface()); } @@ -298,7 +350,30 @@ System.out.println("=======controller====studentClassInfo==="+studentClassInfo); + + + User user = UserExt.getUser(); + + List<Relation> list = relationService.list(new QueryWrapper<Relation>().eq("menuid", 391).eq("roleid", user.getRoleid())); + if (!list.isEmpty()){ + model.addAttribute("back",false); + }else { + model.addAttribute("back",true); + } + return PREFIX + "tStudentEdit.html"; + } + + + @Autowired + private EvaluateStudentService evalstuService; + + @RequestMapping("/tStudent_commite/{tStudentId}") + public String tStudent_commite(@PathVariable("tStudentId") Integer tStudentId, Model model) { + + model.addAttribute("id",tStudentId); + + return PREFIX + "tStudent_commite.html"; } @@ -312,23 +387,165 @@ @RequestMapping("/getUseTime/{tStudentId}") @ResponseBody public ResultUtil getMax(@PathVariable("tStudentId") Integer tStudentId) { - Date useTime = courseStuddentClient.getUseTime(tStudentId); + Date vali = studentClient.getById(tStudentId); + +// Date useTime = courseStuddentClient.getUseTime(tStudentId); Map<String, Date> map = new HashMap<>(); - map.put("useTime",useTime); + map.put("useTime",vali); return new ResultUtil<>(0,0,null,map,null); } + @Autowired + private ISiteBookingService siteBookingService; + @Autowired + private BallClient ballClient; /** * 获取列表 */ @RequestMapping("/list") @ResponseBody public List<TStudentDto> list(StudentSearch search) { + List<Integer> ids = new ArrayList<>(); + if(UserExt.getUser().getObjectType()==3){ + ids = appUserClient.getUserStore(UserExt.getUser().getObjectId()); + if(ids.size()==0){ + ids.add(-1); + } + search.setIds(ids); + } + if(UserExt.getUser().getObjectType()==2){ + // 获取运营商下的所有门店id集合 + List<Integer> storeIds = storeService.list(new QueryWrapper<TStore>() + .eq("operatorId", UserExt.getUser().getObjectId())) + .stream().map(TStore::getId).collect(Collectors.toList()); + // 根据门店id集合查询 属于该运营商下的门店举办的赛事 + ListQuery listQuery = new ListQuery(); + listQuery.setIds(storeIds); + // 通过门店ids 获取赛事的支付记录 获取到用户的ids + List<Integer> list = competitionClient.getUserIds(listQuery); + + // 获取场地预约记录 拿到用户ids + List<Integer> siteUsers = siteBookingService.list(new QueryWrapper<SiteBooking>().in("storeId", storeIds)) + .stream().map(SiteBooking::getAppUserId).collect(Collectors.toList()); + // 获取课程购买记录 拿到用户ids + List<Integer> cpUsers = coursePackageClient.getCoursePackageByStoreIds(storeIds); + // 获取游戏记录 拿到用户ids + List<Integer> gameUsers = ballClient.getGameByStoreIds(storeIds); + // 用户ids + List<Integer> users = new ArrayList<>(); + users.addAll(list); + users.addAll(siteUsers); + users.addAll(cpUsers); + users.addAll(gameUsers); + // 去重后的用户id + List<Integer> collect = users.stream().distinct().collect(Collectors.toList()); + ids = appUserClient.getUserYYs(UserExt.getUser().getObjectId()); + ids.addAll(collect); + List<Integer> collect1 = ids.stream().distinct().collect(Collectors.toList()); + if(ids.size()==0){ + ids.add(-1); + } + search.setIds(collect1); + } System.out.println("============学员查询接口========="); return itStudentService.listAll(search); } + + + + + @Autowired + private EvaluateStudentService evaluateStudentService; + + @Resource + private StudentClient studentClient; + /** + * 获取列表 + */ + @RequestMapping("/listcom/{id}") + @ResponseBody + public List<Map<String,Object>> listcom(@PathVariable("id") Integer id) { + + List<Map<String,Object>> maps = studentClient.listCom(id); + + return maps; + } + + + @RequestMapping("/addcom/{id}") + @ResponseBody + public ResultUtil addcom(@PathVariable("id") Integer id,String content,String image) { + + EvaluateStudent evaluateStudent = new EvaluateStudent(); + evaluateStudent.setStudentId(id); + evaluateStudent.setContent(content); + evaluateStudent.setImgs(image); +// evaluateStudent.setInsertTime(new Date()); + + User user = UserExt.getUser(); + evaluateStudent.setCoachId(user.getId()); + appUserClient.save(evaluateStudent); +// evaluateStudentService.save(evaluateStudent); + + + + return new ResultUtil<>(0,0,"保存成功",null,null); + } + + + + @RequestMapping("/updatecom") + @ResponseBody + public ResultUtil updatecom(@RequestBody StudentPingYuDTO dto) { + + EvaluateStudent evaluateStudent = new EvaluateStudent(); + evaluateStudent.setId(dto.getId()); + evaluateStudent.setContent(dto.getContent()); + evaluateStudent.setImgs(dto.getImages()); + appUserClient.save(evaluateStudent); + +// evaluateStudentService.updateById(evaluateStudent); + + + + return new ResultUtil<>(0,0,"修改成功",null,null); + } + + + @RequestMapping("/comdel/{id}") + @ResponseBody + public ResultUtil comdel(@PathVariable("id") Integer id) { + + + appUserClient.comdel(id); + +// evaluateStudentService.removeById(id); + + + + return new ResultUtil<>(0,0,"删除成功",null,null); + } + + + @RequestMapping("/frozen") + @ResponseBody + + public ResultUtil forzen(Integer id,Integer state){ + + TStudent student = new TStudent(); + student.setId(id); + student.setState(state); + + + studentClient.frozen(student); + + + return ResultUtil.success(); + + } + /** * 获取列表 @@ -336,7 +553,18 @@ @RequestMapping("/classList/{tStudentId}") @ResponseBody public ResultUtil listClass(@PathVariable("tStudentId") Integer tStudentId) { + // 需要过滤体验课 List<ClassListDto> classListDtos = courseStuddentClient.listClass(tStudentId); + for (ClassListDto classListDto : classListDtos) { + if (classListDto.getClassType()==2){ + classListDto.setTotalClassHours(null); + classListDto.setHasClassHours(null); + classListDto.setLaveClassHours(null); + continue; + } + classListDto.setHasClassHours(classListDto.getTotalClassHours()-classListDto.getLaveClassHours()); + + } Map<String,List<ClassListDto>> map = new HashMap<>(); map.put("items",classListDtos); return new ResultUtil<>(0,0,null,map,null); @@ -354,11 +582,14 @@ insertBackDto.setIds(ids); System.out.println("=====insertBackDto========"+insertBackDto); - courseStuddentClient.insertBack(insertBackDto); + Integer i = courseStuddentClient.insertBack(insertBackDto); + if (i == 1){ + return ResultUtil.error("当前课程已在退费申请中"); + } //取消排课 - courseStuddentClient.cancel(ids); - System.out.println("============学员查询接口========="); +// courseStuddentClient.cancel(ids); +// System.out.println("============学员查询接口========="); return ResultUtil.success(); } @@ -376,7 +607,7 @@ courseStuddentClient.zeroClass(id); System.out.println("============学员查询接口========="); - return new ResultUtil<>(0,0,"同意成功",null,null); + return new ResultUtil<>(0,0,"已同意",null,null); } @RequestMapping("/noStatus/{id}") @@ -387,12 +618,12 @@ //// insertBackDto.setIds(ids); // System.out.println("=====insertBackDto========"+insertBackDto); - courseStuddentClient.changeStatus(id); + courseStuddentClient.noStatus(id); courseStuddentClient.backStausClass(id); // courseStuddentClient.zeroClass(id); System.out.println("============学员查询接口========="); - return new ResultUtil<>(0,0,"同意成功",null,null); + return new ResultUtil<>(0,0,"已拒绝",null,null); } /** @@ -402,11 +633,25 @@ @ResponseBody public ResultUtil update(@RequestBody TStudent tStudent) { - String lateralSurface = tStudent.getImage1()+";"+tStudent.getImage2()+";"+tStudent.getImage3(); + List<String> strings = new ArrayList<>(); + if (!tStudent.getImage1().isEmpty()){ + strings.add(tStudent.getImage1()); + } + if (!tStudent.getImage2().isEmpty()){ + strings.add(tStudent.getImage2()); + } + if (!tStudent.getImage3().isEmpty()){ + strings.add(tStudent.getImage3()); + } + String result = String.join(";", strings); - System.out.println("=======lateralSurface======>?"+lateralSurface); - tStudent.setLateralSurface(lateralSurface); - System.out.println("学员体测表的值"+lateralSurface); + +// +// String lateralSurface = tStudent.getImage1()+";"+tStudent.getImage2()+";"+tStudent.getImage3(); +// +// System.out.println("=======lateralSurface======>?"+lateralSurface); + tStudent.setLateralSurface(result); + System.out.println("学员体测表的值"+result); itStudentService.update(tStudent); // appUserClient.updateStudent(tStudent); return new ResultUtil(0,0,"编辑成功"); @@ -435,7 +680,9 @@ updateTimeDto updateTimeDto =new updateTimeDto(date1,id); System.out.println("======updateTimeDto=====>"+updateTimeDto); - courseStuddentClient.updateUseDate(updateTimeDto); +// courseStuddentClient.updateUseDate(updateTimeDto); + + studentClient.update(updateTimeDto); CreateHistoryDto historyDto = new CreateHistoryDto(); @@ -491,9 +738,6 @@ toClassDto.setId(id); courseStuddentClient.toClass(toClassDto); - -// Map<String,List<SelectDto>> map = new HashMap<>(); -// map.put("options",selectDtos); return new ResultUtil(0,0,"编辑成功",1,""); } @@ -505,7 +749,16 @@ public ResultUtil giftSelect(GiftSearchDto giftSearchDto) { List<SelectDto> selectDtos = appUserClient.giftSelect(giftSearchDto); - + // 只查询当前用户下 同时也报名了该课程的学员 +// for (SelectDto selectDto : selectDtos) { +// // 获取课包id +// TCoursePackagePayment tCoursePackagePayment = coursePackagePaymentClient.queryCoursePackagePaymentById(giftSearchDto.getId()); +// +// Integer coursePackageId = tCoursePackagePayment.getCoursePackageId(); +// // 学员id 拿到学员id 判断当前学员是否报名了这门课程 +// Long id = selectDto.getId(); +// // +// } Map<String,List<SelectDto>> map = new HashMap<>(); map.put("options",selectDtos); // Map<String,List<SelectDto>> map = new HashMap<>(); @@ -555,10 +808,10 @@ System.out.println("========ToHoliDto========="+resultUtil); - if (resultUtil==""||resultUtil==null){ - return new ResultUtil<>(0,0,"报名成功"); + if (resultUtil.equals("报名成功")){ + return new ResultUtil<>(0,0,resultUtil); }else{ - return new ResultUtil<>(0,0,"报名成功,以下学员剩余课时不足"+resultUtil);} + return new ResultUtil<>(0,1,resultUtil);} } @@ -579,12 +832,16 @@ String resultUtil = courseStuddentClient.toTrans(toHoliDto); System.out.println("========ToHoliDto========="+resultUtil); + if (resultUtil.equals("换课成功")) { +// return ResultUtil.success(resultUtil); + return new ResultUtil<>(0,0,resultUtil); - if (resultUtil==""){ - return new ResultUtil<>(0,0,"报名成功"); - }else{ - return new ResultUtil<>(0,0,"报名成功,以下学员剩余课时不足"+resultUtil);} - } + }else { + return new ResultUtil<>(0,1,resultUtil);} + } +// if (resultUtil==""){ +// }else{ + //赠课 @@ -594,7 +851,6 @@ ToClassDto toClassDto = new ToClassDto(); toClassDto.setToStudentId(toStudentId); toClassDto.setId(id); - courseStuddentClient.toClass(toClassDto); // Map<String,List<SelectDto>> map = new HashMap<>(); -- Gitblit v1.7.1