protected void InsertOrUpdate(QuestionManageView objModal, string id) { if (string.IsNullOrEmpty(id) || id == "0") { _objService.InsertView(objModal); } else { int Id = int.Parse(id); var question = _objService.Repository.Entities.Where(x => x.Id == Id).AsNoTracking().FirstOrDefault(); //能进来就代表是追加提问 objModal.Status = question != null && question.Status.Equals("未回答") ? "未回答" : "追加提问"; //更新主表问题状态 var lst = new List <string>() { "Status" }; _BaseService.UpdateView(objModal, lst); //往子表插入数据 var questionSubView = new QuestionSubView() { Type = "Q", QuestionId = Id, Content = objModal.Question, UserName = objModal.QUserName, ImageIdList = objModal.ImageIdList }; _objQuetisonSubService.InsertView(questionSubView); } }
public override int InsertView <T>(T objModalSrc) { int iRet; var objView = objModalSrc as QuestionManageView; var question = objView.MapTo <QuestionManage>(); if (objView == null) { return(-1); } question.ReadCount = 0; iRet = Repository.Insert(question); objView.Id = question.Id; //冗余主表记录到子表里 var questionSubView = new QuestionSubView() { Type = "Q", QuestionId = objView.Id, Content = objView.Question, UserName = objView.QUserName, ImageIdList = objView.ImageIdList }; _objQuetisonSubService.InsertView(questionSubView); return(iRet); }
public override int UpdateView <T>(T objModalSrc) { int iRet; var objModal = objModalSrc as QuestionManageView; if (objModal == null) { return(-1); } int Id = objModal.Id; var question = Repository.Entities.Where(x => x.Id == Id).AsNoTracking().FirstOrDefault(); //是否更新主表(只有未回答或者未开单的时候才更新回答者和回答日期,否则只更新状态) if (question != null && question.Status.IndexOf("未") > -1) { objModal.AnswerDate = DateTime.Now; var lst = new List <string>() { "Status", "AnswerDate", "AUsername", "Answer" }; base.UpdateView(objModal, lst); } else { if (question.Status.IndexOf("已开单") > -1) { var lst = new List <string>() { "Status", "Answer" }; base.UpdateView(objModal, lst); } else { var lst = new List <string>() { "Status" }; base.UpdateView(objModal, lst); } } //冗余主表记录到子表里 var questionSubView = new QuestionSubView() { Type = "A", QuestionId = objModal.Id, Content = objModal.Answer, UserName = objModal.AUsername }; if (questionSubView == null) { return(-1); } iRet = _objQuetisonSubService.InsertView(questionSubView); return(iRet); }