package org.springblade.modules.equipage.controller; import com.baomidou.mybatisplus.core.metadata.IPage; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiParam; import lombok.AllArgsConstructor; import org.springblade.common.utils.arg; import org.springblade.core.excel.util.ExcelUtil; import org.springblade.core.mp.support.Condition; import org.springblade.core.mp.support.Query; import org.springblade.core.tool.api.R; import org.springblade.core.tool.utils.Func; import org.springblade.modules.FTP.FtpUtil; import org.springblade.modules.equipage.entity.Car; import org.springblade.modules.equipage.service.CarService; import org.springblade.modules.equipage.vo.CarVo; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; import javax.servlet.http.HttpServletResponse; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Date; import java.util.List; /** * @author zhongrj * @time 2021-07-06 * @desc 车辆控制层 */ @RestController @AllArgsConstructor @RequestMapping("/car") public class CarController { private final CarService carService; /** * 自定义分页 * @param query page,size * @param car 车辆信息对象 */ @GetMapping("/page") public R> page(CarVo car, Query query) { IPage pages = carService.selectCarPage(Condition.getPage(query), car); return R.data(pages); } /** * 新增 * @param car 车辆信息对象 */ @PostMapping("/save") @ApiOperation(value = "新增", notes = "传入car") public R save(@RequestBody Car car) { return R.status(carService.save(car)); } /** * 修改 * @param car 车辆信息对象 */ @PostMapping("/update") public R update(@RequestBody Car car) { return R.status(carService.updateById(car)); } /** * 新增或修改 * @param car 车辆信息对象 */ @PostMapping("/submit") public R submit(@RequestBody Car car) throws Exception { boolean status = false; if (null==car.getId()) { car.setDateForProduction(new Date()); //新增 status = carService.save(car); //数据同步 String s1 = "insert into sys_car(id,car_number,number_type,car_type,dept_id," + "person_in_charge,brand,date_for_production,umweltsatz,mode,jurisdiction,picture,driving_conditions) " + "values(" + "'" + car.getId() + "'" + "," + "'" + car.getCarNumber() + "'" + "," + "'" + car.getNumberType() + "'" + "," + "'" + car.getCarType() + "'" + "," + "'" + car.getDeptId() + "'" + "," + "'" + car.getPersonInCharge() + "'" + "," + "'" + car.getBrand() + "'" + "," + "'" + new SimpleDateFormat("yyyy-MM-dd").format(car.getDateForProduction()) + "'" + "," + "'" + car.getUmweltsatz() + "'" + "," + "'" + car.getMode() + "'" + "," + "'" + car.getJurisdiction() + "'" + "," + "'" + car.getPicture() + "'" + "," + "'" +car.getDrivingConditions() + "'" + ")"; FtpUtil.sqlFileUpload(s1); }else { //修改 status = carService.updateById(car); //内网同步 String s1 = "update sys_car set car_number = " + "'" + car.getCarNumber() + "'" + ",number_type = " + "'" + car.getNumberType() + "'" + ",car_type = " + "'" + car.getCarType() + "'" + ",dept_id = " + "'" + car.getDeptId() + "'" + ",person_in_charge = " + "'" + car.getJurisdiction() + "'" + ",brand = " + "'" + car.getBrand() + "'" + ",date_for_production = " + "'" + new SimpleDateFormat("yyyy-MM-dd").format(car.getDateForProduction()) + "'" + ",umweltsatz = " + "'" + car.getUmweltsatz() + "'" + ",mode = " + "'" + car.getMode() + "'" + ",jurisdiction = " + "'" + car.getJurisdiction() + "'" + ",picture = " + "'" + car.getPicture() + "'" + ",driving_conditions = " + "'" + car.getDrivingConditions() + "'" + " " +"where id = " + "'" + car.getId() + "'"; FtpUtil.sqlFileUpload(s1); } return R.status(status); } /** * 删除 * @param ids 车辆信息ids 数组 */ @PostMapping("/remove") public R remove(@ApiParam(value = "主键集合") @RequestParam String ids) { //内网删除 List list = Func.toLongList(ids); list.forEach(id ->{ //内网同步 String s1 = "delete from sys_car where id = " + "'" + id + "'"; FtpUtil.sqlFileUpload(s1); }); return R.status(carService.removeByIds(Func.toLongList(ids))); } /** * 详情 * @param car 车辆信息对象 */ @GetMapping("/detail") @ApiOperation(value = "详情", notes = "传入car") public R detail(Car car) { CarVo detail = carService.selectCarInfo(car); return R.data(detail); } }