package org.jeecg.modules.mdc.controller; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.StringUtils; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; import org.apache.shiro.SecurityUtils; import org.jeecg.common.api.vo.Result; import org.jeecg.common.aspect.annotation.AutoLog; import org.jeecg.common.system.base.controller.JeecgController; import org.jeecg.common.system.vo.LoginUser; import org.jeecg.modules.mdc.entity.MdcDriveTypeParamConfig; import org.jeecg.modules.mdc.entity.MdcEquipmentRepair; import org.jeecg.modules.mdc.service.IMdcEquipmentRepairService; import org.jeecg.modules.mdc.util.DateUtils; import org.jeecg.modules.mdc.vo.MdcEquipmentRepairVo; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import org.springframework.web.servlet.ModelAndView; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; /** * @Description: 设备维修休班 * @Author: Sake * @Date: 2023-04-06 16:54 */ @Slf4j @Api(tags = "设备维修休班") @RestController @RequestMapping("/mdc/mdcEquipmentRepair") public class MdcEquipmentRepairController extends JeecgController { @Autowired private IMdcEquipmentRepairService mdcEquipmentRepairService; /** * 设备维修休班-新增 * @param repairVo * @return */ @AutoLog(value = "设备维修休班-新增") @ApiOperation(value = "设备维修休班-新增", notes = "设备维修休班-新增") @PostMapping("/add") public Result addMdcEquipment(@RequestBody MdcEquipmentRepairVo repairVo) { if (StringUtils.isBlank(repairVo.getEquipmentIds())) { return Result.error("未选择设备,请排查!"); } boolean result = mdcEquipmentRepairService.addMdcRepair(repairVo); if (!result) { return Result.error("时间段数据已经存在,请排查!"); } return Result.OK("新增成功"); } /** * 设备维修休班-分页查询 * @param pageNo * @param pageSize * @param repair * @param req * @return */ @AutoLog(value = "设备维修休班-分页查询") @ApiOperation(value = "设备维修休班-分页查询", notes = "设备维修休班-分页查询") @GetMapping("/pageList") public Result pageList(@RequestParam(value = "pageNo", defaultValue = "1") Integer pageNo, @RequestParam(value = "pageSize", defaultValue = "10") Integer pageSize, MdcEquipmentRepair repair, HttpServletRequest req) { if (repair == null) { return Result.error("请传递有效参数!"); } LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal(); String userId = user.getId(); Page page = new Page(pageNo, pageSize); IPage mdcEquipmentRepairIPage = mdcEquipmentRepairService.pageList(userId, page, repair, req); return Result.OK(mdcEquipmentRepairIPage); } /** * 编辑 * * @param repair * @return */ @AutoLog(value = "设备维修休班-编辑") @ApiOperation(value = "设备维修休班-编辑", notes = "编辑") @PutMapping(value = "/edit") public Result edit(@RequestBody MdcEquipmentRepair repair) { //根据id查询原有数据 MdcEquipmentRepair equipmentRepair = mdcEquipmentRepairService.getById(repair.getId()); if (!equipmentRepair.getStartTime().equals(repair.getStartTime())) { if (equipmentRepair.getStartTime().before(DateUtils.getTodayZero(DateUtils.getNow()))) { return Result.error("修改失败!原纪录开始时间小于当前时间!"); } } boolean result = mdcEquipmentRepairService.updateMdcRepair(repair); if (!result) { return Result.error("时间段数据已经存在,请排查!"); } return Result.OK("修改成功!"); } /** * 通过id删除 * * @param id * @return */ @AutoLog("设备维修休班-根据id删除") @ApiOperation(value = "设备维修休班-根据id删除", notes = "设备维修休班-根据id删除") @DeleteMapping(value = "/delete") public Result delete(@RequestParam(name = "id", required = true) String id) { boolean b = false; MdcEquipmentRepair mdcEquipmentRepair = mdcEquipmentRepairService.getById(id); if (mdcEquipmentRepair.getStartTime().before(DateUtils.getTodayZero(DateUtils.getNow()))) { //记录开始时间在今天之前 return Result.error("删除失败!当前记录已计算统计数据!"); } else { //正常删除 b = mdcEquipmentRepairService.removeById(id); } if (b) { return Result.OK("删除成功!"); } else { return Result.error("删除失败"); } } /** * excel导出 * * @param request * @param repair * @return */ @RequestMapping(value = "/exportXls") public ModelAndView exportXls(HttpServletRequest request, MdcEquipmentRepair repair) { return super.exportXls(request, repair, MdcEquipmentRepair.class, "设备维修休班"); } }