package org.jeecg.modules.eam.controller;
|
|
import java.util.Arrays;
|
import java.util.List;
|
import javax.annotation.Resource;
|
import javax.servlet.http.HttpServletRequest;
|
|
import com.alibaba.fastjson.JSONObject;
|
import com.alibaba.fastjson.parser.Feature;
|
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
import com.fasterxml.jackson.core.JsonProcessingException;
|
import com.fasterxml.jackson.databind.ObjectMapper;
|
import org.jeecg.common.api.vo.FileUploadResult;
|
import org.jeecg.common.api.vo.Result;
|
import org.jeecg.common.constant.CommonConstant;
|
import org.jeecg.common.system.query.QueryGenerator;
|
import org.jeecg.common.aspect.annotation.AutoLog;
|
import org.jeecg.common.util.TranslateDictTextUtils;
|
import org.jeecg.modules.eam.constant.ReportRepairEnum;
|
import org.jeecg.modules.eam.entity.EamReportRepair;
|
import org.jeecg.modules.eam.request.EamReportRepairQuery;
|
import org.jeecg.modules.eam.service.IEamReportRepairService;
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import lombok.extern.slf4j.Slf4j;
|
import org.jeecg.common.system.base.controller.JeecgController;
|
|
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.servlet.ModelAndView;
|
import io.swagger.annotations.Api;
|
import io.swagger.annotations.ApiOperation;
|
|
/**
|
* @Description: 故障报修
|
* @Author: Lius
|
* @Date: 2025-04-01
|
*/
|
@Slf4j
|
@Api(tags = "故障报修")
|
@RestController
|
@RequestMapping("/eam/eamReportRepair")
|
public class EamReportRepairController extends JeecgController<EamReportRepair, IEamReportRepairService> {
|
|
@Resource
|
private IEamReportRepairService eamReportRepairService;
|
|
@Resource
|
private ObjectMapper objectMapper;
|
|
@Resource
|
private TranslateDictTextUtils translateDictTextUtils;
|
|
/**
|
* 分页列表查询
|
*
|
* @param eamReportRepairQuery
|
* @param pageNo
|
* @param pageSize
|
* @return
|
*/
|
@AutoLog(value = "故障报修-分页列表查询")
|
@ApiOperation(value = "故障报修-分页列表查询", notes = "故障报修-分页列表查询")
|
@GetMapping(value = "/list")
|
public Result<?> queryPageList(EamReportRepairQuery eamReportRepairQuery,
|
@RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
|
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize) {
|
Page<EamReportRepair> page = new Page<EamReportRepair>(pageNo, pageSize);
|
IPage<EamReportRepair> pageList = eamReportRepairService.pageList(page, eamReportRepairQuery);
|
return Result.OK(pageList);
|
}
|
|
/**
|
* 添加
|
*
|
* @param eamReportRepair
|
* @return
|
*/
|
@AutoLog(value = "故障报修-添加")
|
@ApiOperation(value = "故障报修-添加", notes = "故障报修-添加")
|
@PostMapping(value = "/add")
|
public Result<?> add(@RequestBody EamReportRepair eamReportRepair) {
|
EamReportRepair b = eamReportRepairService.add(eamReportRepair);
|
if(b == null) {
|
return Result.error("添加失败!");
|
}
|
return Result.OK("添加成功!");
|
}
|
|
/**
|
* 编辑
|
*
|
* @param eamReportRepair
|
* @return
|
*/
|
@AutoLog(value = "故障报修-编辑")
|
@ApiOperation(value = "故障报修-编辑", notes = "故障报修-编辑")
|
@RequestMapping(value = "/edit", method = {RequestMethod.PUT, RequestMethod.POST})
|
public Result<?> edit(@RequestBody EamReportRepair eamReportRepair) {
|
eamReportRepairService.updateById(eamReportRepair);
|
return Result.OK("编辑成功!");
|
}
|
|
/**
|
* 通过id作废
|
*
|
* @param id
|
* @return
|
*/
|
@AutoLog(value = "故障报修-作废")
|
@ApiOperation(value = "故障报修-作废", notes = "故障报修-作废")
|
@DeleteMapping(value = "/abolish")
|
public Result<?> abolish(@RequestParam(name = "id", required = true) String id) {
|
eamReportRepairService.update(new LambdaUpdateWrapper<EamReportRepair>().set(EamReportRepair::getReportStatus, ReportRepairEnum.ABOLISH.name()).eq(EamReportRepair::getId, id));
|
return Result.OK("作废成功!");
|
}
|
|
/**
|
* 批量作废
|
*
|
* @param ids
|
* @return
|
*/
|
@AutoLog(value = "故障报修-批量作废")
|
@ApiOperation(value = "故障报修-批量作废", notes = "故障报修-批量作废")
|
@DeleteMapping(value = "/abolishBatch")
|
public Result<?> abolishBatch(@RequestParam(name = "ids", required = true) String ids) {
|
List<EamReportRepair> eamReportRepairs = eamReportRepairService.listByIds(Arrays.asList(ids.split(",")));
|
eamReportRepairs.forEach(eamReportRepair -> eamReportRepair.setReportStatus(ReportRepairEnum.ABOLISH.name()));
|
this.eamReportRepairService.updateBatchById(eamReportRepairs);
|
return Result.OK("批量作废成功!");
|
}
|
|
/**
|
* 通过id查询
|
*
|
* @param id
|
* @return
|
*/
|
@AutoLog(value = "故障报修-通过id查询")
|
@ApiOperation(value = "故障报修-通过id查询", notes = "故障报修-通过id查询")
|
@GetMapping(value = "/queryById")
|
public Result<?> queryById(@RequestParam(name = "id", required = true) String id) {
|
EamReportRepair eamReportRepair = eamReportRepairService.getById(id);
|
if (eamReportRepair == null) {
|
return Result.error("未找到对应数据!");
|
}
|
try {
|
String json = objectMapper.writeValueAsString(eamReportRepair);
|
JSONObject item = JSONObject.parseObject(json, Feature.OrderedField);
|
translateDictTextUtils.translateField("createBy", eamReportRepair.getCreateBy(), item, "sys_user,realname,username");
|
translateDictTextUtils.translateField("breakdownFlag", eamReportRepair.getBreakdownFlag(), item, "breakdown_flag");
|
translateDictTextUtils.translateField("faultType", eamReportRepair.getFaultType(), item, "fault_reason_category");
|
translateDictTextUtils.translateField("reportStatus", eamReportRepair.getReportStatus(), item, "report_repair_status");
|
translateDictTextUtils.translateField("equipmentId", eamReportRepair.getEquipmentId(), item, "eam_equipment,id,equipment_code");
|
return Result.OK(item);
|
} catch (Exception e) {
|
return Result.error("数据转译失败!");
|
}
|
}
|
|
/**
|
* 导出excel
|
*
|
* @param request
|
* @param eamReportRepair
|
*/
|
@RequestMapping(value = "/exportXls")
|
public ModelAndView exportXls(HttpServletRequest request, EamReportRepair eamReportRepair) {
|
return super.exportXls(request, eamReportRepair, EamReportRepair.class, "故障报修");
|
}
|
|
}
|