Lius
2024-05-16 d4c42dade56ff6c2bd5ca83819f8a8f56430e682
lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/controller/MdcHomeController.java
@@ -10,16 +10,23 @@
import org.jeecg.common.constant.CommonConstant;
import org.jeecg.common.system.vo.LoginUser;
import org.jeecg.modules.mdc.constant.MdcConstant;
import org.jeecg.modules.mdc.dto.MdcEquipmentDto;
import org.jeecg.modules.mdc.entity.MdcEquipment;
import org.jeecg.modules.mdc.entity.MdcFeedback;
import org.jeecg.modules.mdc.entity.MdcOverallEquipmentEfficiency;
import org.jeecg.modules.mdc.service.IMdcEquipmentService;
import org.jeecg.modules.mdc.service.IMdcHomeService;
import org.jeecg.modules.mdc.vo.MdcCommonVo;
import org.jeecg.modules.mdc.vo.MdcHomeEfficiencyVo;
import org.jeecg.modules.system.entity.MdcProduction;
import org.jeecg.modules.system.service.IMdcProductionService;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -63,10 +70,16 @@
            } else if (userType.equals(MdcConstant.USER_TYPE_3)) {
                //厂区
                key = mdcProductionService.findFirstProduction(userId, mdcProduction.getId());
            } else if (userType.equals(MdcConstant.USER_TYPE_2)) {
                //工段 查询用户拥有的工段权限
                key = mdcProductionService.findThreeProductionId(userId);
            }
        }
        List<MdcCommonVo> resultMap = mdcHomeService.getEquipmentStatusStatistics(userId, key);
        return Result.OK(resultMap);
        Map<String, Object> map = new HashMap<>();
        map.put("list", resultMap);
        map.put("productionId", key);
        return Result.OK(map);
    }
    @ApiOperation(value = "MDC首页接口-设备利用率统计(昨日)", notes = "MDC首页接口-设备运行状态统计(昨日)")
