package com.jeesite.modules.mes.web; import java.util.List; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import com.alibaba.fastjson.JSONValidator; import com.jeesite.common.codec.EncodeUtils; import com.jeesite.modules.mes.entity.MesDevice; import com.jeesite.modules.mes.entity.MesWarehouse; import com.jeesite.modules.mes.service.MesDeviceService; import org.apache.shiro.authz.annotation.RequiresPermissions; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.util.ObjectUtils; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.ModelAttribute; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; import com.jeesite.common.config.Global; import com.jeesite.common.entity.Page; import com.jeesite.common.web.BaseController; import com.jeesite.modules.mes.entity.MesDeviceAlarm; import com.jeesite.modules.mes.service.MesDeviceAlarmService; /** * 设备报警记录Controller * @author hzd * @version 2023-06-25 */ @Controller @RequestMapping(value = "${adminPath}/mes/mesDeviceAlarm") public class MesDeviceAlarmController extends BaseController { @Autowired private MesDeviceAlarmService mesDeviceAlarmService; @Autowired private MesDeviceService mesDeviceService; /** * 获取数据 */ @ModelAttribute public MesDeviceAlarm get(String id, boolean isNewRecord) { return mesDeviceAlarmService.get(id, isNewRecord); } /** * 查询列表 */ @RequiresPermissions("mes:mesDeviceAlarm:view") @RequestMapping(value = {"list", ""}) public String list(MesDeviceAlarm mesDeviceAlarm, Model model) { model.addAttribute("mesDeviceAlarm", mesDeviceAlarm); return "modules/mes/mesDeviceAlarmList"; } /** * 查询列表数据 */ @RequiresPermissions("mes:mesDeviceAlarm:view") @RequestMapping(value = "listData") @ResponseBody public Page listData(MesDeviceAlarm mesDeviceAlarm, HttpServletRequest request, HttpServletResponse response) { mesDeviceAlarm.setPage(new Page<>(request, response)); Page page = mesDeviceAlarmService.findPage(mesDeviceAlarm); return page; } /** * 查看编辑表单 */ @RequiresPermissions("mes:mesDeviceAlarm:view") @RequestMapping(value = "form") public String form(MesDeviceAlarm mesDeviceAlarm, Model model) { model.addAttribute("mesDeviceAlarm", mesDeviceAlarm); return "modules/mes/mesDeviceAlarmForm"; } @RequiresPermissions("mes:mesDeviceAlarm:view") @RequestMapping(value = "deal") public String deal(MesDeviceAlarm mesDeviceAlarm, Model model) { model.addAttribute("mesDeviceAlarm", mesDeviceAlarm); return "modules/mes/mesDeviceAlarmDeal"; } @RequiresPermissions("mes:mesDeviceAlarm:view") @RequestMapping(value = "info") public String info(MesDeviceAlarm mesDeviceAlarm, Model model) { model.addAttribute("mesDeviceAlarm", mesDeviceAlarm); return "modules/mes/mesDeviceAlarmInfo"; } /** * 保存数据 */ @RequiresPermissions("mes:mesDeviceAlarm:edit") @PostMapping(value = "save") @ResponseBody public String save(@Validated MesDeviceAlarm mesDeviceAlarm) { mesDeviceAlarmService.save(mesDeviceAlarm); return renderResult(Global.TRUE, text("操作成功!")); } /** * 删除数据 */ @RequiresPermissions("mes:mesDeviceAlarm:edit") @RequestMapping(value = "delete") @ResponseBody public String delete(MesDeviceAlarm mesDeviceAlarm) { mesDeviceAlarmService.delete(mesDeviceAlarm); return renderResult(Global.TRUE, text("删除设备报警记录成功!")); } @RequiresPermissions("mes:mesDeviceAlarm:view") @RequestMapping(value = "alarmSelect") public String alarmSelect(MesDeviceAlarm mesDeviceAlarm, String selectData, Model model, HttpServletRequest request) { String treeCode = request.getParameter("treeCode"); MesDevice mesDevice = mesDeviceService.get(treeCode, false); if(ObjectUtils.isEmpty(mesDevice)){ mesDeviceAlarm.setDeviceSn("-1"); }else{ mesDeviceAlarm.setDeviceSn(mesDevice.getSn()); } String selectDataJson = EncodeUtils.decodeUrl(selectData); if (selectDataJson != null && JSONValidator.from(selectDataJson).validate()){ model.addAttribute("selectData", selectDataJson); } model.addAttribute("mesDeviceAlarm", mesDeviceAlarm); return "modules/mes/mesDeviceAlarmSelect"; } }