using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using CY.IDAL;
using System.Data.SqlClient;
using System.Data;
using CY.Model;
using System.Transactions;
namespace CY.SQLDAL
{
//车辆交接
public class OA_CarTransferDAL : IOA_CarTransferDAL
{
private Database _dataBase = null;
public OA_CarTransferDAL()
{
_dataBase = new Database();
}
public OA_CarTransferDAL(Database dataBase)
{
_dataBase = dataBase;
}
///
/// 新增
///
///
///
public bool InserModel(Infrastructure.Domain.IAggregateRoot model)
{
Model.OA_CarTransfer trueModel = model as Model.OA_CarTransfer;
if (trueModel == null)
{
return false;
}
IList sqlParms = new List()
{
new SqlParameter("@MemberId", trueModel.MemberId) ,
new SqlParameter("@CarId", trueModel.CarId) ,
new SqlParameter("@TransferDepartureTime", trueModel.TransferDepartureTime) ,
new SqlParameter("@TransferDeparturePeople", trueModel.TransferDeparturePeople) ,
new SqlParameter("@TransferUserCarPeople", trueModel.TransferUserCarPeople) ,
new SqlParameter("@TransferApproving", trueModel.TransferApproving) ,
new SqlParameter("@TransferUseCarReconed", trueModel.TransferUseCarReconed) ,
new SqlParameter("@TransferPilot", trueModel.TransferPilot) ,
new SqlParameter("@TransferDrivingDirections", trueModel.TransferDrivingDirections) ,
new SqlParameter("@TransferCarInfoRecord", trueModel.TransferCarInfoRecord) ,
new SqlParameter("@TransferBackTime", trueModel.TransferBackTime) ,
new SqlParameter("@TransferIsBack", trueModel.TransferIsBack) ,
new SqlParameter("@TransferEndFinalli", trueModel.TransferEndFinalli) ,
new SqlParameter("@TransferRunTime", trueModel.TransferRunTime) ,
new SqlParameter("@TransferRunFinalli", trueModel.TransferRunFinalli) ,
new SqlParameter("@TransferCheckRecord", trueModel.TransferCheckRecord) ,
new SqlParameter("@TransferDepart", trueModel.TransferDepart) ,
new SqlParameter("@TransferRecivrThings", trueModel.TransferRecivrThings) ,
new SqlParameter("@TransferStartFinalli", trueModel.TransferStartFinalli) ,
new SqlParameter("@TransferNextTime", trueModel.TransferNextTime) ,
new SqlParameter("@TransferRemark", trueModel.TransferRemark)
};
try
{
_dataBase.Query("sp_OA_CarTransfer_Insert", CommandType.StoredProcedure, sqlParms.ToArray());
}
catch (Exception ex)
{
throw ex;
}
return true;
}
///
/// 修改
///
///
///
public bool UpdateModel(Infrastructure.Domain.IAggregateRoot model)
{
Model.OA_CarTransfer trueModel = model as Model.OA_CarTransfer;
if (trueModel == null)
{
return false;
}
IList sqlParms = new List()
{
new SqlParameter("@Keyid", trueModel.Keyid) ,
new SqlParameter("@MemberId", trueModel.MemberId) ,
new SqlParameter("@CarId", trueModel.CarId) ,
new SqlParameter("@TransferDepartureTime", trueModel.TransferDepartureTime) ,
new SqlParameter("@TransferDeparturePeople", trueModel.TransferDeparturePeople) ,
new SqlParameter("@TransferUserCarPeople", trueModel.TransferUserCarPeople) ,
new SqlParameter("@TransferApproving", trueModel.TransferApproving) ,
new SqlParameter("@TransferUseCarReconed", trueModel.TransferUseCarReconed) ,
new SqlParameter("@TransferPilot", trueModel.TransferPilot) ,
new SqlParameter("@TransferDrivingDirections", trueModel.TransferDrivingDirections) ,
new SqlParameter("@TransferCarInfoRecord", trueModel.TransferCarInfoRecord) ,
new SqlParameter("@TransferBackTime", trueModel.TransferBackTime) ,
new SqlParameter("@TransferIsBack", trueModel.TransferIsBack) ,
new SqlParameter("@TransferEndFinalli", trueModel.TransferEndFinalli) ,
new SqlParameter("@TransferRunTime", trueModel.TransferRunTime) ,
new SqlParameter("@TransferRunFinalli", trueModel.TransferRunFinalli) ,
new SqlParameter("@TransferCheckRecord", trueModel.TransferCheckRecord) ,
new SqlParameter("@TransferDepart", trueModel.TransferDepart) ,
new SqlParameter("@TransferRecivrThings", trueModel.TransferRecivrThings) ,
new SqlParameter("@TransferStartFinalli", trueModel.TransferStartFinalli) ,
new SqlParameter("@TransferNextTime", trueModel.TransferNextTime) ,
new SqlParameter("@TransferRemark", trueModel.TransferRemark)
};
try
{
_dataBase.Query("sp_OA_CarTransfer_Update", CommandType.StoredProcedure, sqlParms.ToArray());
}
catch (Exception ex)
{
throw ex;
}
return true;
}
///
/// 删除
///
///
///
public bool DeleteModel(Infrastructure.Domain.IAggregateRoot model)
{
Model.OA_CarTransfer trueModel = model as Model.OA_CarTransfer;
if (trueModel == null)
{
return false;
}
IList sqlParms = new List()
{
new SqlParameter("@Keyid",trueModel.Keyid)
};
try
{
_dataBase.Query("sp_OA_CarTransfer_DeleteRow", CommandType.StoredProcedure, sqlParms.ToArray());
}
catch (Exception ex)
{
throw ex;
}
return true;
}
///
/// 分页查询
///
///
///
///
public IEnumerable SelectModelPage(Infrastructure.Query.Query query, Infrastructure.Query.Pagination pagination)
{
throw new NotImplementedException();
}
///
/// 单个查询
///
///
///
public IEnumerable SelectAllModel(Infrastructure.Query.Query query)
{
throw new NotImplementedException();
}
///
/// 根据编号获得信息
///
/// 编号
///
public OA_CarTransfer GetModelByKeyid(int? Keyid)
{
try
{
if (Keyid == null || Keyid < 0)
return null;//错误数据返会空
IList result = _dataBase.SelectModel(" a.*,b.CarNumber ", " OA_CarTransfer as a left join OA_CarManage as b on a.CarId = b.Keyid", string.Format(" a.Keyid='{0}'", Keyid)) as IList;//执行查询
return (null == result || result.Count == 0) ? null : result[0];//返回结果
}
catch (Exception ex)
{
throw ex;
}
}
///
/// 分页查询
///
///
///
public IEnumerable SelectModelPage(Infrastructure.Query.Pagination pagination, Guid _MemberId, int? _CarId, DateTime? _BeginTransferDepartureTime, DateTime? _EndTransferDepartureTime, string _TransferDeparturePeople, string _TransferUserCarPeople, string _TransferApproving, string _TransferUseCarReconed, string _TransferPilot, string _TransferDrivingDirections, string _TransferCarInfoRecord, DateTime? _BeginTransferBackTime, DateTime? _EndTransferBackTime, int? _TransferIsBack, int? _TransferEndFinalli, string _TransferRunTime, int? _TransferRunFinalli, string _TransferCheckRecord, string _TransferDepart, string _TransferRecivrThings, int? _TransferStartFinalli, DateTime? _BeginTransferNextTime, DateTime? _EndTransferNextTime, string _TransferRemark)
{
try
{
string condition = " 1=1 ";
if (_MemberId != Guid.Empty)
condition += " and a.MemberId = '" + _MemberId + "'";
if (_CarId.HasValue)
condition += " and a.CarId = '" + _CarId + "'";
if (_BeginTransferDepartureTime.HasValue && _EndTransferDepartureTime.HasValue)
{
condition += string.Format(" and ((((CAST(a.TransferDepartureTime AS DATE) >= '{0}' and CAST(a.TransferDepartureTime AS DATE) <= '{1}') or (CAST(a.TransferBackTime AS DATE) >= '{0}' and CAST(a.TransferBackTime AS DATE) <= '{1}')) and a.TransferIsBack='2' ) or (CAST(a.TransferDepartureTime AS DATE) <= '{1}' and a.TransferIsBack='1' ))", _BeginTransferDepartureTime, _EndTransferDepartureTime);
}
else if (_BeginTransferDepartureTime.HasValue)
{
condition += string.Format(" and (((CAST(a.TransferDepartureTime AS DATE) >= '{0}' or CAST(a.TransferBackTime AS DATE) >= '{0}' ) and a.TransferIsBack='2' ) or a.TransferIsBack='1' )", _BeginTransferDepartureTime);
}
else if (_EndTransferDepartureTime.HasValue)
{
condition += string.Format(" and (((CAST(a.TransferDepartureTime AS DATE) <= '{0}' or CAST(a.TransferBackTime AS DATE) <= '{0}') and a.TransferIsBack='2' ) or (CAST(a.TransferDepartureTime AS DATE) <= '{0}' and a.TransferIsBack='1' ))", _EndTransferDepartureTime);
}
if (!string.IsNullOrEmpty(_TransferDeparturePeople))
condition += " and a.TransferDeparturePeople = '" + _TransferDeparturePeople + "'";
if (!string.IsNullOrEmpty(_TransferUserCarPeople))
condition += " and a.TransferUserCarPeople = '" + _TransferUserCarPeople + "'";
if (!string.IsNullOrEmpty(_TransferApproving))
condition += " and a.TransferApproving = '" + _TransferApproving + "'";
if (!string.IsNullOrEmpty(_TransferUseCarReconed))
condition += " and a.TransferUseCarReconed = '" + _TransferUseCarReconed + "'";
if (!string.IsNullOrEmpty(_TransferPilot))
condition += " and a.TransferPilot = '" + _TransferPilot + "'";
if (!string.IsNullOrEmpty(_TransferDrivingDirections))
condition += " and a.TransferDrivingDirections = '" + _TransferDrivingDirections + "'";
if (!string.IsNullOrEmpty(_TransferCarInfoRecord))
condition += " and a.TransferCarInfoRecord = '" + _TransferCarInfoRecord + "'";
if (_BeginTransferBackTime.HasValue)
condition += string.Format(" and CAST(a.TransferBackTime AS DATE) >='{0}'", _BeginTransferBackTime);
if (_EndTransferBackTime.HasValue)
condition += string.Format(" and CAST(a.TransferBackTime AS DATE) <='{0}'", _EndTransferBackTime);
if (_TransferIsBack.HasValue)
condition += " and a.TransferIsBack = '" + _TransferIsBack + "'";
if (_TransferEndFinalli.HasValue)
condition += " and a.TransferEndFinalli = '" + _TransferEndFinalli + "'";
if (!string.IsNullOrEmpty(_TransferRunTime))
condition += " and a.TransferRunTime = '" + _TransferRunTime + "'";
if (_TransferRunFinalli.HasValue)
condition += " and a.TransferRunFinalli = '" + _TransferRunFinalli + "'";
if (!string.IsNullOrEmpty(_TransferCheckRecord))
condition += " and a.TransferCheckRecord = '" + _TransferCheckRecord + "'";
if (!string.IsNullOrEmpty(_TransferDepart))
condition += " and a.TransferDepart = '" + _TransferDepart + "'";
if (!string.IsNullOrEmpty(_TransferRecivrThings))
condition += " and a.TransferRecivrThings = '" + _TransferRecivrThings + "'";
if (_TransferStartFinalli.HasValue)
condition += " and a.TransferStartFinalli = '" + _TransferStartFinalli + "'";
if (_BeginTransferNextTime.HasValue)
condition += string.Format(" and CAST(a.TransferNextTime AS DATE) >='{0}'", _BeginTransferNextTime);
if (_EndTransferNextTime.HasValue)
condition += string.Format(" and CAST(a.TransferNextTime AS DATE) <='{0}'", _EndTransferNextTime);
if (!string.IsNullOrEmpty(_TransferRemark))
condition += " and a.TransferRemark = '" + _TransferRemark + "'";
return _dataBase.SelectModelPage(pagination, " a.*,b.CarNumber ", " OA_CarTransfer as a left join OA_CarManage as b on a.CarId = b.Keyid", " a.Keyid desc", " Keyid desc ", condition);
}
catch (Exception ex)
{
throw ex;
}
}
///
/// 获取打印列表
///
///
///
public IEnumerable SelectModelList(string keyids)
{
try
{
if (string.IsNullOrEmpty(keyids))
return null;//错误数据返会空
IList result = _dataBase.SelectModel(" a.*,b.CarNumber ", " OA_CarTransfer as a left join OA_CarManage as b on a.CarId = b.Keyid", string.Format(" a.Keyid in ({0})", keyids)) as IList;//执行查询
return result;//返回结果
}
catch (Exception ex)
{
throw ex;
}
}
}
}