Browse Source

git-svn-id: svn+ssh://10.10.101.21/source/platform/platform-b2b@725 f3bf4e98-0cf0-11e4-a00c-a99a8b9d557d

administrator 11 years ago
parent
commit
8253e7a92d

+ 32 - 0
src/main/java/com/uas/platform/b2b/dao/CommonDao.java

@@ -0,0 +1,32 @@
+package com.uas.platform.b2b.dao;
+
+import java.util.List;
+import java.util.Map;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.jdbc.core.JdbcTemplate;
+import org.springframework.stereotype.Repository;
+
+@Repository
+public class CommonDao {
+
+	@Autowired
+	private JdbcTemplate jdbcTemplate;
+
+	public List<Map<String, Object>> queryForList(String sql) {
+		return this.jdbcTemplate.queryForList(sql);
+	}
+
+	public <T> List<T> queryForList(String sql, Class<T> elementType) {
+		return this.jdbcTemplate.queryForList(sql, elementType);
+	}
+
+	public List<Map<String, Object>> queryForList(String sql, Object... args) {
+		return this.jdbcTemplate.queryForList(sql, args);
+	}
+
+	public <T> List<T> queryForList(String sql, Object[] args, Class<T> elementType) {
+		return this.jdbcTemplate.queryForList(sql, args, elementType);
+	}
+
+}

+ 4 - 15
src/main/java/com/uas/platform/b2b/erp/controller/ErpLogController.java

@@ -1,11 +1,7 @@
 package com.uas.platform.b2b.erp.controller;
 
-import java.util.HashMap;
-import java.util.Map;
-
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.data.domain.Page;
-import org.springframework.data.domain.Sort.Direction;
 import org.springframework.stereotype.Controller;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestMethod;
@@ -18,13 +14,13 @@ import com.uas.platform.b2b.erp.service.ErpLogService;
 import com.uas.platform.b2b.support.SystemSession;
 import com.uas.platform.core.model.PageInfo;
 import com.uas.platform.core.model.PageParams;
-import com.uas.platform.core.web.view.XmlExcelView;
+import com.uas.platform.core.web.view.XmlGridExcelView;
 
 /**
  * ERP数据传输日志
  * 
  * @author yingp
- *
+ * 
  */
 @Controller
 @RequestMapping(value = "/log/erp")
@@ -55,15 +51,8 @@ public class ErpLogController {
 	 */
 	@RequestMapping(value = "/xls", method = RequestMethod.GET)
 	public ModelAndView exportErpLogs() {
-		final PageInfo pageInfo = new PageInfo(1, XmlExcelView.BUFFER_SIZE, 0);
-		pageInfo.sorting("time", Direction.DESC);
-		pageInfo.filter("enUU", SystemSession.getUser().getEnterprise().getUu());
-		Map<String, Object> map = new HashMap<String, Object>();
-		long t1 = System.currentTimeMillis();
-		map.put("data", erpLogService.findAllByPageInfo(pageInfo).getContent());
-		System.out.println(System.currentTimeMillis() - t1);
-		return new ModelAndView(new XmlExcelView("classpath:xml-tpl/account/log/ErpLog", "数据传输日志", ContextUtils.getApplicationContext()),
-				map);
+		return new ModelAndView(new XmlGridExcelView("classpath:xml-tpl/account/log/ErpLog", "数据传输日志",
+				erpLogService.findAll(), ContextUtils.getApplicationContext()));
 	}
 
 }

+ 3 - 0
src/main/java/com/uas/platform/b2b/erp/service/ErpLogService.java

@@ -5,6 +5,7 @@ import org.springframework.data.domain.Page;
 import com.uas.platform.b2b.erp.model.ErpLog;
 import com.uas.platform.core.logging.LogService;
 import com.uas.platform.core.model.PageInfo;
