1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423 |
- package com.minpay.reportManage.action;
- import java.io.BufferedOutputStream;
- import java.io.IOException;
- import java.io.OutputStream;
- import java.io.UnsupportedEncodingException;
- import java.lang.reflect.InvocationTargetException;
- import java.net.URLEncoder;
- import java.text.ParseException;
- import java.text.SimpleDateFormat;
- import java.time.LocalDateTime;
- import java.time.format.DateTimeFormatter;
- import java.util.*;
- import javax.servlet.ServletOutputStream;
- import javax.servlet.http.HttpServletResponse;
- import com.minpay.common.constant.ReportConstant;
- import com.minpay.common.util.*;
- import com.minpay.db.table.mapper.*;
- import com.minpay.db.table.model.*;
- import com.minpay.db.table.own.mapper.IReportBatchMapper;
- import com.startup.minpay.frame.data.AbstractMINBean;
- import org.apache.commons.fileupload.FileItem;
- import org.apache.ibatis.transaction.Transaction;
- import org.apache.poi.openxml4j.exceptions.InvalidFormatException;
- import com.min.util.DateUtil;
- import com.minpay.common.bean.User;
- import com.minpay.common.constant.Constant;
- import com.minpay.common.format.IFormatService;
- import com.minpay.common.service.IDianwangService;
- import com.minpay.common.service.IPropertiesService;
- import com.minpay.db.table.own.mapper.DataWareManageMapper;
- import com.minpay.db.table.own.mapper.SequenceMapper;
- import com.startup.minpay.frame.business.IMINAction;
- import com.startup.minpay.frame.business.MINHttpServletRequestContext;
- import com.startup.minpay.frame.business.res.MINActionResult;
- import com.startup.minpay.frame.constant.IMINBusinessConstant;
- import com.startup.minpay.frame.constant.IMINTransactionEnum;
- import com.startup.minpay.frame.exception.MINBusinessException;
- import com.startup.minpay.frame.jdbc.MINRowBounds;
- import com.startup.minpay.frame.service.base.IMINDataBaseService;
- import com.startup.minpay.frame.service.base.Service;
- import com.startup.minpay.frame.session.MINSession;
- import com.startup.minpay.frame.target.MINAction;
- import com.startup.minpay.frame.target.MINComponent;
- import com.startup.minpay.frame.target.MINParam;
- import net.sf.json.JSONArray;
- import org.apache.poi.ss.formula.functions.T;
- import org.springframework.transaction.annotation.Transactional;
- @MINComponent
- public class DataWareManageAction implements IMINAction {
- private IMINDataBaseService db;
- /** 原始数据查询 */
- public final static String FILE_INF_QUERY = "fileInfQuery";
- /** 原始文件上传 */
- public final static String FILE_INF_UPLOAD = "fileInfUpload";
- /** 原始文件下载 */
- public final static String FILE_INF_DOWNLOAD = "fileInfDownload";
- /** 原始文件删除 */
- public final static String FILE_INF_DELETE = "fileInfDelete";
- /** 原始文件详情 */
- public final static String FILE_INF_DETAIL = "fileInfDetail";
- /** 原始数据下载 */
- public final static String FILE_DATA_DOWNLOAD = "fileDataDownload";
- /**
- * 原始数据查询
- * @param page
- * @param limit
- * @param date
- * @param fileName
- * @return
- * @throws MINBusinessException
- * @throws InvocationTargetException
- * @throws IllegalArgumentException
- * @throws IllegalAccessException
- * @throws SecurityException
- * @throws NoSuchMethodException
- * @throws InstantiationException
- */
- @MINAction(value = FILE_INF_QUERY)
- public MINActionResult fileInfQuery(
- @MINParam(key = "page", defaultValue = "1") int page,
- @MINParam(key = "limit", defaultValue = "10") int limit,
- @MINParam(key = "date") String date,
- @MINParam(key = "fileName") String fileName,
- @MINParam(key = "notInData") String notInData,
- @MINParam(key = "reportType") String reportType,
- @MINParam(key = "type") String type,
- MINSession session
- ) throws MINBusinessException, NoSuchMethodException, SecurityException, IllegalAccessException, IllegalArgumentException, InvocationTargetException, InstantiationException {
- MINActionResult res = new MINActionResult();
- db = Service.lookup(IMINDataBaseService.class);
- //分页
- MINRowBounds rows = new MINRowBounds(page, limit);
- rows.setSeparateSql(true);
- Map<String, Object> param = new HashMap<String, Object>();
- param.put("date", StringUtil.ObjectToString(date).replaceAll("-",""));
- param.put("fileName", fileName);
- param.put("type", type);
- if (!CommonUtil.isEmpty(notInData)) {
- JSONArray notInArray = JSONArray.fromObject(notInData);
- if (notInArray.size() != 0) {
- param.put("notInArray", notInArray);
- }
- }
- // 查询生成报表所需的文件类型
- if (!CommonUtil.isEmpty(reportType)) {
- DwReporttypeFiletypeRelExample reporttypeFiletypeRelExample = new DwReporttypeFiletypeRelExample();
- reporttypeFiletypeRelExample.createCriteria().andReporttypeIdEqualTo(reportType);
- List<DwReporttypeFiletypeRelKey> selectByExample = db.selectByExample(DwReporttypeFiletypeRelMapper.class, reporttypeFiletypeRelExample);
- if (selectByExample.size() > 0) {
- param.put("fileTypeArray", selectByExample);
- }
- }
- User user = session.getUser();
- String roleId = user.getRoleId();
- // 非系统管理员
- if (!Constant.ROLE_ID.equals(roleId)) {
- param.put("branchId", user.getBranchid());
- }
- List<Map<String, String>> list = db.getMybatisMapper(DataWareManageMapper.class)
- .selectFileInf(param, rows);
- if (list.size() == 0) {
- return res;
- }
- List<String> creatUserIdList = CommonUtil.getIdFromList(list, "creatUser");
- ImUserExample userExam = new ImUserExample();
- userExam.createCriteria().andIdIn(creatUserIdList);
- List<ImUser> userList = db.selectByExample(ImUserMapper.class, userExam);
- String[] str1 = {"creatUser"};
- String[] str2 = {"id"};
- String[] str3 = {"name"};
- String[] str4 = {"userName"};
- list = ListUtil.mergeList(list, userList, str1, str2, str3, str4);
- list = Service.lookup(IFormatService.class).formatDate(list, "uploadDate");
- // 设置返回值
- res.set(IMINBusinessConstant.F_PAGING_LAY, list);
- res.set(IMINBusinessConstant.F_PAGING_COUNT, rows.getCount());
- return res;
- }
- /**
- * 上传原始文件
- * @param request
- * @param fileType
- * @param chongfuFlag 重复上传标志 true:重复数据确认上传
- * @param session
- * @return
- * @throws MINBusinessException
- * @throws InvalidFormatException
- * @throws IOException
- */
- @MINAction(value = FILE_INF_UPLOAD, transaction = IMINTransactionEnum.CMT)
- public MINActionResult fileInfUpload(
- MINHttpServletRequestContext request,
- @MINParam(key = "fileType") String fileType,
- @MINParam(key = "chongfuFlag") boolean chongfuFlag,
- MINSession session
- ) throws MINBusinessException, InvalidFormatException, IOException, ParseException {
- MINActionResult res = new MINActionResult();
- db = Service.lookup(IMINDataBaseService.class);
- // 获取文件
- FileItem fileItem = request.getFile("file");
- String fileName = fileItem.getName();
- if (!fileName.endsWith(".xlsx") && !fileName.endsWith(".xls")) {
- throw new MINBusinessException("文件格式错误!");
- }
- String fileId = db.getMybatisMapper(SequenceMapper.class).getSequence("FILE_INF_NO");
- List<Map<String,String>> list = null;
- // 台区停电
- if (Constant.FILE_DETAIL_TYPE_00.equals(fileType)) {
- // 获取表格信息
- String[] titleKey = new String[]{"number","addressNum","addressName","date", "area","comonpanyName","terminalName","terminalNum","terminalAddress","startTime","endTime"};
- list = FilesUtil.readExecleasy(fileItem, titleKey, 1);
- if (list.size() == 0) {
- throw new MINBusinessException("无数据,请添加数据");//无数据,请添加数据
- }
- // 详情数据存入数据库
- for (Map<String,String> excelMap : list) {
- // 日期
- String date = excelMap.get("date").replaceAll("-", "").replaceAll(":", "").replaceAll(" ", "").substring(0,8);
- String startTime = excelMap.get("startTime").replaceAll("-", "").replaceAll(":", "").replaceAll(" ", "");
- String endTime = excelMap.get("endTime").replaceAll("-", "").replaceAll(":", "").replaceAll(" ", "");
- // 页面确认有重复数据,且点击确认上传,不再判断数据库是否有数据
- if (!chongfuFlag) {
- // 验证是否有重复数据
- DwFileDetail00Example fileDetail00Example = new DwFileDetail00Example();
- fileDetail00Example.createCriteria().andAddressNumEqualTo(excelMap.get("addressNum"))
- .andAddressNameEqualTo(excelMap.get("addressName"))
- .andDateEqualTo(date)
- .andAreaEqualTo(excelMap.get("area"))
- .andComonpanyNameEqualTo(excelMap.get("comonpanyName"))
- .andTerminalNameEqualTo(excelMap.get("terminalName"))
- .andTerminalNumEqualTo(excelMap.get("terminalNum"))
- .andTerminalAddressEqualTo(excelMap.get("terminalAddress"))
- .andStartTimeEqualTo(startTime)
- .andEndTimeEqualTo(endTime);
- List<DwFileDetail00> selectByExample = db.selectByExample(DwFileDetail00Mapper.class, fileDetail00Example);
- if (selectByExample.size() != 0) {
- throw new MINBusinessException("chongfu|" + selectByExample.get(0).getAddressNum() + "|" + selectByExample.get(0).getAddressName() + "|" + selectByExample.get(0).getDate());
- }
- }
- String fileDetailId = db.getMybatisMapper(SequenceMapper.class).getSequence("FILE_DETAIL_00_NO");
- DwFileDetail00 fileDetail00 = new DwFileDetail00();
- fileDetail00.setId(fileDetailId);
- fileDetail00.setNumber(excelMap.get("number"));
- fileDetail00.setAddressNum(excelMap.get("addressNum"));
- fileDetail00.setAddressName(excelMap.get("addressName"));
- fileDetail00.setDate(date);
- fileDetail00.setArea(excelMap.get("area"));
- fileDetail00.setComonpanyName(excelMap.get("comonpanyName"));
- fileDetail00.setTerminalName(excelMap.get("terminalName"));
- fileDetail00.setTerminalNum(excelMap.get("terminalNum"));
- fileDetail00.setTerminalAddress(excelMap.get("terminalAddress"));
- fileDetail00.setStartTime(startTime);
- fileDetail00.setEndTime(endTime);
- fileDetail00.setFileId(fileId);
- db.insertSelective(DwFileDetail00Mapper.class, fileDetail00);
- }
- // 终端投托运
- } else if (Constant.FILE_DETAIL_TYPE_01.equals(fileType)) {
- String[] titleKey = new String[]{"id","tname","cmode","value", "facname","type","fdid","yxstatus","tytime"};
- list = FilesUtil.readExecleasy(fileItem, titleKey, 1);
- if (list.size() == 0) {
- throw new MINBusinessException("无数据,请添加数据");//无数据,请添加数据
- }
- // 详情数据存入数据库
- for (Map<String,String> excelMap : list) {
- DwFileDetail01Example dwFileDetail01 = new DwFileDetail01Example();
- dwFileDetail01.createCriteria().andExcelIdEqualTo(excelMap.get("id"))
- .andExcelTnameEqualTo(excelMap.get("tname"))
- .andExcelCmodeEqualTo(excelMap.get("cmode"))
- .andExcelValueEqualTo(excelMap.get("value"))
- .andExcelFacnameEqualTo(excelMap.get("facname"))
- .andExcelTypeEqualTo(excelMap.get("type"))
- .andExcelFdidEqualTo(excelMap.get("fdid"))
- .andExcelYxstatusEqualTo(excelMap.get("yxstatus"));
- String fileDetailId = db.getMybatisMapper(SequenceMapper.class).getSequence("FILE_DETAIL_01_NO");
- DwFileDetail01 fileDetail01 = new DwFileDetail01();
- fileDetail01.setId(fileDetailId);
- fileDetail01.setExcelId(excelMap.get("id"));
- fileDetail01.setExcelTname(excelMap.get("tname"));
- fileDetail01.setExcelCmode(excelMap.get("cmode"));
- fileDetail01.setExcelValue(excelMap.get("value"));
- fileDetail01.setExcelFacname(excelMap.get("facname"));
- fileDetail01.setExcelType(excelMap.get("type"));
- fileDetail01.setExcelFdid(excelMap.get("fdid"));
- fileDetail01.setExcelYxstatus(excelMap.get("yxstatus"));
- String tytime = excelMap.get("tytime");
- tytime = tytime.replaceAll("-", "").replaceAll(" ", "").replaceAll(":", "");
- if (!CommonUtil.isEmpty(tytime) && tytime.length() != 14) {
- throw new MINBusinessException(excelMap.get("tytime") + "--时间格式错误");
- }
- fileDetail01.setExcelTytime(tytime);
- fileDetail01.setFileId(fileId);
- db.insertSelective(DwFileDetail01Mapper.class, fileDetail01);
- }
- // FA动作
- } else if (Constant.FILE_DETAIL_TYPE_02.equals(fileType)) {
- String[] titleKey = new String[]{"no","beginTime","endTime","gdlx", "cxbdz","xlmc","xllx","qdfa","gzqjpd","gzqhdhf","gzgl"};
- list = FilesUtil.readExecleasy(fileItem, titleKey, 1);
- if (list.size() == 0) {
- throw new MINBusinessException("无数据,请添加数据");//无数据,请添加数据
- }
- // 详情数据存入数据库
- for (Map<String,String> excelMap : list) {
- String fileDetailId = db.getMybatisMapper(SequenceMapper.class).getSequence("FILE_DETAIL_02_NO");
- DwFileDetail02 fileDetail02 = new DwFileDetail02();
- fileDetail02.setId(fileDetailId);
- fileDetail02.setNo(excelMap.get("no"));
- fileDetail02.setBeginTime(excelMap.get("beginTime"));
- fileDetail02.setEndTime(excelMap.get("endTime"));
- fileDetail02.setGdlx(excelMap.get("gdlx"));
- fileDetail02.setCxbdz(excelMap.get("cxbdz"));
- fileDetail02.setXlmc(excelMap.get("xlmc"));
- fileDetail02.setXllx(excelMap.get("xllx"));
- fileDetail02.setQdfa(excelMap.get("qdfa"));
- fileDetail02.setGzqjpd(excelMap.get("gzqjpd"));
- fileDetail02.setGzqhdhf(excelMap.get("gzqhdhf"));
- fileDetail02.setGzgl(excelMap.get("gzgl"));
- fileDetail02.setFileId(fileId);
- db.insertSelective(DwFileDetail02Mapper.class, fileDetail02);
- }
- //低电压
- } else if(Constant.FILE_DETAIL_TYPE_03.equals(fileType)) {
- String[] titleKey = new String[]{"no","sgsmc","xgsmc","bdzmc","xlmc","tqid","byqmc","yhgldw1","yhid","yhmc","yhgldw2","dymax","dymin","dyhgl","csxl","cxxl","dysc","gdlx","ljts","sjrq","gddw"};
- list = FilesUtil.readExecleasy(fileItem, titleKey, 3);
- if (list.size() == 0) {
- throw new MINBusinessException("无数据,请添加数据");//无数据,请添加数据
- }
- // 详情数据存入数据库
- for (Map<String,String> excelMap : list) {
- String fileDetailId = db.getMybatisMapper(SequenceMapper.class).getSequence("FILE_DETAIL_03_NO");
- String sjrq = excelMap.get("sjrq");
- try {
- if(sjrq.length()>10){
- sjrq = sjrq.substring(0, 8);
- }else{
- SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd");
- Date date = sdf.parse(sjrq);
- SimpleDateFormat todf = new SimpleDateFormat("yyyyMMdd");// 设置日期格式
- sjrq = todf.format(date);
- }
- } catch (Exception ex) {
- }
- DwFileDetail03 fileDetail03 = new DwFileDetail03();
- fileDetail03.setId(fileDetailId);
- fileDetail03.setNo(excelMap.get("no"));
- fileDetail03.setSgsmc(excelMap.get("sgsmc"));
- fileDetail03.setXgsmc(excelMap.get("xgsmc"));
- fileDetail03.setBdzmc(excelMap.get("bdzmc"));
- fileDetail03.setXlmc(excelMap.get("xlmc"));
- fileDetail03.setTqid(excelMap.get("tqid"));
- fileDetail03.setByqmc(excelMap.get("byqmc"));
- fileDetail03.setYhgldw1(excelMap.get("yhgldw1"));
- fileDetail03.setYhid(excelMap.get("yhid"));
- fileDetail03.setYhmc(excelMap.get("yhmc"));
- fileDetail03.setYhgldw2(excelMap.get("yhgldw2"));
- fileDetail03.setDymax(excelMap.get("dymax"));
- fileDetail03.setDymin(excelMap.get("dymin"));
- fileDetail03.setDyhgl(excelMap.get("dyhgl"));
- fileDetail03.setCsxl(excelMap.get("csxl"));
- fileDetail03.setCxxl(excelMap.get("cxxl"));
- fileDetail03.setDysc(excelMap.get("dysc"));
- fileDetail03.setGdlx(excelMap.get("gdlx"));
- fileDetail03.setLjts(excelMap.get("ljts"));
- fileDetail03.setSjrq(sjrq);
- fileDetail03.setGddw(excelMap.get("gddw"));
- fileDetail03.setFileId(fileId);
- db.insertSelective(DwFileDetail03Mapper.class, fileDetail03);
- }
- //过电压
- } else if(Constant.FILE_DETAIL_TYPE_04.equals(fileType)) {
- String[] titleKey = new String[]{"no","sgsmc","xgsmc","bdzmc","xlmc","tqid","byqmc","yhgldw1","yhid","yhmc","yhgldw2","dymax","dymin","dyhgl","csxl","cxxl","gdysc","gdlx","ljts","gddw","sjrq"};
- list = FilesUtil.readExecleasy(fileItem, titleKey, 1);
- if (list.size() == 0) {
- throw new MINBusinessException("无数据,请添加数据");//无数据,请添加数据
- }
- // 详情数据存入数据库
- for (Map<String,String> excelMap : list) {
- String fileDetailId = db.getMybatisMapper(SequenceMapper.class).getSequence("FILE_DETAIL_04_NO");
- String sjrq = excelMap.get("sjrq");
- try {
- if(sjrq.length()>10){
- sjrq = sjrq.substring(0, 8);
- }else{
- SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd");
- Date date = sdf.parse(sjrq);
- SimpleDateFormat todf = new SimpleDateFormat("yyyyMMdd");// 设置日期格式
- sjrq = todf.format(date);
- }
- } catch (Exception ex) {
- }
- // DateFormat formater = new SimpleDateFormat("yyyyMMdd");
- // String sjrq = formater.format(excelMap.get("sjrq"));
- DwFileDetail04 fileDetail04 = new DwFileDetail04();
- fileDetail04.setId(fileDetailId);
- fileDetail04.setNo(excelMap.get("no"));
- fileDetail04.setSgsmc(excelMap.get("sgsmc"));
- fileDetail04.setXgsmc(excelMap.get("xgsmc"));
- fileDetail04.setBdzmc(excelMap.get("bdzmc"));
- fileDetail04.setXlmc(excelMap.get("xlmc"));
- fileDetail04.setTqid(excelMap.get("tqid"));
- fileDetail04.setByqmc(excelMap.get("byqmc"));
- fileDetail04.setYhgldw1(excelMap.get("yhgldw1"));
- fileDetail04.setYhid(excelMap.get("yhid"));
- fileDetail04.setYhmc(excelMap.get("yhmc"));
- fileDetail04.setYhgldw2(excelMap.get("yhgldw2"));
- fileDetail04.setDymax(excelMap.get("dymax"));
- fileDetail04.setDymin(excelMap.get("dymin"));
- fileDetail04.setDyhgl(excelMap.get("dyhgl"));
- fileDetail04.setCsxl(excelMap.get("csxl"));
- fileDetail04.setCxxl(excelMap.get("cxxl"));
- fileDetail04.setGdysc(excelMap.get("gdysc"));
- fileDetail04.setGdlx(excelMap.get("gdlx"));
- fileDetail04.setLjts(excelMap.get("ljts"));
- fileDetail04.setSjrq(sjrq);
- fileDetail04.setGddw(excelMap.get("gddw"));
- fileDetail04.setFileId(fileId);
- db.insertSelective(DwFileDetail04Mapper.class, fileDetail04);
- }
- // 95598工单原始数据上传
- } else if(Constant.FILE_DETAIL_TYPE_05.equals(fileType)) {
- String[] titleKey = new String[]{"NO","GDBH","GWGDBH","ZT","YWLX","DQBZ","SLRY","SLSJ","SLLR","YHBH","YHMC","LXDZ","LXDH","HFNR","YJFL","EJFL",
- "YWZL","SJDW","GDDW","CBD","CLJG","CLDW","CLBM","HDS","BZ","GLGD","WTYYFL","GDFJ","ZRBM","GDSJ","GQSJ","GQYY","FWQD","SJHTZRYY"};
- list = FilesUtil.readExecleasy(fileItem, titleKey, 1);
- if (list.size() == 0) {
- throw new MINBusinessException("无数据,请添加数据");//无数据,请添加数据
- }
- // 详情数据存入数据库
- for (Map<String,String> excelMap : list) {
- String fileDetailId = db.getMybatisMapper(SequenceMapper.class).getSequence("FILE_DETAIL_05_NO");
- DwFileDetail05 fileDetail05 = new DwFileDetail05();
- fileDetail05.setId(fileDetailId);
- fileDetail05.setNo(excelMap.get("NO"));
- fileDetail05.setGdbh(excelMap.get("GDBH"));
- fileDetail05.setGwgdbh(excelMap.get("GWGDBH"));
- fileDetail05.setZt(excelMap.get("ZT"));
- fileDetail05.setYwlx(excelMap.get("YWLX"));
- fileDetail05.setDqbz(excelMap.get("DQBZ"));
- fileDetail05.setSlry(excelMap.get("SLRY"));
- fileDetail05.setSlsj(excelMap.get("SLSJ"));
- fileDetail05.setSllr(excelMap.get("SLLR"));
- fileDetail05.setYhbh(excelMap.get("YHBH"));
- fileDetail05.setYhmc(excelMap.get("YHMC"));
- fileDetail05.setLxdz(excelMap.get("LXDZ"));
- fileDetail05.setLxdh(excelMap.get("LXDH"));
- fileDetail05.setHfnr(excelMap.get("HFNR"));
- fileDetail05.setYjfl(excelMap.get("YJFL"));
- fileDetail05.setEjfl(excelMap.get("EJFL"));
- fileDetail05.setYwzl(excelMap.get("YWZL"));
- fileDetail05.setSjdw(excelMap.get("SJDW"));
- fileDetail05.setGddw(excelMap.get("GDDW"));
- fileDetail05.setCbd(excelMap.get("CBD"));
- fileDetail05.setCljg(excelMap.get("CLJG"));
- fileDetail05.setCldw(excelMap.get("CLDW"));
- fileDetail05.setClbm(excelMap.get("CLBM"));
- fileDetail05.setGds(excelMap.get("GDS"));
- fileDetail05.setBz(excelMap.get("BZ"));
- fileDetail05.setGlgd(excelMap.get("GLGD"));
- fileDetail05.setWtyyfl(excelMap.get("WTYYFL"));
- fileDetail05.setGdfj(excelMap.get("GDFJ"));
- fileDetail05.setZrbm(excelMap.get("ZRBM"));
- fileDetail05.setGdsj(excelMap.get("GDSJ"));
- fileDetail05.setGqyy(excelMap.get("GQYY"));
- fileDetail05.setFwqd(excelMap.get("FWQD"));
- fileDetail05.setSjhtzryy(excelMap.get("SJHTZRYY"));
- fileDetail05.setFileId(fileId);
- db.insertSelective(DwFileDetail05Mapper.class, fileDetail05);
- }
- //计停非计停
- }else if(Constant.FILE_DETAIL_TYPE_06.equals(fileType)) {
- String[] titleKey = new String[]{"NO","TYPE","UNIT","DEVICE","TIME","EVENTTYPE","FA","TRIPTYPE","CAUSE","CHZDZQK","HANDLE","ERROBRIEF"};
- list = FilesUtil.readExecleasy(fileItem, titleKey, 1);
- if (list.size() == 0) {
- throw new MINBusinessException("无数据,请添加数据");//无数据,请添加数据
- }
- // 详情数据存入数据库
- for (Map<String,String> excelMap : list) {
- String fileDetailId = db.getMybatisMapper(SequenceMapper.class).getSequence("FILE_DETAIL_05_NO");
- DwFileDetail07 fileDetail07 = new DwFileDetail07();
- fileDetail07.setId(fileDetailId);
- fileDetail07.setNo(excelMap.get("NO"));
- fileDetail07.setType(excelMap.get("TYPE"));
- fileDetail07.setUnit(excelMap.get("UNIT"));
- fileDetail07.setDevice(excelMap.get("DEVICE"));
- fileDetail07.setTime(excelMap.get("TIME"));
- fileDetail07.setEventtype(excelMap.get("EVENTTYPE"));
- fileDetail07.setFa(excelMap.get("FA"));
- fileDetail07.setTriptype(excelMap.get("TRIPTYPE"));
- fileDetail07.setCause(excelMap.get("CAUSE"));
- fileDetail07.setChzdzqk(excelMap.get("CHZDZQK"));
- fileDetail07.setHandle(excelMap.get("HANDLE"));
- fileDetail07.setErrobrief(excelMap.get("ERROBRIEF"));
- db.insertSelective(DwFileDetail07Mapper.class, fileDetail07);
- }
- //客户信息明细
- }else if(Constant.FILE_DETAIL_TYPE_07.equals(fileType)){
- //标题对应key
- String[] titleKey = new String[]{
- };
- String[] titleValue = new String[]{
- "所属文件id"
- };
- //验证模板是否正确
- Map<String,Object> header = new HashMap<String, Object>();
- List<String[]> headerTitle = new ArrayList<String[]>();
- headerTitle.add(titleKey);
- headerTitle.add(titleValue);
- if(headerTitle == null || headerTitle.isEmpty()){
- System.out.println("标题列为空");
- } else {
- header.put("headerRows",headerTitle.size() - 1);
- header.put("header",headerTitle);
- header.put("cols",headerTitle.get(headerTitle.size() -1).length);
- boolean b = ExcelTemplateUtil.verificationExcelHeadLine(fileItem,header);
- if (!b) {
- System.out.println("导入模板不一致");
- }
- //读取excel数据
- list = FilesUtil.readExecleasy(fileItem, titleKey, 1);
- // 详情数据存入数据库
- for (Map<String,String> excelMap : list) {
- String fileDetailId = db.getMybatisMapper(SequenceMapper.class).getSequence("FILE_DETAIL_05_NO");
- DwFileDetail07 fileDetail07 = new DwFileDetail07();
- fileDetail07.setId(fileDetailId);
- }
- }
- //配变过重载
- }else if(Constant.FILE_DETAIL_TYPE_08.equals(fileType)){
- //标题对应key
- String[] titleKey = new String[]{"SEQU","MONTH","UNIT","BZMC","XLMC","GBMC","FZL","ZDFZL","ZDFZLFSSK","EDRL","GZZYYFL","JTYY",
- "JJCSFL","JTJJCS","WCSJ","SXBPHL","AXDL","BXDL","CXDL","YHSL","GZSC","ZZSC","PMSID","YXID"};
- String[] titleValue = new String[]{
- "序号","月份","单位","维护班组","所属线路","公变名称","负载率(%)",
- "最大负载率(%)","最大负载率发生时刻时间","额定容量(kVA)","重载原因分类",
- "具体原因\n" +
- "(详细说明原因情况)","解决措施分类","具体解决措施\n" +
- "(详细说明解决措施)",
- "完成时间\n" +
- "(格式:2020/01/01)","三相不平衡率(%)(最大负荷)","A相电流(A)","B相电流(A)",
- "C相电流(A)","用户数量","过载时长","重载时长","PMSID","营销ID"
- };
- //验证模板是否正确
- Map<String,Object> header = new HashMap<String, Object>();
- List<String[]> headerTitle = new ArrayList<String[]>();
- headerTitle.add(titleValue);
- if(headerTitle == null || headerTitle.isEmpty()){
- System.out.println("标题列为空");
- } else {
- header.put("headerRows",headerTitle.size() - 1);
- header.put("header",headerTitle);
- header.put("cols",headerTitle.get(headerTitle.size() -1).length);
- boolean b = ExcelTemplateUtil.verificationExcelHeadLine(fileItem,header);
- if (!b) {
- throw new MINBusinessException("导入模板不一致,请使用正确模板");//无数据,请添加数据
- }
- //读取excel数据
- list = FilesUtil.readExecleasy(fileItem, titleKey, 1);
- if(list == null || list.isEmpty()){
- System.out.println("");
- throw new MINBusinessException("无数据,请添加数据");//无数据,请添加数据
- }
- SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");//注意月份是MM
- DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyyMMddHHmmss");
- DateTimeFormatter fa = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
- List<DwFileDetail09> ll = new ArrayList<DwFileDetail09>();
- // 详情数据存入数据库
- for (Map<String,String> excelMap : list) {
- DwFileDetail09 fileDetail09 = new DwFileDetail09();
- fileDetail09.setSequ(Integer.valueOf(StringUtil.ObjToInt(excelMap.get("SEQU"))));
- fileDetail09.setId(UUID.randomUUID().toString().replace("-", ""));
- fileDetail09.setMonth(Integer.valueOf(StringUtil.ObjToInt(excelMap.get("MONTH"))));
- fileDetail09.setUnit(excelMap.get("UNIT"));
- fileDetail09.setBzmc(excelMap.get("BZMC"));
- fileDetail09.setGbmc(excelMap.get("GBMC"));
- fileDetail09.setXlmc(excelMap.get("XLMC"));
- fileDetail09.setFzl(Float.valueOf(StringUtil.ObjToFloat(excelMap.get("FZL"))));
- fileDetail09.setZdfzl(Float.valueOf(StringUtil.ObjToFloat(excelMap.get("ZDFZL"))));
- fileDetail09.setZdfzlfssk(excelMap.get("ZDFZLFSSK"));
- fileDetail09.setEdrl(Float.valueOf(StringUtil.ObjToFloat(excelMap.get("EDRL"))));
- fileDetail09.setGzzyyfl(excelMap.get("GZZYYFL"));
- fileDetail09.setJtyy(excelMap.get("JTYY"));
- fileDetail09.setJjcsfl(excelMap.get("JJCSFL"));
- fileDetail09.setJtjjcs(excelMap.get("JTJJCS"));
- String wcsj = excelMap.get("WCSJ");
- if(wcsj != null && !"".equals(wcsj)){
- LocalDateTime ldt = LocalDateTime.parse(wcsj,dtf);
- String datetime = ldt.format(fa);
- fileDetail09.setWcsj(simpleDateFormat.parse(datetime.replaceAll("/","-")));
- }
- fileDetail09.setSxbphl(Float.valueOf(StringUtil.ObjToFloat(excelMap.get("SXBPHL"))));
- fileDetail09.setAxdl(Float.valueOf(StringUtil.ObjToFloat(excelMap.get("AXDL"))));
- fileDetail09.setBxdl(Float.valueOf(StringUtil.ObjToFloat(excelMap.get("BXDL"))));
- fileDetail09.setCxdl(Float.valueOf(StringUtil.ObjToFloat(excelMap.get("CXDL"))));
- System.out.println("负载率:"+excelMap.get("FZL")+",最大负载率:"+excelMap.get("ZDFZL")+",A相:"+excelMap.get("AXDL")+",B相:"+excelMap.get("BXDL")+",C相:"+excelMap.get("CXDL"));
- fileDetail09.setGzsc(Float.valueOf(StringUtil.ObjToFloat(excelMap.get("GZSC"))));
- fileDetail09.setYhsl(Integer.valueOf(StringUtil.ObjToInt(excelMap.get("YHSL"))));
- fileDetail09.setZzsc(Float.valueOf(StringUtil.ObjToFloat(excelMap.get("ZZSC"))));
- fileDetail09.setYxid(excelMap.get("YXID"));
- fileDetail09.setPmsid(excelMap.get("PMSID"));
- fileDetail09.setFileId(fileId);
- ll.add(fileDetail09);
- }
- this.batchReportData(ll,1);
- }
- //线路过重载
- }else if(Constant.FILE_DETAIL_TYPE_09.equals(fileType)){
- //标题对应key
- String[] titleKey = new String[]{
- "SEQU","MONTH","XGSMC","BZMC","BDZMC","XLMC","EDDL","FZL","GZZYY",
- "GZZJTYY","JJCSFL","JTJJCS","WCSJ","GZSC","YXDL",
- "FSSK","ZDDL","ZDZFSSK","PBSL","PBRL","SFZDH","PMSID"};
- String[] titleValue = new String[]{
- "序号","月份","所属县公司","管理班组","变电站名称",
- "线路名称","额定电流(A)","负载率","过载原因分类","具体原因\n" +
- "(详细说明原因情况)",
- "解决措施分类","具体解决措施\n" +
- "(详细说明解决措施)","完成时间\n" +
- "(格式:2020/01/01)",
- "过载时长(小时)","运行电流(A)","发生时刻","最大电流(A)","最大值发生时刻",
- "配变数量(台)","配变容量(kVA)","是否自动化","PMSID"
- };
- //验证模板是否正确
- Map<String,Object> header = new HashMap<String, Object>();
- List<String[]> headerTitle = new ArrayList<String[]>();
- headerTitle.add(titleValue);
- if(headerTitle == null || headerTitle.isEmpty()){
- System.out.println("标题列为空");
- } else {
- header.put("headerRows",headerTitle.size() - 1);
- header.put("header",headerTitle);
- header.put("cols",headerTitle.get(headerTitle.size() -1).length);
- boolean b = ExcelTemplateUtil.verificationExcelHeadLine(fileItem,header);
- if (!b) {
- throw new MINBusinessException("导入模板不一致,请使用正确模板");//无数据,请添加数据
- }
- //读取excel数据
- list = FilesUtil.readExecleasy(fileItem, titleKey, 1);
- if(list == null || list.isEmpty()){
- throw new MINBusinessException("无数据,请添加数据");//无数据,请添加数据
- }
- List<DwFileDetail10> ll = new ArrayList<DwFileDetail10>();
- // 详情数据存入数据库
- for (Map<String,String> excelMap : list) {
- DwFileDetail10 fileDetail10 = new DwFileDetail10();
- fileDetail10.setId(UUID.randomUUID().toString().replace("-", ""));
- fileDetail10.setSequ(Integer.valueOf(StringUtil.ObjToInt(excelMap.get("SEQU"))));
- fileDetail10.setMonth(Integer.valueOf(StringUtil.ObjToInt(excelMap.get("MONTH"))));
- fileDetail10.setXgsmc(excelMap.get("XGSMC"));
- fileDetail10.setBzmc(excelMap.get("BZMC"));
- fileDetail10.setBdzmc(excelMap.get("BDZMC"));
- fileDetail10.setXlmc(excelMap.get("XLMC"));
- fileDetail10.setEddl(Float.valueOf(StringUtil.ObjToFloat(excelMap.get("EDDL"))));
- fileDetail10.setFzl(Float.valueOf(StringUtil.ObjToFloat(excelMap.get("FZL"))));
- fileDetail10.setGzzyy(excelMap.get("GZZYY"));
- fileDetail10.setGzzjtyy(excelMap.get("GZZJTYY"));
- fileDetail10.setJjcsfl(excelMap.get("JJCSFL"));
- fileDetail10.setJtjjcs(excelMap.get("JTJJCS"));
- String wcsj = excelMap.get("WCSJ");
- if(wcsj != null && !"".equals(wcsj)){
- fileDetail10.setWcsj(StringUtil.ObjToDate(wcsj,"1"));
- }
- fileDetail10.setGzsc(Float.valueOf(StringUtil.ObjToFloat(excelMap.get("GZSC"))));
- fileDetail10.setYxdl(Float.valueOf(StringUtil.ObjToFloat(excelMap.get("YXDL"))));
- String fssk = excelMap.get("FSSK");
- if(fssk != null && !"".equals(fssk)){
- fileDetail10.setFssk(StringUtil.ObjToDate(fssk,"2"));
- }
- fileDetail10.setZddl(Float.valueOf(StringUtil.ObjToFloat(excelMap.get("ZDDL"))));
- String zdzfssk = excelMap.get("ZDZFSSK");
- if(zdzfssk != null && !"".equals(zdzfssk)){
- fileDetail10.setZdzfssk(StringUtil.ObjToDate(zdzfssk,"2"));
- }
- fileDetail10.setPbsl(Integer.valueOf(StringUtil.ObjToInt(excelMap.get("PBSL"))));
- fileDetail10.setPbrl(Integer.valueOf(StringUtil.ObjToInt(excelMap.get("PBRL"))));
- fileDetail10.setSfzdh(excelMap.get("SFZDH"));
- fileDetail10.setPmsid(excelMap.get("PMSID"));
- fileDetail10.setFileId(fileId);
- ll.add(fileDetail10);
- }
- this.batchXlgzzReportData(ll,2);
- }
- // 故障工单信息
- }else if(Constant.FILE_DETAIL_TYPE_11.equals(fileType)){
- //标题对应key
- String[] titleKey = new String[]{
- "GDBH","GWGDBH","YHBH","GDDW","DWXCSJ", "GZPCSJ", "YJFL", "EJFL", "SJFL", "YWLXMC", "SLSH", "PGR",
- "PCRY", "SDR", "YHMC", "LXR", "LXDZ", "XCFL", "JJCD", "WHCD", "CQSX", "GZGS", "SLNR", "GDZT", "GZYY",
- "GZXX", "DYDJ", "ZDCL", "GZDZ", "LXDH", "CLJG", "HBZD", "QXZSC", "DGSC", "GZPCSC", "GZYPJG", "XCQXJL",
- "SCPFQXDSJ", "ZCPFQXDSJ", "ZDJDSJ", "HFSDSJ", "TJSHSJ", "GDSHSJ", "GDSJ", "ZDBM"};
- String[] titleValue = new String[]{
- "工单编号" , "国网工单号" , "用户编号" , "供电单位" , "到达现场时间" , "故障排除时间" , "一级分类" ,
- "二级分类" , "三级分类" , "业务类型名称" , "受理时间" , "派工人 " , "派出人员" , "锁定人 " , "用户名称" ,
- "联系人 " , "联系地址" , "现场分类" , "紧急程度" , "危害程度" , "产权属性" , "故障归属" , "受理内容" ,
- "工单状态" , "故障原因" , "故障现象" , "电压等级" , "终端处理" , "故障地址" , "联系电话" , "处理结果" ,
- "合并主单" , "抢修总时长(分)" , "到岗时长(分) " , "故障排除时长(分) " , "故障研判结果" , "现场抢修记录" ,
- "首次派发抢修队时间 " , "再次派发抢修队时间 " , "终端接单时间" , "恢复送电时间" , "提交审核时间" ,
- "工单审核时间" ,"归档时间" , "终端编码"
- };
- //验证模板是否正确
- Map<String,Object> header = new HashMap<String, Object>();
- List<String[]> headerTitle = new ArrayList<String[]>();
- headerTitle.add(titleValue);
- if(headerTitle == null || headerTitle.isEmpty()){
- System.out.println("标题列为空");
- } else {
- header.put("headerRows",headerTitle.size() - 1);
- header.put("header",headerTitle);
- header.put("cols",headerTitle.get(headerTitle.size() -1).length);
- boolean b = ExcelTemplateUtil.verificationExcelHeadLine(fileItem,header);
- if (!b) {
- throw new MINBusinessException("导入模板不一致,请使用正确模板");//无数据,请添加数据
- }
- //读取excel数据
- list = FilesUtil.readExecleasy(fileItem, titleKey, 1);
- if(list == null || list.isEmpty()){
- throw new MINBusinessException("无数据,请添加数据");//无数据,请添加数据
- }
- List<DwFileDetail11> ll = new ArrayList<DwFileDetail11>();
- // 详情数据存入数据库
- for (Map<String,String> excelMap : list) {
- DwFileDetail11 fileDetail11 = new DwFileDetail11();
- fileDetail11.setId(UUID.randomUUID().toString().replace("-", ""));
- fileDetail11.setGdbh(excelMap.get("GDBH"));
- fileDetail11.setGwgdbh(excelMap.get("GWGDBH"));
- fileDetail11.setYhbh(excelMap.get("YHBH"));
- fileDetail11.setGddw(excelMap.get("GDDW"));
- String dwxcsj = excelMap.get("DWXCSJ");
- if(dwxcsj != null && !"".equals(dwxcsj)){
- fileDetail11.setDwxcsj(StringUtil.ObjToDate(dwxcsj,"2"));
- }
- String gzpcsj = excelMap.get("GZPCSJ");
- if(gzpcsj != null && !"".equals(gzpcsj)){
- fileDetail11.setGzpcsj(StringUtil.ObjToDate(gzpcsj,"2"));
- }
- fileDetail11.setYjfl(excelMap.get("YJFL"));
- fileDetail11.setEjfl(excelMap.get("EJFL"));
- fileDetail11.setSjfl(excelMap.get("SJFL"));
- fileDetail11.setYwlxmc(excelMap.get("YWLXMC"));
- String slsh = excelMap.get("SLSH");
- if(slsh != null && !"".equals(slsh)){
- fileDetail11.setSlsh(StringUtil.ObjToDate(slsh,"2"));
- }
- fileDetail11.setPgr(excelMap.get("PGR"));
- fileDetail11.setPcry(excelMap.get("PCRY"));
- fileDetail11.setSdr(excelMap.get("SDR"));
- fileDetail11.setYhmc(excelMap.get("YHMC"));
- fileDetail11.setLxr(excelMap.get("LXR"));
- fileDetail11.setLxdz(excelMap.get("LXDZ"));
- fileDetail11.setXcfl(excelMap.get("XCFL"));
- fileDetail11.setJjcd(excelMap.get("JJCD"));
- fileDetail11.setWhcd(excelMap.get("WHCD"));
- fileDetail11.setCqsx(excelMap.get("CQSX"));
- fileDetail11.setGzgs(excelMap.get("GZGS"));
- fileDetail11.setSlnr(excelMap.get("SLNR"));
- fileDetail11.setGdzt(excelMap.get("GDZT"));
- fileDetail11.setGzyy(excelMap.get("GZYY"));
- fileDetail11.setGzxx(excelMap.get("GZXX"));
- fileDetail11.setDydj(excelMap.get("DYDJ"));
- fileDetail11.setZdcl(excelMap.get("ZDCL"));
- fileDetail11.setGzdz(excelMap.get("GZDZ"));
- fileDetail11.setLxdh(excelMap.get("LXDH"));
- fileDetail11.setCljg(excelMap.get("CLJG"));
- fileDetail11.setHbzd(excelMap.get("HBZD"));
- fileDetail11.setQxzsc(StringUtil.ObjToFloat(excelMap.get("QXZSC")));
- fileDetail11.setDgsc(StringUtil.ObjToFloat(excelMap.get("DGSC")));
- fileDetail11.setGzpcsc(StringUtil.ObjToFloat(excelMap.get("GZPCSC")));
- fileDetail11.setGzypjg(excelMap.get("GZYPJG"));
- fileDetail11.setXcqxjl(excelMap.get("XCQXJL"));
- String scpfqxdsj = excelMap.get("SCPFQXDSJ");
- if(scpfqxdsj != null && !"".equals(scpfqxdsj)){
- fileDetail11.setScpfqxdsj(StringUtil.ObjToDate(scpfqxdsj,"2"));
- }
- String zcpfqxdsj = excelMap.get("ZCPFQXDSJ");
- if(zcpfqxdsj != null && !"".equals(zcpfqxdsj)){
- fileDetail11.setZcpfqxdsj(StringUtil.ObjToDate(zcpfqxdsj,"2"));
- }
- String zdjdsj = excelMap.get("ZDJDSJ");
- if(zdjdsj != null && !"".equals(zdjdsj)){
- fileDetail11.setZdjdsj(StringUtil.ObjToDate(zdjdsj,"2"));
- }
- String hfsdsj = excelMap.get("HFSDSJ");
- if(hfsdsj != null && !"".equals(hfsdsj)){
- fileDetail11.setHfsdsj(StringUtil.ObjToDate(hfsdsj,"2"));
- }
- String tjshsj = excelMap.get("TJSHSJ");
- if(tjshsj != null && !"".equals(tjshsj)){
- fileDetail11.setTjshsj(StringUtil.ObjToDate(tjshsj,"2"));
- }
- String gdshsj = excelMap.get("GDSHSJ");
- if(gdshsj != null && !"".equals(gdshsj)){
- fileDetail11.setGdshsj(StringUtil.ObjToDate(gdshsj,"2"));
- }
- String gdsj = excelMap.get("GDSJ");
- if(gdsj != null && !"".equals(gdsj)){
- fileDetail11.setGdsj(StringUtil.ObjToDate(gdsj,"2"));
- }
- fileDetail11.setZdbm(excelMap.get("ZDBM"));
- fileDetail11.setFileId(fileId);
- ll.add(fileDetail11);
- }
- this.batchGzgdReportData(ll,2);
- }
- }else if(Constant.FILE_DETAIL_TYPE_12.equals(fileType)){
- //标题对应key
- String[] titleKey = ReportConstant.REPORT_955982_TITLEKEY;
- String[] titleValue = ReportConstant.REPORT_955982_TITLEVALUE;
- //验证模板是否正确
- Map<String,Object> header = new HashMap<String, Object>();
- List<String[]> headerTitle = new ArrayList<String[]>();
- headerTitle.add(titleValue);
- if(headerTitle == null || headerTitle.isEmpty()){
- System.out.println("标题列为空");
- } else {
- header.put("headerRows",headerTitle.size() - 1);
- header.put("header",headerTitle);
- header.put("cols",headerTitle.get(headerTitle.size() -1).length);
- boolean b = ExcelTemplateUtil.verificationExcelHeadLine(fileItem,header);
- if (!b) {
- throw new MINBusinessException("导入模板不一致,请使用正确模板");//无数据,请添加数据
- }
- //读取excel数据
- list = FilesUtil.readExecleasy(fileItem, titleKey, 1);
- if(list == null || list.isEmpty()){
- throw new MINBusinessException("无数据,请添加数据");//无数据,请添加数据
- }
- List<DwFileDetail12> ll = new ArrayList<DwFileDetail12>();
- // 详情数据存入数据库
- for (Map<String,String> excelMap : list) {
- DwFileDetail12 fileDetail12 = new DwFileDetail12();
- fileDetail12.setId(UUID.randomUUID().toString().replace("-", ""));
- fileDetail12.setSequ(StringUtil.ObjToInt(excelMap.get("SEQU")));
- fileDetail12.setGdbh(excelMap.get("GDBH"));
- fileDetail12.setGwgdbh(excelMap.get("GWGDBH"));
- fileDetail12.setZt(excelMap.get("ZT"));
- fileDetail12.setDbbs(excelMap.get("DBBS"));
- fileDetail12.setYwlx(excelMap.get("YWLX"));
- fileDetail12.setDqbz(excelMap.get("DQBZ"));
- fileDetail12.setSlry(excelMap.get("SLRY"));
- String slsj = excelMap.get("SLSJ");
- if(slsj != null && !"".equals(slsj)){
- fileDetail12.setSlsj(StringUtil.ObjToDate(slsj,"1"));
- }
- // fileDetail12.setSlsj(excelMap.get("SLSJ"));
- fileDetail12.setSlnr(excelMap.get("SLNR"));
- fileDetail12.setYhbh(excelMap.get("YHBH"));
- fileDetail12.setYhmc(excelMap.get("YHMC"));
- fileDetail12.setLxdz(excelMap.get("LXDZ"));
- fileDetail12.setLxdh(excelMap.get("LXDH"));
- fileDetail12.setHfnr(excelMap.get("HFNR"));
- fileDetail12.setYjfl(excelMap.get("YJFL"));
- fileDetail12.setEjfl(excelMap.get("EJFL"));
- fileDetail12.setYwzl(excelMap.get("YWZL"));
- fileDetail12.setSjdw(excelMap.get("SJDW"));
- fileDetail12.setGddw(excelMap.get("GDDW"));
- fileDetail12.setCbd(excelMap.get("CBD"));
- fileDetail12.setCljg(excelMap.get("CLJG"));
- fileDetail12.setCldw(excelMap.get("CLDW"));
- fileDetail12.setClbm(excelMap.get("CLBM"));
- fileDetail12.setGds(excelMap.get("GDS"));
- fileDetail12.setSsbz(excelMap.get("SSBZ"));
- fileDetail12.setGlgd(excelMap.get("GLGD"));
- fileDetail12.setWtyyfl(excelMap.get("WTYYFL"));
- fileDetail12.setGdfj(excelMap.get("GDFJ"));
- fileDetail12.setZrbm(excelMap.get("ZRBM"));
- String gdsj = excelMap.get("GDSJ");
- if(gdsj != null && !"".equals(gdsj)){
- fileDetail12.setGdsj(StringUtil.ObjToDate(gdsj,"1"));
- }
- String gqsj = excelMap.get("GQSJ");
- if(gqsj != null && !"".equals(gqsj)){
- fileDetail12.setGqsj(StringUtil.ObjToDate(gqsj,"1"));
- }
- fileDetail12.setGqyy(excelMap.get("GQYY"));
- fileDetail12.setFwqd(excelMap.get("FWQD"));
- fileDetail12.setSjthzryy(excelMap.get("SJTHZRYY"));
- fileDetail12.setSjhtzryy2(excelMap.get("SJHTZRYY2"));
- fileDetail12.setGddwg(excelMap.get("GDDWG"));
- fileDetail12.setCldwg(excelMap.get("CLDWG"));
- fileDetail12.setZby(excelMap.get("ZBY"));
- fileDetail12.setSsdwgs(excelMap.get("SSDWGS"));
- fileDetail12.setXlsgs(excelMap.get("XLSGS"));
- fileDetail12.setSsdw(excelMap.get("SSDW"));
- fileDetail12.setXlx1(excelMap.get("XLX1"));
- fileDetail12.setXls2(excelMap.get("XLS2"));
- fileDetail12.setBz(excelMap.get("BZ"));
- fileDetail12.setFileId(fileId);
- ll.add(fileDetail12);
- }
- this.batch95598gdReportData(ll,2);
- }
- }
- // 文件名
- String filePath = Service.lookup(IPropertiesService.class).getSystemProperties().get("FILE_SERVER_BASE_PATH").getKey();
- String saveName = UUID.randomUUID().toString().replaceAll("-", "");
- String[] fileNameArray = fileName.split("\\.");
- saveName = saveName + "." + fileNameArray[fileNameArray.length - 1];
- // 保存文件数据
- String currentDate = DateUtil.getCurrentDateString();
- User user = (User)session.getUser();
- DwFileInf fileInf = new DwFileInf();
- fileInf.setId(fileId);
- fileInf.setUploadDate(currentDate);
- fileInf.setFileName(fileName);
- fileInf.setCreatUser(user.getId());
- fileInf.setBranch(user.getBranchid());
- fileInf.setDataNum(list.size() + "");
- fileInf.setType(fileType);
- fileInf.setSavePath(filePath + saveName);
- db.insertSelective(DwFileInfMapper.class, fileInf);
- // 保存文件到本地
- FilesUtil.uploadFile(fileItem, filePath, "", saveName, 0);
- return res;
- }
- private void batch95598gdReportData(List<DwFileDetail12> list, int type) {
- {
- if(list != null && list.size() > 0){
- List<DwFileDetail12> tempList = new ArrayList<DwFileDetail12>();
- int cou = 0;
- for (int i = 0; i < list.size() ; i++) {
- if((list.size() - i) >= 1000){
- tempList.add((DwFileDetail12) list.get(i));
- cou += 1;
- if(cou == 1000){
- try {
- db.getMybatisMapper(IReportBatchMapper.class).insert95598gdReport(tempList);
- } catch (MINBusinessException e) {
- e.printStackTrace();
- }
- cou = 0;
- tempList = new ArrayList<DwFileDetail12>();
- }
- }
- if((list.size() - i) < 1000){
- tempList.add((DwFileDetail12) list.get(i));
- }
- }
- try {
- db.getMybatisMapper(IReportBatchMapper.class).insert95598gdReport(tempList);
- } catch (MINBusinessException e) {
- e.printStackTrace();
- }
- }
- }
- }
- /**
- * @param list
- * @param type
- */
- private void batchGzgdReportData(List<DwFileDetail11> list, int type) {
- if(list != null && list.size() > 0){
- List<DwFileDetail11> tempList = new ArrayList<DwFileDetail11>();
- int cou = 0;
- for (int i = 0; i < list.size() ; i++) {
- if((list.size() - i) >= 1000){
- tempList.add((DwFileDetail11) list.get(i));
- cou += 1;
- if(cou == 1000){
- try {
- db.getMybatisMapper(IReportBatchMapper.class).insertGzgdReport(tempList);
- } catch (MINBusinessException e) {
- e.printStackTrace();
- }
- cou = 0;
- tempList = new ArrayList<DwFileDetail11>();
- }
- }
- if((list.size() - i) < 1000){
- tempList.add((DwFileDetail11) list.get(i));
- }
- }
- try {
- db.getMybatisMapper(IReportBatchMapper.class).insertGzgdReport(tempList);
- } catch (MINBusinessException e) {
- e.printStackTrace();
- }
- }
- }
- /**
- * 批处理-配变过重载
- * @param list
- */
- @Transactional
- protected void batchReportData(List<DwFileDetail09> list,int type) throws MINBusinessException {
- if(list != null && list.size() > 0){
- List<DwFileDetail09> tempList = new ArrayList<DwFileDetail09>();
- int cou = 0;
- for (int i = 0; i < list.size() ; i++) {
- if((list.size() - i) >= 1000){
- tempList.add( list.get(i));
- cou += 1;
- if(cou == 1000){
- try {
- db.getMybatisMapper(IReportBatchMapper.class).insertPbgzzReport(tempList);
- } catch (MINBusinessException e) {
- e.printStackTrace();
- }
- cou = 0;
- tempList = new ArrayList<DwFileDetail09>();
- }
- }
- if((list.size() - i) < 1000){
- tempList.add(list.get(i));
- }
- }
- try {
- db.getMybatisMapper(IReportBatchMapper.class).insertPbgzzReport(tempList);
- } catch (MINBusinessException e) {
- e.printStackTrace();
- }
- }
- }
- /**
- * 批处理 线路过重载
- * @param list
- */
- @Transactional
- protected void batchXlgzzReportData(List<DwFileDetail10> list,int type) throws MINBusinessException {
- if(list != null && list.size() > 0){
- List<DwFileDetail10> tempList = new ArrayList<DwFileDetail10>();
- int cou = 0;
- for (int i = 0; i < list.size() ; i++) {
- if((list.size() - i) >= 1000){
- tempList.add( list.get(i));
- cou += 1;
- if(cou == 1000){
- try {
- db.getMybatisMapper(IReportBatchMapper.class).insertXlgzzReport(tempList);
- } catch (MINBusinessException e) {
- e.printStackTrace();
- }
- cou = 0;
- tempList = new ArrayList<DwFileDetail10>();
- }
- }
- if((list.size() - i) < 1000){
- tempList.add(list.get(i));
- }
- }
- try {
- db.getMybatisMapper(IReportBatchMapper.class).insertXlgzzReport(tempList);
- } catch (MINBusinessException e) {
- e.printStackTrace();
- }
- }
- }
- /**
- * 原始数据文件下载
- * @param fileId
- * @param response
- * @return
- * @throws MINBusinessException
- * @throws IOException
- */
- @MINAction(value = FILE_INF_DOWNLOAD)
- public HttpServletResponse fileInfDownload(
- @MINParam(key = "fileId") String fileId,
- HttpServletResponse response
- ) throws MINBusinessException, IOException {
- db = Service.lookup(IMINDataBaseService.class);
- DwFileInf fileInf = db.selectByPrimaryKey(DwFileInfMapper.class, fileId);
- String type = fileInf.getType();
- // FilesUtil.writeFile2Response(response, fileInf.getSavePath(), fileInf.getFileName());
- OutputStream os = null;
- ServletOutputStream ros = null;
- ros = response.getOutputStream();
- os = new BufferedOutputStream(ros);
- // 台区停电
- if(Constant.FILE_DETAIL_TYPE_00.equals(type)) {
- response.setContentType("application/application/vnd.ms-excel");
- response.setHeader("Content-disposition","attachment;filename=" + URLEncoder.encode("台区停电数据.xls", "UTF-8"));
- DwFileDetail00Example example = new DwFileDetail00Example();
- example.createCriteria().andFileIdEqualTo(fileId);
- List<DwFileDetail00> selectByExample = db.getMybatisMapper(DwFileDetail00Mapper.class).selectByExample(example);
- ExportExcelUtil<DwFileDetail00> util = new ExportExcelUtil<DwFileDetail00>();
- String[] header = {"系统编号","原EXCEL编号","台区编号","台区名称","数据日期","单位","供电所名称","终端名称","终端编号","终端地址码","停电时间","来电时间","所属文件id"};
- util.exportExcel("台区停电", selectByExample, os, "2007", header);
- } else if (Constant.FILE_DETAIL_TYPE_01.equals(type)) {
- response.setContentType("application/application/vnd.ms-excel");
- response.setHeader("Content-disposition","attachment;filename=" + URLEncoder.encode("终端投退运数据.xls", "UTF-8"));
- DwFileDetail01Example example = new DwFileDetail01Example();
- example.createCriteria().andFileIdEqualTo(fileId);
- List<DwFileDetail01> selectByExample = db.getMybatisMapper(DwFileDetail01Mapper.class).selectByExample(example);
- ExportExcelUtil<DwFileDetail01> util = new ExportExcelUtil<DwFileDetail01>();
- String[] header = {"系统编号","编号","名称","台区名称","数据日期","单位","供电所名称","终端名称","终端编号","时间","所属文件id"};
- util.exportExcel("终端投退运数据", selectByExample, os, "2007", header);
- } else if (Constant.FILE_DETAIL_TYPE_02.equals(type)) {
- response.setContentType("application/application/vnd.ms-excel");
- response.setHeader("Content-disposition","attachment;filename=" + URLEncoder.encode("FA动作数据.xls", "UTF-8"));
- DwFileDetail02Example example = new DwFileDetail02Example();
- example.createCriteria().andFileIdEqualTo(fileId);
- List<DwFileDetail02> selectByExample = db.getMybatisMapper(DwFileDetail02Mapper.class).selectByExample(example);
- ExportExcelUtil<DwFileDetail02> util = new ExportExcelUtil<DwFileDetail02>();
- String[] header = {"系统编号","原EXCEL编号","故障停电开始时间","故障停电结束时间","供电类型","出线变电站","线路名称","线路类型","启动FA","故障区间判断","故障前后段恢复","故障隔离","所属文件id"};
- util.exportExcel("FA动作数据", selectByExample, os, "2007", header);
- } else if (Constant.FILE_DETAIL_TYPE_03.equals(type)) {
- response.setContentType("application/application/vnd.ms-excel");
- response.setHeader("Content-disposition","attachment;filename=" + URLEncoder.encode("低电压数据.xls", "UTF-8"));
- DwFileDetail03Example example = new DwFileDetail03Example();
- example.createCriteria().andFileIdEqualTo(fileId);
- List<DwFileDetail03> selectByExample = db.getMybatisMapper(DwFileDetail03Mapper.class).selectByExample(example);
- ExportExcelUtil<DwFileDetail03> util = new ExportExcelUtil<DwFileDetail03>();
- String[] header = {"系统编号","原EXCEL编号","市公司名称","县公司名称","变电站名称","线路名称","台区id","变压器名称","用户管理单位名称1","用户编号","用户名称","用户管理单位名称2","电压最大值","电压最小值","电压合格率","超上限率","超下限率","低压时长","供电类型","累计天数","数据日期","供电单位","所属文件id"};
- util.exportExcel("低电压数据", selectByExample, os, "2007", header);
- } else if (Constant.FILE_DETAIL_TYPE_04.equals(type)) {
- response.setContentType("application/application/vnd.ms-excel");
- response.setHeader("Content-disposition","attachment;filename=" + URLEncoder.encode("过电压数据.xls", "UTF-8"));
- DwFileDetail04Example example = new DwFileDetail04Example();
- example.createCriteria().andFileIdEqualTo(fileId);
- List<DwFileDetail04> selectByExample = db.getMybatisMapper(DwFileDetail04Mapper.class).selectByExample(example);
- ExportExcelUtil<DwFileDetail04> util = new ExportExcelUtil<DwFileDetail04>();
- String[] header = {"系统编号","原EXCEL编号","市公司名称","县公司名称","变电站名称","线路名称","台区id","变压器名称","用户管理单位名称1","用户编号","用户名称","用户管理单位名称2","电压最大值","电压最小值","电压合格率","超上限率","超下限率","过电压时长","供电类型","累计天数","供电单位","数据日期","所属文件id"};
- util.exportExcel("过电压数据", selectByExample, os, "2007", header);
- } else if (Constant.FILE_DETAIL_TYPE_05.equals(type)) {
- response.setContentType("application/application/vnd.ms-excel");
- response.setHeader("Content-disposition","attachment;filename=" + URLEncoder.encode("95598工单数据.xls", "UTF-8"));
- DwFileDetail05Example example = new DwFileDetail05Example();
- example.createCriteria().andFileIdEqualTo(fileId);
- List<DwFileDetail05> selectByExample = db.getMybatisMapper(DwFileDetail05Mapper.class).selectByExample(example);
- ExportExcelUtil<DwFileDetail05> util = new ExportExcelUtil<DwFileDetail05>();
- String[] header = {"系统编号","原EXCEL编号","工单编号","国网工单编号","状态","业务类型","当前步骤","受理人员","受理时间","受理内容","用户编号","用户名称","联系地址","联系电话","回访内容","一级分类","二级分类","业务子类","上级单位","供电单位","抄表段","处理结果","处理单位","处理部门","关联工单","问题原因分类","工单分级","责任部门","归档时间","挂起时间","挂起原因","服务渠道","省级回退责任原因","所属文件id"};
- util.exportExcel("95598工单数据", selectByExample, os, "2007", header);
- } else if (Constant.FILE_DETAIL_TYPE_06.equals(type)) {
- response.setContentType("application/application/vnd.ms-excel");
- response.setHeader("Content-disposition","attachment;filename=" + URLEncoder.encode("计停非计停数据.xls", "UTF-8"));
- DwFileDetail07Example example = new DwFileDetail07Example();
- example.createCriteria().andFileIdEqualTo(fileId);
- List<DwFileDetail07> selectByExample = db.getMybatisMapper(DwFileDetail07Mapper.class).selectByExample(example);
- ExportExcelUtil<DwFileDetail07> util = new ExportExcelUtil<DwFileDetail07>();
- String[] header = {"系统编号","类型","单位","设备名称","发生时间","事项类型","馈线自动化动作情况","跳闸类型","故障原因","重合闸动作情况","处理纪事","异常概况","所属文件id","原EXCEL编号"};
- util.exportExcel("计停非计停数据", selectByExample, os, "2007", header);
- }else if (Constant.FILE_DETAIL_TYPE_07.equals(type)) {//客户明细
- }else if (Constant.FILE_DETAIL_TYPE_08.equals(type)) {//配变过重载
- response.setContentType("application/application/vnd.ms-excel");
- response.setHeader("Content-disposition","attachment;filename=" + URLEncoder.encode("配变过重载数据.xls", "UTF-8"));
- DwFileDetail09Example example = new DwFileDetail09Example();
- example.createCriteria().andFileIdEqualTo(fileId);
- example.setOrderByClause("dfd9_sequ");
- List<DwFileDetail09> selectByExample = db.getMybatisMapper(DwFileDetail09Mapper.class).selectByExample(example);
- ExportExcelUtil<DwFileDetail09> util = new ExportExcelUtil<DwFileDetail09>();
- String[] header = {"系统编号","原EXCEL编号","月份", "单位", "班组名称", "公变名称", "线路名称", "负载率(%) ",
- "最大负载率(%)", "最大负载率发生时刻时间", "额定容量(kVA) ", "过(重)载原因分类 ", "具体原因(详细说明原因情况)", "解决措施分类 ",
- "具体解决措施(详细说明解决措施)", "完成时间",
- "三相不平衡率(%)(最大负荷) ", "A相电流(A)", "B相电流(A)", "C相电流(A)", "过载时长(小时)", "用户数量", "重载时长",
- "营销ID", "PMSID", "所属文件ID",""};
- util.exportExcel("配变过重载数据清单", selectByExample, os, "2007", header);
- }else if (Constant.FILE_DETAIL_TYPE_09.equals(type)) {//线路过重载
- response.setContentType("application/application/vnd.ms-excel");
- response.setHeader("Content-disposition","attachment;filename=" + URLEncoder.encode("线路过重载数据.xls", "UTF-8"));
- DwFileDetail10Example example = new DwFileDetail10Example();
- example.createCriteria().andFileIdEqualTo(fileId);
- example.setOrderByClause("dfd10_sequ");
- List<DwFileDetail10> selectByExample = db.getMybatisMapper(DwFileDetail10Mapper.class).selectByExample(example);
- ExportExcelUtil<DwFileDetail10> util = new ExportExcelUtil<DwFileDetail10>();
- String[] header = {"系统编号", "原EXCEL编号","月份", "所属县公司", "班组名称 ", "变电站名称", "线路名称 ", "额定电流(A)",
- "负载率(%) ", "过(重)载原因分类", "具体原因(详细说明原因情况) ", "解决措施分类 ", "具体解决措施(详细说明解决措施) ",
- "完成时间 ", "过载时长(小时) ", "运行电流(A)", "发生时刻 ", "最大电流(A)", "最大值发生时刻", "配变数量(台)",
- "配变容量(kVA)", "是否自动化", "PMSID", "所属文件ID", ""};
- util.exportExcel("线路过重载数据清单", selectByExample, os, "2007", header);
- }else if (Constant.FILE_DETAIL_TYPE_11.equals(type)) {//线路过重载
- response.setContentType("application/application/vnd.ms-excel");
- response.setHeader("Content-disposition","attachment;filename=" + URLEncoder.encode("故障工单数据.xls", "UTF-8"));
- DwFileDetail11Example example = new DwFileDetail11Example();
- example.createCriteria().andFileIdEqualTo(fileId);
- example.setOrderByClause("dfd11_sequ");
- List<DwFileDetail11> selectByExample = db.getMybatisMapper(DwFileDetail11Mapper.class).selectByExample(example);
- ExportExcelUtil<DwFileDetail11> util = new ExportExcelUtil<DwFileDetail11>();
- String[] header = {"系统编号", "原EXCEL编号", "工单编号", "国网工单号", "用户编号", "供电单位", "到达现场时间", "故障排除时间", "一级分类",
- "二级分类", "三级分类", "业务类型名称", "受理时间", "派工人", "派出人员", "锁定人", "用户名称", "联系人", "联系地址",
- "现场分类", "紧急程度", "危害程度", "产权属性", "故障归属", "受理内容", "工单状态", "故障原因", "故障现象", "电压等级",
- "终端处理", "故障地址", "联系电话", "处理结果", "合并主单", "抢修总时长(分)", "到岗时长(分)", "故障排除时长(分)",
- "故障研判结果", "现场抢修记录", "首次派发抢修队时间", "再次派发抢修队时间", "终端接单时间", "恢复送电时间",
- "提交审核时间", "工单审核时间", "归档时间", "终端编码", "所属文件ID", ""};
- util.exportExcel("故障工单信息数据清单", selectByExample, os, "2007", header);
- }else if (Constant.FILE_DETAIL_TYPE_12.equals(type)) {//95598工单-新
- response.setContentType("application/application/vnd.ms-excel");
- response.setHeader("Content-disposition","attachment;filename=" + URLEncoder.encode("故障工单数据.xls", "UTF-8"));
- DwFileDetail12Example example = new DwFileDetail12Example();
- example.createCriteria().andFileIdEqualTo(fileId);
- example.setOrderByClause("dfd12_sequ");
- List<DwFileDetail12> selectByExample = db.getMybatisMapper(DwFileDetail12Mapper.class).selectByExample(example);
- ExportExcelUtil<DwFileDetail12> util = new ExportExcelUtil<DwFileDetail12>();
- String[] header = {"系统编号", "原EXCEL编号","工单编号", "国网工单编号", "状态", "督办标识", "业务类型", "当前步骤", "受理人员", "受理时间", "受理内容",
- "用户编号", "用户名称", "联系地址", "联系电话", "回访内容", "一级分类", "二级分类", "业务子类", "上级单位",
- "供电单位", "抄表段", "处理结果", "处理单位", "处理部门", "供电所", "班组", "关联工单", "问题原因分类",
- "工单分级", "责任部门", "归档时间", "挂起时间", "挂起原因", "服务渠道", "省级回退责任原因", "省级回退责任原因",
- "供电单位-改", "处理单位-改", "指标月", "所属单位-公式", "新类型-公式", "所属单位", "新类型1", "新类型2(子类)", "备注","所属文件",""};
- util.exportExcel("95598工单数据清单", selectByExample, os, "2007", header);
- }
- return response;
- }
- /**
- * 原始文件删除
- * @param fileId
- * @param fileType
- * @return
- * @throws MINBusinessException
- */
- @MINAction(value = FILE_INF_DELETE, transaction = IMINTransactionEnum.CMT)
- public MINActionResult fileInfDelete(
- @MINParam(key = "fileId") String fileId,
- @MINParam(key = "fileType") String fileType
- ) throws MINBusinessException {
- MINActionResult res = new MINActionResult();
- db = Service.lookup(IMINDataBaseService.class);
- // 删除原始文件--逻辑删除
- DwFileInf fileInf = new DwFileInf();
- fileInf.setState(Constant.FILE_INF_STATE_1);
- fileInf.setId(fileId);
- db.updateByPrimaryKeySelective(DwFileInfMapper.class, fileInf);
- /** 删除明细 */
- if (Constant.FILE_DETAIL_TYPE_00.equals(fileType)) {// 台区停电
- DwFileDetail00Example fileDetail00Example = new DwFileDetail00Example();
- fileDetail00Example.createCriteria().andFileIdEqualTo(fileId);
- db.deleteByExample(DwFileDetail00Mapper.class, fileDetail00Example);
- } else if (Constant.FILE_DETAIL_TYPE_01.equals(fileType)) {// 低电压
- } else if (Constant.FILE_DETAIL_TYPE_02.equals(fileType)) {
- } else if(Constant.FILE_DETAIL_TYPE_03.equals(fileType)){//低电压
- DwFileDetail03Example DwFileDetail03Example = new DwFileDetail03Example();
- DwFileDetail03Example.createCriteria().andFileIdEqualTo(fileId);
- db.deleteByExample(DwFileDetail03Mapper.class,DwFileDetail03Example);
- } else if(Constant.FILE_DETAIL_TYPE_04.equals(fileType)){//过电压
- DwFileDetail04Example DwFileDetail04Example = new DwFileDetail04Example();
- DwFileDetail04Example.createCriteria().andFileIdEqualTo(fileId);
- db.deleteByExample(DwFileDetail04Mapper.class,DwFileDetail04Example);
- } else if(Constant.FILE_DETAIL_TYPE_05.equals(fileType)){//95598工单
- DwFileDetail05Example DwFileDetail05Example = new DwFileDetail05Example();
- DwFileDetail05Example.createCriteria().andFileIdEqualTo(fileId);
- db.deleteByExample(DwFileDetail05Mapper.class,DwFileDetail05Example);
- } else if(Constant.FILE_DETAIL_TYPE_06.equals(fileType)){//计停非计停
- DwFileDetail07Example DwFileDetail07Example = new DwFileDetail07Example();
- DwFileDetail07Example.createCriteria().andFileIdEqualTo(fileId);
- db.deleteByExample(DwFileDetail07Mapper.class,DwFileDetail07Example);
- } else if(Constant.FILE_DETAIL_TYPE_07.equals(fileType)){//客户信息明细
- } else if(Constant.FILE_DETAIL_TYPE_08.equals(fileType)){//配变过重载
- DwFileDetail09Example DwFileDetail09Example = new DwFileDetail09Example();
- DwFileDetail09Example.createCriteria().andFileIdEqualTo(fileId);
- db.deleteByExample(DwFileDetail09Mapper.class,DwFileDetail09Example);
- } else if(Constant.FILE_DETAIL_TYPE_09.equals(fileType)){//线路过重载
- DwFileDetail10Example DwFileDetail10Example = new DwFileDetail10Example();
- DwFileDetail10Example.createCriteria().andFileIdEqualTo(fileId);
- db.deleteByExample(DwFileDetail10Mapper.class,DwFileDetail10Example);
- }else if(Constant.FILE_DETAIL_TYPE_11.equals(fileType)){
- DwFileDetail11Example DwFileDetail11Example = new DwFileDetail11Example();
- DwFileDetail11Example.createCriteria().andFileIdEqualTo(fileId);
- db.deleteByExample(DwFileDetail11Mapper.class,DwFileDetail11Example);
- }
- return res;
- }
- /**
- * 原始文件明细查询
- * @param fileId
- * @param fileIdListStr
- * @param fileType
- * @return
- * @throws MINBusinessException
- */
- @MINAction(value = FILE_INF_DETAIL)
- public MINActionResult fileInfDetail(
- @MINParam(key = "fileId") String fileId,
- @MINParam(key = "fileIdListStr") String fileIdListStr,
- @MINParam(key = "fileType") String fileType,
- @MINParam(key = "page", defaultValue = "1") int page,
- @MINParam(key = "limit", defaultValue = "100") int limit
- ) throws MINBusinessException {
- MINActionResult res = new MINActionResult();
- db = Service.lookup(IMINDataBaseService.class);
- MINRowBounds rows = new MINRowBounds(page, limit);
- rows.setSeparateSql(true);
- Map<String, String> param = new HashMap<String, String>();
- param.put("fileId", fileId);
- param.put("fileIdListStr", fileIdListStr);
- param.put("fileType", fileType);
- // 查询明细信息
- List fileInfDetailList = Service.lookup(IDianwangService.class).queryFileInfDetail(param, rows);
- res.set(IMINBusinessConstant.F_PAGING_LAY, fileInfDetailList);
- res.set(IMINBusinessConstant.F_PAGING_COUNT, rows.getCount());
- return res;
- }
- /**
- * 原始数据文件下载
- * @param type
- * @param response
- * @return
- * @throws MINBusinessException
- * @throws IOException
- */
- @MINAction(value = FILE_DATA_DOWNLOAD)
- public HttpServletResponse fileDataDownload(
- @MINParam(key = "type") String type,
- @MINParam(key = "date") String date,
- HttpServletResponse response
- ) throws MINBusinessException, IOException, ParseException {
- db = Service.lookup(IMINDataBaseService.class);
- date = date.replaceAll(" ", "");
- date = date.replaceAll("-", "");
- OutputStream os = null;
- ServletOutputStream ros = null;
- ros = response.getOutputStream();
- os = new BufferedOutputStream(ros);
- // 台区停电
- if(Constant.FILE_DETAIL_TYPE_00.equals(type)) {
- response.setContentType("application/application/vnd.ms-excel");
- response.setHeader("Content-disposition","attachment;filename=" + URLEncoder.encode(date + "台区停电数据.xls", "UTF-8"));
- DwFileDetail00Example example = new DwFileDetail00Example();
- example.createCriteria().andDateGreaterThanOrEqualTo(date.substring(0, 8)).andDateLessThanOrEqualTo(date.substring(8, 16));
- List<DwFileDetail00> selectByExample = db.getMybatisMapper(DwFileDetail00Mapper.class).selectByExample(example);
- ExportExcelUtil<DwFileDetail00> util = new ExportExcelUtil<DwFileDetail00>();
- String[] header = {"系统编号","原EXCEL编号","台区编号","台区名称","数据日期","单位","供电所名称","终端名称","终端编号","终端地址码","停电时间","来电时间","所属文件id"};
- util.exportExcel(date, selectByExample, os, "2007", header);
- } else if (Constant.FILE_DETAIL_TYPE_01.equals(type)) {
- response.setContentType("application/application/vnd.ms-excel");
- response.setHeader("Content-disposition","attachment;filename=" + URLEncoder.encode(date + "终端投退运数据.xls", "UTF-8"));
- DwFileDetail01Example example = new DwFileDetail01Example();
- example.createCriteria().andExcelTytimeGreaterThanOrEqualTo(date.substring(0, 8) + "000000").andExcelTytimeLessThanOrEqualTo(date.substring(8, 16) + "235959");
- List<DwFileDetail01> selectByExample = db.getMybatisMapper(DwFileDetail01Mapper.class).selectByExample(example);
- ExportExcelUtil<DwFileDetail01> util = new ExportExcelUtil<DwFileDetail01>();
- String[] header = {"系统编号","ID","TNAME","CMODE","VALUE","facname","type","fdid","yxstatus","tytime","所属文件id"};
- util.exportExcel(date, selectByExample, os, "2007", header);
- } else if (Constant.FILE_DETAIL_TYPE_02.equals(type)) {
- response.setContentType("application/application/vnd.ms-excel");
- response.setHeader("Content-disposition","attachment;filename=" + URLEncoder.encode(date + "FA动作数据.xls", "UTF-8"));
- DwFileDetail02Example example = new DwFileDetail02Example();
- example.createCriteria().andBeginTimeGreaterThanOrEqualTo(date.substring(0, 8) + "000000").andEndTimeLessThanOrEqualTo(date.substring(8, 16) + "235959");
- List<DwFileDetail02> selectByExample = db.getMybatisMapper(DwFileDetail02Mapper.class).selectByExample(example);
- ExportExcelUtil<DwFileDetail02> util = new ExportExcelUtil<DwFileDetail02>();
- String[] header = {"系统编号","原EXCEL编号","故障停电开始时间","故障停电结束时间","供电类型","出线变电站","线路名称","线路类型","启动FA","故障区间判断","故障前后段恢复","故障隔离","所属文件id"};
- util.exportExcel(date, selectByExample, os, "2007", header);
- } else if (Constant.FILE_DETAIL_TYPE_03.equals(type)) {
- response.setContentType("application/application/vnd.ms-excel");
- response.setHeader("Content-disposition","attachment;filename=" + URLEncoder.encode(date + "低电压数据.xls", "UTF-8"));
- DwFileDetail03Example example = new DwFileDetail03Example();
- example.createCriteria().andSjrqGreaterThanOrEqualTo(date.substring(0, 8)).andSjrqLessThanOrEqualTo(date.substring(8, 16));
- List<DwFileDetail03> selectByExample = db.getMybatisMapper(DwFileDetail03Mapper.class).selectByExample(example);
- ExportExcelUtil<DwFileDetail03> util = new ExportExcelUtil<DwFileDetail03>();
- String[] header = {"系统编号","原EXCEL编号","市公司名称","县公司名称","变电站名称","线路名称","台区id","变压器名称","用户管理单位名称1","用户编号","用户名称","用户管理单位名称2","电压最大值","电压最小值","电压合格率","超上限率","超下限率","低压时长","供电类型","累计天数","数据日期","供电单位","所属文件id"};
- util.exportExcel(date, selectByExample, os, "2007", header);
- } else if (Constant.FILE_DETAIL_TYPE_04.equals(type)) {
- response.setContentType("application/application/vnd.ms-excel");
- response.setHeader("Content-disposition","attachment;filename=" + URLEncoder.encode(date + "过电压数据.xls", "UTF-8"));
- DwFileDetail04Example example = new DwFileDetail04Example();
- example.createCriteria().andSjrqGreaterThanOrEqualTo(date.substring(0, 8)).andSjrqLessThanOrEqualTo(date.substring(8, 16));
- List<DwFileDetail04> selectByExample = db.getMybatisMapper(DwFileDetail04Mapper.class).selectByExample(example);
- ExportExcelUtil<DwFileDetail04> util = new ExportExcelUtil<DwFileDetail04>();
- String[] header = {"系统编号","原EXCEL编号","市公司名称","县公司名称","变电站名称","线路名称","台区id","变压器名称","用户管理单位名称1","用户编号","用户名称","用户管理单位名称2","电压最大值","电压最小值","电压合格率","超上限率","超下限率","过电压时长","供电类型","累计天数","供电单位","数据日期","所属文件id"};
- util.exportExcel(date, selectByExample, os, "2007", header);
- } else if (Constant.FILE_DETAIL_TYPE_05.equals(type)) {
- response.setContentType("application/application/vnd.ms-excel");
- response.setHeader("Content-disposition","attachment;filename=" + URLEncoder.encode(date + "95598工单数据.xls", "UTF-8"));
- DwFileDetail05Example example = new DwFileDetail05Example();
- example.createCriteria().andSlsjGreaterThanOrEqualTo(date.substring(0, 8)).andSlsjLessThanOrEqualTo(date.substring(8, 16));
- List<DwFileDetail05> selectByExample = db.getMybatisMapper(DwFileDetail05Mapper.class).selectByExample(example);
- ExportExcelUtil<DwFileDetail05> util = new ExportExcelUtil<DwFileDetail05>();
- String[] header = {"系统编号","原EXCEL编号","工单编号","国网工单编号","状态","业务类型","当前步骤","受理人员","受理时间","受理内容","用户编号","用户名称","联系地址","联系电话","回访内容","一级分类","二级分类","业务子类","上级单位","供电单位","抄表段","处理结果","处理单位","处理部门","关联工单","问题原因分类","工单分级","责任部门","归档时间","挂起时间","挂起原因","服务渠道","省级回退责任原因","所属文件id"};
- util.exportExcel(date, selectByExample, os, "2007", header);
- } else if (Constant.FILE_DETAIL_TYPE_06.equals(type)) {
- response.setContentType("application/application/vnd.ms-excel");
- response.setHeader("Content-disposition","attachment;filename=" + URLEncoder.encode(date + "计停非计停数据.xls", "UTF-8"));
- DwFileDetail07Example example = new DwFileDetail07Example();
- example.createCriteria().andTimeGreaterThanOrEqualTo(date.substring(0, 8) + "000000").andTimeLessThanOrEqualTo(date.substring(8, 16) + "235959");
- List<DwFileDetail07> selectByExample = db.getMybatisMapper(DwFileDetail07Mapper.class).selectByExample(example);
- ExportExcelUtil<DwFileDetail07> util = new ExportExcelUtil<DwFileDetail07>();
- String[] header = {"系统编号","原EXCEL编号","类型","单位","设备名称","发生时间","事项类型","馈线自动化动作情况","跳闸类型","故障原因","重合闸动作情况","处理纪事","异常概况","所属文件id"};
- util.exportExcel(date, selectByExample, os, "2007", header);
- }else if (Constant.FILE_DETAIL_TYPE_07.equals(type)) {//客户明细
- }else if (Constant.FILE_DETAIL_TYPE_08.equals(type)) {//配变过重载
- response.setContentType("application/application/vnd.ms-excel");
- response.setHeader("Content-disposition","attachment;filename=" + URLEncoder.encode("配变过重载数据.xls", "UTF-8"));
- DwFileDetail09Example example = new DwFileDetail09Example();
- example.createCriteria().andWcsjGreaterThanOrEqualTo(StringUtil.ObjNumToDate(date.substring(0, 8) + "000000"))
- .andWcsjLessThanOrEqualTo(StringUtil.ObjNumToDate(date.substring(8, 16) + "235959"));
- example.setOrderByClause("dfd9_sequ");
- List<DwFileDetail09> selectByExample = db.getMybatisMapper(DwFileDetail09Mapper.class).selectByExample(example);
- ExportExcelUtil<DwFileDetail09> util = new ExportExcelUtil<DwFileDetail09>();
- String[] header = {"系统编号","原EXCEL编号","月份",
- "单位","班组名称","公变名称","线路名称","负载率(%) ","最大负载率(%)","最大负载率发生时刻时间",
- "额定容量(kVA) ","过(重)载原因分类 ","具体原因(详细说明原因情况)","解决措施分类 ","具体解决措施(详细说明解决措施)",
- "完成时间","三相不平衡率(%)(最大负荷) ","A相电流(A)","B相电流(A)","C相电流(A)","过载时长(小时)",
- "用户数量","重载时长","营销ID","PMSID","所属文件ID",""};
- util.exportExcel("配变过重载数据", selectByExample, os, "2007", header);
- }else if (Constant.FILE_DETAIL_TYPE_09.equals(type)) {//线路过重载
- response.setContentType("application/application/vnd.ms-excel");
- response.setHeader("Content-disposition","attachment;filename=" + URLEncoder.encode("线路过重载数据.xls", "UTF-8"));
- DwFileDetail10Example example = new DwFileDetail10Example();
- example.createCriteria().andWcsjGreaterThanOrEqualTo(StringUtil.ObjNumToDate(date.substring(0, 8) + "000000"))
- .andWcsjLessThanOrEqualTo(StringUtil.ObjNumToDate(date.substring(8, 16) + "235959"));
- example.setOrderByClause("dfd10_sequ");
- List<DwFileDetail10> selectByExample = db.getMybatisMapper(DwFileDetail10Mapper.class).selectByExample(example);
- ExportExcelUtil<DwFileDetail10> util = new ExportExcelUtil<DwFileDetail10>();
- String[] header = {"系统编号","原EXCEL编号","月份",
- "所属县公司","班组名称 ","变电站名称","线路名称 ","额定电流(A)","负载率(%) ","过(重)载原因分类",
- "具体原因(详细说明原因情况) ","解决措施分类 ","具体解决措施(详细说明解决措施) ","完成时间 ",
- "过载时长(小时) ","运行电流(A)","发生时刻 ","最大电流(A)","最大值发生时刻","配变数量(台)",
- "配变容量(kVA)","是否自动化","PMSID","所属文件ID",""};
- util.exportExcel("线路过重载数据", selectByExample, os, "2007", header);
- }
- return response;
- }
- }
|