package org.jeecg.modules.eam.controller; import java.text.ParseException; import java.util.Arrays; import java.util.List; import java.util.Map; import javax.servlet.http.HttpServletRequest; import org.jeecg.modules.eam.entity.*; import org.jeecg.modules.eam.service.IEamEquipmentService; import org.jeecg.modules.eam.service.IEquipmentChangeDetailService; import org.jeecg.modules.eam.service.IEquipmentChangeService; import org.jeecg.modules.eam.service.IEquipmentScrapDetailService; import org.jeecg.common.api.vo.Result; import org.jeecg.common.system.query.QueryGenerator; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.transaction.annotation.Transactional; import org.springframework.web.bind.annotation.*; 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 io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.jeecg.common.aspect.annotation.AutoLog; /** * @Description: 设备变动 * @Author: jeecg-boot * @Date: 2023-04-25 * @Version: V1.0 */ @Api(tags = "设备报废") @RestController @RequestMapping("/eam/equipmentChange") @Slf4j public class EquipmentChangeController { @Autowired private IEquipmentChangeService equipmentChangeService; @Autowired private IEquipmentScrapDetailService equipmentScrapDetailService; @Autowired private IEquipmentChangeDetailService equipmentChangeDetailService; @Autowired private IEamEquipmentService equipmentService; /** * 分页列表查询 * * @param equipmentChange * @param pageNo * @param pageSize * @param req * @return */ //@AutoLog(value = "设备变动-分页列表查询") @ApiOperation(value = "设备变动-分页列表查询", notes = "设备变动-分页列表查询") @GetMapping(value = "/list") public Result> queryPageList(EquipmentChange equipmentChange, @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo, @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize, HttpServletRequest req) { QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(equipmentChange, req.getParameterMap()); Page page = new Page(pageNo, pageSize); IPage pageList = equipmentChangeService.page(page, queryWrapper); return Result.OK(pageList); } /** * 通过id查询 * * @param id * @return */ //@AutoLog(value = "设备封存明细通过主表ID查询") @ApiOperation(value="设备封存明细主表ID查询", notes="设备封存明细-通主表ID查询") @GetMapping(value = "/queryEquipmentSealDetailByMainId") public Result> queryEquipmentSealDetailListByMainId(@RequestParam(name="id",required=true) String id) { List equipmentSealDetailList = equipmentChangeDetailService.selectByMainId(id); return Result.OK(equipmentSealDetailList); } /** * qsw 2023-4-26 */ @GetMapping("getEquipmentChangeList") public Result getInspectionStandardList(@RequestParam("pageNo") Integer pageNo, @RequestParam("pageSize") Integer pageSize, @RequestParam Map params) { String changeMethod = String.valueOf(params.get("changeMethod")); if (changeMethod.equals("change")) { IPage> equipmentChangeList = equipmentChangeService.getEquipmentChangeList(pageNo, pageSize, params); List> records = equipmentChangeList.getRecords(); for (Map record : records) { String equipmentTransferId = (String) record.get("id"); List> equipmentChangeDetailList = equipmentChangeDetailService.getEquipmentChangeDetailList(equipmentTransferId); record.put("equipmentChangeDetailList", equipmentChangeDetailList); } return Result.ok(equipmentChangeList); } else { return Result.ok("查找失败!"); } } /** * 撤回 * * @param equipmentChange * @return */ @AutoLog(value = "设备变动-提交") @ApiOperation(value = "设备变动-提交", notes = "设备变动-提交") @PostMapping(value = "/submit") public Result submit(@RequestBody EquipmentChange equipmentChange) { String id = equipmentChange.getId(); equipmentChangeService.submit(id); return Result.OK("提交成功!"); } /** * 撤回 * * @param equipmentChange * @return */ @AutoLog(value = "设备变动-撤回") @ApiOperation(value = "设备变动-撤回", notes = "设备变动-撤回") @PostMapping(value = "/revocation") public Result revocation(@RequestBody EquipmentChange equipmentChange) { String id = equipmentChange.getId(); equipmentChangeService.revocation(id); return Result.OK("撤回成功!"); } /** * 审批通过 * * @param equipmentChange * @return */ @AutoLog(value = "设备变动-审批通过") @ApiOperation(value = "设备变动-审批通过", notes = "设备变动-审批通过") @PostMapping(value = "/approval") public Result approval(@RequestBody EquipmentChange equipmentChange) { equipmentChangeService.approval(equipmentChange); return Result.OK("审批通过!"); } /** * 驳回 * * @param equipmentChange * @return */ @AutoLog(value = "设备变动-驳回") @ApiOperation(value = "设备变动-驳回", notes = "设备变动-驳回") @PostMapping(value = "/reject") public Result reject(@RequestBody EquipmentChange equipmentChange) { equipmentChangeService.reject(equipmentChange); return Result.OK("驳回成功!"); } @AutoLog(value = "设备变动-添加") @ApiOperation(value = "设备变动-添加", notes = "设备变动-添加") @PostMapping(value = "/add") @Transactional(rollbackFor = {Exception.class}) public Result add(@RequestBody EquipmentChange equipmentChange) throws ParseException { equipmentChange.setAuditStatus("notSubmitted"); equipmentChangeService.save(equipmentChange); List equipmentChangeDetailList = equipmentChange.getEquipmentChangeDetailList(); for (EquipmentChangeDetail equipmentChangeDetail : equipmentChangeDetailList) { equipmentChangeDetail.setEquipmentChangeId(equipmentChange.getId()); equipmentChangeDetail.setId(null); Equipment equipment = equipmentService.getById(equipmentChangeDetail.getEquipmentId()); equipment.setLocation(equipmentChangeDetail.getAfterLocation()); equipment.setFunctionary(equipmentChangeDetail.getAfterFunctionary()); equipment.setUseId(equipmentChangeDetail.getAfterUsageDepartId()); equipment.setManager(equipmentChangeDetail.getAfterManager()); equipment.setManageId(equipmentChangeDetail.getAfterDepartId()); equipment.setTechnologyStatus(equipmentChangeDetail.getAfterTechnologyStatus()); equipment.setEquipmentStatus(equipmentChangeDetail.getAfterEquipmentStatus()); equipmentService.updateById(equipment); equipmentChangeDetailService.save(equipmentChangeDetail); } return Result.OK("添加成功!"); } /** * @param equipmentChange * @return */ @AutoLog(value = "设备调动-编辑") @ApiOperation(value = "设备调动-编辑", notes = "设备调动-编辑") @RequestMapping(value = "/edit", method = {RequestMethod.PUT, RequestMethod.POST}) @Transactional(rollbackFor = {Exception.class}) public Result edit(@RequestBody EquipmentChange equipmentChange) { equipmentChangeService.updateById(equipmentChange); List equipmentChangeDetails = equipmentChangeDetailService.lambdaQuery() .eq(EquipmentChangeDetail::getEquipmentChangeId, equipmentChange.getId()) .eq(EquipmentChangeDetail::getDelFlag, 0) .eq(EquipmentChangeDetail::getStatus, "1").list(); for (EquipmentChangeDetail equipmentChangeDetail : equipmentChangeDetails) { equipmentChangeDetail.setDelFlag(1); equipmentChangeDetailService.updateById(equipmentChangeDetail); } //2.重新持久设备变动 List equipmentChangeDetailList = equipmentChange.getEquipmentChangeDetailList(); for (EquipmentChangeDetail equipmentChangeDetail : equipmentChangeDetailList) { equipmentChangeDetail.setId(null); equipmentChangeDetail.setEquipmentChangeId(equipmentChange.getId()); equipmentChangeDetailService.save(equipmentChangeDetail); } return Result.OK("编辑成功!"); } /* */ /** * 编辑 * * @param equipmentChangePage * @return *//* @AutoLog(value = "设备变动-编辑") @ApiOperation(value = "设备变动-编辑", notes = "设备变动-编辑") //@RequiresPermissions("org.jeecg.modules.demo:mom_eam_equipment_change:edit") @RequestMapping(value = "/edit", method = {RequestMethod.PUT, RequestMethod.POST}) public Result edit(@RequestBody EquipmentScrapPage equipmentChangePage) { EquipmentChange equipmentChange = new EquipmentChange(); BeanUtils.copyProperties(equipmentChangePage, equipmentChange); EquipmentChange equipmentChangeEntity = equipmentChangeService.getById(equipmentChange.getId()); if (equipmentChangeEntity == null) { return Result.error("未找到对应数据"); } equipmentChangeService.updateMain(equipmentChange, equipmentChangePage.getEquipmentScrapDetailList()); return Result.OK("编辑成功!"); } */ /** * 通过id删除 * * @param id * @return */ @AutoLog(value = "设备变动-通过id删除") @ApiOperation(value = "设备变动-通过id删除", notes = "设备变动-通过id删除") //@RequiresPermissions("org.jeecg.modules.demo:mom_eam_equipment_change:delete") @DeleteMapping(value = "/delete") public Result delete(@RequestParam(name = "id", required = true) String id) { equipmentChangeService.delMain(id); return Result.OK("删除成功!"); } /** * 批量删除 * * @param ids * @return */ @AutoLog(value = "设备变动-批量删除") @ApiOperation(value = "设备变动-批量删除", notes = "设备变动-批量删除") //@RequiresPermissions("org.jeecg.modules.demo:mom_eam_equipment_change:deleteBatch") @DeleteMapping(value = "/deleteBatch") public Result deleteBatch(@RequestParam(name = "ids", required = true) String ids) { this.equipmentChangeService.delBatchMain(Arrays.asList(ids.split(","))); 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) { EquipmentChange equipmentChange = equipmentChangeService.getById(id); if (equipmentChange == null) { return Result.error("未找到对应数据"); } return Result.OK(equipmentChange); } }