/// <summary> /// 添加计划指标明细 /// </summary> /// <param name="_BTargetPlan">计划指标</param> public void AddTargetPlanDetail(B_TargetPlan _BTargetPlan) { IList <B_TargetPlanDetail> listTargetPlanDetail = B_TargetplandetailOperator.Instance.GetTargetplandetailList(_BTargetPlan.ID); List <B_TargetPlanDetail> B_TargetPlanDetail = new List <B_TargetPlanDetail>(); if (listTargetPlanDetail.Count == 0) { A_TargetPlan ATargetPlan = A_TargetplanOperator.Instance.GetTargetplanList(Guid.Parse(ddlSystem.SelectedValue), FinYear).FirstOrDefault(); //如果A表有数据从A表取数据,否则取B表上一版本的数据。 if (ATargetPlan != null) { //从A表获取数据插入B表 _BTargetPlan.Description = ATargetPlan.Description; //月报说明 B_TargetplanOperator.Instance.UpdateTargetplan(_BTargetPlan); //更新月报说明 IList <A_TargetPlanDetail> listATargetPlanDetail = A_TargetplandetailOperator.Instance.GetTargetplandetailList(ATargetPlan.ID); // .Instance.GetAMonthlyreportdetailList(ATargetPlan.ID); if (listATargetPlanDetail.Count > 0) { foreach (A_TargetPlanDetail A_TargetPlanDetail in listATargetPlanDetail) { A_TargetPlanDetail.TargetPlanID = _BTargetPlan.ID; A_TargetPlanDetail.ID = Guid.NewGuid(); B_TargetPlanDetail.Add(A_TargetPlanDetail.ToBModel()); } } } else { B_TargetPlan BTargetPlan = B_TargetplanOperator.Instance.GetTargetPlanByProgressOrApproved(Guid.Parse(ddlSystem.SelectedValue), FinYear); if (BTargetPlan != null) { //从B表获取上一版本数据插入B表 IList <B_TargetPlanDetail> LastListBTargetPlanDetail = B_TargetplandetailOperator.Instance.GetTargetplandetailList(BTargetPlan.ID); // B_MonthlyreportdetailOperator.Instance.GetMonthlyreportdetailList(_BTargetPlan.ID); if (LastListBTargetPlanDetail.Count > 0) { foreach (B_TargetPlanDetail TargetPlanDetail in LastListBTargetPlanDetail) { TargetPlanDetail.TargetPlanID = _BTargetPlan.ID; TargetPlanDetail.ID = Guid.NewGuid(); B_TargetPlanDetail.Add(TargetPlanDetail); } } } } //判断当前B_TargetPlaID在明细表中是否有数据。 if (B_TargetPlanDetail.Count > 0) { _BTargetPlan.Status = 5; B_TargetplanOperator.Instance.UpdateTargetplan(_BTargetPlan); //更新计划指标表 B_TargetplandetailOperator.Instance.AddOrUpdateTargetPlanDetail(B_TargetPlanDetail, "Insert"); //更新计划指标明细表 } } }
public object FormatData(Guid SystemID, int FinYear, Guid TargetPlanID, bool IsLatestVersion) { object listBTargetPlanDetail = null; if (IsLatestVersion) { if (TargetPlanID == Guid.Empty) { B_TargetPlan _BTargetPlan = B_TargetplanOperator.Instance.GetTargetPlanByProgressOrApproved(SystemID, FinYear); if (_BTargetPlan != null) { listBTargetPlanDetail = B_TargetplandetailOperator.Instance.GetTargetplandetailList(_BTargetPlan.ID).ToList(); } } else { listBTargetPlanDetail = B_TargetplandetailOperator.Instance.GetTargetplandetailList(TargetPlanID).ToList(); } } else { if (TargetPlanID == Guid.Empty) { A_TargetPlan _ATargetPlan = A_TargetplanOperator.Instance.GetTargetplanList(SystemID, FinYear).FirstOrDefault(); if (_ATargetPlan != null) { listBTargetPlanDetail = A_TargetplandetailOperator.Instance.GetTargetplandetailList(_ATargetPlan.ID).ToList(); } } else { listBTargetPlanDetail = A_TargetplandetailOperator.Instance.GetTargetplandetailList(TargetPlanID).ToList(); } } return(listBTargetPlanDetail); }