using Model; using System; using System.Linq; namespace BLL { public class SESReportService { /// /// 根据主键获取数据 /// /// /// public static Model.FC_SESReport GetSESReportById(string id) { return Funs.DB.FC_SESReport.FirstOrDefault(e => e.ID == Convert.ToInt32(id)); } public static Model.FC_SESReport GetSESReportBySESNo(string sesNo) { return Funs.DB.FC_SESReport.FirstOrDefault(e => e.SES_No == sesNo); } /// /// 增加 /// /// public static void AddSESReport(Model.FC_SESReport sesReport) { Model.FC_SESReport newSESReport = new Model.FC_SESReport(); newSESReport.ID = sesReport.ID; newSESReport.SES_No = sesReport.SES_No; newSESReport.Short_Descrption = sesReport.Short_Descrption; newSESReport.Start_Date = sesReport.Start_Date; newSESReport.End_Date = sesReport.End_Date; newSESReport.Created_by = sesReport.Created_by; newSESReport.Created_on = sesReport.Created_on; newSESReport.TECO_Date = sesReport.TECO_Date; newSESReport.TECO_Format = sesReport.TECO_Format; newSESReport.Requisitioner = sesReport.Requisitioner; newSESReport.FO = sesReport.FO; newSESReport.Item = sesReport.Item; newSESReport.Vendor_Name = sesReport.Vendor_Name; newSESReport.Discipline = sesReport.Discipline; newSESReport.SSR_budget = sesReport.SSR_budget; newSESReport.Currency = sesReport.Currency; newSESReport.Contractor_quotation = sesReport.Contractor_quotation; newSESReport.SSR_Actual_cost = sesReport.SSR_Actual_cost; newSESReport.Cost_checker = sesReport.Cost_checker; newSESReport.Tax_rate = sesReport.Tax_rate; newSESReport.Changed_by = sesReport.Changed_by; newSESReport.Deviation = sesReport.Deviation; newSESReport.Deviation_Percentage = sesReport.Deviation_Percentage; newSESReport.Overrun = sesReport.Overrun; newSESReport.Long_text = sesReport.Long_text; newSESReport.Work_Order = sesReport.Work_Order; newSESReport.Function_location = sesReport.Function_location; newSESReport.Main_work_center = sesReport.Main_work_center; newSESReport.Work_Center = sesReport.Work_Center; newSESReport.Dep = sesReport.Dep; newSESReport.Section = sesReport.Section; newSESReport.Cost_center = sesReport.Cost_center; newSESReport.WBS = sesReport.WBS; newSESReport.Network = sesReport.Network; newSESReport.TODAY = sesReport.TODAY; newSESReport.Claim_sheets_receive = sesReport.Claim_sheets_receive; newSESReport.CS_REC_Format = sesReport.CS_REC_Format; newSESReport.No_SUBM_To_today = sesReport.No_SUBM_To_today; newSESReport.Contractor_duration = sesReport.Contractor_duration; newSESReport.Engineer_confirmed_o = sesReport.Engineer_confirmed_o; newSESReport.ENG_CONF_Format = sesReport.ENG_CONF_Format; newSESReport.No_BoQ_CONF_to_today = sesReport.No_BoQ_CONF_to_today; newSESReport.BoQ_confirmation_dur = sesReport.BoQ_confirmation_dur; newSESReport.SES_Confirmed_on = sesReport.SES_Confirmed_on; newSESReport.SES_CONF_Format = sesReport.SES_CONF_Format; newSESReport.No_SES_to_today = sesReport.No_SES_to_today; newSESReport.Settlement_duration = sesReport.Settlement_duration; newSESReport.Invoiced_on = sesReport.Invoiced_on; newSESReport.Invoice_duration = sesReport.Invoice_duration; newSESReport.Payment_made_on = sesReport.Payment_made_on; newSESReport.Payment_duration = sesReport.Payment_duration; newSESReport.DateIn = sesReport.DateIn; newSESReport.Remark1 = sesReport.Remark1; newSESReport.Remark2 = sesReport.Remark2; newSESReport.Accepted = sesReport.Accepted; newSESReport.Deleted = sesReport.Deleted; newSESReport.Blocked = sesReport.Blocked; Funs.DB.FC_SESReport.InsertOnSubmit(newSESReport); Funs.DB.SubmitChanges(); } /// /// 修改 /// /// public static void UpdateSESReport(FC_SESReport sesReport) { Model.FC_SESReport newSESReport = Funs.DB.FC_SESReport.FirstOrDefault(e => e.ID == sesReport.ID); if (newSESReport!=null) { newSESReport.SES_No = sesReport.SES_No; newSESReport.Short_Descrption = sesReport.Short_Descrption; newSESReport.Start_Date = sesReport.Start_Date; newSESReport.End_Date = sesReport.End_Date; newSESReport.Created_by = sesReport.Created_by; newSESReport.Created_on = sesReport.Created_on; newSESReport.TECO_Date = sesReport.TECO_Date; newSESReport.TECO_Format = sesReport.TECO_Format; newSESReport.Requisitioner = sesReport.Requisitioner; newSESReport.FO = sesReport.FO; newSESReport.Item = sesReport.Item; newSESReport.Vendor_Name = sesReport.Vendor_Name; newSESReport.Discipline = sesReport.Discipline; newSESReport.SSR_budget = sesReport.SSR_budget; newSESReport.Currency = sesReport.Currency; newSESReport.Contractor_quotation = sesReport.Contractor_quotation; newSESReport.SSR_Actual_cost = sesReport.SSR_Actual_cost; newSESReport.Cost_checker = sesReport.Cost_checker; newSESReport.Tax_rate = sesReport.Tax_rate; newSESReport.Changed_by = sesReport.Changed_by; newSESReport.Deviation = sesReport.Deviation; newSESReport.Deviation_Percentage = sesReport.Deviation_Percentage; newSESReport.Overrun = sesReport.Overrun; newSESReport.Long_text = sesReport.Long_text; newSESReport.Work_Order = sesReport.Work_Order; newSESReport.Function_location = sesReport.Function_location; newSESReport.Main_work_center = sesReport.Main_work_center; newSESReport.Work_Center = sesReport.Work_Center; newSESReport.Dep = sesReport.Dep; newSESReport.Section = sesReport.Section; newSESReport.Cost_center = sesReport.Cost_center; newSESReport.WBS = sesReport.WBS; newSESReport.Network = sesReport.Network; newSESReport.TODAY = sesReport.TODAY; newSESReport.Claim_sheets_receive = sesReport.Claim_sheets_receive; newSESReport.CS_REC_Format = sesReport.CS_REC_Format; newSESReport.No_SUBM_To_today = sesReport.No_SUBM_To_today; newSESReport.Contractor_duration = sesReport.Contractor_duration; newSESReport.Engineer_confirmed_o = sesReport.Engineer_confirmed_o; newSESReport.ENG_CONF_Format = sesReport.ENG_CONF_Format; newSESReport.No_BoQ_CONF_to_today = sesReport.No_BoQ_CONF_to_today; newSESReport.BoQ_confirmation_dur = sesReport.BoQ_confirmation_dur; newSESReport.SES_Confirmed_on = sesReport.SES_Confirmed_on; newSESReport.SES_CONF_Format = sesReport.SES_CONF_Format; newSESReport.No_SES_to_today = sesReport.No_SES_to_today; newSESReport.Settlement_duration = sesReport.Settlement_duration; newSESReport.Invoiced_on = sesReport.Invoiced_on; newSESReport.Invoice_duration = sesReport.Invoice_duration; newSESReport.Payment_made_on = sesReport.Payment_made_on; newSESReport.Payment_duration = sesReport.Payment_duration; newSESReport.DateIn = sesReport.DateIn; newSESReport.Remark1 = sesReport.Remark1; newSESReport.Remark2 = sesReport.Remark2; newSESReport.Accepted = sesReport.Accepted; newSESReport.Deleted = sesReport.Deleted; newSESReport.Blocked = sesReport.Blocked; Funs.DB.SubmitChanges(); } } /// /// 根据主键删除数据 /// /// public static void DeleteSESReportById(string id) { Model.FC_SESReport SESReport = Funs.DB.FC_SESReport.FirstOrDefault(e => e.ID == Convert.ToInt32(id)); if (SESReport!=null) { Funs.DB.FC_SESReport.DeleteOnSubmit(SESReport); Funs.DB.SubmitChanges(); } } /// /// 根据合同号删除SES /// /// public static void DeleteSESReportByFO(string fo) { var ses = (from x in Funs.DB.FC_SESReport where x.FO == fo select x).ToList(); if (ses!=null) { Funs.DB.FC_SESReport.DeleteAllOnSubmit(ses); Funs.DB.SubmitChanges(); } } /// /// 判断SES_NO是否存在 /// /// /// /// public static bool IsExistSES_No(string SES_No) { bool isExist = false; var fono = Funs.DB.FC_SESReport.FirstOrDefault(x => x.SES_No == SES_No); if (fono != null) { isExist = true; } return isExist; } public static decimal? getSumSSRActualCostByFo(string fo) { return (from x in Funs.DB.FC_SESReport where x.FO == fo select x.SSR_Actual_cost).Sum(); } } }