using System;
|
using System.Collections.Generic;
|
using System.Linq;
|
using System.Text;
|
using Model;
|
using Common;
|
using Oracle.ManagedDataAccess.Client;
|
using System.Data.Common;
|
|
namespace Dao
|
{
|
/// <summary>
|
/// 订单审核操作
|
/// </summary>
|
public class GwOrderAuditDao : IDisposable
|
{
|
public void Dispose()
|
{
|
}
|
|
private static GwOrderAuditDao _instance;
|
public static GwOrderAuditDao Instance
|
{
|
get {
|
if (_instance == null)
|
{
|
_instance = new GwOrderAuditDao();
|
}
|
return _instance;
|
}
|
}
|
|
/// <summary>
|
/// 获取订单审核列表
|
/// </summary>
|
/// flag: 0-待审核订单(已提交、审核中);1-已完成订单(审核通过、审核不通过、取消)
|
/// <returns></returns>
|
public List<GwOrderAudit> List(GwOrderAudit gwOrderAudit)
|
{
|
List<GwOrderAudit> list = new List<GwOrderAudit>();
|
try
|
{
|
StringBuilder stringBuilder = new StringBuilder();
|
stringBuilder.Append("SELECT GOA.* ");
|
stringBuilder.Append(" FROM GW_ORDER_AUDIT GOA ");
|
stringBuilder.Append(" WHERE 1=1 ");
|
|
if (gwOrderAudit.AuditId!=null && gwOrderAudit.AuditId!="")
|
{
|
stringBuilder.Append(" AND AUDIT_ID= '" + gwOrderAudit.AuditId + "' ");
|
}
|
if (gwOrderAudit.OrderId != null && gwOrderAudit.OrderId != "")
|
{
|
stringBuilder.Append(" AND ORDER_ID= '" + gwOrderAudit.OrderId + "' ");
|
}
|
if (gwOrderAudit.AuditSort != 0 )
|
{
|
stringBuilder.Append(" AND AUDIT_SORT= " + gwOrderAudit.AuditSort + " ");
|
}
|
if (gwOrderAudit.AuditStatus != 0)
|
{
|
stringBuilder.Append(" AND AUDIT_STATUS= " + gwOrderAudit.AuditStatus + " ");
|
}
|
stringBuilder.Append(" ORDER BY ORDER_ID, AUDIT_TIME DESC ");
|
|
using (OracleDataReader reader = OracleHelper.ExecuteReader(stringBuilder.ToString() , OracleHelper.Connection))
|
{
|
while (((DbDataReader)reader).Read())
|
{
|
GwOrderAudit o = new GwOrderAudit();
|
if (this.ReadInfo(reader, o))
|
list.Add(o);
|
}
|
}
|
}
|
catch (Exception ex)
|
{
|
LogHelper.Error(ex);
|
return list;
|
}
|
return list;
|
}
|
|
|
//添加信息
|
public bool Add(GwOrderAudit o)
|
{
|
StringBuilder stringBuilder = new StringBuilder();
|
stringBuilder.Append("INSERT INTO GW_ORDER_AUDIT ( ");
|
stringBuilder.Append(" AUDIT_ID, ORDER_ID, AUDIT_SORT, AUDIT_STATUS, AUDITOR, AUDIT_REASON, AUDIT_TIME ");
|
stringBuilder.Append(" ) ");
|
stringBuilder.Append(" VALUES (:AUDIT_ID, :ORDER_ID, :AUDIT_SORT, :AUDIT_STATUS, :AUDITOR, :AUDIT_REASON, :AUDIT_TIME ");
|
stringBuilder.Append(" ) ");
|
|
string sql = stringBuilder.ToString();
|
|
return OracleHelper.ExecuteSql(sql,
|
OracleHelper.Connection,
|
new OracleParameter(":AUDIT_ID", (object)o.AuditId),
|
new OracleParameter(":ORDER_ID", (object)o.OrderId),
|
new OracleParameter(":AUDIT_SORT", (object)o.AuditSort),
|
new OracleParameter(":AUDIT_STATUS", (object)o.AuditStatus),
|
new OracleParameter(":AUDITOR", (object)o.Auditor),
|
new OracleParameter(":AUDIT_REASON", (object)o.AuditReason),
|
new OracleParameter(":AUDIT_TIME", (object)o.AuditTime)
|
) > 0;
|
}
|
|
//删除
|
public bool Delete(string AuditId)
|
{
|
if (string.IsNullOrEmpty(AuditId) )
|
return false;
|
return OracleHelper.ExecuteSql("delete from GW_ORDER_AUDIT where AUDIT_ID=:AUDIT_ID", OracleHelper.Connection, new OracleParameter(":AUDIT_ID", (object)AuditId)) > 0;
|
}
|
|
//更新产品或产品分类信息
|
public bool Update(GwOrderAudit o)
|
{
|
OracleParameter[] cmdParms = new OracleParameter[] {
|
new OracleParameter(":AUDIT_ID", (object)o.AuditId),
|
new OracleParameter(":ORDER_ID", (object)o.OrderId),
|
new OracleParameter(":AUDIT_SORT", (object)o.AuditSort),
|
new OracleParameter(":AUDIT_STATUS", (object)o.AuditStatus),
|
new OracleParameter(":AUDITOR", (object)o.Auditor),
|
new OracleParameter(":AUDIT_REASON", (object)o.AuditReason),
|
new OracleParameter(":AUDIT_TIME", (object)o.AuditTime)
|
};
|
|
StringBuilder stringBuilder = new StringBuilder();
|
stringBuilder.Append("UPDATE GW_ORDER_AUDIT SET ");
|
//stringBuilder.Append(" , AUDIT_ID =:AUDIT_ID ");
|
stringBuilder.Append(" , ORDER_ID =:ORDER_ID ");
|
stringBuilder.Append(" , AUDIT_SORT =:AUDIT_SORT ");
|
stringBuilder.Append(" , AUDIT_STATUS =:AUDIT_STATUS ");
|
stringBuilder.Append(" , AUDITOR=:AUDITOR, AUDIT_REASON=:AUDIT_REASON, AUDIT_TIME=:AUDIT_TIME ");
|
stringBuilder.Append(" WHERE AUDIT_ID=:AUDIT_ID ");
|
|
string sql = stringBuilder.ToString();
|
return (OracleHelper.ExecuteSql(sql, OracleHelper.Connection, cmdParms) > 0);
|
}
|
|
//获取信息
|
public GwOrderAudit Get(string auditId)
|
{
|
GwOrderAudit o = new GwOrderAudit();
|
if (string.IsNullOrEmpty(auditId))
|
return o;
|
using (OracleDataReader reader = OracleHelper.ExecuteReader(string.Format("select * from GW_ORDER_AUDIT where AUDIT_ID=:AUDIT_ID"), OracleHelper.Connection, new OracleParameter(":AUDIT_ID", (object)auditId)))
|
{
|
if (((DbDataReader)reader).Read())
|
{
|
this.ReadInfo(reader, o);
|
return o;
|
}
|
}
|
return o;
|
}
|
|
//统计记录数
|
private int ReadCount(OracleDataReader reader)
|
{
|
OracleReaderWrapper wrapper = new OracleReaderWrapper(reader);
|
return wrapper.GetInt("count", 0);
|
}
|
|
//数据封装
|
private bool ReadInfo(OracleDataReader reader, GwOrderAudit o)
|
{
|
OracleReaderWrapper oracleReaderWrapper = new OracleReaderWrapper(reader);
|
o.AuditId = oracleReaderWrapper.GetString("AUDIT_ID", "");
|
o.OrderId = oracleReaderWrapper.GetString("ORDER_ID", "");
|
o.AuditSort = oracleReaderWrapper.GetInt("AUDIT_SORT", 0);
|
o.AuditStatus = oracleReaderWrapper.GetInt("AUDIT_STATUS", 0);
|
o.Auditor = oracleReaderWrapper.GetString("AUDITOR", "");
|
o.AuditReason = oracleReaderWrapper.GetString("AUDIT_REASON", "");
|
o.AuditTime = oracleReaderWrapper.GetDateTime("AUDIT_TIME");
|
return true;
|
}
|
|
}
|
|
}
|