using System; using System.Collections.Generic; using System.Linq; using System.Text; using CY.IDAL.Inquiry; using System.Transactions; using CY.Model; using System.Data.SqlClient; using System.Data; namespace CY.SQLDAL { /// /// 人像卡快速询价表操作接口--SQL实现 /// public class PortraitCardFastCostDAL : IPortraitCardFastCostDAL { Database _dataBase = null; public PortraitCardFastCostDAL() { _dataBase = new Database(); } public IList GetModelList(Guid inquiryId) { string selectTarget = @" Area,MinPrintCount,MaxPrintCount,Price,StartPrice,BracePrice, CASE WHEN MinPrintCount=0 AND MaxPrintCount=10 THEN '10张以下' WHEN MinPrintCount=11 AND MaxPrintCount=30 THEN '10-30张' WHEN MinPrintCount=31 AND MaxPrintCount=50 THEN '31-50张' WHEN MinPrintCount=51 AND MaxPrintCount=0 THEN '51张以上' END AS PrintCountName "; string fromSouce = " Inquiry_PortraitCardFastCost "; string condition = " FirmId='" + inquiryId.ToString() + "'"; IList result = _dataBase.SelectModel(selectTarget, fromSouce, condition); return result; } public bool SaveModelList(IList list, Model.Inquiry.InquiryCondition inquiryCondition) { bool isSuccess = true; using (TransactionScope scope = new TransactionScope()) { //执行复制全部询价参数数据 if (inquiryCondition.IsFirstSave()) { new CommonInquiryHelper(_dataBase).CopyALLInquiryParameter(inquiryCondition); } foreach (Inquiry_PortraitCardFastCost model in list) { isSuccess = UpdateModel(model); if (!isSuccess) break; } if (isSuccess) scope.Complete(); } return isSuccess; } public bool InserModel(Infrastructure.Domain.IAggregateRoot model) { throw new NotImplementedException(); } public bool UpdateModel(Infrastructure.Domain.IAggregateRoot model) { Inquiry_PortraitCardFastCost trueModel = model as Inquiry_PortraitCardFastCost; if (trueModel == null) { return false; } SqlParameter[] parameters = { new SqlParameter("@FirmId", SqlDbType.UniqueIdentifier,16), new SqlParameter("@Area", SqlDbType.VarChar,50), new SqlParameter("@MinPrintCount", SqlDbType.Int,4), new SqlParameter("@MaxPrintCount", SqlDbType.Int,4), new SqlParameter("@Price", SqlDbType.Money,8), new SqlParameter("@StartPrice", SqlDbType.Money,8), new SqlParameter("@BracePrice", SqlDbType.Money,8), new SqlParameter("@Operater", SqlDbType.VarChar,20), new SqlParameter("@LastUpdateTime", SqlDbType.DateTime)}; parameters[0].Value = trueModel.FirmId; parameters[1].Value = trueModel.Area; parameters[2].Value = trueModel.MinPrintCount; parameters[3].Value = trueModel.MaxPrintCount; parameters[4].Value = trueModel.Price; parameters[5].Value = trueModel.StartPrice; parameters[6].Value = trueModel.BracePrice; parameters[7].Value = trueModel.Operater; parameters[8].Value = trueModel.LastUpdateTime; try { _dataBase.Query("Inquiry_PortraitCardFastCost_Update", CommandType.StoredProcedure, parameters); } catch (Exception ex) { throw ex; } return true; } public bool DeleteModel(Infrastructure.Domain.IAggregateRoot model) { throw new NotImplementedException(); } } }