package org.jeecg.modules.eam.controller; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.StringUtils; import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; import org.jeecg.common.api.vo.Result; import org.jeecg.common.aspect.annotation.AutoLog; import org.jeecg.common.exception.ExceptionCast; import org.jeecg.common.system.base.controller.JeecgController; 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 java.lang.reflect.Executable; import java.math.BigDecimal; import java.util.ArrayList; import java.util.Date; import java.util.List; import java.util.Map; @RestController @RequestMapping("/eam/predictiveworkplan") @Slf4j public class PredictiveWorkPlanController extends JeecgController { @Autowired private IPredictiveWorkPlanService predictiveWorkPlanService; /** * 预测性维护方案 列表 */ @GetMapping(value = "/pagePredictiveWorkPlan") public Result>> pagePredictiveWorkPlan(@RequestParam("pageNo") Integer pageNo, @RequestParam("pageSize") Integer pageSize, @RequestParam Map params) { IPage> maintenanceStandardList = predictiveWorkPlanService.pagePredictiveWorkPlan(pageNo, pageSize, params); return Result.OK(maintenanceStandardList); } /** * 添加 */ @AutoLog(value = "predictive_work_plan-添加") @ApiOperation(value = "predictive_work_plan-添加", notes = "predictive_work_plan-添加") @PostMapping(value = "/add") @Transactional(rollbackFor = {Exception.class}) public Result add(@RequestBody PredictiveWorkPlan predictiveWorkPlan) { predictiveWorkPlanService.save(predictiveWorkPlan); return Result.OK("添加成功!"); } /** * 编辑 */ @AutoLog(value = "predictive_work_plan-编辑") @ApiOperation(value = "predictive_work_plan-编辑", notes = "predictive_work_plan-编辑") @RequestMapping(value = "/edit", method = {RequestMethod.PUT, RequestMethod.POST}) @Transactional(rollbackFor = {Exception.class}) public Result edit(@RequestBody PredictiveWorkPlan predictiveWorkPlan) { predictiveWorkPlanService.updateById(predictiveWorkPlan); return Result.OK("编辑成功!"); } //升版 @RequestMapping(value = "/revise", method = {RequestMethod.PUT, RequestMethod.POST}) public Result revise(@RequestBody PredictiveWorkPlan predictiveWorkPlan) { predictiveWorkPlanService.revise(predictiveWorkPlan); return Result.OK("生版成功!"); } @RequestMapping(value = "/versionTakeEffect", method = {RequestMethod.PUT, RequestMethod.POST}) @Transactional(rollbackFor = {Exception.class}) public Result versionTakeEffect(@RequestBody PredictiveWorkPlan predictiveWorkPlan) { LambdaQueryChainWrapper lambdaQuery = predictiveWorkPlanService.lambdaQuery(); lambdaQuery.eq(PredictiveWorkPlan::getNum, predictiveWorkPlan.getNum()) .eq(PredictiveWorkPlan::getStatus, "2").list(); List predictiveWorkPlanList = lambdaQuery.list(); for (PredictiveWorkPlan temp : predictiveWorkPlanList) { temp.setStatus("3"); predictiveWorkPlanService.updateById(temp); } boolean b = predictiveWorkPlanService.updateById(predictiveWorkPlan); if (b) { return Result.OK("生效成功!"); } else { return Result.error("生效失败!"); } } @RequestMapping("/getReviseVersion") public Result getReviseVersion(@RequestBody PredictiveWorkPlan predictiveWorkPlan) { List predictiveWorkPlanList = predictiveWorkPlanService.lambdaQuery().eq(PredictiveWorkPlan::getNum, predictiveWorkPlan.getNum()) .orderByDesc(PredictiveWorkPlan::getPlanVersion).list(); String version = predictiveWorkPlanList.get(0).getPlanVersion(); BigDecimal versionB = null; if (StringUtils.isBlank(version)) { versionB = new BigDecimal(0); } else { versionB = new BigDecimal(version); } BigDecimal versionCode = versionB.add(new BigDecimal(1)); return Result.ok(versionCode.toString()); } /** * 通过id删除 * * @param id * @return */ @DeleteMapping(value = "/delete") public Result delete(@RequestParam(name = "id", required = true) String id) { predictiveWorkPlanService.delete(id); return Result.OK("删除成功!"); } }