| | |
| | | import org.jeecg.common.system.vo.LoginUser; |
| | | import org.jeecg.common.util.TranslateDictTextUtils; |
| | | import org.jeecg.modules.eam.constant.BusinessCodeConst; |
| | | import org.jeecg.modules.eam.dto.EamRepairOrderDto; |
| | | import org.jeecg.modules.eam.dto.EamRepairOrderExport; |
| | | import org.jeecg.modules.eam.entity.EamRepairOrder; |
| | | import org.jeecg.modules.eam.request.EamRepairOrderQuery; |
| | | import org.jeecg.modules.eam.request.EamRepairOrderRequest; |
| | |
| | | import org.jeecg.common.system.base.controller.JeecgController; |
| | | import org.jeecg.modules.system.entity.SysUser; |
| | | import org.jeecg.modules.system.service.ISysUserService; |
| | | import org.jeecgframework.poi.excel.def.NormalExcelConstants; |
| | | import org.jeecgframework.poi.excel.entity.ExportParams; |
| | | import org.jeecgframework.poi.excel.view.JeecgEntityExcelView; |
| | | import org.springframework.web.bind.annotation.*; |
| | | import org.springframework.web.servlet.ModelAndView; |
| | | import io.swagger.annotations.Api; |
| | | import io.swagger.annotations.ApiOperation; |
| | | |
| | | import java.util.Date; |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * @Description: 维修工单 |
| | |
| | | |
| | | /** |
| | | * 领取 |
| | | * |
| | | * @param eamRepairOrder |
| | | * @param id |
| | | * @return |
| | | */ |
| | | @AutoLog(value = "维修工单-领取") |
| | | @ApiOperation(value = "维修工单-领取", notes = "维修工单-领取") |
| | | @PostMapping(value = "/add") |
| | | public Result<?> add(@RequestBody EamRepairOrder eamRepairOrder) { |
| | | if (StringUtils.isBlank(eamRepairOrder.getReportId())) { |
| | | return Result.error("领取失败,请选择维修记录!"); |
| | | } |
| | | @GetMapping(value = "/claim") |
| | | public Result<?> claim(String id) { |
| | | // 校验领取权限 |
| | | LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal(); |
| | | if (!BusinessCodeConst.PCR0002.equals(user.getPost())) { |
| | | return Result.error("领取失败,没有领取权限!"); |
| | | return Result.error("领取失败,没有领取权限!,需维修工领取"); |
| | | } |
| | | eamRepairOrderService.saveRepairOrder(eamRepairOrder); |
| | | return Result.OK("添加成功!"); |
| | | EamRepairOrder eamRepairOrder=eamRepairOrderService.getById(id); |
| | | if (eamRepairOrder==null) { |
| | | return Result.error("维修工单不存在"); |
| | | }else { |
| | | if ("1".equals(eamRepairOrder.getClaimStatus())) { |
| | | return Result.error("该维修工单已被领取"); |
| | | } |
| | | } |
| | | eamRepairOrder.setClaimStatus("1"); |
| | | eamRepairOrder.setActualStartTime(new Date()); |
| | | eamRepairOrderService.updateById(eamRepairOrder); |
| | | return Result.OK("领取成功"); |
| | | } |
| | | |
| | | /** |
| | | * 指派 |
| | | * |
| | | * @param |
| | | * 提交 |
| | | * @param id |
| | | * @return |
| | | */ |
| | | @AutoLog(value = "故障报修-指派") |
| | | @ApiOperation(value = "故障报修-指派", notes = "故障报修-指派") |
| | | @PostMapping(value = "/assign") |
| | | public Result<?> assign(@RequestBody EamReportRepairQuery eamReportRepairQuery) { |
| | | if (StringUtils.isBlank(eamReportRepairQuery.getRepairer())) { |
| | | return Result.error("指派失败,请选择维修工!"); |
| | | } |
| | | // 校验指派权限 |
| | | @AutoLog(value = "维修工单-提交") |
| | | @ApiOperation(value = "维修工单-提交", notes = "维修工单-提交") |
| | | @GetMapping(value = "/submit") |
| | | public Result<?> submit(String id) { |
| | | // 校验领取权限 |
| | | LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal(); |
| | | if (!BusinessCodeConst.PCR0004.equals(user.getPost())) { |
| | | return Result.error("指派失败,没有指派权限!"); |
| | | if (!BusinessCodeConst.PCR0002.equals(user.getPost())) { |
| | | return Result.error("提交失败,没有提交权限!,需维修工提交"); |
| | | } |
| | | // 校验维修工权限 |
| | | SysUser sysUser = sysUserService.getUserByName(eamReportRepairQuery.getRepairer()); |
| | | if (sysUser == null) { |
| | | return Result.error("指派失败,未找到此维修工用户!"); |
| | | } |
| | | if (!BusinessCodeConst.PCR0002.equals(sysUser.getPost())) { |
| | | return Result.error("指派失败,此用户不是维修工!"); |
| | | } |
| | | eamRepairOrderService.assign(eamReportRepairQuery); |
| | | |
| | | return Result.OK("指派成功!"); |
| | | eamRepairOrderService.saveRepairOrder(id); |
| | | return Result.OK("提交成功!"); |
| | | } |
| | | |
| | | /** |
| | |
| | | } |
| | | |
| | | /** |
| | | * 填报详情 |
| | | * @param id |
| | | */ |
| | | @AutoLog(value = "维修工单-填报详情") |
| | | @ApiOperation(value = "维修工单-填报详情", notes = "维修工单-填报详情") |
| | | @GetMapping(value = "/queryByReportId") |
| | | public Result<?> queryByReportId(@RequestParam(name = "id", required = true) String id) { |
| | | return Result.ok(eamRepairOrderService.queryByReportId(id)); |
| | | } |
| | | |
| | | /** |
| | | * 填报维修工单 |
| | | * @param eamRepairOrderDto |
| | | */ |
| | | @ApiOperation(value = "维修工单-填报维修工单", notes = "维修工单-填报维修工单") |
| | | @PostMapping(value = "/report") |
| | | public Result<?> report(@RequestBody EamRepairOrderDto eamRepairOrderDto) { |
| | | // 校验领取权限 |
| | | LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal(); |
| | | if (!BusinessCodeConst.PCR0002.equals(user.getPost())) { |
| | | return Result.error("填报失败,没有填报权限!,需维修工提交"); |
| | | } |
| | | if (eamRepairOrderDto == null) { |
| | | return Result.error("填报的对象不能为空!"); |
| | | }else { |
| | | boolean b = eamRepairOrderService.report(eamRepairOrderDto); |
| | | if(!b) { |
| | | return Result.error("填报失败,请重试"); |
| | | }else { |
| | | return Result.OK("填报成功"); |
| | | } |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 通过id查询 |
| | | * |
| | | * @param id |
| | |
| | | translateDictTextUtils.translateField("reportStatus", eamRepairOrder.getReportStatus(), item, "report_repair_status"); |
| | | translateDictTextUtils.translateField("equipmentId", eamRepairOrder.getEquipmentId(), item, "eam_equipment,id,equipment_code"); |
| | | translateDictTextUtils.translateField("repairStatus", eamRepairOrder.getRepairStatus(), item, "report_repair_status"); |
| | | translateDictTextUtils.translateField("repairer", eamRepairOrder.getRepairer(), item, "sys_user,username,realname"); |
| | | return Result.OK(item); |
| | | } catch (Exception e) { |
| | | return Result.error("数据转译失败!"); |
| | |
| | | * 导出excel |
| | | * |
| | | * @param request |
| | | * @param eamRepairOrder |
| | | * @param eamRepairOrderQuery |
| | | */ |
| | | @RequestMapping(value = "/exportXls") |
| | | public ModelAndView exportXls(HttpServletRequest request, EamRepairOrder eamRepairOrder) { |
| | | return super.exportXls(request, eamRepairOrder, EamRepairOrder.class, "维修工单"); |
| | | public ModelAndView exportXls(HttpServletRequest request, EamRepairOrderQuery eamRepairOrderQuery) { |
| | | LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); |
| | | List<EamRepairOrderExport> eamRepairOrderExports=eamRepairOrderService.exportList(eamRepairOrderQuery); |
| | | ModelAndView mv = new ModelAndView(new JeecgEntityExcelView()); |
| | | mv.addObject(NormalExcelConstants.FILE_NAME, "维修工单台账"); //此处设置的filename无效 ,前端会重更新设置一下 |
| | | mv.addObject(NormalExcelConstants.CLASS, EamRepairOrderExport.class); |
| | | mv.addObject(NormalExcelConstants.PARAMS, new ExportParams("维修工单台账" + "报表", "导出人:" + sysUser.getRealname(), "维修工单台账")); |
| | | mv.addObject(NormalExcelConstants.DATA_LIST, eamRepairOrderExports); |
| | | return mv; |
| | | } |
| | | |
| | | } |