package com.huaxia.imes.controller; import com.baomidou.mybatisplus.core.metadata.IPage; import com.huaxia.comm.domain.imes.MesLine; import com.huaxia.imes.pojo.MesLineBO; import com.huaxia.imes.pojo.MesLineVO; import com.huaxia.imes.service.MesLineService; import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.domain.R; import com.ruoyi.common.core.page.TableDataInfo; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.web.bind.annotation.*; import java.time.DayOfWeek; import java.time.LocalDate; import java.time.temporal.TemporalAdjusters; import java.util.List; import java.util.Map; /** * @author zx * @since 2024年10月29日 * 智能产线控制器 */ @RestController @RequestMapping("open/mes/line") @Slf4j @AllArgsConstructor public class MesLineController extends BaseController { private MesLineService mesLineService; /** * 分页查询统计表 * * @return */ @GetMapping("/list") public AjaxResult queryList(MesLineBO bo, @RequestParam(defaultValue = "1") int pageNum, @RequestParam(defaultValue = "10") int pageSize) { IPage list = mesLineService.queryList(bo, pageNum, pageSize); return AjaxResult.success(new TableDataInfo(list.getRecords(), (int) list.getTotal())); } /** * 新增数据 * * @param boy * @return */ @PostMapping("/add") public R add(@RequestBody MesLine boy) { mesLineService.add(boy); return R.ok(); } /** * 修改数据 * * @param boy * @return */ @PutMapping("/edit") public R edit(@RequestBody MesLine boy) { mesLineService.edit(boy); return R.ok(); } /** * 删除数据 * * @param ids * @return */ @DeleteMapping("/remove") public R remove(Long[] ids) { mesLineService.delete(ids); return R.ok(); } /** * 获取 星期1-7 统计数据 * * @return */ @GetMapping("/count_day") public R>> list() { return mesLineService.countDay(); } /** * 获取每周的产线数据 * * @return */ @GetMapping("/week_qty") public R>> queryDay() { return mesLineService.queryDay(); } /** * 获取本月总产量 * * @return */ @GetMapping("/month_total") public R> getMonthTotal() { return mesLineService.getMonthTotal(); } /** * 获取合格率(星期1-7) * * @return */ @GetMapping("/pass_rate") public R>>>> getPassRate() { return mesLineService.getPassRate(); } /** * 获取人均产出(按月) * * @return */ @GetMapping("/worker_qty") public R>>> getWorkerQty() { return mesLineService.getWorkerQty(); } }