package org.jeecg.modules.eam.controller;
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
|
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.constant.CommonConstant;
|
import org.jeecg.common.system.api.ISysBaseAPI;
|
import org.jeecg.common.system.base.controller.JeecgController;
|
import org.jeecg.common.system.query.QueryGenerator;
|
import org.jeecg.common.system.vo.LoginUser;
|
|
import org.jeecg.modules.eam.entity.*;
|
import org.jeecg.modules.eam.service.*;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.servlet.ModelAndView;
|
|
import javax.servlet.http.HttpServletRequest;
|
import javax.servlet.http.HttpServletResponse;
|
import java.text.ParseException;
|
import java.time.Instant;
|
import java.time.LocalDateTime;
|
import java.time.ZoneId;
|
import java.time.format.DateTimeFormatter;
|
import java.util.*;
|
|
/**
|
* @Description: mom_eam_inspection_project
|
* @Author: jeecg-boot
|
* @Date: 2023-03-10
|
* @Version: V1.0
|
*/
|
@Api(tags = "mom_eam_equipment_transfer")
|
@RestController
|
@RequestMapping("/eam/equipmentTransfer")
|
@Slf4j
|
public class EquipmentTransferController extends JeecgController<EquipmentTransfer, IEquipmentTransferService> {
|
@Autowired
|
private IEquipmentTransferService equipmentTransferService;
|
|
|
@Autowired
|
private IEquipmentTransferInDetailService equipmentTransferInDetailService;
|
|
@Autowired
|
private IEquipmentTransferOutDetailService equipmentTransferOutDetailService;
|
//
|
// @Autowired
|
// private IEnterpriseService enterpriseService;
|
//
|
// @Autowired
|
// private IDataVersionService dataVersionService;
|
|
@Autowired
|
private IEamEquipmentService equipmentService;
|
|
@Autowired
|
private ISysBaseAPI sysBaseApi;
|
|
/**
|
* 分页列表查询
|
*
|
* @param dailyInspectionStandard
|
* @param pageNo
|
* @param pageSize
|
* @param req
|
* @return
|
*/
|
@ApiOperation(value = "设备调动-分页列表查询", notes = "设备调动-分页列表查询")
|
@GetMapping(value = "/list")
|
public Result<IPage<EquipmentTransfer>> queryPageList(EquipmentTransfer dailyInspectionStandard,
|
@RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
|
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,
|
HttpServletRequest req) {
|
QueryWrapper<EquipmentTransfer> queryWrapper = QueryGenerator.initQueryWrapper(dailyInspectionStandard, req.getParameterMap());
|
Page<EquipmentTransfer> page = new Page<EquipmentTransfer>(pageNo, pageSize);
|
IPage<EquipmentTransfer> pageList;
|
String type = dailyInspectionStandard.getTransferType();
|
if (type == "in") {
|
pageList = equipmentTransferService.page(page, queryWrapper);
|
|
} else {
|
pageList = equipmentTransferService.page(page, queryWrapper);
|
|
}
|
return Result.OK(pageList);
|
}
|
|
/**
|
* qsw 2023-4-26
|
*/
|
@GetMapping("getEquipmentTransferList")
|
public Result<?> getInspectionStandardList(@RequestParam("pageNo") Integer pageNo,
|
@RequestParam("pageSize") Integer pageSize,
|
@RequestParam("transferType") String transferType,
|
@RequestParam Map<String, Object> params) {
|
String transfertype = String.valueOf(params.get("transferType"));
|
if (transfertype.equals("reduce")) {
|
|
IPage<Map<String, Object>> equipmentTransferOutList = equipmentTransferService.getEquipmentTransferList(pageNo, pageSize, transferType, params);
|
List<Map<String, Object>> records = equipmentTransferOutList.getRecords();
|
for (Map<String, Object> record : records) {
|
String equipmentTransferId = (String) record.get("id");
|
String type = "reduce";
|
List<Map<String, Object>> equipmentTransferOutDetailList = equipmentTransferOutDetailService.getEquipmentTransferOutDetailList(equipmentTransferId, type);
|
record.put("equipmentTransferOutDetailList", equipmentTransferOutDetailList);
|
}
|
return Result.ok(equipmentTransferOutList);
|
} else {
|
IPage<Map<String, Object>> equipmentTransferInList = equipmentTransferService.getEquipmentTransferAddList(pageNo, pageSize, transferType, params);
|
List<Map<String, Object>> records = equipmentTransferInList.getRecords();
|
for (Map<String, Object> record : records) {
|
String equipmentTransferId = (String) record.get("id");
|
String type = "add";
|
List<Map<String, Object>> equipmentTransferInDetailList = equipmentTransferInDetailService.getEquipmentTransferInDetailList(equipmentTransferId, type);
|
record.put("equipmentTransferInDetailList", equipmentTransferInDetailList);
|
}
|
return Result.ok(equipmentTransferInList);
|
}
|
|
|
}
|
|
/**
|
* 撤回
|
*
|
* @param equipmentTransfer
|
* @return
|
*/
|
@AutoLog(value = "设备调动-提交")
|
@ApiOperation(value = "设备调动-提交", notes = "设备调动-提交")
|
@PostMapping(value = "/submit")
|
public Result<String> submit(@RequestBody EquipmentTransfer equipmentTransfer) {
|
String id = equipmentTransfer.getId();
|
equipmentTransferService.submit(id);
|
return Result.OK("提交成功!");
|
}
|
|
|
/**
|
* 审批通过
|
*
|
* @param equipmentTransfer
|
* @return
|
*/
|
@AutoLog(value = "设备调动-审批通过")
|
@ApiOperation(value = "设备调动-审批通过", notes = "设备调动-审批通过")
|
@PostMapping(value = "/approval")
|
public Result<String> approval(@RequestBody EquipmentTransfer equipmentTransfer) {
|
equipmentTransferService.approval(equipmentTransfer);
|
return Result.OK("审批通过!");
|
}
|
|
|
/**
|
* 驳回
|
*
|
* @param equipmentTransfer
|
* @return
|
*/
|
@AutoLog(value = "设备调动-驳回")
|
@ApiOperation(value = "设备调动-驳回", notes = "设备调动-驳回")
|
@PostMapping(value = "/reject")
|
public Result<String> reject(@RequestBody EquipmentTransfer equipmentTransfer) {
|
equipmentTransferService.reject(equipmentTransfer);
|
return Result.OK("驳回成功!");
|
}
|
|
|
/**
|
* 撤回
|
*
|
* @param equipmentTransfer
|
* @return
|
*/
|
@AutoLog(value = "设备调动-撤回")
|
@ApiOperation(value = "设备调动-撤回", notes = "设备调动-撤回")
|
@PostMapping(value = "/revocation")
|
public Result<String> revocation(@RequestBody EquipmentTransfer equipmentTransfer) {
|
String id = equipmentTransfer.getId();
|
equipmentTransferService.revocation(id);
|
return Result.OK("撤回成功!");
|
}
|
|
|
@AutoLog(value = "设备调动-添加")
|
@ApiOperation(value = "设备调动-添加", notes = "设备调动-添加")
|
@PostMapping(value = "/add")
|
@Transactional(rollbackFor = {Exception.class})
|
public Result<String> add(@RequestBody EquipmentTransfer equipmentTransfer) throws ParseException {
|
equipmentTransfer.setAuditStatus("notSubmitted");
|
|
equipmentTransferService.save(equipmentTransfer);
|
String type = equipmentTransfer.getTransferType();
|
String transferType = "reduce";
|
if (transferType.equals(type)) {
|
List<EquipmentTransferOutDetail> equipmentTransferOutDetailList = equipmentTransfer.getEquipmentTransferOutDetailList();
|
|
for (EquipmentTransferOutDetail equipmentTransferOutDetail : equipmentTransferOutDetailList) {
|
equipmentTransferOutDetail.setEquipmentTransferId(equipmentTransfer.getId());
|
equipmentTransferOutDetail.setId(null);
|
equipmentTransferOutDetail.setTransferMethodId(equipmentTransfer.getEquipmentTransferCatrgoryId());
|
String demandDate = equipmentTransferOutDetail.getDemandDate();
|
String outDate=equipmentTransferOutDetail.getOutDate();
|
String actualOutDate = equipmentTransferOutDetail.getActualOutDate();
|
Instant instant = Instant.parse(demandDate);
|
Instant instantoutDate=Instant.parse(outDate);
|
Instant instant1 = Instant.parse(actualOutDate);
|
ZoneId zooid = ZoneId.systemDefault();
|
LocalDateTime localDateTime = LocalDateTime.ofInstant(instant, zooid);
|
LocalDateTime localDateTime1 = LocalDateTime.ofInstant(instant1, zooid);
|
LocalDateTime outLocalDate = LocalDateTime.ofInstant(instantoutDate, zooid);
|
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
|
String format = localDateTime1.format(formatter);
|
String formatoutDate = outLocalDate.format(formatter);
|
String locaLTime = localDateTime.format(formatter);
|
equipmentTransferOutDetail.setDemandDate(locaLTime);
|
equipmentTransferOutDetail.setActualOutDate(format);
|
equipmentTransferOutDetail.setOutDate(formatoutDate);
|
equipmentTransferOutDetailService.save(equipmentTransferOutDetail);
|
}
|
|
|
} else {
|
List<EquipmentTransferInDetail> equipmentTransferInDetailList = equipmentTransfer.getEquipmentTransferInDetailList();
|
for (EquipmentTransferInDetail equipmentTransferInDetail : equipmentTransferInDetailList) {
|
equipmentTransferInDetail.setEquipmentTransferId(equipmentTransfer.getId());
|
equipmentTransferInDetail.setId(null);
|
equipmentTransferInDetail.setTransferMethodId(equipmentTransfer.getEquipmentTransferCatrgoryId());
|
String demandDate = equipmentTransferInDetail.getDemandDate();
|
String actualOutDate = equipmentTransferInDetail.getActualInDate();
|
Instant instant = Instant.parse(demandDate);
|
Instant instant1 = Instant.parse(actualOutDate);
|
ZoneId zooid = ZoneId.systemDefault();
|
LocalDateTime localDateTime = LocalDateTime.ofInstant(instant, zooid);
|
LocalDateTime localDateTime1 = LocalDateTime.ofInstant(instant1, zooid);
|
|
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
|
String format = localDateTime1.format(formatter);
|
String locaLTime = localDateTime.format(formatter);
|
equipmentTransferInDetail.setDemandDate(locaLTime);
|
equipmentTransferInDetail.setActualInDate(format);
|
Equipment equipment = equipmentService.getById(equipmentTransferInDetail.getEquipmentId());
|
equipment.setLocation(equipmentTransferInDetail.getPosition());
|
equipmentService.updateById(equipment);
|
equipmentTransferInDetailService.save(equipmentTransferInDetail);
|
}
|
|
|
}
|
|
return Result.OK("添加成功!");
|
}
|
|
|
/**
|
* @param equipmentTransfer
|
* @return
|
*/
|
|
@AutoLog(value = "设备调动-编辑")
|
@ApiOperation(value = "设备调动-编辑", notes = "设备调动-编辑")
|
@RequestMapping(value = "/edit", method = {RequestMethod.PUT, RequestMethod.POST})
|
@Transactional(rollbackFor = {Exception.class})
|
public Result<String> edit(@RequestBody EquipmentTransfer equipmentTransfer) {
|
equipmentTransferService.updateById(equipmentTransfer);
|
//1.删除原点设备调动
|
if (equipmentTransfer.getTransferType().equals("reduce")) {
|
|
List<EquipmentTransferOutDetail> equipmentTransferOutDetails = equipmentTransferOutDetailService.lambdaQuery()
|
.eq(EquipmentTransferOutDetail::getEquipmentTransferId, equipmentTransfer.getId())
|
.eq(EquipmentTransferOutDetail::getDelFlag, 0)
|
.eq(EquipmentTransferOutDetail::getStatus, "1").list();
|
for (EquipmentTransferOutDetail equipmentTransferOutDetail : equipmentTransferOutDetails) {
|
equipmentTransferOutDetail.setDelFlag(1);
|
equipmentTransferOutDetailService.updateById(equipmentTransferOutDetail);
|
}
|
|
|
//2.重新持久设备调动
|
List<EquipmentTransferOutDetail> equipmentTransferOutDetailList = equipmentTransfer.getEquipmentTransferOutDetailList();
|
for (EquipmentTransferOutDetail equipmentTransferOutDetail : equipmentTransferOutDetailList) {
|
equipmentTransferOutDetail.setId(null);
|
equipmentTransferOutDetail.setEquipmentTransferId(equipmentTransfer.getId());
|
equipmentTransferOutDetailService.save(equipmentTransferOutDetail);
|
|
}
|
} else {
|
|
List<EquipmentTransferInDetail> equipmentTransferInDetails = equipmentTransferInDetailService.lambdaQuery()
|
.eq(EquipmentTransferInDetail::getEquipmentTransferId, equipmentTransfer.getId())
|
.eq(EquipmentTransferInDetail::getDelFlag, 0)
|
.eq(EquipmentTransferInDetail::getStatus, "1").list();
|
for (EquipmentTransferInDetail equipmentTransferInDetail : equipmentTransferInDetails) {
|
equipmentTransferInDetail.setDelFlag(1);
|
equipmentTransferInDetailService.updateById(equipmentTransferInDetail);
|
}
|
//2.重新持久设备调动
|
List<EquipmentTransferInDetail> equipmentTransferInDetailList = equipmentTransfer.getEquipmentTransferInDetailList();
|
for (EquipmentTransferInDetail equipmentTransferInDetail : equipmentTransferInDetailList) {
|
equipmentTransferInDetail.setId(null);
|
equipmentTransferInDetail.setEquipmentTransferId(equipmentTransfer.getId());
|
equipmentTransferInDetailService.save(equipmentTransferInDetail);
|
}
|
}
|
|
|
return Result.OK("编辑成功!");
|
}
|
|
/**
|
* 通过id删除
|
*
|
* @param id
|
* @return
|
*/
|
@AutoLog(value = "设备调动-通过id删除")
|
@ApiOperation(value = "设备调动-通过id删除", notes = "设备调动-通过id删除")
|
@DeleteMapping(value = "/delete")
|
public Result<String> delete(@RequestParam(name = "id", required = true) String id) {
|
EquipmentTransfer equipmentTransfer = equipmentTransferService.getById(id);
|
equipmentTransfer.setDelFlag(1);
|
equipmentTransferService.updateById(equipmentTransfer);
|
|
|
if (equipmentTransfer.getTransferType().equals("reduce")) {
|
List<EquipmentTransferInDetail> equipmentTransferInDetailList = equipmentTransferInDetailService.lambdaQuery()
|
.eq(EquipmentTransferInDetail::getEquipmentTransferId, id)
|
.eq(EquipmentTransferInDetail::getDelFlag, 0)
|
.eq(EquipmentTransferInDetail::getStatus, "1").list();
|
for (EquipmentTransferInDetail equipmentTransferInDetail : equipmentTransferInDetailList) {
|
equipmentTransferInDetail.setDelFlag(1);
|
equipmentTransferInDetailService.updateById(equipmentTransferInDetail);
|
}
|
|
} else {
|
|
List<EquipmentTransferOutDetail> equipmentTransferOutDetailList = equipmentTransferOutDetailService.lambdaQuery()
|
.eq(EquipmentTransferOutDetail::getEquipmentTransferId, id)
|
.eq(EquipmentTransferOutDetail::getDelFlag, 0)
|
.eq(EquipmentTransferOutDetail::getStatus, "1").list();
|
for (EquipmentTransferOutDetail equipmentTransferOutDetail : equipmentTransferOutDetailList) {
|
equipmentTransferOutDetail.setDelFlag(1);
|
equipmentTransferOutDetailService.updateById(equipmentTransferOutDetail);
|
}
|
}
|
|
return Result.OK("删除成功!");
|
}
|
|
/**
|
* 批量删除
|
*
|
* @param ids
|
* @return
|
*/
|
@AutoLog(value = "设备调动-批量删除")
|
@ApiOperation(value = "设备调动-批量删除", notes = "设备调动-批量删除")
|
@DeleteMapping(value = "/deleteBatch")
|
public Result<String> deleteBatch(@RequestParam(name = "ids", required = true) String ids) {
|
List<String> idList = Arrays.asList(ids.split(","));
|
for (String id : idList) {
|
EquipmentTransfer dailyInspectionStandard = equipmentTransferService.getById(id);
|
dailyInspectionStandard.setDelFlag(1);
|
equipmentTransferService.updateById(dailyInspectionStandard);
|
}
|
return Result.OK("批量删除成功!");
|
}
|
|
/**
|
* 通过id查询
|
*
|
* @param id
|
* @return
|
*/
|
@ApiOperation(value = "设备调动-通过id查询", notes = "设备调动-通过id查询")
|
@GetMapping(value = "/queryById")
|
public Result<EquipmentTransfer> queryById(@RequestParam(name = "id", required = true) String id) {
|
EquipmentTransfer dailyInspectionStandard = equipmentTransferService.getById(id);
|
if (dailyInspectionStandard == null) {
|
return Result.error("未找到对应数据");
|
}
|
return Result.OK(dailyInspectionStandard);
|
}
|
|
/**
|
* 导出excel
|
*
|
* @param request
|
* @param dailyInspectionStandard
|
*/
|
@RequestMapping(value = "/exportXls")
|
public ModelAndView exportXls(HttpServletRequest request, EquipmentTransfer dailyInspectionStandard) {
|
return super.exportXls(request, dailyInspectionStandard, EquipmentTransfer.class, "mom_eam_equipment_transfer");
|
}
|
|
/**
|
* 通过excel导入数据
|
*
|
* @param request
|
* @param response
|
* @return
|
*/
|
@RequestMapping(value = "/importExcel", method = RequestMethod.POST)
|
public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
|
return super.importExcel(request, response, EquipmentTransfer.class);
|
}
|
|
/**
|
* 获取初始信息
|
*/
|
@GetMapping("/getMaintenanceCycleInfo")
|
public Result<?> getMaintenanceCycleInfo() {
|
Map<String, Object> infoMap = new HashMap<>(3);
|
LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
// String enterpriseName = enterpriseService.lambdaQuery().eq(Enterprise::getId, loginUser.getEnterpriseId()).eq(Enterprise::getDelFlag, CommonConstant.DEL_FLAG_0).one().getName();
|
String enterpriseName = sysBaseApi.getEnterpriseNameById(loginUser.getEnterpriseId());
|
infoMap.put("enterpriseId", loginUser.getEnterpriseId());
|
infoMap.put("enterpriseName", enterpriseName);
|
if (CollectionUtils.isNotEmpty(equipmentTransferService.getUsableVersion())) {
|
infoMap.put("version", equipmentTransferService.getUsableVersion().get(0));
|
// String versionStatus = dataVersionService.lambdaQuery().eq(DataVersion::getVersion, equipmentTransferService.getUsableVersion().get(0)).eq(DataVersion::getBusinessType, "保养周期")
|
// .eq(DataVersion::getDelFlag, CommonConstant.DEL_FLAG_0).list().get(0).getVersionStatus();
|
String versionStatus = sysBaseApi.getVersionStatusByVersionAndBusinessType(equipmentTransferService.getUsableVersion().get(0), "保养周期");
|
infoMap.put("versionStatus", versionStatus);
|
} else {
|
// infoMap.put("version", 1);
|
// infoMap.put("versionStatus", "0");
|
|
infoMap.put("version", 1);
|
infoMap.put("versionStatus", CommonConstant.STATUS_0);
|
}
|
return Result.OK(infoMap);
|
}
|
}
|