using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using CY.IDAL;
using System.Data.SqlClient;
using System.Data;
using CY.Infrastructure.Query;
namespace CY.SQLDAL
{
public class OA_SuppliersDAL : IOA_SuppliersDAL
{
private Database _dataBase = null;
public OA_SuppliersDAL()
{
_dataBase = new Database();
}
///
/// 新增
///
///
///
public bool InserModel(Infrastructure.Domain.IAggregateRoot model)
{
Model.OA_Suppliers trueModel = model as Model.OA_Suppliers;
if (trueModel == null)
{
return false;
}
IList sqlParms = new List()
{
new SqlParameter(){Direction=ParameterDirection.ReturnValue,SqlDbType = SqlDbType.Int},
new SqlParameter("@FirmId",trueModel.FirmId),
new SqlParameter("@Name",trueModel.Name),
new SqlParameter("@SuppliersTypeId",trueModel.SuppliersTypeId),
new SqlParameter("@SuppliersLevelId",trueModel.SuppliersLevelId),
new SqlParameter("@BusinessLicenseNum",trueModel.BusinessLicenseNum),
new SqlParameter("@RegisterCapital",trueModel.RegisterCapital),
new SqlParameter("@CooperativeStateId",trueModel.CooperativeStateId),
new SqlParameter("@DetailedAddress",trueModel.DetailedAddress),
new SqlParameter("@Postcode",trueModel.Postcode),
new SqlParameter("@WebSite",trueModel.WebSite),
new SqlParameter("@QQ",trueModel.QQ),
new SqlParameter("@CompanyPhone",trueModel.CompanyPhone),
new SqlParameter("@Fax",trueModel.Fax),
new SqlParameter("@BusinessScope",trueModel.BusinessScope),
new SqlParameter("@BusinessLicenseFileId",trueModel.BusinessLicenseFileId),
new SqlParameter("@OrganizationCodeFileId",trueModel.OrganizationCodeFileId),
new SqlParameter("@TaxRegistrationFileId",trueModel.TaxRegistrationFileId),
new SqlParameter("@LegalRepresentative",trueModel.LegalRepresentative),
new SqlParameter("@LegalMobile",trueModel.LegalMobile),
new SqlParameter("@LegalQQ",trueModel.LegalQQ),
new SqlParameter("@BusinessManagers",trueModel.BusinessManagers),
new SqlParameter("@ManagersMobile",trueModel.ManagersMobile),
new SqlParameter("@ManagersQQ",trueModel.ManagersQQ),
new SqlParameter("@FinancialOfficers",trueModel.FinancialOfficers),
new SqlParameter("@OfficersMobile",trueModel.OfficersMobile),
new SqlParameter("@OfficersQQ",trueModel.OfficersQQ),
new SqlParameter("@LastUpdateTime",trueModel.LastUpdateTime),
new SqlParameter("@Operator",trueModel.Operator),
new SqlParameter("@Remark",trueModel.Remark) ,
new SqlParameter("@OrderNum",trueModel.OrderNum) ,
new SqlParameter("@Bank",string.IsNullOrEmpty(trueModel.Bank)?"":trueModel.Bank) ,
new SqlParameter("@AccountID",string.IsNullOrEmpty(trueModel.AccountID)?"":trueModel.AccountID) ,
};
try
{
_dataBase.Query("sp_OA_Suppliers_Insert", CommandType.StoredProcedure, sqlParms.ToArray());
trueModel.Keyid = (int)sqlParms[0].Value;
}
catch (Exception ex)
{
throw ex;
}
return true;
}
///
/// 修改
///
///
///
public bool UpdateModel(Infrastructure.Domain.IAggregateRoot model)
{
Model.OA_Suppliers trueModel = model as Model.OA_Suppliers;
if (trueModel == null)
{
return false;
}
IList sqlParms = new List()
{new SqlParameter("@Keyid",trueModel.Keyid),
new SqlParameter("@FirmId",trueModel.FirmId),
new SqlParameter("@Name",trueModel.Name),
new SqlParameter("@SuppliersTypeId",trueModel.SuppliersTypeId),
new SqlParameter("@SuppliersLevelId",trueModel.SuppliersLevelId),
new SqlParameter("@BusinessLicenseNum",trueModel.BusinessLicenseNum),
new SqlParameter("@RegisterCapital",trueModel.RegisterCapital),
new SqlParameter("@CooperativeStateId",trueModel.CooperativeStateId),
new SqlParameter("@DetailedAddress",trueModel.DetailedAddress),
new SqlParameter("@Postcode",trueModel.Postcode),
new SqlParameter("@WebSite",trueModel.WebSite),
new SqlParameter("@QQ",trueModel.QQ),
new SqlParameter("@CompanyPhone",trueModel.CompanyPhone),
new SqlParameter("@Fax",trueModel.Fax),
new SqlParameter("@BusinessScope",trueModel.BusinessScope),
new SqlParameter("@BusinessLicenseFileId",trueModel.BusinessLicenseFileId),
new SqlParameter("@OrganizationCodeFileId",trueModel.OrganizationCodeFileId),
new SqlParameter("@TaxRegistrationFileId",trueModel.TaxRegistrationFileId),
new SqlParameter("@LegalRepresentative",trueModel.LegalRepresentative),
new SqlParameter("@LegalMobile",trueModel.LegalMobile),
new SqlParameter("@LegalQQ",trueModel.LegalQQ),
new SqlParameter("@BusinessManagers",trueModel.BusinessManagers),
new SqlParameter("@ManagersMobile",trueModel.ManagersMobile),
new SqlParameter("@ManagersQQ",trueModel.ManagersQQ),
new SqlParameter("@FinancialOfficers",trueModel.FinancialOfficers),
new SqlParameter("@OfficersMobile",trueModel.OfficersMobile),
new SqlParameter("@OfficersQQ",trueModel.OfficersQQ),
new SqlParameter("@LastUpdateTime",trueModel.LastUpdateTime),
new SqlParameter("@Operator",trueModel.Operator),
new SqlParameter("@Remark",trueModel.Remark) ,
new SqlParameter("@OrderNum",trueModel.OrderNum) ,
new SqlParameter("@Bank",string.IsNullOrEmpty(trueModel.Bank)?"":trueModel.Bank) ,
new SqlParameter("@AccountID",string.IsNullOrEmpty(trueModel.AccountID)?"":trueModel.AccountID) ,
};
try
{
_dataBase.Query("sp_OA_Suppliers_Update", CommandType.StoredProcedure, sqlParms.ToArray());
}
catch (Exception ex)
{
throw ex;
}
return true;
}
///
/// 删除
///
///
///
public bool DeleteModel(Infrastructure.Domain.IAggregateRoot model)
{
Model.OA_Suppliers trueModel = model as Model.OA_Suppliers;
if (trueModel == null)
{
return false;
}
IList sqlParms = new List()
{
new SqlParameter("@Keyid",trueModel.Keyid)
};
try
{
_dataBase.Query("sp_OA_Suppliers_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 IEnumerable getAllSuppliers(Pagination pa, Guid FirmId, string CooperativeStateId, string SuppliersLevelId, string SuppliersTypeId,string SuppliersName ,string BusinessScope)
{
string Condition = "where FirmId='" + FirmId + "'";
if (!string.IsNullOrEmpty(CooperativeStateId))
{
Condition += string.Format(" and CooperativeStateId='{0}'", CooperativeStateId);
}
if (!string.IsNullOrEmpty(SuppliersLevelId))
{
Condition += string.Format(" and SuppliersLevelId='{0}'", SuppliersLevelId);
}
if (!string.IsNullOrEmpty(BusinessScope))
{
Condition += string.Format(" and BusinessScope like '%{0}%'", BusinessScope);
}
if (!string.IsNullOrEmpty(SuppliersName))
{
Condition += string.Format(" and Name like '%{0}%'", SuppliersName);
}
if (!string.IsNullOrEmpty(SuppliersTypeId))
{
Condition += string.Format(" and SuppliersTypeId='{0}'", SuppliersTypeId);
}
string selectTarget = @" a.* ,b.Name as CooperativeStateName " +
" ,c.Name as SuppliersLevelName " +
" ,e.Name as SuppliersTypeName ";
string fromSource = " (SELECT * FROM dbo.OA_Suppliers " + Condition + ") as a " +
"left join Sys_Dictionary as b on a.CooperativeStateId=b.Keyid " +
"left join Sys_Dictionary as c on a.SuppliersLevelId=c.Keyid " +
"left join Sys_Dictionary as e on a.SuppliersTypeId=e.Keyid ";
return _dataBase.SelectModelPage(pa, selectTarget, fromSource, "a.OrderNum ");
}
///
/// 返回table类型的所有列表
///
///
///
public DataTable getSupplierTable(Guid FirmId)
{
string selectTarget = " * ";
string fromSource = " OA_Suppliers where FirmId='" + FirmId + "' and CooperativeStateId = 190 ";
return _dataBase.SelectModel(selectTarget, fromSource);
}
///
/// 获取单个供应商
///
///
///
public Model.OA_Suppliers getSingleSupplier(string Keyid) {
string selectTarget = @" a.* ,b.Name as CooperativeStateName " +
" ,c.Name as SuppliersLevelName " +
" ,e.Name as SuppliersTypeName ";
string fromSource = " (SELECT * FROM dbo.OA_Suppliers where Keyid='"+Keyid+"') as a " +
"left join Sys_Dictionary as b on a.CooperativeStateId=b.Keyid " +
"left join Sys_Dictionary as c on a.SuppliersLevelId=c.Keyid " +
"left join Sys_Dictionary as e on a.SuppliersTypeId=e.Keyid ";
return _dataBase.SelectModel(selectTarget, fromSource)[0];
}
}
}