前端利用 js-xlsx 实现 Excel 文件导入导出功能

前端代码





  
  自定义派单 - Powered By 
  
  
  
  
  
  
        
  


  

  
  



本地网标识 活动ID 活动名称 活动开始时间 活动结束时间 接入号 客户标识 片区负责人工号 主推荐名称 主推推荐简介 营销建议 主推推荐类型 次推推荐名称 次推推荐简介 次推推荐类型 顺销推荐名称 顺销推荐简介 顺销推荐类型
查询 导出 模板下载 批量导入
活动名称 活动开始时间 活动结束时间 接入号 主推荐名称 主推推荐简介 营销建议 主推推荐类型 次推推荐名称 次推推荐简介 次推推荐类型 顺销推荐名称 顺销推荐简介 顺销推荐类型 校验结果 备注
<#--选择文件上传窗口-->
上传文件:
文件格式说明:

后端代码

package net.radar.action.admin;

import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;

import javax.annotation.Resource;

import net.radar.bean.ResponsePage;
import net.radar.entity.DispatchOrder;
import net.radar.entity.PermissionCascade;
import net.radar.service.AdminService;
import net.radar.service.CustomDispatchOrderService;
import net.radar.service.PermissionCascadeService;
import net.radar.util.DateOpUtil;
import net.radar.util.JsonUtil;
import net.radar.util.SpringUtil;
import net.sf.json.JSONObject;
import net.sf.json.JsonConfig;
import net.sf.json.JSONArray;

import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.struts2.convention.annotation.ParentPackage;



@ParentPackage("admin")
public class CustomDispatchOrderAction extends BaseAdminAction {
    private static final long serialVersionUID = 1L;
    private String company;
    private String serviceCenter;
    private String area;
    private String city;
    private String keyid;
    private String grid;
    private String hdName;
    private String connectNo;
    private String strTime;
    private String endTime;
    private String type;
    private String staPosition;
    private String endPosition;
    private String exportData;

    private String importData;

    @Resource(name = "CustomDispatchOrderServiceImpl")
    private CustomDispatchOrderService customDispatchOrderService;
    
    @Resource(name = "adminServiceImpl")
    private AdminService adminService;


    public String list() {
        return LIST;
    }

    // 查询派单信息
    public String searchOrderInfo() {
        Map map = customDispatchOrderService.searchOrderInfo(strTime, endTime,type,staPosition,endPosition);
        if(Integer.parseInt(type)==1){
            String result = JsonUtil.toJson(map);
            ReportExportAction tt = new ReportExportAction();
            JSONObject jsStr = JSONObject.fromObject(result);
            String expertInfo = jsStr.get("data").toString();
            tt.customDispatchOrderExport(expertInfo);
        }
         return ajax(JsonUtil.toJson(map));
    }

    public String checkImportInfo() {
        Map map = new HashMap();
        String[] actNameArray = hdName.split(",");
        String[] connectNoArray = connectNo.split(",");

        List> list = new ArrayList>();

        for (int i = 0; i < actNameArray.length; i++) {
            Map obj = new HashMap();
            // 判断活动名称是否为空则插入数据
             customDispatchOrderService.isCheckActName(actNameArray[i]);
            
            // 判断接入号是否存在
            if (connectNoArray[i] == null || "null".equalsIgnoreCase(connectNoArray[i])
                    || "undefined".equalsIgnoreCase(connectNoArray[i]) || "".equalsIgnoreCase(connectNoArray[i])) {
                obj.put("connectNo", "flase");
                obj.put("isCurrentCity", "flase");// 接入号为空,则改派单也不属于当前地市
            } else {
                String result = customDispatchOrderService.isCheckConnectNo(connectNoArray[i]);
                if (result == "true") {
                    // 判断该派单所属地市
                    String orderCity = customDispatchOrderService.getCity(connectNoArray[i]);
                    if (orderCity.equals(city)) {
                        obj.put("isCurrentCity", "true");
                    } else {
                        obj.put("isCurrentCity", "flase");
                    }
                }
                obj.put("isCurrentCity", "flase");// 接入号查询不存在flase
                obj.put("connectNo", result);
            }

            list.add(obj);
        }

        map.put("data", list);

        return ajax(JsonUtil.toJson(map));
    }
    
