public JsonResult PostData(IList <FinanceQueryEntity> list) { ResultEntity result; var errorList = new List <FinanceEntityView>(); // 添加代码检查数据合理性 // 1. check所有的lillyID是否是在职的 //var allUsers = WeChatCommonService.lstUser; foreach (var l in list) { //var user = allUsers.FirstOrDefault(t => t.userid == l.LillyId); var financeQueryEntityView = (FinanceEntityView) new FinanceEntityView().ConvertAPIModel(l); try { //在LocalSAD做完之前,先不验证用户的合法性 //if (user == null) //{ // financeQueryEntityView.Error += "##System ID not found"; //} // TEA No 应该是TEA开头+9位数字 if (!(financeQueryEntityView.TEANO.StartsWith("TEA") && financeQueryEntityView.TEANO.Length == 12)) { financeQueryEntityView.Error += "不合法的TEANO<br/>"; } // 2. check当前导入的这些,有没有ContractNo+lillyID 和以前不同的,如果以前是空则通过 var s = _financeService.Repository.Entities.FirstOrDefault(t => t.TEANO == financeQueryEntityView.TEANO && t.LillyId != financeQueryEntityView.LillyId); if (s != null) { financeQueryEntityView.Error += "系统ID和TEANo不匹配<br/>"; } // 3. 日期在3个月之类 if (l.ReceiveDate.AddMonths(4) < DateTime.Now) { financeQueryEntityView.Error += "收单日期不能早于当前时间3个月<br/>"; } if (l.ReceiveDate > DateTime.Now) { financeQueryEntityView.Error += "收单日期不能晚于当前时间<br/>"; } } catch (Exception ex) { financeQueryEntityView.Error += "其他错误<br/>" + ex.Message; } if (!string.IsNullOrEmpty(financeQueryEntityView.Error)) { errorList.Add(financeQueryEntityView); } } if (errorList.Count > 0) { return(Json(new { sEcho = Request["draw"], aaData = errorList }, JsonRequestBehavior.AllowGet)); } try { result = _financeService.AddOrUpdate(list); } catch (Exception ex) { LogManager.GetLogger(this.GetType()).Debug(string.Format("Import Failed. The reason is", ex.Message)); return(ErrorNotification("导入失败 , 请检查本地数据源.")); throw; } return(Json(new { InsertCount = result.InsertCount, UpdateCount = result.UpdateCount }, JsonRequestBehavior.AllowGet)); }