public static ReimburseItem ConvertTo(ReimburseItemEntity entity) { ReimburseItem reimburseItem = new ReimburseItem((ReimburseTypeEnum)entity.ReimburseType, entity.TotalCost, entity.ProjectName); reimburseItem.ReimburseItemID = entity.PKID; reimburseItem.ConsumePlace = entity.ConsumePlace; reimburseItem.Reason = entity.Reason; reimburseItem.CustomerID = entity.CustomerID; reimburseItem.CurrencyType = entity.CurrencyType; reimburseItem.CustomerName = entity.CustomerName; reimburseItem.ExchangeRate = entity.ExchangeRate; reimburseItem.ExchangeRateName = entity.ExchangeRateName; return(reimburseItem); }
private void CalculateEmployeeReimburse(EmployeeReimburseStatistics employeeReimburseStatistics, int employeeID, DateTime startDt, DateTime endDt) { List <string> itemList = ReimburseItem.GetReimburseTypeEnumListTravel(); //查找某时间段,某员工的报销结束的报销单 List <Model.Reimburse> reimburseList = _DalReimburse.GetReimburseByEmployeeIDBillingTime(employeeID, startDt, endDt); if (reimburseList == null || reimburseList.Count == 0) { return; } //循环每一个需要统计的项,累加结果 for (int i = 0; i < itemList.Count; i++) { List <Model.Reimburse> reimburseItemList = Model.Reimburse.FindReimburseByType(reimburseList, itemList[i]); if (reimburseItemList == null || reimburseItemList.Count == 0) { continue; } List <Model.Reimburse> reimburseadded = new List <Model.Reimburse>(); foreach (Model.Reimburse reimburse in reimburseItemList) { foreach (ReimburseItem reimburseItem in reimburse.ReimburseItems) { employeeReimburseStatistics.EmployeeReimburseStatisticsItemList[i].CalculateValue += reimburseItem.ExchangeCost; } if (reimburse.ReimburseCategoriesEnum == ReimburseCategoriesEnum.TravelReimburse) { if (!Contains(reimburseadded, reimburse.ReimburseID)) { employeeReimburseStatistics.EmployeeReimburseStatisticsItemList[i].CalculateValue += reimburse.OutCityAllowance; reimburseadded.Add(reimburse); } } } } }