package com.iamberry.rst.controllers.pts; import com.iamberry.rst.core.order.Order; import com.iamberry.rst.core.order.RentType; import com.iamberry.rst.core.page.PagedResult; import com.iamberry.rst.core.pts.PtsMachine; import com.iamberry.rst.core.pts.PtsMachineLogs; import com.iamberry.rst.faces.pts.*; import net.sf.json.JSONObject; import org.apache.commons.lang.StringUtils; import org.apache.shiro.authz.annotation.RequiresPermissions; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.ResponseBody; import org.springframework.web.servlet.ModelAndView; import javax.servlet.http.HttpServletRequest; import java.util.Iterator; import java.util.List; /** * Created by LJK on 2017/8/29. */ @Controller @RequestMapping("/admin/machine") public class AdminMachineController { @Autowired private MachineService machineService; /** * 查询机器列表 * @author LJK * @date 2017年8月31日16:08:15 * @param pageSize * @param pageNO * @return */ @RequiresPermissions("machine:select_all:machine") @RequestMapping("/_machine_list") public ModelAndView listOrder( @RequestParam(value= "pageSize",defaultValue= "10" ,required=false) Integer pageSize, @RequestParam(value = "pageNO", defaultValue = "1",required=false) Integer pageNO, @RequestParam(value = "totalNum", defaultValue = "0",required=false) Integer totalNum, PtsMachine ptsMachine){ ModelAndView mv = new ModelAndView("pts/machine/machine_list"); PagedResult pagedResult = machineService.listMachine(pageNO, pageSize, ptsMachine, totalNum == 0); if(totalNum != 0) { pagedResult.setTotal(totalNum); pagedResult.setPages((int) Math.ceil((double)totalNum/pageSize)); } StringBuilder sb = new StringBuilder("/admin/machine/_machine_list?pageSize=" + pageSize); if (StringUtils.isNotEmpty(ptsMachine.getMachineBarcode())) { sb.append("&machineBarcode="); sb.append(ptsMachine.getMachineBarcode()); mv.addObject("machineBarcode",ptsMachine.getMachineBarcode()); } if (ptsMachine.getMachineIsPrint() != null && ptsMachine.getMachineIsPrint() != -1) { sb.append("&machineIsPrint=" ); sb.append(ptsMachine.getMachineIsPrint()); mv.addObject("machineIsPrint",ptsMachine.getMachineIsPrint()); } if (ptsMachine.getMachineProcessState() != null && ptsMachine.getMachineProcessState() != -1) { sb.append("&machineProcessState=" ); sb.append(ptsMachine.getMachineProcessState()); mv.addObject("machineProcessState",ptsMachine.getMachineProcessState()); } sb.append("&totalNum="); sb.append(totalNum == 0 ? pagedResult.getTotal() : totalNum); sb.append("&pageNO="); //查询最新一条机器id Integer machineId = machineService.maxMachineId(); mv.addObject("machineId",machineId); mv.addObject("page", pagedResult); mv.addObject("url", sb.toString()); return mv; } /** * 查询最新机器信息 * @param request * @return */ @RequiresPermissions("machine:latest_all:machine") @ResponseBody @RequestMapping("/_LatestMachine_list") public List listLatestMachine(HttpServletRequest request){ String machineId = request.getParameter("machineId"); if(machineId == null){ return null; } return machineService.listLatestMachine(Integer.valueOf(machineId)); } /** * 修改机器打印状态为已打印 * @param request * @return */ @RequiresPermissions("machine:update_print:machine") @ResponseBody @RequestMapping("/_update_print") public Integer updateMachinPrintState(HttpServletRequest request){ String machineBarcode = request.getParameter("machineBarcode"); if(machineBarcode == null){ return null; } PtsMachine ptsMachine = new PtsMachine(); ptsMachine.setMachineBarcode(machineBarcode); ptsMachine.setMachineIsPrint(2); return machineService.updateMachine(ptsMachine); } /** * 查询机器打印列表 * @author LJK * @date 2017年8月31日16:08:15 * @return */ @RequiresPermissions("machine:select_all:machine") @RequestMapping("/_machine_print_list") public ModelAndView listPrintMachine(PtsMachine ptsMachine){ ModelAndView mv = new ModelAndView("pts/machine/machine_print_List"); List machineList = machineService.listPrintOrder(ptsMachine); //查询最新一条机器id Integer machineId = machineService.maxMachineId(); mv.addObject("machineId",machineId); mv.addObject("machineIsPrint",ptsMachine.getMachineIsPrint() == null?"1":ptsMachine.getMachineIsPrint()); mv.addObject("machineList", machineList); return mv; } /** * 打印列表查询所有机器 * @author LJK * @date 2017年8月31日16:08:15 * @return */ @ResponseBody @RequiresPermissions("machine:select_all:machine") @RequestMapping("/machine_print_list") public List selectPrintMachine(PtsMachine ptsMachine){ return machineService.listPrintOrder(ptsMachine); } /** * 查询机器生成流程 * @author LJK * @date 2017年8月31日16:08:15 * @return */ @RequiresPermissions("machine:logs_all:machine") @RequestMapping("/_machine_logs_list") public ModelAndView listLogsMachine(Integer machineId){ if(machineId == null || machineId < 0){ return null; } PtsMachine ptsMachine = machineService.getMachine(machineId); ModelAndView mv = new ModelAndView("pts/machine/machine_particulars"); List machineLogsList = machineService.listMachineLogs(machineId); mv.addObject("machineLogsList", machineLogsList); mv.addObject("ptsMachine", ptsMachine); return mv; } /** * 批量修改机器打印状态为已打印 * @param request * @return */ @RequiresPermissions("machine:update_print:machine") @ResponseBody @RequestMapping("/_batchUpdate_print") public Integer batchUpdateMachineIsPring(HttpServletRequest request){ /*String[] listId = request.getParameterValues("machineBarcodes");*/ String listId = request.getParameter("machineBarcodes"); if(listId == null){ return 0; } String s = new String(listId); String[] a = s.split(","); return machineService.batchUpdateMachineIsPring(a); } }