using System; using System.Collections.Generic; using System.Linq; using System.Text; using CY.IDAL.Inquiry; using CY.Model; using System.Transactions; using CY.Infrastructure.Common; using System.Data.SqlClient; using System.Data; namespace CY.SQLDAL { public class AdhesivePaperPriceDAL : IAdhesivePaperPriceDAL { public Database _dataBase = null; public AdhesivePaperPriceDAL() { _dataBase = new Database(); } public Model.Inquiry_AdhesivePaperPrice GetModel(Guid inquiry) { Inquiry_AdhesivePaperPrice model = null; string condition = " FirmId='" + inquiry.ToString() + "'"; IList list = _dataBase.SelectModel("*", "Inquiry_AdhesivePaperPrice",condition); if (list != null && list.Count > 0) { model = list[0]; } return model; } public bool SaveModel(Model.Inquiry_AdhesivePaperPrice model, Model.Inquiry.InquiryCondition inquiryCondition) { bool isSuccess = true; using (TransactionScope scope = new TransactionScope()) { if (inquiryCondition.ActualFirmId != Guid.Parse(UtilConst.AdminFirmId)) { //执行复制全部询价参数数据 if (inquiryCondition.IsFirstSave()) { new CommonInquiryHelper(_dataBase).CopyALLInquiryParameter(inquiryCondition); } isSuccess = UpdateModel(model); } else { isSuccess = SaveModel(model); } if (isSuccess) scope.Complete(); } return isSuccess; } public bool SaveModel(Inquiry_AdhesivePaperPrice model) { bool isSuccess = false; if (IsExits(model.FirmId)) { isSuccess = UpdateModel(model); } else { isSuccess = InserModel(model); } return isSuccess; } public bool IsExits(Guid firmId) { bool isExits = false; string condition = " firmId='" + firmId.ToString() + "'"; IList list = _dataBase.SelectModel("*", "Inquiry_AdhesivePaperPrice",condition); if (list != null && list.Count > 0) { isExits = true; } return isExits; } public bool InserModel(Infrastructure.Domain.IAggregateRoot model) { Model.Inquiry_AdhesivePaperPrice trueModel = model as Model.Inquiry_AdhesivePaperPrice; if (trueModel == null) { return false; } SqlParameter[] parameters = { new SqlParameter("@FirmId", SqlDbType.UniqueIdentifier,16), new SqlParameter("@Price", SqlDbType.Money,8), new SqlParameter("@Operater", SqlDbType.VarChar,20), new SqlParameter("@OperateTime", SqlDbType.DateTime), new SqlParameter("@LastUpdateTime", SqlDbType.DateTime) }; parameters[0].Value = trueModel.FirmId; parameters[1].Value = trueModel.Price; parameters[2].Value = trueModel.Operater; parameters[3].Value = trueModel.OperateTime; parameters[4].Value = trueModel.LastUpdateTime; try { _dataBase.Query("Inquiry_AdhesivePaperPrice_ADD", CommandType.StoredProcedure, parameters); } catch (Exception ex) { throw ex; } return true; } public bool UpdateModel(Infrastructure.Domain.IAggregateRoot model) { Model.Inquiry_AdhesivePaperPrice trueModel = model as Model.Inquiry_AdhesivePaperPrice; if (trueModel == null) { return false; } SqlParameter[] parameters = { new SqlParameter("@FirmId", SqlDbType.UniqueIdentifier,16), new SqlParameter("@Price", SqlDbType.Money,8), new SqlParameter("@Operater", SqlDbType.VarChar,20), new SqlParameter("@LastUpdateTime", SqlDbType.DateTime) }; parameters[0].Value = trueModel.FirmId; parameters[1].Value = trueModel.Price; parameters[2].Value = trueModel.Operater; parameters[3].Value = trueModel.LastUpdateTime; try { _dataBase.Query("Inquiry_AdhesivePaperPrice_Update", CommandType.StoredProcedure, parameters); } catch (Exception ex) { throw ex; } return true; } public bool DeleteModel(Infrastructure.Domain.IAggregateRoot model) { throw new NotImplementedException(); } } }