package com.dsh.guns.modular.system.controller.code; import com.dsh.course.feignClient.account.CityManagerClient; import com.dsh.course.feignClient.account.CoachClient; import com.dsh.course.feignClient.account.CoachTypeClient; import com.dsh.course.feignClient.account.model.CityManager; import com.dsh.course.feignClient.account.model.Coach; import com.dsh.course.feignClient.account.model.CoachSerchVO; import com.dsh.course.feignClient.account.model.CoachType; import com.dsh.course.feignClient.other.model.Site; import com.dsh.guns.config.UserExt; import com.dsh.guns.modular.system.model.CoachChangeStateVO; import com.dsh.guns.modular.system.model.CoachQuery; import com.dsh.guns.modular.system.model.Store; import com.dsh.guns.modular.system.util.ResultUtil; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.*; import java.text.SimpleDateFormat; import java.util.*; /** * 教练 */ @Controller @RequestMapping("/tCoach") public class CoachController { private String PREFIX = "/system/tCoach/"; @Autowired private CoachTypeClient coachTypeClient; @Autowired private CoachClient coachClient; @Autowired private CityManagerClient cityManagerClient; /** * 跳转教练管理首页 */ @RequestMapping("") public String index(Model model) { Integer objectType = UserExt.getUser().getObjectType(); Integer objectId = UserExt.getUser().getObjectId(); List list1=coachClient.getProvince(); CoachQuery coachQuery = new CoachQuery(); List data = coachClient.listAll(coachQuery); List province = new ArrayList<>(); for (CoachSerchVO coach : data) { province.add(coach.getProvince()); } HashSet set = new HashSet(province); String roleid = UserExt.getUser().getRoleid(); model.addAttribute("role",roleid); model.addAttribute("data",data); model.addAttribute("list",set); model.addAttribute("objectType",objectType); model.addAttribute("objectId",objectId); return PREFIX + "TCoach.html"; } /** * 获取教练列表 */ @RequestMapping(value = "/getCity") @ResponseBody public List getCity(String province) { List city = coachClient.getCity(province); List res = new ArrayList<>(); List list = new ArrayList<>(); for (Coach coach : city) { if (!list.contains(coach.getCity())){ res.add(coach); list.add(coach.getCity()); } } return res; } /** * 跳转添加教练页面 */ @RequestMapping("/addCoach") public String addCoach(Model model) { List province = cityManagerClient.listAll(); Set seenNames = new HashSet<>(); List result = new ArrayList<>(); for (CityManager cityManager : province) { if(!seenNames.contains(cityManager.getProvince())){ result.add(cityManager); seenNames.add(cityManager.getProvince()); } } Integer objectType = UserExt.getUser().getObjectType(); Integer objectId = UserExt.getUser().getObjectId(); CoachQuery coachQuery = new CoachQuery(); List data = coachClient.listAll(coachQuery); List list = coachTypeClient.list(); String roleid = UserExt.getUser().getRoleid(); model.addAttribute("role",roleid); model.addAttribute("data",data); model.addAttribute("list",result); model.addAttribute("objectType",objectType); model.addAttribute("objectId",objectId); model.addAttribute("coachType",list); return PREFIX + "TCoach_add.html"; } /** * 添加教练 */ @ResponseBody @RequestMapping(value = "/add") public ResultUtil addCoach(@RequestBody Coach coach) { Integer objectId = UserExt.getUser().getObjectId(); if (UserExt.getUser().getObjectType() == 2){ CityManager cityManager = cityManagerClient.queryCityManagerById(objectId); coach.setProvince(cityManager.getProvince()); coach.setProvinceCode(cityManager.getProvinceCode()); coach.setCity(cityManager.getCity()); coach.setCityCode(cityManager.getCityCode()); coach.setCityManagerId(objectId); } if (coach.getDiploma().equals("")) { coach.setDiploma(null); } if (coach.getCertificateImg().equals("") ){ coach.setCertificateImg(null); } if (coach.getCertificateImg()!=null){ coach.setCertificateImg(coach.getCertificateImg().substring(1)); } coach.setInsertTime(new Date()); coach.setState(1); coachClient.addCoach(coach); return ResultUtil.success("添加成功"); } /** * 1为冻结 2为解冻 * * @return */ @RequestMapping("/changeState") @ResponseBody public Object changeState(@RequestBody CoachChangeStateVO vo){ coachClient.changeState(vo); return ResultUtil.success(); } /** * 跳转修改教练页面 */ @RequestMapping("/updateCoach/{id}") public String updateCoach(Model model, @PathVariable("id") Integer id) { CoachQuery coachQuery = new CoachQuery(); coachQuery.setId(id); List data = coachClient.listAll(coachQuery); List province = cityManagerClient.listAll(); Set seenNames = new HashSet<>(); List result = new ArrayList<>(); List city = new ArrayList<>(); for (CityManager cityManager : province) { if(!seenNames.contains(cityManager.getProvince())){ result.add(cityManager); seenNames.add(cityManager.getProvince()); } if(data.get(0).getProvince().equals(cityManager.getProvince())){ city.add(cityManager); } } Integer objectType = UserExt.getUser().getObjectType(); Integer objectId = UserExt.getUser().getObjectId(); List accounts = cityManagerClient.getAccount(data.get(0).getCity()); List list = coachTypeClient.list(); String roleid = UserExt.getUser().getRoleid(); model.addAttribute("role",roleid); model.addAttribute("data",data.get(0)); model.addAttribute("list",result); model.addAttribute("city",city); model.addAttribute("cityManagers",accounts); model.addAttribute("objectType",objectType); model.addAttribute("objectId",objectId); model.addAttribute("coachType",list); // 1为查看详情 model.addAttribute("type",0); String[] split = data.get(0).getCertificateImg().split(","); List pictures = new ArrayList<>(Arrays.asList(split)); model.addAttribute("pictures",pictures); SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd"); String birthday = format.format(data.get(0).getBirthday()); model.addAttribute("birthday",birthday); return PREFIX + "TCoach_edit.html"; } /** * 跳转修改教练页面 */ @RequestMapping("/infoCoach/{id}") public String infoCoach(Model model, @PathVariable("id") Integer id) { CoachQuery coachQuery = new CoachQuery(); coachQuery.setId(id); List data = coachClient.listAll(coachQuery); List province = cityManagerClient.listAll(); Set seenNames = new HashSet<>(); List result = new ArrayList<>(); List city = new ArrayList<>(); for (CityManager cityManager : province) { if(!seenNames.contains(cityManager.getProvince())){ result.add(cityManager); seenNames.add(cityManager.getProvince()); } if(data.get(0).getProvince().equals(cityManager.getProvince())){ city.add(cityManager); } } Integer objectType = UserExt.getUser().getObjectType(); Integer objectId = UserExt.getUser().getObjectId(); List accounts = cityManagerClient.getAccount(data.get(0).getCity()); List list = coachTypeClient.list(); String roleid = UserExt.getUser().getRoleid(); model.addAttribute("role",roleid); model.addAttribute("data",data.get(0)); model.addAttribute("list",result); model.addAttribute("city",city); model.addAttribute("cityManagers",accounts); model.addAttribute("objectType",objectType); model.addAttribute("objectId",objectId); model.addAttribute("coachType",list); // 1为查看详情 model.addAttribute("type",1); String[] split = data.get(0).getCertificateImg().split(","); List pictures = new ArrayList<>(Arrays.asList(split)); model.addAttribute("pictures",pictures); SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd"); String birthday = format.format(data.get(0).getBirthday()); model.addAttribute("birthday",birthday); return PREFIX + "Operator_edit.html"; } /** * 获取教练列表 */ @RequestMapping(value = "/list") @ResponseBody public List list(String province, String city, String name, String phone) { CoachQuery coachQuery = new CoachQuery(); coachQuery.setProvince(province); coachQuery.setCity(city); coachQuery.setName(name); coachQuery.setPhone(phone); return coachClient.listAll(coachQuery); } }