    // 插入派单信息
        public void importInfo() {
            JSONArray jsonArray = JSONArray.fromObject(importData);
            @SuppressWarnings({ "unchecked", "rawtypes" })
            List> mapListJson = (List) jsonArray;
            for (int i = 0; i < mapListJson.size(); i++) {
                Map obj = mapListJson.get(i);
                DispatchOrder  dispatchOrder = (DispatchOrder) JSONObject.toBean(
                        (JSONObject) obj, new DispatchOrder().getClass());
                //根据接入号查询网格ID,再查询网格ID的所有父节点
                List allDirectParentNode = customDispatchOrderService.getAllDirectParentNodeNew(dispatchOrder.getCONNECTNO());
                //根据活动名称查新活动ID
                String HD_ID = customDispatchOrderService.getHdId(dispatchOrder.getHD_NAME());
                dispatchOrder.setHD_ID(HD_ID);
                for (int j = 0; j < allDirectParentNode.size(); j++) {
                    PermissionCascade p = allDirectParentNode.get(j);
                    switch(p.getGrade()){
                    case 5: //网格
                        dispatchOrder.setGRID_ID(p.getId());
                        break;
                    case 4://片区
                        dispatchOrder.setAREA_ID(p.getId());
                        String name  = p.getName();
                       if(name.equals("未划分片区")){
                            dispatchOrder.setREGIONAL_PIC("");//片区负责人
                       }else{
                            dispatchOrder.setREGIONAL_PIC(p.getId());//片区负责人
                       }
                        break;
                    case 3://营服
                        dispatchOrder.setBRANCH_ID(p.getId());
                        break;
                    case 2://县份
                        dispatchOrder.setSUBST_ID(p.getId());
                        break;
                    case 1://地市
                        dispatchOrder.setCITY_ID(p.getId());
                        break;
                     default:
                         dispatchOrder.setPROV_ID("1");
                        break;
                    }
                }

                dispatchOrder.setKEYID(Long.toString(DateOpUtil.randomTimestampId()));//keyId
                dispatchOrder.setORDER_CODE("201"+Long.toString(DateOpUtil.randomTimestampId()));//keyId
                dispatchOrder.setORDER_TYPE("1");//工单类型为1
                dispatchOrder.setORDER_STATE("1");//工单状态为1
                dispatchOrder.setORDER_PROCESSING_STATE("1");//工单处理状态为1
                //根据接入号查询客户标识
                String clientMark = customDispatchOrderService.getClientMark(dispatchOrder.getCONNECTNO());
                dispatchOrder.setCLIENT_MARK(clientMark);//工单处理状态为1
                AdminService adminServiceImpl = (AdminService) SpringUtil
                        .getBean("adminServiceImpl");
                String loginUserId =  adminServiceImpl.getLoginAdmin().getId();
                dispatchOrder.setUSER_ID(loginUserId);
                //插入数据
                customDispatchOrderService.insertOrder(dispatchOrder);

            }
    

        
        }
        //导出检验结果
        public String checkExport() {
            ReportExportAction tt = new ReportExportAction();
            tt.checkResultExport(exportData);
            return ajax("导出成功");
            
        }


    public String getCompany() {
        return company;
    }

    public void setCompany(String company) {
        this.company = company;
    }

    public String getServiceCenter() {
        return serviceCenter;
    }

    public void setServiceCenter(String serviceCenter) {
        this.serviceCenter = serviceCenter;
    }

    public String getArea() {
        return area;
    }

    public void setArea(String area) {
        this.area = area;
    }

    public String getCity() {
        return city;
    }

    public void setCity(String city) {
        this.city = city;
    }

    public String getKeyid() {
        return keyid;
    }

    public void setKeyid(String keyid) {
        this.keyid = keyid;
    }

    public String getGrid() {
        return grid;
    }

    public void setGrid(String grid) {
        this.grid = grid;
    }

    
    public String getHdName() {
        return hdName;
    }

    public void setHdName(String hdName) {
        this.hdName = hdName;
    }

    public String getConnectNo() {
        return connectNo;
    }

    public void setConnectNo(String connectNo) {
        this.connectNo = connectNo;
    }

    public String getStrTime() {
        return strTime;
    }

    public void setStrTime(String strTime) {
        this.strTime = strTime;
    }

    public String getEndTime() {
        return endTime;
    }

    public void setEndTime(String endTime) {
        this.endTime = endTime;
    }

    public String getImportData() {
        return importData;
    }

    public void setImportData(String importData) {
        this.importData = importData;
    }

    public String getType() {
        return type;
    }

    public void setType(String type) {
        this.type = type;
    }

    public String getStaPosition() {
        return staPosition;
    }

    public void setStaPosition(String staPosition) {
        this.staPosition = staPosition;
    }

    public String getEndPosition() {
        return endPosition;
    }

    public void setEndPosition(String endPosition) {
        this.endPosition = endPosition;
    }

    public String getExportData() {
        return exportData;
    }

    public void setExportData(String exportData) {
        this.exportData = exportData;
    }

    
}

导出功能(2)





    
    



    
    
    
    
    


你可能感兴趣的:(前端利用 js-xlsx 实现 Excel 文件导入导出功能)