package cn.ksource.web.facade.wechat.ewyw; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import javax.servlet.http.HttpServletRequest; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.lowagie.tools.handout_pdf; import cn.ksource.beans.GG_RECORD; import cn.ksource.beans.SC_WORKFLOW_CI_REMIND; import cn.ksource.beans.WORKFLOW_BASE; import cn.ksource.beans.WORKFLOW_NODE; import cn.ksource.core.dao.BaseDao; import cn.ksource.core.dao.SqlParameter; import cn.ksource.core.page.PageInfo; import cn.ksource.core.util.ConvertUtil; import cn.ksource.core.util.DateUtil; import cn.ksource.core.util.StringUtil; import cn.ksource.core.web.ClientUtil; import cn.ksource.core.web.SysInfoMsg; import cn.ksource.core.web.WebUtil; import cn.ksource.core.workflow.NodeAnswerEntity; import cn.ksource.core.workflow.WorkflowCoreService; import cn.ksource.web.Constants; import cn.ksource.web.entity.WorkFlowSupportEntity; import cn.ksource.web.service.order.OrderService; import cn.ksource.web.service.record.RecordService; import cn.ksource.web.service.workFlowSupport.WorkFlowSupportService; @Service("ewRemindFacade") public class EwRemindFacadeImpl implements EwRemindFacade { @Autowired private BaseDao baseDao; @Autowired private OrderService orderService; @Autowired private WorkFlowSupportService workFlowSupportService; @Autowired private WorkflowCoreService workflowCoreService; @Autowired private RecordService recordService; /** * 事件工单确认 */ @Override public String doOrderConfirm(Map param) { String flowId = param.get("flowId"); String userId = param.get("userId"); String userName =param.get("userName"); NodeAnswerEntity answerEntity = new NodeAnswerEntity(); answerEntity.setUser_id(userId); answerEntity.setUser_name(userName); WORKFLOW_BASE base = new WORKFLOW_BASE(flowId).getInstanceById(); //工单响应 boolean result = workflowCoreService.answerNode(base, new WORKFLOW_NODE(base.getCurrent_node_id()).getInstanceById(), answerEntity); if(!result) { return "2"; } return "1"; } /** * 我的工单列表 */ @Override public PageInfo ewMyRemindData(PageInfo pageInfo,Map param) { Map supportMap = getMyRemindListSql(param); PageInfo list=baseDao.queryforSplitPageInfo(pageInfo, supportMap.get("sql").toString(), param); return list; } /** * 我的工单数量 */ @Override public int ewMyRemindCount(Map param) { Map supportMap = getMyRemindListSql(param); String sql = "select count(*) from ( " + supportMap.get("sql").toString() + " ) t"; return baseDao.queryForInteger(sql,(Map)supportMap.get("param")); } /** * 我的工单列表 * @param request * @return */ private Map getMyRemindListSql(Map param){ //String userId = WebUtil.getEngineerUserId(request); String userId =param.get("userId"); String flowState = param.get("status"); String nodeState = param.get("flowstate"); String customerId = param.get("customerId"); String subCustomerId = param.get("subCustomerId"); String begintime = param.get("begintime"); String endtime = param.get("endtime"); //String userId="aba12d6ad3b9432fa3176f91a159c3c1"; param.put("userId", userId); param.put("nodeState", nodeState); param.put("flowState", flowState); param.put("businessType", String.valueOf(Constants.WORKFLOW_BASE_BUSINESS_TYPE_CI_REMIND)); param.put("customerId", customerId); param.put("subCustomerId", subCustomerId); StringBuilder builder = new StringBuilder(); builder.append(" select n.NODESTATE FLOWSTATE,b.BUSINESS_ID,n.*,b.WFNAME,b.CREATERNAME,b.CREATETIME,b.CURRENT_NODE_NAME,b.BUSINESSTYPE, "); builder.append(" t.PLAN_EXECUTION_DATE, r.ORDER_CODE,r.ID ORDERID,r.SERVICE_CONTENT,b.CUSTOMER_NAME,b.SUB_CUSTOMER_NAME,B.WFSTATE "); builder.append(" from SC_WORKFLOW_CI_REMIND r "); builder.append(" inner join WORKFLOW_BASE B on r.FLOW_ID = b.ID "); builder.append(" inner join CI_REMIND_TIMERTASK t on r.FLOW_ID = t.FLOW_ID "); builder.append(" inner join "); builder.append(" ( "); builder.append(" select * from ( "); builder.append(" select ID NODEID, CREATETIME NODETIME,FLOWSTATE NODESTATE,FLOWID from WORKFLOW_NODE "); builder.append(" where CURRENT_DEALER_ID = :userId "); //环节状态 if(StringUtil.isNotBlank(nodeState)){ if(!nodeState.equals("end") && !nodeState.equals("close")){ builder.append("and FLOWSTATE =:nodeState "); } } builder.append(" order by FLOWSTATE asc "); builder.append(" ) t "); builder.append(" group by FLOWID "); builder.append(" ) n "); builder.append(" on b.ID = n.FLOWID "); //工单类型 builder.append(" AND b.BUSINESSTYPE = :businessType"); //工单状态 if(StringUtil.isNotBlank(nodeState)){ if(nodeState.equals("end")) { builder.append(" AND b.WFSTATE = :status2 "); //param.put("status1", String.valueOf(Constants.WORKFLOW_BASE_WFSTATE_EVALUATE)); param.put("status2", String.valueOf(Constants.WORKFLOW_BASE_WFSTATE_FINISH)); }else if(nodeState.equals("close")){ builder.append(" AND b.WFSTATE = :status "); param.put("status", String.valueOf(Constants.WORKFLOW_BASE_WFSTATE_CLOSE)); } } //客户 if(StringUtil.isNotBlank(customerId)) { builder.append(" AND b.CUSTOMER_ID = :customerId "); } //下属单位 if(StringUtil.isNotBlank(subCustomerId)) { builder.append(" AND b.SUB_CUSTOMER_ID = :subCustomerId "); } if(StringUtil.notEmpty(begintime)) { builder.append(" AND b.CREATETIME >= :begintime "); param.put("begintime", begintime+"000000"); } if(StringUtil.notEmpty(endtime)) { builder.append(" AND b.CREATETIME <= :endtime "); param.put("endtime", endtime+"240000"); } builder.append(" order by n.NODESTATE ASC,n.NODETIME desc,b.CREATETIME desc "); Map supportMap = new HashMap(); supportMap.put("sql", builder.toString()); supportMap.put("param", param); return supportMap; } /** * 基本信息 */ @Override public Map queryRemindInfo(String orderId) { String sql = " select b.WFSTATE,h.*,t.PLAN_EXECUTION_DATE from SC_WORKFLOW_CI_REMIND h ,CI_REMIND_TIMERTASK t, WORKFLOW_BASE b " + " where h.FLOW_ID = t.FLOW_ID and b.ID=h.FLOW_ID and h.id = :orderId "; return baseDao.queryForMap(sql,new SqlParameter("orderId",orderId)); } /** * 例行维护报告 */ @Override public Map getRemindeItem(Map param) { String flowId= param.get("flowId"); param.put("flowId",flowId); StringBuilder sql = new StringBuilder(); sql.append("SELECT * FROM SC_WORKFLOW_CI_REMIND c "); sql.append(" WHERE c.FLOW_ID=:flowId"); Map remindMap=baseDao.queryForMap(sql.toString(), param); Map map =new HashMap(); if(remindMap!=null && remindMap.size()>0){ //服务工程师 StringBuilder selSql=new StringBuilder(); selSql.append("SELECT A.CURRENT_DEALER_NAME,B.SJHM FROM workflow_node A,GG_USER B WHERE A.CURRENT_DEALER_ID=B.ID AND A.FLOWID=:flowId AND A.IS_ADMIN=1 AND A.NODE_TEMPLATE_ID=:nodeId"); Map dealerMap=baseDao.queryForMap(selSql.toString(),new SqlParameter().addValue("flowId", flowId).addValue("nodeId", Constants.REMIND_DEAL)); System.out.println(dealerMap); map.put("dealerMap", dealerMap); //应维护配置数量 sql.setLength(0); param.put("orderId",String.valueOf(remindMap.get("ID"))); sql.append("SELECT ID FROM SC_WORKFLOW_CI_REMIND_DETAIL WHERE ORDER_ID=:orderId"); List detailCountList=baseDao.queryForList(sql.toString(),param); map.put("detailCount", detailCountList.size()); if(detailCountList==null || detailCountList.size()==0)map.put("detailCount", 0); //实际维护配置数量 sql.setLength(0); param.put("state",String.valueOf(Constants.CI_REMIND_DETAIL_STATE_ONE)); sql.append("SELECT ID FROM SC_WORKFLOW_CI_REMIND_DETAIL WHERE ORDER_ID=:orderId AND DEAL_STATE=:state"); List detailStateCountList=baseDao.queryForList(sql.toString(),param); map.put("detailStateCount", detailStateCountList.size()); if(detailStateCountList==null || detailStateCountList.size()==0)map.put("detailStateCount", 0); //审核人 sql.setLength(0); sql.append("SELECT * FROM WORKFLOW_NODE WHERE NODE_TEMPLATE_ID=:templateId AND FLOWID=:flowId ORDER BY CREATETIME DESC"); param.put("templateId", "04e5ae6861fd4ef6bbc521e30b4d11bc"); param.put("flowId", flowId); List nodeList=baseDao.queryForList(sql.toString(), param); if(nodeList!=null && nodeList.size()>0){ map.put("node", nodeList.get(0)); } //文档列表 String fileSql = "select * from GG_FILES where EXTEND1=:BUSINESS_ID AND DEL_FLAG = 1 order by ORDERNUM"; List fileList = baseDao.queryForList(fileSql,new SqlParameter("BUSINESS_ID",flowId)); map.put("fileList", fileList); //涉及工单列表 List orderList=orderService.queryLinkOrders(flowId); if(orderList!=null && orderList.size()>0){ for(Map orderMap:orderList){ orderMap.put("WFSTATE", Constants.getWORKFLOW_BASE_WFSTATE_Label(orderMap.get("WFSTATE").toString())); } } map.put("orderList", orderList); } map.put("remindMap", remindMap); return map; } /** * 获取例行维护日历 */ @Override public Map queryRemindCalandar(Map param) { String year = param.get("year"); String month = param.get("month"); String queryType = param.get("queryType"); if(!StringUtil.notEmpty(year)) { year = DateUtil.getToday("yyyy"); } if(!StringUtil.notEmpty(month)) { month = DateUtil.getToday("MM"); } String time = new String(); long nMonth = DateUtil.getCurrentDate6(); String yearMonth = year+month; if(String.valueOf(nMonth).equals(yearMonth)) { time = DateUtil.getToday("yyyyMMdd"); } else { time = yearMonth+"01"; } //所在周的前一个周日和后一个周六 Long[] sunSat = DateUtil.getSundaySaturday(Long.valueOf(time)); List weekDays = DateUtil.getBetweenTwoDateCycleList(String.valueOf(sunSat[0]), String.valueOf(sunSat[1]), 2, 1, "yyyyMMdd", "yyyyMMdd"); //查询该月的第一天和最后一天 String[] dates = StringUtil.queryFirstLastDate(year,month); //查询第一天属于周几 long firstDay = ConvertUtil.obj2Long(dates[0].replaceAll("-", "")); long endDay = ConvertUtil.obj2Long(dates[1].replaceAll("-", "")); int week = DateUtil.getDayOfWeek(firstDay); List allDate = new ArrayList(); for(int i=week; i>0; i--) { allDate.add(ConvertUtil.obj2StrBlank(DateUtil.getDateAdd(firstDay, -i, 8))); } List list = new ArrayList(); list = DateUtil.getBetweenTwoDateList(ConvertUtil.obj2StrBlank(firstDay), ConvertUtil.obj2StrBlank(endDay), 2, "yyyyMMdd"); for(String str : list) { allDate.add(str.replaceAll("-", "")); } int lastSize = 42-allDate.size(); for(int i=1; i<=lastSize; i++) { allDate.add(ConvertUtil.obj2StrBlank(DateUtil.getDateAdd(endDay, i, 8))); } List orderList = new ArrayList(); List planList = new ArrayList(); Map orderSetMap = new HashMap(); Map planSetMap = new HashMap(); Map params = new HashMap(); params.putAll(param); String selMonth = year+month; String bustype = "6"; String userId=param.get("userId"); params.put("selMonth", selMonth); if(StringUtil.isNotBlank(queryType)){ params.put("queryType", queryType); } params.put("bustype", bustype); params.put("userId", userId); params.put("customer_id", params.get("customerId")); Map result = queryRemindDate(params); orderList=(List)result.get("orderDatas"); planList=(List)result.get("planDatas"); if(orderList!=null&&orderList.size()>0){ for(Map map : orderList) { orderSetMap.put(ConvertUtil.obj2StrBlank(map.get("m_date")).replace("-", ""), "1"); } } if(planList!=null&&planList.size()>0){ for(Map map : planList) { planSetMap.put(ConvertUtil.obj2StrBlank(map.get("m_date")).replace("-", ""), "1"); } } List resultList = new ArrayList(); List weekList = new ArrayList(); String today = DateUtil.getToday("yyyyMMdd"); for(String dateStr : allDate) { if(orderSetMap.containsKey(dateStr)) { Map map = new HashMap(); //判断当天是否有工单 map.put("hasOrder", true); map.put("dateStr", dateStr); //判断是不是当月,如果不是当月当月颜色不一致 String nowMonth = DateUtil.format("MM", dateStr); if(month.equals(nowMonth)) { map.put("nowMonth", 1); } else { map.put("nowMonth", 2); } //展示的日期(天) map.put("showMonth", DateUtil.format("dd", dateStr)); //查询是否是当天之前 if(dateStr.equals(today)) { map.put("isTody", "1"); } else { if(ConvertUtil.obj2Long(today)>ConvertUtil.obj2Long(dateStr)) { map.put("isTody", "0"); } else { if(planSetMap.containsKey(dateStr)){ map.put("isTody", "2"); } } } if(weekDays.contains(dateStr)) { weekList.add(map); } resultList.add(map); } else { Map map = new HashMap(); map.put("hasOrder", false); String nowMonth = DateUtil.format("MM", dateStr); if(month.equals(nowMonth)) { map.put("nowMonth", 1); } else { map.put("nowMonth", 2); } map.put("showMonth", DateUtil.format("dd", dateStr)); if(dateStr.equals(today)) { map.put("isTody", "1"); }else { if(ConvertUtil.obj2Long(today)>ConvertUtil.obj2Long(dateStr)) { map.put("isTody", "0"); } else { if(planSetMap.containsKey(dateStr)){ map.put("isTody", "2"); } } } resultList.add(map); if(weekDays.contains(dateStr)) { weekList.add(map); } } } Map resultMap = new HashMap(); resultMap.put("monthDays", resultList); resultMap.put("weekDays", weekList); return resultMap; } @Override public Map queryRemindDate(Map paramMap) { StringBuilder builder = new StringBuilder(); String queryType = ConvertUtil.obj2StrBlank(paramMap.get("queryType")); if(queryType.equals("1")){ workFlowSupportService.getMyOrderDateSql(builder, paramMap); }else{ workFlowSupportService.getAllOrderDateSql(builder, paramMap); } List orderDatas = baseDao.queryForList(builder.toString(), paramMap); Map resultMap = new HashMap(); //例行维护计划 if(StringUtil.isBlank(queryType)){ builder.setLength(0); builder.append(" select DATE_FORMAT(t.PLAN_EXECUTION_DATE,'%Y-%m-%d') m_date from CI_REMIND_TIMERTASK T,CI_REMIND_CUSTOMER_ITEM I "); builder.append(" where t.CUSTOMER_ITEM_ID = i.ID and t.state=1 and DATE_FORMAT(t.PLAN_EXECUTION_DATE,'%Y%m') = :selMonth "); List planDatas = baseDao.queryForList(builder.toString(), paramMap); resultMap.put("planDatas", planDatas); } resultMap.put("orderDatas", orderDatas); resultMap.put(ClientUtil.SUCCESS, true); resultMap.put(ClientUtil.MSG, "成功"); return resultMap; } /** * 查询所有事件工单列表 */ @Override public PageInfo ewRemindData(PageInfo pageInfo,Map param) { Map supportMap = getAllRemindSql(param); //List list = baseDao.queryforSplitPage(request, supportMap.get("sql").toString(), (Map)supportMap.get("param")); PageInfo list=baseDao.queryforSplitPageInfo(pageInfo, supportMap.get("sql").toString(), param); return list; } /** * 查询所有事件工单列表总数 */ @Override public int ewRemindCount(Map param) { Map supportMap = getAllRemindSql(param); String sql = "select count(*) from ( " + supportMap.get("sql").toString() + " ) t"; return baseDao.queryForInteger(sql,(Map)supportMap.get("param")); } /** * 工单列表 * @param request * @return */ private Map getAllRemindSql(Map param){ String flowState = param.get("flowstate"); String customerId = param.get("customerId"); String subCustomerId = param.get("subCustomerId"); String orderCode = param.get("orderCode"); String nodeTemplateId = param.get("node"); String begintime = param.get("begintime"); String endtime = param.get("endtime"); param.put("flowState", flowState); param.put("customerId", customerId); param.put("subCustomerId", subCustomerId); param.put("nodeTemplateId", nodeTemplateId); param.put("orderCode", "%"+orderCode+"%"); param.put("businessType", String.valueOf(Constants.WORKFLOW_BASE_BUSINESS_TYPE_CI_REMIND)); StringBuilder builder = new StringBuilder(); builder.append(" select b.BUSINESS_ID,b.ID FLOWID,b.WFNAME,b.CREATERNAME,b.CREATETIME,b.CURRENT_NODE_NAME,b.BUSINESSTYPE, "); builder.append(" t.PLAN_EXECUTION_DATE,r.ORDER_CODE,r.ID ORDERID,r.SERVICE_CONTENT,b.CUSTOMER_NAME,b.SUB_CUSTOMER_NAME,B.WFSTATE "); builder.append(" from SC_WORKFLOW_CI_REMIND r "); builder.append(" inner join WORKFLOW_BASE b on r.FLOW_ID = b.ID "); builder.append(" inner join CI_REMIND_TIMERTASK t on r.FLOW_ID = t.FLOW_ID "); if(StringUtil.isNotBlank(flowState)){ if(flowState.equals("11")){ builder.append(" inner join WORKFLOW_NODE N on b.CURRENT_NODE_ID = n.ID "); builder.append(" AND N.FLOWSTATE = 1 AND N.CURRENT_DEALER_ID IS NOT NULL "); } } //工单类型 builder.append(" where b.BUSINESSTYPE = :businessType"); if(StringUtil.isNotBlank(nodeTemplateId)){ builder.append(" and n.NODE_TEMPLATE_ID IS NOT NULL and n.NODE_TEMPLATE_ID =:nodeTemplateId and b.WFSTATE = 1 "); } //客户 if(StringUtil.isNotBlank(customerId)) { builder.append(" AND b.CUSTOMER_ID = :customerId "); } //下属单位 if(StringUtil.isNotBlank(subCustomerId)) { builder.append(" AND b.SUB_CUSTOMER_ID = :subCustomerId "); } //工单状态 if(StringUtil.isNotBlank(flowState) && !flowState.equals("11")){ builder.append(" AND b.WFSTATE = :flowState "); } if(StringUtil.notEmpty(begintime)) { builder.append(" AND b.CREATETIME >= :begintime "); param.put("begintime", begintime+"000000"); } if(StringUtil.notEmpty(endtime)) { builder.append(" AND b.CREATETIME <= :endtime "); param.put("endtime", endtime+"240000"); } builder.append(" order by b.CREATETIME desc,t.PLAN_EXECUTION_DATE desc "); Map supportMap = new HashMap(); supportMap.put("sql",builder); supportMap.put("param", param); return supportMap; } /** * 查询所有事件工单列表(根据客户ID) */ @Override public PageInfo ewRemindByCusIdData(PageInfo pageInfo, Map param) { Map supportMap = getAllRemindSql(param); PageInfo list=baseDao.queryforSplitPageInfo(pageInfo, supportMap.get("sql").toString(), param); return list; } /** * 查询所有事件工单数量(根据客户ID) */ @Override public int ewRemindByCusIdCount(Map param) { Map supportMap = getAllRemindSql(param); String sql = "select count(*) from ( " + supportMap.get("sql").toString() + " ) t"; return baseDao.queryForInteger(sql,(Map)supportMap.get("param")); } @Override public List getRemindCiList(String orderId) { StringBuilder sql = new StringBuilder(); sql.append(" select b.ID CIID,r.USER_NAME,r.DEAL_STATE,r.ID,c.NAME CATENAME,c.ID CATEID,b.CINAME,b.SEARCHCODE,b.POSITION " + " from SC_WORKFLOW_CI_REMIND_DETAIL r "); sql.append(" inner join cmdb_ci_base b "); sql.append(" on r.CI_ID = b.ID "); sql.append(" inner join cmdb_ci_category c "); sql.append(" on b.LV3_ID = c.ID "); sql.append(" where r.ORDER_ID = :orderId "); return baseDao.queryForList(sql.toString(),new SqlParameter("orderId",orderId)); } /** * 服务台调度 提交 */ @Override public Map doServerDispatch(Map param,SC_WORKFLOW_CI_REMIND remind,String[] ciIdAry) { String orderId =param.get("orderId"); String nodeId =param.get("nodeId"); String executorIds = param.get("executorIds"); String executorNames = param.get("executorNames"); String main_executorId = param.get("main_executorId"); String flowNote = param.get("flowNote"); String dealUserName = ""; String flowId = new SC_WORKFLOW_CI_REMIND(orderId).getInstanceById().getFlow_id(); //更新业务表数据 remind.setId(orderId).update(); //设定执行人 List userList = new ArrayList(); String[] executorIdAry = executorIds.split(","); String[] executorNameAry = executorNames.split(","); Map cacheuser = new HashMap(); for(int i=0;i0){ ArrayList paramList = new ArrayList(); for(int i=0;i param) { String orderId = ConvertUtil.obj2StrBlank(param.get("orderId")); String nodeId = ConvertUtil.obj2StrBlank(param.get("nodeId")); String note = ConvertUtil.obj2StrBlank(param.get("flowNote")); String summary = ConvertUtil.obj2StrBlank(param.get("summary")); String userName = param.get("ZSXM"); String userId = param.get("Id"); new SC_WORKFLOW_CI_REMIND(orderId).getInstanceById().setOrder_note(summary).update(); String flowId = new SC_WORKFLOW_CI_REMIND(orderId).getInstanceById().getFlow_id(); Map flowMsg = getFlowMsg(flowId,userId); String nodeid = ConvertUtil.obj2StrBlank(flowMsg.get("ID")); String nodeName = ConvertUtil.obj2StrBlank(flowMsg.get("NODENAME")); //增加处理记录 GG_RECORD record = new GG_RECORD(); record.setDeal_content(nodeName+":"+userName+",已处理维护执行"); record.setDeal_time(DateUtil.getCurrentDate14()); record.setDeal_user_id(userId); record.setDeal_user_name(userName); record.setBusiness_id(flowId); record.setNode_id(nodeId).setNode_name(nodeName); recordService.addRecord(record); //环节流转 WorkFlowSupportEntity support = new WorkFlowSupportEntity(); support.setFlowId(flowId); support.setNodeId(nodeId); support.setNote(note); support.setUserName(userName); support.setUserId(userId); support.setWorkFlowType(Constants.WORKFLOW_BASE_BUSINESS_TYPE_CI_REMIND); Integer is_admin = new WORKFLOW_NODE(nodeId).getInstanceById().getIs_admin(); if(is_admin!=null&&is_admin==1){ support.setNextNodeTemplateId(Constants.REMIND_APPROVE); support.setEverDealflag(true); support.setEverNodeTemplateId(Constants.REMIND_DISPATCH); } SysInfoMsg msg = workFlowSupportService.doOrderFlow(support); Map resultMap = new HashMap(); resultMap.put("result", "1"); resultMap.put("msg", msg); return resultMap; } /** * 回退 */ @Override public Map doSendback(Map param) { String orderId = param.get("orderId"); String nodeId = param.get("nodeId"); String lastNodeTemplateId = param.get("lastNodeTemplateId"); String note = param.get("backNote"); String userName = ConvertUtil.obj2StrBlank(param.get("ZSXM")); String userId = ConvertUtil.obj2StrBlank(param.get("ID")); String flowId = param.get("flowId"); WorkFlowSupportEntity support = new WorkFlowSupportEntity(); support.setFlowId(flowId); support.setNodeId(nodeId); support.setUserName(userName); support.setUserId(userId); support.setNote(note); support.setEverNodeTemplateId(lastNodeTemplateId); support.setWorkFlowType(Constants.WORKFLOW_BASE_BUSINESS_TYPE_CI_REMIND); SysInfoMsg msg = workFlowSupportService.doOrderSendback(support); Map resultMap = new HashMap(); resultMap.put("result", "1"); resultMap.put("msg", msg); return resultMap; } }