public void UpdateStatus(QuestionManageView obj) { var objModal = obj as QuestionManageView; if (objModal == null) { return; } 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 { var lst = new List <string>() { "Status" }; base.UpdateView(objModal, lst); } }
public void AddOrUpdateTestMethod() { ShimQuestionManageService.Constructor = d => { d.Repository = new Repository <QuestionManage, int>(new MockContent()); }; ShimQuestionImagesService.Constructor = d => { d.Repository = new Repository <QuestionImages, int>(new MockContent()); }; ShimQuestionImagesService.Constructor = d => { d.Repository = new Repository <QuestionImages, int>(new MockContent()); }; var questionManageService = new ShimQuestionManageService(new QuestionManageService()); QuestionManageView questionManage = new QuestionManageView(); questionManage.Id = 2; questionManage.AppId = 16; questionManage.Question = "来盘昆特牌吧"; questionManage.Answer = "村里还没有人能胜得了我"; questionManage.Status = "已回答"; questionManage.ReadCount = 120; questionManage.IsDeleted = false; questionManage.ImageIdList = "24,25,26"; int actual = questionManageService.Instance.InsertView <QuestionManageView>(null); int expected = -1; Assert.AreEqual(expected, actual); actual = questionManageService.Instance.UpdateView <QuestionManageView>(null); expected = -1; Assert.AreEqual(expected, actual); Mapper.CreateMap <QuestionManageView, QuestionManage>(); // 目标方法由于有其他service进行Insert操作,测试中断 //actual = questionManageService.Instance.InsertView<QuestionManageView>(questionManage); //expected = 1; //Assert.AreEqual(expected, actual); }
private int AddOrUpdate <T>(T objModalSrc, bool bolAdd) { QuestionManageView objView = objModalSrc as QuestionManageView; if (objView == null) { return(-1); } int iRet; var Question = objView.MapTo <QuestionManage>(); if (bolAdd) { Question.ReadCount = 0; iRet = Repository.Insert(Question); objView.Id = Question.Id; } else { iRet = Repository.Update(Question); } BaseService <QuestionImages> ser = new BaseService <QuestionImages>("CAAdmin"); if (!string.IsNullOrEmpty(objView.ImageIdList)) { foreach (var imageid in objView.ImageIdList.Split(',')) { if (!string.IsNullOrEmpty(imageid)) { QuestionImages qt = new QuestionImages(); qt.Id = int.Parse(imageid); qt.QuestionID = objView.Id; ser.Repository.Update(qt, new List <string>() { "QuestionID" }); } } } return(iRet); }