goodsdao.java

来自「电信的网厅的整站代码」· Java 代码 · 共 121 行

JAVA
121
字号
package com.doone.wskfmgr.business.netstore;

import java.util.LinkedList;
import java.util.Map;

import com.doone.data.DacClient;
import com.doone.data.DataTable;
import com.doone.fj1w.common.DAOHelper;
import com.doone.util.ExtString;
import com.doone.util.FileLogger;

public class GoodsDAO {

		public GoodsDAO() {	}

		/**
		 * 
		 * @param map
		 * @return
		 */
		public static int getConditionResult(Map map) throws Exception{
			try {
				StringBuffer sql = new StringBuffer();
				sql.append("select count(s.GOODSID) as count from tf_netgoods s ");
				sql.append("WHERE s.storeid = ?");
				LinkedList linkList = new LinkedList();
				linkList.add((String)map.get("STOREID"));
				
				sql.append(parseCondition(map,linkList));

				DacClient client = new DacClient();
				DataTable dataTable = client.executeQuery(sql.toString(),linkList.toArray());
				return dataTable.getRow(0).getInt("count");
			} catch (Exception ex) {
				throw ex;
			}
		}
		
		/**
		 * 
		 * @param map
		 * @param startrecord
		 * @param recordnum
		 * @return
		 * @throws Exception
		 */
		public static DataTable getContextResult(Map map, int startrecord,int recordnum)throws Exception{
			try {
				int endrecord = recordnum;
				if (startrecord < 0) {startrecord = 0;}
				if (endrecord > 0 && startrecord > 0) {
					endrecord = startrecord + recordnum;
				}
				
				StringBuffer sql = new StringBuffer();
				sql.append("select s.goodsid,s.orderman,s.ordertime,s.DESCRIPTION,");
				sql.append("s.saleindex,s.price,decode(s.state,'E','可用','D','禁用' ) as state");
				sql.append(" from tf_netgoods s WHERE s.storeid = ?");
				LinkedList linkList = new LinkedList();
				linkList.add((String)map.get("STOREID"));
				
				sql.append(parseCondition(map,linkList));
				return DAOHelper.executePageList(startrecord, endrecord, 
						                         sql.toString(),linkList.toArray());
			} catch (Exception ex) {
				throw ex;
			}
		}
		
		/**
		 * 解释条件入参.
		 * @param map
		 * @param linkList
		 * STOREID,CITYNAME,STORETYPE,STATE,CREDIT,,SORTSTARTTIME,ENDTIME,STORENAME
		 * @return
		 */
		public static String parseCondition(Map map,LinkedList linkList) {
			try {
				StringBuffer buffer = new StringBuffer();
				
				if(!ExtString.turnStr((String)map.get("GOODSID")).equals("")) {
					buffer.append(" and s.GOODSID = ? ");
					linkList.add((String)map.get("GOODSID"));
				}
				if(!ExtString.turnStr((String)map.get("STATE")).equals("")) {
					buffer.append(" and s.STATE = ? ");
					linkList.add((String)map.get("STATE"));
				}
				if(!ExtString.turnStr((String)map.get("TYPE")).equals("")) {
					buffer.append(" and s.TYPE = ?");
					linkList.add((String)map.get("TYPE"));
				}
				if(!ExtString.turnStr((String)map.get("SALEINDEX")).equals("")) {
					buffer.append(" and s.SALEINDEX = ?");
					linkList.add((String)map.get("SALEINDEX"));
				}
				if(!ExtString.turnStr((String)map.get("STARTTIME")).equals("")) {
					buffer.append(" and s.ORDERTIME >= to_date(?,'YYYY-MM-DD HH24:MI:SS')");
					linkList.add((String)map.get("STARTTIME"));
				}
				if(!ExtString.turnStr((String)map.get("ENDTIME")).equals("")) {
					buffer.append(" and s.ORDERTIME <= to_date(?,'YYYY-MM-DD HH24:MI:SS')");
					linkList.add((String)map.get("ENDTIME"));
				}
				if(!ExtString.turnStr((String)map.get("ORDERMAN")).equals("")) {
					buffer.append(" and s.ORDERMAN like ?");
					linkList.add((String)map.get("ORDERMAN")+ "%");
				}
				if(!ExtString.turnStr((String)map.get("SORT")).equals("")) {
					buffer.append(" order by s.ORDERTIME ");
					buffer.append((String)map.get("SORT"));
				}
				return buffer.toString();
			} catch (Exception ex) {
				FileLogger.getLogger().warn(ex.getMessage(),ex);
			}
			return "";
		}

}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?