public ActionResult <Edit> ActionResult([FromBody] Edit param) { if (param == null) { param = new Edit(); param._message = _localizer["No parameters."]; return(BadRequest(param)); } if (!TryValidateModel(param)) { param._message = _localizer["The input is incorrect."]; return(BadRequest(param)); } try { //更新前データを取得する var storeModel = (from a in _context.Groups where a.GroupId.Equals(param.GroupId) select a).FirstOrDefault(); if (storeModel == null) { param._message = _localizer["It has already been deleted."]; return(BadRequest(param)); } if (storeModel.Version != param.Version) { param._message = _localizer["Other people have been updated."]; return(BadRequest(param)); } ReflectionUtility.Model2Model(param, storeModel); storeModel.GroupName = param.GroupName; storeModel.Updated = DateTime.Now; storeModel.Version += 1; //更新 _context.Groups.Update(storeModel); //検索 var list = (from a in _context.GroupTusers where a.GroupId.Equals(param.GroupId) select a).ToList(); _context.GroupTusers.RemoveRange(list); //グループユーザを登録する。 foreach (var user in param.SelectList) { if (user.IsSelect) { var gt = new GroupTuser(); ReflectionUtility.Model2Model(user, gt); gt.Registed = DateTime.Now; gt.Updated = DateTime.Now; gt.Version = 1; _context.GroupTusers.Add(gt); } } _context.SaveChanges(); return(Ok(param)); } catch (Exception ex) { param._message = _localizer["System error Please inform system personnel.({0})", ex.Message]; return(BadRequest(param)); } }
public ActionResult <Create> Insert([FromBody] Create param) { if (param == null) { param = new Create(); param._message = _localizer["No parameters."]; return(BadRequest(param)); } if (!TryValidateModel(param)) { param._message = _localizer["The input is incorrect."]; return(BadRequest(param)); } try { var storeModel = new Group(); ReflectionUtility.Model2Model(param, storeModel); storeModel.GroupId = Guid.NewGuid().ToString(); //model.PurchaseDate = ((DateTime)model.PurchaseDate).D; //model.ExpirationDate = ((DateTime)model.ExpirationDate).Date; //model.SatusId = "stage1"; //model.Owner = Context.User.Identity.Name; //storeModel.Type = "select"; storeModel.Registed = DateTime.Now; storeModel.Updated = DateTime.Now; storeModel.Version = 1; //登録 _context.Groups.Add(storeModel); //グループユーザを登録する。 foreach (var user in param.SelectList) { if (user.IsSelect) { var gt = new GroupTuser(); //ReflectionUtility.Model2Model(user, gt); //gt.GroupTuserId = Guid.NewGuid().ToString(); gt.GroupId = storeModel.GroupId; gt.TuserId = user.TuserId; gt.Registed = DateTime.Now; gt.Owner = HttpContext.User.Identity.Name; gt.Updated = DateTime.Now; gt.Updater = HttpContext.User.Identity.Name; gt.Version = 1; _context.GroupTusers.Add(gt); } } _context.SaveChanges(); return(Ok(param)); } catch (Exception ex) { param._message = _localizer["System error Please inform system personnel.({0})", ex.Message]; return(BadRequest(param)); } }