任务方式导入导出在这里看

2020年2月5日 作者 涂世鼎

1.customer主工程任务方式导入导出
a.统一用队列 downloadCustomerQueue
b.常量根据到每个工程的rabbit实现选用
目前有(不够用自己加):
public static final String IMPORT_EXPORTDATA_FINANCE_TASK = "IMPORT_EXPORTDATA_FINANCE_TASK"; //财务工程
public static final String IMPORT_EXPORTDATA_PRODUCT_TASK = "IMPORT_EXPORTDATA_PRODUCT_TASK";//产品工程
public static final String IMPORT_EXPORTDATA_CUSTOMER_TASK = "IMPORT_EXPORTDATA_CUSTOMER_TASK";//客户工程

public static final String DOWNLOAD_EXPORTDATA_OPERATIR_TASK ="DOWNLOAD_EXPORTDATA_OPERATIR_TASK";//操作工程
public static final String DOWNLOAD_EXPORTDATA_FINANCE_TASK ="DOWNLOAD_EXPORTDATA_FINANCE_TASK";//财务工程
public static final String DOWNLOAD_EXPORTDATA_CUSTOMER_TASK ="DOWNLOAD_EXPORTDATA_CUSTOMER_TASK";//客户工程
public static final String DOWNLOAD_EXPORTDATA_SALES_TASK = "DOWNLOAD_EXPORTDATA_SALES_TASK";//销售工程

c.实例
   发送:
     DataGrid dataGrid = new DataGrid();
    try {
        String fileUploadPath = staticFileUpload;
        DataGrid dg = FileUtils.uploadFile(file, request, fileUploadPath, staticFileServer, organizationService);
        Map map = new HashMap();
        map.put("url", dg.getObj().getDownloadPath());
        map.put("businessName", "AviationCostBusiness");//具体实现类
        map.put("json", SessionUtils.getOrganizationId() + ":" + SessionUtils.getUserId());
        map.put("modulName", "财务系统-主单导入成本");
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm");
        map.put("taskName", "主单" + file.getOriginalFilename() + "(" + SessionUtils.getCustomer().getName() + ")" + sdf.format(new Date()));
        //发消息
        RabbitMessage rabbitMessage = new RabbitMessage(
                RabbitMessageActionsConstant.IMPORT_EXPORTDATA_FINANCE_TASK, SessionUtils.getUserId(), map);
        rabbitMessageService.sendMessage(RabbitMessageQueueKeyConstant.DOWNLOAD_CUSTOMER_QUEUEKEY, rabbitMessage);
       /* InputStream fileInputStream = file.getInputStream();
        Workbook wb = WorkbookFactory.create(fileInputStream);
        dataGrid = aviationCostBusiness.importExcel(wb,SessionUtils.getOrganizationId()+":"+SessionUtils.getUserId());*/
        dataGrid.setFlag(true);
        dataGrid.setMsg("导入任务已经提交,请去任务列表查看");
    } catch (Exception e) {
        throw new EshipException("", "导入Excel错误", e);
    }
    return dataGrid;

  接收:
      搜索藏量可以找到代码

2.exportData工程任务方式导入导出
a.统一用队列downloadAllQueue
b.常量固定
RabbitMessageActionsConstant.IMPORT_EXPORTDATA_TASK;//导入
RabbitMessageActionsConstant.DOWNLOAD_EXPORTDATA_TASK;//导出
c. 实例
发送:
RabbitMessage rabbitMessage = new RabbitMessage(
RabbitMessageActionsConstant.DOWNLOAD_EXPORTDATA_TASK, SessionUtils.getUserId(), map);
rabbitMessageService.sendMessage(RabbitMessageQueueKeyConstant.DOWNLOAD_ALL_QUEUEKEY, rabbitMessage);