@@ -146,4 +159,116 @@
        Map<String, Object> result = mdcHomeService.getEquipmentMonthStatistics(userId, key);
        return Result.OK(result);
    }
    @ApiOperation(value = "MDC首页接口-工段级前七天利用率折线图", notes = "MDC首页接口-工段级前七天利用率折线图")
    @GetMapping("/equipmentDayUtilizationStatistics")
    public Result<?> equipmentDayUtilizationStatistics(String productionCode) {
        LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal();
        String userId = user.getId();
        String key = "";
        if (StringUtils.isNotBlank(productionCode)) {
            //厂区
            MdcProduction mdcProduction = mdcProductionService.getOne(new LambdaQueryWrapper<MdcProduction>().eq(MdcProduction::getProductionCode, productionCode).eq(MdcProduction::getDelFlag, CommonConstant.DEL_FLAG_0.toString()));
            key = mdcProduction.getId();
        } else {
            //工段 查询用户拥有的工段权限
            key = mdcProductionService.findThreeProductionId(userId);
        }
        Map<String, Object> result = mdcHomeService.getEquipmentDayUtilizationStatistics(userId, key);
        return Result.OK(result);
    }
    @ApiOperation(value = "MDC首页接口-上月各设备OEE统计", notes = "MDC首页接口-上月各设备OEE统计")
    @GetMapping("/equipmentOEEMonthStatistics")
    public Result<?> equipmentOEEMonthStatistics(String productionCode) {
        LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal();
        String userId = user.getId();
        String key = "";
        if (StringUtils.isNotBlank(productionCode)) {
            //厂区
            MdcProduction mdcProduction = mdcProductionService.getOne(new LambdaQueryWrapper<MdcProduction>().eq(MdcProduction::getProductionCode, productionCode).eq(MdcProduction::getDelFlag, CommonConstant.DEL_FLAG_0.toString()));
            key = mdcProduction.getId();
        } else {
            //工段 查询用户拥有的工段权限
            key = mdcProductionService.findThreeProductionId(userId);
        }
        List<MdcOverallEquipmentEfficiency> result = mdcHomeService.getEquipmentOEEMonthStatistics(userId, key);
        return Result.OK(result);
    }
    @ApiOperation(value = "MDC首页接口-工段级设备效率统计", notes = "MDC首页接口-工段级设备效率统计")
    @GetMapping("/equipmentEfficiencyStatistics")
    public Result<?> equipmentEfficiencyStatistics(String productionCode) {
        LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal();
        String userId = user.getId();
        String key = "";
        if (StringUtils.isNotBlank(productionCode)) {
            //厂区
            MdcProduction mdcProduction = mdcProductionService.getOne(new LambdaQueryWrapper<MdcProduction>().eq(MdcProduction::getProductionCode, productionCode).eq(MdcProduction::getDelFlag, CommonConstant.DEL_FLAG_0.toString()));
            key = mdcProduction.getId();
        } else {
            //工段 查询用户拥有的工段权限
            key = mdcProductionService.findThreeProductionId(userId);
        }
        MdcHomeEfficiencyVo result = mdcHomeService.getEquipmentEfficiencyStatistics(userId, key);
        return Result.OK(result);
    }
    @ApiOperation(value = "MDC首页接口-设备级设备效率统计", notes = "MDC首页接口-设备级设备效率统计")
    @GetMapping("/equipmentLevelEfficiencyStatistics")
    public Result<?> equipmentLevelEfficiencyStatistics(@RequestParam(name = "equipmentId", required = true) String equipmentId) {
        MdcHomeEfficiencyVo result = mdcHomeService.getEquipmentLevelEfficiencyStatistics(equipmentId);
        return Result.OK(result);
    }
    @ApiOperation(value = "MDC首页接口-设备级整年度利用率", notes = "MDC首页接口-设备级整年度利用率")
    @GetMapping("/equipmentAnnualEfficiencyStatistics")
    public Result<?> equipmentAnnualEfficiencyStatistics(@RequestParam(name = "equipmentId", required = true) String equipmentId) {
        Map<String, Object> result = mdcHomeService.getEquipmentAnnualEfficiencyStatistics(equipmentId);
        return Result.OK(result);
    }
    @ApiOperation(value = "MDC首页接口-设备级设备详细信息", notes = "MDC首页接口-设备级设备详细信息")
    @GetMapping("/equipmentDetails")
    public Result<?> equipmentDetails(@RequestParam(name = "equipmentId", required = true) String equipmentId) {
        MdcEquipmentDto result = mdcHomeService.getEquipmentDetails(equipmentId);
        return Result.OK(result);
    }
    @ApiOperation(value = "MDC首页接口-设备级设备列表", notes = "MDC首页接口-设备级设备列表")
    @GetMapping("/equipmentList")
    public Result<?> equipmentList(String productionCode) {
        LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal();
        String userId = user.getId();
        String key = "";
        if (StringUtils.isNotBlank(productionCode)) {
            //厂区
            MdcProduction mdcProduction = mdcProductionService.getOne(new LambdaQueryWrapper<MdcProduction>().eq(MdcProduction::getProductionCode, productionCode).eq(MdcProduction::getDelFlag, CommonConstant.DEL_FLAG_0.toString()));
            key = mdcProduction.getId();
        } else {
            //工段 查询用户拥有的工段权限
            key = mdcProductionService.findThreeProductionId(userId);
        }
        List<MdcEquipment> result = mdcHomeService.getEquipmentList(key);
        return Result.OK(result);
    }
    @ApiOperation(value = "MDC首页接口-问题列表", notes = "MDC首页接口-问题列表")
    @GetMapping("/feedbackList")
    public Result<?> feedbackList(String productionCode) {
        LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal();
        String userId = user.getId();
        String key = "";
        if (StringUtils.isNotBlank(productionCode)) {
            //厂区
            MdcProduction mdcProduction = mdcProductionService.getOne(new LambdaQueryWrapper<MdcProduction>().eq(MdcProduction::getProductionCode, productionCode).eq(MdcProduction::getDelFlag, CommonConstant.DEL_FLAG_0.toString()));
            key = mdcProduction.getId();
        } else {
            //工段 查询用户拥有的工段权限
            key = mdcProductionService.findThreeProductionId(userId);
        }
        List<MdcFeedback> result = mdcHomeService.getFeedbackList(key);
        return Result.OK(result);
    }
}