package com.dsh.guns.modular.system.controller.general; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.dsh.course.feignClient.driver.DriverClient; import com.dsh.course.feignClient.driver.model.DriverInfoReq; import com.dsh.course.feignClient.driver.model.DriverInfoRes; import com.dsh.course.mapper.DriverVerifyMapper; import com.dsh.guns.config.UserExt; import com.dsh.guns.core.base.controller.BaseController; import com.dsh.guns.core.common.constant.factory.PageFactory; import com.dsh.guns.core.util.SinataUtil; import com.dsh.guns.modular.system.model.DriverVerify; import com.dsh.guns.modular.system.model.TCar; import com.dsh.guns.modular.system.model.TCarService; import com.dsh.guns.modular.system.service.ITCarService; import com.dsh.guns.modular.system.service.ITCarServiceService; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; import java.util.List; import java.util.Map; /** * 司机审核列表控制器 * * @author fengshuonan * @Date 2020-06-04 17:35:28 */ @Controller @RequestMapping("/tDriverVerify") public class TDriverVerifyVerifyController extends BaseController { private String PREFIX = "/system/tDriver/"; @Autowired private DriverVerifyMapper driverVerifyMapper; /** * 跳转到司机审核列表首页 */ @RequestMapping("") public String index(Model model) { model.addAttribute("language", UserExt.getLanguage()); return PREFIX + "tDriverVerify.html"; } /** * 跳转到审核通过司机首页 */ @RequestMapping("/DriverVerify") public String yesDriverVerify() { return PREFIX + "DriverVerify.html"; } @Autowired private ITCarServiceService carServiceService; @Autowired private ITCarService carService; /** * 跳转到修改审核司机 */ @RequestMapping(value = "/list") @ResponseBody public Object list(String insertTime, String companyName, String phone, String account, Integer state) { String sTime=null; String eTime=null; if(insertTime!=null && !"".equals(insertTime)){ sTime=insertTime.split(" - ")[0]+" 00:01"; eTime=insertTime.split(" - ")[1]+" 23:59"; } Page> page = new PageFactory>().defaultPage(); List> list = driverVerifyMapper.getList(page,sTime,eTime,companyName,phone,account,state); for (Map stringObjectMap : list) { Integer driverId = (Integer) stringObjectMap.get("driverId"); DriverInfoRes driver = driverClient.getDriver(driverId); stringObjectMap.put("driverName",driver.getName()); stringObjectMap.put("headImg",driver.getHeadImgUrl()); stringObjectMap.put("sex",driver.getSex()); stringObjectMap.put("age",driver.getDriverAge()); stringObjectMap.put("driverNumImg",driver.getDriveCardImgUrl()); Integer newId = (Integer) stringObjectMap.get("newId"); TCar byId = carService.getById(newId); List tCarServices = carServiceService.getBaseMapper().selectList(new LambdaQueryWrapper().eq(TCarService::getCarId, byId.getId())); String carServer = null; if(tCarServices.size()>1){ carServer = "3"; } else { carServer =tCarServices.get(0).getType().toString(); } stringObjectMap.put("carServer",carServer); stringObjectMap.put("newCarId",byId.getCarLicensePlate()); Integer oldId = (Integer) stringObjectMap.get("oldId"); if(oldId!=null){ TCar oldId1 = carService.getById(oldId); stringObjectMap.put("oldCarId",oldId1.getCarLicensePlate()); }else { stringObjectMap.put("oldCarId",null); } } page.setRecords(list); return super.packForBT(page); } @RequestMapping(value = "/tDriverVerify_immediately/{id}") public Object immediately(@PathVariable Integer id, Model model) { DriverVerify driverVerify = driverVerifyMapper.selectById(id); String carServer = driverVerify.getCarServer(); Integer newId1 = driverVerify.getNewId(); List list = carServiceService.list(new LambdaQueryWrapper().eq(TCarService::getCarId, newId1)); if(list.size()>1){ carServer="3"; }else { carServer = list.get(0).getType().toString(); } if(carServer.equals("1")){ model.addAttribute("carServer","摩托车"); }else if(carServer.equals("2")){ model.addAttribute("carServer","同城快送"); }else if(carServer.equals("3")){ model.addAttribute("carServer","摩托车、同城快送"); } Integer driverId = driverVerify.getDriverId(); DriverInfoRes driver = driverClient.getDriver(driverId); driverVerify.setDriverName(driver.getName()); driverVerify.setHeadImg(driver.getHeadImgUrl()); driverVerify.setSex(driver.getSex()==1?"男":"女"); driverVerify.setAge(driver.getDriverAge()); driverVerify.setDriverNumImg(driver.getDriveCardImgUrl()); Integer newId = driverVerify.getNewId(); TCar byId = carService.getById(newId); driverVerify.setNewCarId(byId.getCarLicensePlate()); Integer oldId = driverVerify.getOldId(); if(oldId!=null) { TCar oldId1 = carService.getById(oldId); driverVerify.setOldCarId(oldId1.getCarLicensePlate()); } model.addAttribute("item",driverVerify); model.addAttribute("language",UserExt.getLanguage()); return PREFIX + "tDriverVerify_edit.html"; } @RequestMapping(value = "/delete") @ResponseBody public Object delete( Integer tDriverVerifyId ) { DriverVerify driverVerify = driverVerifyMapper.selectById(tDriverVerifyId); driverVerify.setState(4); driverVerifyMapper.updateById(driverVerify); return SUCCESS_TIP; } @Autowired private DriverClient driverClient; @RequestMapping(value = "/submit") @ResponseBody public Object submit(Integer id,Integer authState) { if (SinataUtil.isNotEmpty(id) && SinataUtil.isNotEmpty(authState)){ DriverVerify driverVerify = driverVerifyMapper.selectById(id); driverVerify.setState(authState); if(authState==2){ TCar tCar = carService.getById(driverVerify.getNewId()); DriverInfoRes tDriver = driverClient.getDriver(driverVerify.getDriverId()); tDriver.setCarId(tCar.getId()); DriverInfoReq driverInfoReq = new DriverInfoReq(); BeanUtils.copyProperties(tDriver,driverInfoReq); driverClient.updateDriver(driverInfoReq); } driverVerifyMapper.updateById(driverVerify); } return SUCCESS_TIP; } }