| | |
| | | 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; |
| | |
| | | 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.EvaluateStudentService; |
| | | 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; |
| | |
| | | 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; |
| | |
| | | import java.text.ParseException; |
| | | import java.text.SimpleDateFormat; |
| | | import java.util.*; |
| | | import java.util.stream.Collectors; |
| | | |
| | | /** |
| | | * 控制器 |
| | |
| | | @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 { |
| | |
| | | * 跳转到首页 |
| | | */ |
| | | @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"; |
| | | } |
| | | |
| | |
| | | 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; |
| | | } |
| | |
| | | //查询学员信息 |
| | | 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]); |
| | | } |
| | | } |
| | | } |
| | | |
| | |
| | | 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("")) { |
| | | model.addAttribute("images",tStudentDto.getLateralSurface()); |
| | | } |
| | | |
| | | |
| | |
| | | |
| | | |
| | | 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"; |
| | | } |
| | | |
| | |
| | | @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; |
| | | /** |
| | | * 获取列表 |
| | | */ |
| | |
| | | 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); |
| | |
| | | |
| | | List<Map<String,Object>> maps = studentClient.listCom(id); |
| | | |
| | | |
| | | |
| | | return maps; |
| | | } |
| | | |
| | |
| | | evaluateStudent.setImgs(image); |
| | | // evaluateStudent.setInsertTime(new Date()); |
| | | |
| | | |
| | | User user = UserExt.getUser(); |
| | | evaluateStudent.setCoachId(user.getId()); |
| | | appUserClient.save(evaluateStudent); |
| | | // evaluateStudentService.save(evaluateStudent); |
| | | |
| | |
| | | |
| | | @RequestMapping("/updatecom") |
| | | @ResponseBody |
| | | public ResultUtil updatecom(Integer id,String content,String images) { |
| | | public ResultUtil updatecom(@RequestBody StudentPingYuDTO dto) { |
| | | |
| | | EvaluateStudent evaluateStudent = new EvaluateStudent(); |
| | | evaluateStudent.setId(id); |
| | | evaluateStudent.setContent(content); |
| | | evaluateStudent.setImgs(images); |
| | | evaluateStudent.setId(dto.getId()); |
| | | evaluateStudent.setContent(dto.getContent()); |
| | | evaluateStudent.setImgs(dto.getImages()); |
| | | appUserClient.save(evaluateStudent); |
| | | |
| | | // evaluateStudentService.updateById(evaluateStudent); |
| | |
| | | @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); |
| | |
| | | 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(); |
| | | } |
| | | |
| | |
| | | @RequestMapping("/changeStatus/{id}") |
| | | @ResponseBody |
| | | public ResultUtil changeStatus(@PathVariable Integer id) { |
| | | // InsertBackDto insertBackDto= new InsertBackDto(); |
| | | // insertBackDto.setId(id); |
| | | //// insertBackDto.setIds(ids); |
| | | // System.out.println("=====insertBackDto========"+insertBackDto); |
| | | |
| | | courseStuddentClient.changeStatus(id); |
| | | courseStuddentClient.zeroClass(id); |
| | | |
| | | System.out.println("============学员查询接口========="); |
| | | return new ResultUtil<>(0,0,"同意成功",null,null); |
| | | return new ResultUtil<>(0,0,"已同意",null,null); |
| | | } |
| | | |
| | | @RequestMapping("/noStatus/{id}") |
| | | @ResponseBody |
| | | public ResultUtil noStatus(@PathVariable Integer id) { |
| | | // InsertBackDto insertBackDto= new InsertBackDto(); |
| | | // insertBackDto.setId(id); |
| | | //// 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); |
| | | } |
| | | |
| | | /** |
| | |
| | | @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,"编辑成功"); |
| | |
| | | |
| | | updateTimeDto updateTimeDto =new updateTimeDto(date1,id); |
| | | System.out.println("======updateTimeDto=====>"+updateTimeDto); |
| | | courseStuddentClient.updateUseDate(updateTimeDto); |
| | | // courseStuddentClient.updateUseDate(updateTimeDto); |
| | | |
| | | studentClient.update(updateTimeDto); |
| | | |
| | | |
| | | CreateHistoryDto historyDto = new CreateHistoryDto(); |
| | |
| | | toClassDto.setId(id); |
| | | |
| | | courseStuddentClient.toClass(toClassDto); |
| | | |
| | | // Map<String,List<SelectDto>> map = new HashMap<>(); |
| | | // map.put("options",selectDtos); |
| | | return new ResultUtil(0,0,"编辑成功",1,""); |
| | | } |
| | | |
| | |
| | | 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<>(); |
| | |
| | | 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);} |
| | | |
| | | } |
| | | |
| | |
| | | String resultUtil = courseStuddentClient.toTrans(toHoliDto); |
| | | System.out.println("========ToHoliDto========="+resultUtil); |
| | | |
| | | if (resultUtil.equals("换课成功")) { |
| | | 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); |
| | | } |
| | | } |
| | | |
| | | |
| | | //赠课 |
| | | |
| | |
| | | ToClassDto toClassDto = new ToClassDto(); |
| | | toClassDto.setToStudentId(toStudentId); |
| | | toClassDto.setId(id); |
| | | |
| | | courseStuddentClient.toClass(toClassDto); |
| | | |
| | | // Map<String,List<SelectDto>> map = new HashMap<>(); |