package cn.ksource.web.controller.business.pages.bpbj; import java.io.*; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import cn.ksource.core.util.*; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.servlet.ModelAndView; import cn.ksource.beans.SC_WORKFLOW_RELEASE; import cn.ksource.beans.SPARE_PART; import cn.ksource.beans.SPARE_PART_APPLY; import cn.ksource.beans.SPARE_PART_APPLY_CATE; import cn.ksource.beans.SPARE_PART_APPLY_ENTITY; import cn.ksource.beans.SPARE_PART_DELIVERY; import cn.ksource.beans.SPARE_PART_STORAGE; import cn.ksource.beans.WORKFLOW_BASE; import cn.ksource.core.dao.BaseDao; import cn.ksource.core.dao.SqlParameter; import cn.ksource.core.page.PageInfo; import cn.ksource.core.web.SysInfo; import cn.ksource.core.web.SysInfoMsg; import cn.ksource.core.web.WebUtil; import cn.ksource.web.Constants; import cn.ksource.web.facade.bpbj.DeliveryApplyFacade; import cn.ksource.web.facade.bpbj.SparePartsFacade; import cn.ksource.web.facade.bpbj.StockApplyFacade; import cn.ksource.web.facade.bpbj.StockQueryFacade; import cn.ksource.web.facade.cfg.CfgFacade; import cn.ksource.web.facade.cfgcate.CfgcateFacade; import cn.ksource.web.facade.customermanage.CustomerManageFacade; import cn.ksource.web.facade.link.LinkFacade; @Controller @RequestMapping("/business/pages/bpbj/deliveryApply") public class deliveryApplyController { @Resource private DeliveryApplyFacade deliveryApplyFacade; @Resource(name="baseDao") private BaseDao baseDao; /** * 跳转到出库查询 * * @param model * @param request * @return * @author chenlong */ @RequestMapping("deliveryApplyList.html") public String cfgmanageList(Model model, HttpServletRequest request) { Long currentTime = DateUtil.getCurrentDate8(); String last1MonthTime = DateUtil.getMonthAdd("yyyyMMdd",-1); model.addAttribute("start_time", last1MonthTime); model.addAttribute("end_time", currentTime); model.addAttribute("type", "cksq"); return "/business/pages/bpbj/deliveryApply/deliveryApplyList"; } /** * 出库查询列表数据 * @param pageInfo * @param model * @param request * @return */ @RequestMapping("deliveryApplyListData.html") public String deliveryApplyListData(Model model, HttpServletRequest request,PageInfo pageInfo) { Map params = ParamsMapUtil.getParameterMap(request); PageInfo info = deliveryApplyFacade.getDeliveryListData(request,pageInfo); Long currentTime = DateUtil.getCurrentDate8(); String last1MonthTime = DateUtil.getMonthAdd("yyyyMMdd",-1); model.addAttribute("start_time", last1MonthTime); model.addAttribute("end_time", currentTime); model.addAttribute("info", info); return "/business/pages/bpbj/deliveryApply/deliveryApplyListData"; } /** * 分页查询 * @param model * @param request * @param response */ @RequestMapping("deliveryApplyListCount.html") public void deliveryApplyListCount(Model model, HttpServletRequest request, HttpServletResponse response) { Map params = ParamsMapUtil.getParameterMap(request); params.put("wc_flag", "1"); int count =deliveryApplyFacade.getDeliveryListCount(request); WebUtil.write(response, String.valueOf(count)); } /** * 编辑出库申请信息 * * @param model * @param request * @return * @author chenlong */ @RequestMapping("editDeliveryApply.html") public ModelAndView editStockApply(HttpServletRequest request,HttpServletResponse response) { String orderId = request.getParameter("orderId"); String type=request.getParameter("type"); String id_test=""; ModelAndView view = new ModelAndView("/business/pages/bpbj/deliveryApply/editDeliveryApply"); if(StringUtil.isBlank(orderId)){ id_test=StringUtil.getUUID(); Map info = new HashMap(); info.put("delivery_type_key", "2"); info.put("delivery_type_name", "其他"); view.addObject("info", info); }else{ Map info=new SPARE_PART_DELIVERY(orderId).getBeanMapById(); String delivery_type_key=ConvertUtil.obj2StrBlank(info.get("DELIVERY_TYPE_KEY")); if(StringUtil.isBlank(delivery_type_key)){ info.put("DELIVERY_TYPE_KEY", "2"); info.put("DELIVERY_TYPE_NAME", "其他"); } view.addObject("info", info); } view.addObject("orderId", orderId); view.addObject("id_test", id_test); return view; } /** * 跳转到选择备件页面 */ @RequestMapping("editSpare.html") public ModelAndView linkDevice(HttpServletRequest request) { ModelAndView modelAndView = new ModelAndView("/business/pages/bpbj/deliveryApply/editSpare"); String orderId = request.getParameter("orderId"); String id_test = request.getParameter("id_test"); String cate_id = request.getParameter("cate_id"); String spart_ids = request.getParameter("spart_ids"); String type=""; if(StringUtil.isBlank(orderId)){ type ="1"; } modelAndView.addObject("type", type); modelAndView.addObject("orderId", orderId); modelAndView.addObject("id_test", id_test); modelAndView.addObject("cate_id", cate_id); modelAndView.addObject("spart_ids", spart_ids); return modelAndView; } /** * 备件列表信息 * @param request * @return */ @RequestMapping("sparePartsList.html") public ModelAndView sparePartsList(HttpServletRequest request) { ModelAndView modelAndView = new ModelAndView("/business/pages/bpbj/deliveryApply/sparePartsList"); String orderId = request.getParameter("orderId"); List spare = deliveryApplyFacade.querySpareDevice(request); modelAndView.addObject("orderId", orderId); modelAndView.addObject("spare", spare); return modelAndView; } /** * 备件分类明细列表信息 * @param request * @return */ @RequestMapping("deliveryListTreeData.html") public ModelAndView deliveryListTreeData(HttpServletRequest request) { String orderId = request.getParameter("orderId"); String delivery_type_key = request.getParameter("delivery_type_key"); String url=""; if(delivery_type_key.equals("2")){ url="/business/pages/bpbj/deliveryApply/editDeliveryListTreeData"; }else{ url="/business/pages/bpbj/deliveryApply/deliveryListTreeData"; } ModelAndView modelAndView = new ModelAndView(url); //备件分类明细列表 List apply_cate = deliveryApplyFacade.queryApplyCateList(request); modelAndView.addObject("orderId", orderId); modelAndView.addObject("apply_cate", apply_cate); return modelAndView; } /** * 保存备件实体明细 * @param request * @param response * @return */ @RequestMapping("editSpareSubmit.html") public ModelAndView editSpareSubmit(HttpServletRequest request,HttpServletResponse response){ deliveryApplyFacade.doSpareAssign(request); String execJs = ""; execJs = "window.top.query();window.top.dialogIframe0.query();window.top.hideDialog('1');"; return WebUtil.sysInfoPage(request, "操作成功!",execJs,SysInfo.Success,""); } /** * 删除出库工单(SPARE_PART_APPLY_ENTITY) * @param request(id:gg_xyzzjg_id,index:(1-启用,2-禁止)) * @param response */ @RequestMapping("deleteDeliveryItem.html") public void deleteDeliveryItem(HttpServletRequest request,HttpServletResponse response){ deliveryApplyFacade.deleteDeliveryItem(request); WebUtil.write(response, "1"); } /** * 删除单个备件实体明细(SPARE_PART_APPLY_ENTITY) * @param request(id:gg_xyzzjg_id,index:(1-启用,2-禁止)) * @param response */ @RequestMapping("deleteItem.html") public void deleteItem(HttpServletRequest request,HttpServletResponse response){ String id = request.getParameter("id"); SPARE_PART_APPLY_ENTITY spare_part_apply_entity=new SPARE_PART_APPLY_ENTITY(id).getInstanceById(); String entity_id=spare_part_apply_entity.getEntity_id(); spare_part_apply_entity.setState(0); spare_part_apply_entity.update(); String LINK_ID=spare_part_apply_entity.getLink_id(); /* SPARE_PART SPARE_PART=new SPARE_PART(entity_id).getInstanceById(); SPARE_PART.setState(Constants.SPARE_PART_STATE_Z); SPARE_PART.update(); */ String delivery_type_key = request.getParameter("delivery_type_key"); if(StringUtil.isNotBlank(delivery_type_key)){ if(delivery_type_key.equals("2")){ SPARE_PART_APPLY_CATE spare_part_apply_cate=new SPARE_PART_APPLY_CATE(LINK_ID).getInstanceById(); spare_part_apply_cate.setCate_num(spare_part_apply_cate.getCate_num()-1); spare_part_apply_cate.update(); } } WebUtil.write(response, "1"); } /** * 校验提交前信息 * @param request * @param response */ @RequestMapping("initDelivery.html") public void initDelivery(HttpServletRequest request,HttpServletResponse response){ String result=deliveryApplyFacade.initDelivery(request); WebUtil.write(response, result); } /** * 删除配置下的备件实体明细(SPARE_PART_APPLY_ENTITY) * @param request(id:gg_xyzzjg_id,index:(1-启用,2-禁止)) * @param response */ @RequestMapping("deleteTree.html") public void deleteTree(HttpServletRequest request,HttpServletResponse response){ deliveryApplyFacade.deleteTree(request); WebUtil.write(response, "1"); } /** * 选择下一节点 * @param request * @return */ @RequestMapping("selSpareNextNode.html") public String selNextNode(Model model,HttpServletRequest request) { String type = request.getParameter("type"); String orderId = request.getParameter("orderId"); model.addAttribute("orderId", orderId); model.addAttribute("type", type); return "/business/pages/bpbj/deliveryApply/selDeliveryNextNode"; } /** * 保存申领备件信息 * @param spare_part_storage * @param request * @param response * @return */ @RequestMapping("editDeliverySbmit.html") public ModelAndView editDeliverySbmit(SPARE_PART_DELIVERY spare_part_delivery, HttpServletRequest request,HttpServletResponse response) { String type = request.getParameter("type"); String orderId = deliveryApplyFacade.saveDelivery(request,spare_part_delivery); return WebUtil.sysInfoPage(request, "操作成功!", "window.top.hideDialog('0');"+"window.top.query()", SysInfo.Success,""); } //审批分派提交 @RequestMapping(value="releaseAssign.html", method=RequestMethod.POST) public ModelAndView doReleaseAssign(HttpServletRequest request, HttpServletResponse response) { deliveryApplyFacade.doApproveAssign(request); String js = "window.top.query();" + "window.top.hideDialog('insideAllot');"+"window.top.hideDialog('0');"; return WebUtil.sysInfoPage(request, "操作成功!", js, SysInfo.Success, ""); } /** * 工单详细信息 */ @RequestMapping(value="deliveryDetail.html") public String spareDetail(Model model,HttpServletRequest request) { String orderId = request.getParameter("orderId"); Map baseMsg = new SPARE_PART_DELIVERY(orderId).getBeanMapById(); String flowId = ConvertUtil.obj2StrBlank(baseMsg.get("flow_id")); String apply_order_id=ConvertUtil.obj2StrBlank(baseMsg.get("apply_order_id")); if(StringUtil.isNotBlank(apply_order_id)){ SPARE_PART_APPLY apply_order=new SPARE_PART_APPLY(apply_order_id).getInstanceById(); String order_code_c=apply_order.getOrder_code(); baseMsg.put("order_code_c", order_code_c); }else{ baseMsg.put("order_code_c", ""); } model.addAttribute("baseMsg",baseMsg); model.addAttribute("orderId",orderId); model.addAttribute("apply_order_id",apply_order_id); model.addAttribute("flowId",flowId); return "/business/pages/bpbj/deliveryApply/deliveryDetail"; } }