using System;
|
using System.Collections.Generic;
|
using System.Linq;
|
using System.Text;
|
using CY.IDAL.Inquiry;
|
using AbstractFactory;
|
using CY.Model;
|
using CY.Model.Inquiry;
|
|
namespace CY.BLL.Inquiry
|
{
|
/// <summary>
|
/// 模切费业务逻辑类
|
/// </summary>
|
public class CuttingCostBLL
|
{
|
ICuttingCostDAL _iCuttingCostDAL = null;
|
|
public CuttingCostBLL()
|
{
|
_iCuttingCostDAL = Factory.GetDALByInterfaceName(DALInterface.ICuttingCostDAL) as ICuttingCostDAL;
|
}
|
|
/// <summary>
|
/// 获取模切费价格列表
|
/// </summary>
|
/// <param name="firmId"></param>
|
/// <param name="customerId"></param>
|
/// <returns></returns>
|
public IList<Inquiry_CuttingCost> GetModelList(Guid inquiryId, int printingTyId, bool isByPapersize)
|
{
|
return _iCuttingCostDAL.GetModelList(inquiryId, printingTyId, isByPapersize);
|
}
|
|
/// <summary>
|
/// 保存模切费价格列表
|
/// </summary>
|
/// <param name="list"></param>
|
/// <param name="firmId"></param>
|
/// <param name="customerId"></param>
|
/// <returns></returns>
|
public bool SaveModelList(IList<Inquiry_CuttingCost> list, InquiryCondition inquiryCondition, int printingTyId, bool isByPapersize)
|
{
|
return _iCuttingCostDAL.SaveModelList(list,inquiryCondition, printingTyId, isByPapersize);
|
}
|
|
/// <summary>
|
/// 获取模切费
|
/// </summary>
|
/// <param name="printingTyId"></param>
|
/// <param name="pageSizeValue"></param>
|
/// <param name="inquiryId"></param>
|
/// <returns></returns>
|
public Inquiry_CuttingCost GetModel(int printingTyId, int pageSizeValue, Guid inquiryId)
|
{
|
IList<Inquiry_CuttingCost> list = GetModelList(inquiryId, printingTyId,true);
|
Inquiry_CuttingCost model = list.Single<Inquiry_CuttingCost>(p => p.ShowId == pageSizeValue) as Inquiry_CuttingCost;
|
return model;
|
}
|
|
/// <summary>
|
/// 获取模切费价格
|
/// </summary>
|
/// <param name="printingTyId"></param>
|
/// <param name="pageSizeValue"></param>
|
/// <param name="inquiryId"></param>
|
/// <returns></returns>
|
public decimal GetCuttingPrice(int printingTyId, int pageSizeValue, int printCount, Guid inquiryId)
|
{
|
decimal price = 0;
|
Inquiry_CuttingCost model = GetModel(printingTyId, pageSizeValue, inquiryId);
|
if(model!=null)
|
{
|
price = model.Price * printCount;
|
if (price <= model.StartPrice)
|
price = model.StartPrice;
|
price += model.PlatemakPrice;
|
}
|
return price;
|
}
|
|
/// <summary>
|
/// 获取信封的模切费
|
/// </summary>
|
/// <param name="printingTyId"></param>
|
/// <param name="envelopeModeTypeId"></param>
|
/// <param name="inquiryId"></param>
|
/// <returns></returns>
|
public Inquiry_CuttingCost GetModelByEnvelope(int printingTyId, int envelopeModeTypeId, Guid inquiryId)
|
{
|
IList<Inquiry_CuttingCost> list = GetModelList(inquiryId, printingTyId, false);
|
Inquiry_CuttingCost model = list.Single<Inquiry_CuttingCost>(p => p.ShowId == envelopeModeTypeId) as Inquiry_CuttingCost;
|
return model;
|
}
|
|
/// <summary>
|
/// 获取信封的模切费
|
/// </summary>
|
/// <param name="printingTyId"></param>
|
/// <param name="pageSizeValue"></param>
|
/// <param name="inquiryId"></param>
|
/// <returns></returns>
|
public decimal GetCuttingPriceByEnvelope(int printingTyId, int envelopeModeTypeId, int printCount, Guid inquiryId)
|
{
|
decimal price = 0;
|
Inquiry_CuttingCost model = GetModelByEnvelope(printingTyId, envelopeModeTypeId, inquiryId);
|
if (model != null)
|
{
|
price = model.Price * printCount;
|
if (price <= model.StartPrice)
|
price = model.StartPrice;
|
price += model.PlatemakPrice;
|
}
|
return price;
|
}
|
}
|
}
|