public JsonResult VersionDetailEdit(IEnumerable <ApplyStageVersionDetailWrap> ajaxData) { if (ajaxData == null) { return(Json(new { SaveResult = false })); } //从数据库中把Stages 全部读取出来 IEnumerable <ApplyStagesEntity> applyStages = repository.ApplyStages; //将要存储到数据库中的List List <ApplyStageVersionDetailEntity> versionDetails = new List <ApplyStageVersionDetailEntity>(); ApplyStagesEntity currentStage = null; //将列表按父阶段的StageNo进行排序 ajaxData = ajaxData.OrderBy(w => w.ParentVersionDetail.StageNo); foreach (ApplyStageVersionDetailWrap versionDetailWrap in ajaxData) { currentStage = applyStages.Single(a => a.StageNo == versionDetailWrap.ParentVersionDetail.StageNo); versionDetailWrap.ParentVersionDetail.DetailID = Guid.NewGuid(); versionDetailWrap.ParentVersionDetail.StageNameEn = currentStage.StageNameEn; versionDetailWrap.ParentVersionDetail.ChildStage = currentStage.ChildStage; versionDetailWrap.ParentVersionDetail.ParentNo = currentStage.ParentNo; versionDetailWrap.ParentVersionDetail.StatusOption = currentStage.StatusOption; versionDetailWrap.ParentVersionDetail.BeginOption = currentStage.BeginOption; versionDetailWrap.ParentVersionDetail.EndOption = currentStage.EndOption; foreach (ApplyStageVersionDetailEntity childDetail in versionDetailWrap.ChildVersionDetails) { currentStage = applyStages.Single(a => a.StageNo == childDetail.StageNo); childDetail.DetailID = Guid.NewGuid(); childDetail.StageNameEn = currentStage.StageNameEn; childDetail.ChildStage = currentStage.ChildStage; childDetail.ParentNo = currentStage.ParentNo; childDetail.StatusOption = currentStage.StatusOption; childDetail.BeginOption = currentStage.BeginOption; childDetail.EndOption = currentStage.EndOption; } versionDetails.Add(versionDetailWrap.ParentVersionDetail); versionDetails.AddRange(versionDetailWrap.ChildVersionDetails); } repository.SaveApplyStageVersionDetails(versionDetails); return(Json(new { SaveResult = true })); }
/// <summary> /// 将ApplyStageEntity 转换为 ApplyStageVersionDetailEntity /// </summary> /// <param name="detailID">DetailID</param> /// <param name="versionID">VersionID</param> /// <param name="stageEntity">ApplyStageEntity的数据</param> /// <returns></returns> public ApplyStageVersionDetailEntity TranStageToDetail(Guid detailID, Guid versionID, ApplyStagesEntity stageEntity) { return(new ApplyStageVersionDetailEntity { DetailID = detailID, VersionID = versionID, StageNo = stageEntity.StageNo, StageName = stageEntity.StageName, StageClass = stageEntity.StageClass, ParentNo = stageEntity.ParentNo, IsForbid = stageEntity.IsForbid, StatusOption = stageEntity.StatusOption, BeginOption = stageEntity.BeginOption, EndOption = stageEntity.EndOption, BeginDate = stageEntity.BeginDate, EndDate = stageEntity.EndDate, IsDateSameWithParent = stageEntity.IsDateSameWithParent, ChildStage = stageEntity.ChildStage, ResponseRole = stageEntity.ResponseRole, IsCalBeginDate = stageEntity.IsCalBeginDate, IsCalEndDate = stageEntity.IsCalEndDate, CanForbid = stageEntity.CanForbid, CanChangeDate = stageEntity.CanChangeDate, CanChangeName = stageEntity.CanChangeName, Remark = stageEntity.Remark }); }