+import com.uas.platform.core.web.view.XmlGrid;
 
 public interface ErpLogService extends LogService<ErpLog> {
 
@@ -15,5 +16,7 @@ public interface ErpLogService extends LogService<ErpLog> {
 	 * @return
 	 */
 	public Page<ErpLog> findAllByPageInfo(PageInfo pageInfo);
+	
+	public XmlGrid findAll();
 
 }

+ 38 - 0
src/main/java/com/uas/platform/b2b/erp/service/impl/ErpLogServiceImpl.java

@@ -1,5 +1,9 @@
 package com.uas.platform.b2b.erp.service.impl;
 
+import java.util.LinkedHashMap;
+import java.util.List;
+import java.util.Map;
+
 import javax.persistence.criteria.CriteriaBuilder;
 import javax.persistence.criteria.CriteriaQuery;
 import javax.persistence.criteria.Predicate;
@@ -10,10 +14,15 @@ import org.springframework.data.domain.Page;
 import org.springframework.data.jpa.domain.Specification;
 import org.springframework.stereotype.Service;
 
+import com.uas.platform.b2b.dao.CommonDao;
 import com.uas.platform.b2b.erp.dao.ErpLogDao;
 import com.uas.platform.b2b.erp.model.ErpLog;
 import com.uas.platform.b2b.erp.service.ErpLogService;
+import com.uas.platform.b2b.support.SystemSession;
 import com.uas.platform.core.model.PageInfo;
+import com.uas.platform.core.web.view.ExcelConstant;
+import com.uas.platform.core.web.view.XmlExcelView;
+import com.uas.platform.core.web.view.XmlGrid;
 
 @Service
 public class ErpLogServiceImpl implements ErpLogService {
@@ -21,6 +30,9 @@ public class ErpLogServiceImpl implements ErpLogService {
 	@Autowired
 	private ErpLogDao erpLogDao;
 
+	@Autowired
+	private CommonDao commonDao;
+
 	@Override
 	public void save(ErpLog log) {
 		erpLogDao.save(log);
@@ -42,4 +54,30 @@ public class ErpLogServiceImpl implements ErpLogService {
 		}, pageInfo);
 	}
 
+	@Override
+	public XmlGrid findAll() {
+		return new XmlGrid() {
+
+			@Override
+			public List<Map<String, Object>> getContent() {
+				return commonDao
+						.queryForList(
+								"SELECT tt.* FROM (SELECT to_char(to_date('1970-01-01','yyyy-MM-dd')+log_time/86400000,'yyyy-mm-dd hh24:mi:ss') timeString,log_ip ip,user_name userName,log_title title,log_message message,log_total total FROM log$erp left join sec$users on log_useruu=user_uu WHERE log_enuu=? ORDER BY log_time DESC) tt WHERE ROWNUM <= ?",
+								SystemSession.getUser().getEnterprise().getUu(), XmlExcelView.BUFFER_SIZE);
+			}
+
+			@Override
+			public Map<String, String> getColumns() {
+				Map<String, String> columns = new LinkedHashMap<String, String>();
+				columns.put("timeString", ExcelConstant.TYPE_STRING);
+				columns.put("ip", ExcelConstant.TYPE_STRING);
+				columns.put("userName", ExcelConstant.TYPE_STRING);
+				columns.put("title", ExcelConstant.TYPE_STRING);
+				columns.put("message", ExcelConstant.TYPE_STRING);
+				columns.put("total", ExcelConstant.TYPE_NUMBER);
+				return columns;
+			}
+		};
+	}
+
 }

+ 2 - 13
src/main/resources/xml-tpl/account/log/ErpLog.xml

@@ -91,17 +91,6 @@
 				</Cell>
 			</Row>
 			<Row />
-			<Row>
-				<Cell ss:StyleID="s11" ss:MergeAcross="1">
-					<Data ss:Type="String">导出时间:${export.date}</Data>
-				</Cell>
-				<Cell ss:StyleID="s12" ss:MergeAcross="1">
-					<Data ss:Type="String">导出人员:${export.user}</Data>
-				</Cell>
-				<Cell>
-					<Data ss:Type="String">数据合计:条</Data>
-				</Cell>
-			</Row>
 			<Row>
 				<Cell ss:StyleID="s9">
 					<Data ss:Type="String">时间</Data>
@@ -135,8 +124,8 @@
 			<PageBreakZoom>100</PageBreakZoom>
 			<FreezePanes />
 			<FrozenNoSplit />
-			<SplitHorizontal>4</SplitHorizontal>
-			<TopRowBottomPane>4</TopRowBottomPane>
+			<SplitHorizontal>3</SplitHorizontal>
+			<TopRowBottomPane>3</TopRowBottomPane>
 			<ActivePane>2</ActivePane>
 			<Panes>
 				<Pane>