DataWareManageAction.java 20 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477
  1. package com.minpay.reportManage.action;
  2. import java.io.IOException;
  3. import java.lang.reflect.InvocationTargetException;
  4. import java.text.DateFormat;
  5. import java.text.SimpleDateFormat;
  6. import java.util.Date;
  7. import java.util.HashMap;
  8. import java.util.List;
  9. import java.util.Map;
  10. import java.util.UUID;
  11. import javax.servlet.http.HttpServletResponse;
  12. import org.apache.commons.fileupload.FileItem;
  13. import org.apache.poi.openxml4j.exceptions.InvalidFormatException;
  14. import com.min.util.DateUtil;
  15. import com.minpay.common.bean.User;
  16. import com.minpay.common.constant.Constant;
  17. import com.minpay.common.format.IFormatService;
  18. import com.minpay.common.service.IDianwangService;
  19. import com.minpay.common.service.IPropertiesService;
  20. import com.minpay.common.util.CommonUtil;
  21. import com.minpay.common.util.FilesUtil;
  22. import com.minpay.common.util.ListUtil;
  23. import com.minpay.db.table.mapper.DwFileDetail00Mapper;
  24. import com.minpay.db.table.mapper.DwFileDetail01Mapper;
  25. import com.minpay.db.table.mapper.DwFileDetail02Mapper;
  26. import com.minpay.db.table.mapper.DwFileDetail03Mapper;
  27. import com.minpay.db.table.mapper.DwFileInfMapper;
  28. import com.minpay.db.table.mapper.DwReporttypeFiletypeRelMapper;
  29. import com.minpay.db.table.mapper.ImUserMapper;
  30. import com.minpay.db.table.model.DwFileDetail00;
  31. import com.minpay.db.table.model.DwFileDetail00Example;
  32. import com.minpay.db.table.model.DwFileDetail01;
  33. import com.minpay.db.table.model.DwFileDetail01Example;
  34. import com.minpay.db.table.model.DwFileDetail02;
  35. import com.minpay.db.table.model.DwFileDetail03;
  36. import com.minpay.db.table.model.DwFileInf;
  37. import com.minpay.db.table.model.DwReporttypeFiletypeRelExample;
  38. import com.minpay.db.table.model.DwReporttypeFiletypeRelKey;
  39. import com.minpay.db.table.model.ImUser;
  40. import com.minpay.db.table.model.ImUserExample;
  41. import com.minpay.db.table.own.mapper.DataWareManageMapper;
  42. import com.minpay.db.table.own.mapper.SequenceMapper;
  43. import com.startup.minpay.frame.business.IMINAction;
  44. import com.startup.minpay.frame.business.MINHttpServletRequestContext;
  45. import com.startup.minpay.frame.business.res.MINActionResult;
  46. import com.startup.minpay.frame.constant.IMINBusinessConstant;
  47. import com.startup.minpay.frame.constant.IMINTransactionEnum;
  48. import com.startup.minpay.frame.exception.MINBusinessException;
  49. import com.startup.minpay.frame.jdbc.MINRowBounds;
  50. import com.startup.minpay.frame.service.base.IMINDataBaseService;
  51. import com.startup.minpay.frame.service.base.Service;
  52. import com.startup.minpay.frame.session.MINSession;
  53. import com.startup.minpay.frame.target.MINAction;
  54. import com.startup.minpay.frame.target.MINComponent;
  55. import com.startup.minpay.frame.target.MINParam;
  56. import com.sun.tools.example.debug.expr.ParseException;
  57. import net.sf.json.JSONArray;
  58. @MINComponent
  59. public class DataWareManageAction implements IMINAction {
  60. private IMINDataBaseService db;
  61. /** 原始数据查询 */
  62. public final static String FILE_INF_QUERY = "fileInfQuery";
  63. /** 原始文件上传 */
  64. public final static String FILE_INF_UPLOAD = "fileInfUpload";
  65. /** 原始文件下载 */
  66. public final static String FILE_INF_DOWNLOAD = "fileInfDownload";
  67. /** 原始文件删除 */
  68. public final static String FILE_INF_DELETE = "fileInfDelete";
  69. /** 原始文件详情 */
  70. public final static String FILE_INF_DETAIL = "fileInfDetail";
  71. /**
  72. * 原始数据查询
  73. * @param page
  74. * @param limit
  75. * @param date
  76. * @param fileName
  77. * @return
  78. * @throws MINBusinessException
  79. * @throws InvocationTargetException
  80. * @throws IllegalArgumentException
  81. * @throws IllegalAccessException
  82. * @throws SecurityException
  83. * @throws NoSuchMethodException
  84. * @throws InstantiationException
  85. */
  86. @MINAction(value = FILE_INF_QUERY)
  87. public MINActionResult fileInfQuery(
  88. @MINParam(key = "page", defaultValue = "1") int page,
  89. @MINParam(key = "limit", defaultValue = "10") int limit,
  90. @MINParam(key = "date") String date,
  91. @MINParam(key = "fileName") String fileName,
  92. @MINParam(key = "notInData") String notInData,
  93. @MINParam(key = "reportType") String reportType,
  94. MINSession session
  95. ) throws MINBusinessException, NoSuchMethodException, SecurityException, IllegalAccessException, IllegalArgumentException, InvocationTargetException, InstantiationException {
  96. MINActionResult res = new MINActionResult();
  97. db = Service.lookup(IMINDataBaseService.class);
  98. //分页
  99. MINRowBounds rows = new MINRowBounds(page, limit);
  100. rows.setSeparateSql(true);
  101. Map<String, Object> param = new HashMap<String, Object>();
  102. param.put("date", date);
  103. param.put("fileName", fileName);
  104. if (!CommonUtil.isEmpty(notInData)) {
  105. JSONArray notInArray = JSONArray.fromObject(notInData);
  106. if (notInArray.size() != 0) {
  107. param.put("notInArray", notInArray);
  108. }
  109. }
  110. // 查询生成报表所需的文件类型
  111. if (!CommonUtil.isEmpty(reportType)) {
  112. DwReporttypeFiletypeRelExample reporttypeFiletypeRelExample = new DwReporttypeFiletypeRelExample();
  113. reporttypeFiletypeRelExample.createCriteria().andReporttypeIdEqualTo(reportType);
  114. List<DwReporttypeFiletypeRelKey> selectByExample = db.selectByExample(DwReporttypeFiletypeRelMapper.class, reporttypeFiletypeRelExample);
  115. if (selectByExample.size() > 0) {
  116. param.put("fileTypeArray", selectByExample);
  117. }
  118. }
  119. User user = session.getUser();
  120. String roleId = user.getRoleId();
  121. // 非系统管理员
  122. if (!Constant.ROLE_ID.equals(roleId)) {
  123. param.put("branchId", user.getBranchid());
  124. }
  125. List<Map<String, String>> list = db.getMybatisMapper(DataWareManageMapper.class)
  126. .selectFileInf(param, rows);
  127. if (list.size() == 0) {
  128. return res;
  129. }
  130. List<String> creatUserIdList = CommonUtil.getIdFromList(list, "creatUser");
  131. ImUserExample userExam = new ImUserExample();
  132. userExam.createCriteria().andIdIn(creatUserIdList);
  133. List<ImUser> userList = db.selectByExample(ImUserMapper.class, userExam);
  134. String[] str1 = {"creatUser"};
  135. String[] str2 = {"id"};
  136. String[] str3 = {"name"};
  137. String[] str4 = {"userName"};
  138. list = ListUtil.mergeList(list, userList, str1, str2, str3, str4);
  139. list = Service.lookup(IFormatService.class).formatDate(list, "uploadDate");
  140. // 设置返回值
  141. res.set(IMINBusinessConstant.F_PAGING_LAY, list);
  142. res.set(IMINBusinessConstant.F_PAGING_COUNT, rows.getCount());
  143. return res;
  144. }
  145. /**
  146. * 上传原始文件
  147. * @param request
  148. * @param fileType
  149. * @param chongfuFlag 重复上传标志 true:重复数据确认上传
  150. * @param session
  151. * @return
  152. * @throws MINBusinessException
  153. * @throws InvalidFormatException
  154. * @throws IOException
  155. */
  156. @MINAction(value = FILE_INF_UPLOAD, transaction = IMINTransactionEnum.CMT)
  157. public MINActionResult fileInfUpload(
  158. MINHttpServletRequestContext request,
  159. @MINParam(key = "fileType") String fileType,
  160. @MINParam(key = "chongfuFlag") boolean chongfuFlag,
  161. MINSession session
  162. ) throws MINBusinessException, InvalidFormatException, IOException {
  163. MINActionResult res = new MINActionResult();
  164. db = Service.lookup(IMINDataBaseService.class);
  165. // 获取文件
  166. FileItem fileItem = request.getFile("file");
  167. String fileName = fileItem.getName();
  168. if (!fileName.endsWith(".xlsx") && !fileName.endsWith(".xls")) {
  169. throw new MINBusinessException("文件格式错误!");
  170. }
  171. String fileId = db.getMybatisMapper(SequenceMapper.class).getSequence("FILE_INF_NO");
  172. List<Map<String,String>> list = null;
  173. // 台区停电
  174. if (Constant.FILE_DETAIL_TYPE_00.equals(fileType)) {
  175. // 获取表格信息
  176. String[] titleKey = new String[]{"number","addressNum","addressName","date", "area","comonpanyName","terminalName","terminalNum","terminalAddress","startTime","endTime"};
  177. list = FilesUtil.readExecleasy(fileItem, titleKey, 1);
  178. if (list.size() == 0) {
  179. throw new MINBusinessException("无数据,请添加数据");//无数据,请添加数据
  180. }
  181. // 详情数据存入数据库
  182. for (Map<String,String> excelMap : list) {
  183. // 日期
  184. String date = excelMap.get("date").replaceAll("-", "").replaceAll(":", "").replaceAll(" ", "").substring(0,8);
  185. String startTime = excelMap.get("startTime").replaceAll("-", "").replaceAll(":", "").replaceAll(" ", "");
  186. String endTime = excelMap.get("endTime").replaceAll("-", "").replaceAll(":", "").replaceAll(" ", "");
  187. // 页面确认有重复数据,且点击确认上传,不再判断数据库是否有数据
  188. if (!chongfuFlag) {
  189. // 验证是否有重复数据
  190. DwFileDetail00Example fileDetail00Example = new DwFileDetail00Example();
  191. fileDetail00Example.createCriteria().andAddressNumEqualTo(excelMap.get("addressNum"))
  192. .andAddressNameEqualTo(excelMap.get("addressName"))
  193. .andDateEqualTo(date)
  194. .andAreaEqualTo(excelMap.get("area"))
  195. .andComonpanyNameEqualTo(excelMap.get("comonpanyName"))
  196. .andTerminalNameEqualTo(excelMap.get("terminalName"))
  197. .andTerminalNumEqualTo(excelMap.get("terminalNum"))
  198. .andTerminalAddressEqualTo(excelMap.get("terminalAddress"))
  199. .andStartTimeEqualTo(startTime)
  200. .andEndTimeEqualTo(endTime);
  201. List<DwFileDetail00> selectByExample = db.selectByExample(DwFileDetail00Mapper.class, fileDetail00Example);
  202. if (selectByExample.size() != 0) {
  203. res.set("chongfu", selectByExample);
  204. return res;
  205. }
  206. }
  207. String fileDetailId = db.getMybatisMapper(SequenceMapper.class).getSequence("FILE_DETAIL_00_NO");
  208. DwFileDetail00 fileDetail00 = new DwFileDetail00();
  209. fileDetail00.setId(fileDetailId);
  210. fileDetail00.setNumber(excelMap.get("number"));
  211. fileDetail00.setAddressNum(excelMap.get("addressNum"));
  212. fileDetail00.setAddressName(excelMap.get("addressName"));
  213. fileDetail00.setDate(date);
  214. fileDetail00.setArea(excelMap.get("area"));
  215. fileDetail00.setComonpanyName(excelMap.get("comonpanyName"));
  216. fileDetail00.setTerminalName(excelMap.get("terminalName"));
  217. fileDetail00.setTerminalNum(excelMap.get("terminalNum"));
  218. fileDetail00.setTerminalAddress(excelMap.get("terminalAddress"));
  219. fileDetail00.setStartTime(startTime);
  220. fileDetail00.setEndTime(endTime);
  221. fileDetail00.setFileId(fileId);
  222. db.insertSelective(DwFileDetail00Mapper.class, fileDetail00);
  223. }
  224. // 终端投托运
  225. } else if (Constant.FILE_DETAIL_TYPE_01.equals(fileType)) {
  226. String[] titleKey = new String[]{"id","tname","cmode","value", "facname","type","fdid","yxstatus","tytime"};
  227. list = FilesUtil.readExecleasy(fileItem, titleKey, 1);
  228. if (list.size() == 0) {
  229. throw new MINBusinessException("无数据,请添加数据");//无数据,请添加数据
  230. }
  231. // 详情数据存入数据库
  232. for (Map<String,String> excelMap : list) {
  233. DwFileDetail01Example dwFileDetail01 = new DwFileDetail01Example();
  234. dwFileDetail01.createCriteria().andExcelIdEqualTo(excelMap.get("id"))
  235. .andExcelTnameEqualTo(excelMap.get("tname"))
  236. .andExcelCmodeEqualTo(excelMap.get("cmode"))
  237. .andExcelValueEqualTo(excelMap.get("value"))
  238. .andExcelFacnameEqualTo(excelMap.get("facname"))
  239. .andExcelTypeEqualTo(excelMap.get("type"))
  240. .andExcelFdidEqualTo(excelMap.get("fdid"))
  241. .andExcelYxstatusEqualTo(excelMap.get("yxstatus"));
  242. String fileDetailId = db.getMybatisMapper(SequenceMapper.class).getSequence("FILE_DETAIL_01_NO");
  243. DwFileDetail01 fileDetail01 = new DwFileDetail01();
  244. fileDetail01.setId(fileDetailId);
  245. fileDetail01.setExcelId(excelMap.get("id"));
  246. fileDetail01.setExcelTname(excelMap.get("tname"));
  247. fileDetail01.setExcelCmode(excelMap.get("cmode"));
  248. fileDetail01.setExcelValue(excelMap.get("value"));
  249. fileDetail01.setExcelFacname(excelMap.get("facname"));
  250. fileDetail01.setExcelType(excelMap.get("type"));
  251. fileDetail01.setExcelFdid(excelMap.get("fdid"));
  252. fileDetail01.setExcelYxstatus(excelMap.get("yxstatus"));
  253. String tytime = excelMap.get("tytime");
  254. tytime = tytime.replaceAll("-", "").replaceAll(" ", "").replaceAll(":", "");
  255. if (!CommonUtil.isEmpty(tytime) && tytime.length() != 14) {
  256. throw new MINBusinessException(excelMap.get("tytime") + "--时间格式错误");
  257. }
  258. fileDetail01.setExcelTytime(tytime);
  259. fileDetail01.setFileId(fileId);
  260. db.insertSelective(DwFileDetail01Mapper.class, fileDetail01);
  261. }
  262. // FA动作
  263. } else if (Constant.FILE_DETAIL_TYPE_02.equals(fileType)) {
  264. String[] titleKey = new String[]{"no","beginTime","endTime","gdlx", "cxbdz","xlmc","xllx","qdfa","gzqjpd","gzqhdhf","gzgl"};
  265. list = FilesUtil.readExecleasy(fileItem, titleKey, 1);
  266. if (list.size() == 0) {
  267. throw new MINBusinessException("无数据,请添加数据");//无数据,请添加数据
  268. }
  269. // 详情数据存入数据库
  270. for (Map<String,String> excelMap : list) {
  271. String fileDetailId = db.getMybatisMapper(SequenceMapper.class).getSequence("FILE_DETAIL_02_NO");
  272. DwFileDetail02 fileDetail02 = new DwFileDetail02();
  273. fileDetail02.setId(fileDetailId);
  274. fileDetail02.setNo(excelMap.get("no"));
  275. fileDetail02.setBeginTime(excelMap.get("beginTime"));
  276. fileDetail02.setEndTime(excelMap.get("endTime"));
  277. fileDetail02.setGdlx(excelMap.get("gdlx"));
  278. fileDetail02.setCxbdz(excelMap.get("cxbdz"));
  279. fileDetail02.setXlmc(excelMap.get("xlmc"));
  280. fileDetail02.setXllx(excelMap.get("xllx"));
  281. fileDetail02.setQdfa(excelMap.get("qdfa"));
  282. fileDetail02.setGzqjpd(excelMap.get("gzqjpd"));
  283. fileDetail02.setGzqhdhf(excelMap.get("gzqhdhf"));
  284. fileDetail02.setGzgl(excelMap.get("gzgl"));
  285. fileDetail02.setFileId(fileId);
  286. db.insertSelective(DwFileDetail02Mapper.class, fileDetail02);
  287. }
  288. }else if(Constant.FILE_DETAIL_TYPE_03.equals(fileType)){
  289. 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"};
  290. list = FilesUtil.readExecleasy(fileItem, titleKey, 3);
  291. if (list.size() == 0) {
  292. throw new MINBusinessException("无数据,请添加数据");//无数据,请添加数据
  293. }
  294. // 详情数据存入数据库
  295. for (Map<String,String> excelMap : list) {
  296. String fileDetailId = db.getMybatisMapper(SequenceMapper.class).getSequence("FILE_DETAIL_03_NO");
  297. String sjrq = excelMap.get("sjrq");
  298. try {
  299. SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd");
  300. Date date = sdf.parse(sjrq);
  301. SimpleDateFormat todf = new SimpleDateFormat("yyyyMMdd");// 设置日期格式
  302. sjrq = todf.format(date);
  303. } catch (Exception ex) {
  304. }
  305. // DateFormat formater = new SimpleDateFormat("yyyyMMdd");
  306. // String sjrq = formater.format(excelMap.get("sjrq"));
  307. DwFileDetail03 fileDetail03 = new DwFileDetail03();
  308. fileDetail03.setId(fileDetailId);
  309. fileDetail03.setNo(excelMap.get("no"));
  310. fileDetail03.setSgsmc(excelMap.get("sgsmc"));
  311. fileDetail03.setXgsmc(excelMap.get("xgsmc"));
  312. fileDetail03.setBdzmc(excelMap.get("bdzmc"));
  313. fileDetail03.setXlmc(excelMap.get("xlmc"));
  314. fileDetail03.setTqid(excelMap.get("tqid"));
  315. fileDetail03.setByqmc(excelMap.get("byqmc"));
  316. fileDetail03.setYhgldw1(excelMap.get("yhgldw1"));
  317. fileDetail03.setYhid(excelMap.get("yhid"));
  318. fileDetail03.setYhmc(excelMap.get("yhmc"));
  319. fileDetail03.setYhgldw2(excelMap.get("yhgldw2"));
  320. fileDetail03.setDymax(excelMap.get("dymax"));
  321. fileDetail03.setDymin(excelMap.get("dymin"));
  322. fileDetail03.setDyhgl(excelMap.get("dyhgl"));
  323. fileDetail03.setCsxl(excelMap.get("csxl"));
  324. fileDetail03.setCxxl(excelMap.get("cxxl"));
  325. fileDetail03.setDysc(excelMap.get("dysc"));
  326. fileDetail03.setGdlx(excelMap.get("gdlx"));
  327. fileDetail03.setLjts(excelMap.get("ljts"));
  328. fileDetail03.setSjrq(sjrq);
  329. fileDetail03.setGddw(excelMap.get("gddw"));
  330. fileDetail03.setFileId(fileId);
  331. db.insertSelective(DwFileDetail03Mapper.class, fileDetail03);
  332. }
  333. }
  334. // 文件名
  335. String filePath = Service.lookup(IPropertiesService.class).getSystemProperties().get("FILE_SERVER_BASE_PATH").getKey();
  336. String saveName = UUID.randomUUID().toString().replaceAll("-", "");
  337. String[] fileNameArray = fileName.split("\\.");
  338. saveName = saveName + "." + fileNameArray[fileNameArray.length - 1];
  339. // 保存文件数据
  340. String currentDate = DateUtil.getCurrentDateString();
  341. User user = (User)session.getUser();
  342. DwFileInf fileInf = new DwFileInf();
  343. fileInf.setId(fileId);
  344. fileInf.setUploadDate(currentDate);
  345. fileInf.setFileName(fileName);
  346. fileInf.setCreatUser(user.getId());
  347. fileInf.setBranch(user.getBranchid());
  348. fileInf.setDataNum(list.size() + "");
  349. fileInf.setType(fileType);
  350. fileInf.setSavePath(filePath + saveName);
  351. db.insertSelective(DwFileInfMapper.class, fileInf);
  352. // 保存文件到本地
  353. FilesUtil.uploadFile(fileItem, filePath, "", saveName, 0);
  354. return res;
  355. }
  356. /**
  357. * 原始数据文件下载
  358. * @param fileId
  359. * @param response
  360. * @return
  361. * @throws MINBusinessException
  362. */
  363. @MINAction(value = FILE_INF_DOWNLOAD)
  364. public HttpServletResponse fileInfDownload(
  365. @MINParam(key = "fileId") String fileId,
  366. HttpServletResponse response
  367. ) throws MINBusinessException {
  368. db = Service.lookup(IMINDataBaseService.class);
  369. DwFileInf fileInf = db.selectByPrimaryKey(DwFileInfMapper.class, fileId);
  370. FilesUtil.writeFile2Response(response, fileInf.getSavePath(), fileInf.getFileName());
  371. return response;
  372. }
  373. /**
  374. * 原始文件删除
  375. * @param fileId
  376. * @param fileType
  377. * @return
  378. * @throws MINBusinessException
  379. */
  380. @MINAction(value = FILE_INF_DELETE, transaction = IMINTransactionEnum.CMT)
  381. public MINActionResult fileInfDelete(
  382. @MINParam(key = "fileId") String fileId,
  383. @MINParam(key = "fileType") String fileType
  384. ) throws MINBusinessException {
  385. MINActionResult res = new MINActionResult();
  386. db = Service.lookup(IMINDataBaseService.class);
  387. // 删除原始文件
  388. DwFileInf fileInf = new DwFileInf();
  389. fileInf.setState(Constant.FILE_INF_STATE_1);
  390. fileInf.setId(fileId);
  391. db.updateByPrimaryKeySelective(DwFileInfMapper.class, fileInf);
  392. /** 删除明细 */
  393. // 台区停电
  394. if (Constant.FILE_DETAIL_TYPE_00.equals(fileType)) {
  395. DwFileDetail00Example fileDetail00Example = new DwFileDetail00Example();
  396. fileDetail00Example.createCriteria().andFileIdEqualTo(fileId);
  397. db.deleteByExample(DwFileDetail00Mapper.class, fileDetail00Example);
  398. // 低电压
  399. } else if (Constant.FILE_DETAIL_TYPE_01.equals(fileType)) {
  400. }
  401. return res;
  402. }
  403. /**
  404. * 原始文件明细查询
  405. * @param fileId
  406. * @param fileIdListStr
  407. * @param fileType
  408. * @return
  409. * @throws MINBusinessException
  410. */
  411. @MINAction(value = FILE_INF_DETAIL)
  412. public MINActionResult fileInfDetail(
  413. @MINParam(key = "fileId") String fileId,
  414. @MINParam(key = "fileIdListStr") String fileIdListStr,
  415. @MINParam(key = "fileType") String fileType,
  416. @MINParam(key = "page", defaultValue = "1") int page,
  417. @MINParam(key = "limit", defaultValue = "100") int limit
  418. ) throws MINBusinessException {
  419. MINActionResult res = new MINActionResult();
  420. db = Service.lookup(IMINDataBaseService.class);
  421. MINRowBounds rows = new MINRowBounds(page, limit);
  422. rows.setSeparateSql(true);
  423. Map<String, String> param = new HashMap<String, String>();
  424. param.put("fileId", fileId);
  425. param.put("fileIdListStr", fileIdListStr);
  426. param.put("fileType", fileType);
  427. // 查询明细信息
  428. List fileInfDetailList = Service.lookup(IDianwangService.class).queryFileInfDetail(param, rows);
  429. res.set(IMINBusinessConstant.F_PAGING_LAY, fileInfDetailList);
  430. res.set(IMINBusinessConstant.F_PAGING_COUNT, rows.getCount());
  431. return res;
  432. }
  433. }