public EO_EmployeeTitleDataTable EoEmployeeTitle_create(int rowCount = 1) { var dt = new EO_EmployeeTitleDataTable(); if (rowCount < 0) { rowCount = 0; } for (int i = 0; i < rowCount; i++) { var row = dt.newTypedRow(); row.ns_AssignNewId(); dt.addTypedRow(row); } return(dt); }
private void link_EOET_InUse_XX(EO_EmployeeTitleDataTable dt) { var pks = dt.getPrimaryKeys(); var qrydb = new NsDbQuery(); qrydb.setSelect(s => { var t1 = s.from <EO_Employee>(); s.select(t1.EOE_EmployeeTitleId); s.Where = t1.EOE_EmployeeTitleId.batchin(pks.toConstReq1()); s.groupBy(s.Selects[0]); }); var dt2 = qrydb.queryData(); dt2.Constraints.Add("PK", dt2.Columns[0], true); foreach (var row in dt) { var isUse = (dt2.Rows.Find(row.EOET_EmployeeTitleId) != null); row.EOET_InUse_XX = isUse ? "T" : "F"; row.EOET_InUseName_XX = isUse ? "使用中" : "未使用"; } }
public ActionResult Edit(FormCollection collection) { var token = collection["__RequestVerificationToken"]; var mode = collection["ViewMode"]; var id = collection[AppDataName.EOET_EmployeeTitleId]; var msgOK = "OK"; EO_EmployeeTitleDataTable dt = null; EO_EmployeeTitleRow row = null; try { if (mode.equalIgnoreCase("create")) { dt = EoDataService.Instance.EoEmployeeTitle_create(); msgOK = FtdStatus.InsertSuccess.ToString(); } else { //找出該筆資料 dt = EoDataService.Instance.EoEmployeeTitle_getById(id); if (dt == null || dt.Count == 0) { return(Json(new { Result = jTable_ERROR_CODE, Message = "資料不存在" })); } msgOK = FtdStatus.UpdateSuccess.ToString(); } //將Form sumit的資料更新至DataRow row = dt.FirstRow; var isOK = this.TryUpdateModel(row); //若驗證失敗-->回傳錯誤訊息 if (!ModelState.IsValid) { var errors = ModelState.Values.Where(x => x.Errors.Count > 0).SelectMany(x => x.Errors.Select(y => y.ErrorMessage)).ToArray(); return(Json(new { Result = jTable_ERROR_CODE, Message = string.Join("<br/>", errors) })); } #region //驗證欄位 List <string> lstError = new List <string>(); if (row.EOET_EmployeeTitleId.isNullOrEmpty()) { lstError.Add("職稱ID不能為空"); } //if (row.EOET_TitleCode.isNullOrEmpty()) //{ // lstError.Add("職稱代號不能為空"); //} if (row.EOET_TitleName.isNullOrEmpty()) { lstError.Add("職稱名稱不能為空"); } //if (!row.EOET_ListOrder.HasValue) //{ // lstError.Add("職稱順序不能為空"); //} if (row.EOET_ListOrder.ToString() == "") { //取得順序最大值 var ListOrder = EoDataService.Instance.EoEmployeeTitle_getListOrderMax(); row.EOET_ListOrder = ListOrder; row.EOET_TitleCode = "EOET_" + ListOrder; } //回傳錯誤訊息 if (lstError.Count > 0) { return(Json(new { Result = jTable_ERROR_CODE, Message = string.Join("<br/>", lstError.ToArray()) })); } //檢查鍵值是否重覆 if (EoDataService.Instance.EoEmployeeTitle_checkDuplicate(row.EOET_EmployeeTitleId, row.EOET_TitleCode)) { return(Json(new { Result = jTable_ERROR_CODE, Message = "職稱代號已存在" })); } #endregion dt.ns_update(); dt.AcceptChanges(); return(Json(new { Result = msgOK })); } catch (Exception ex) { return(Json(new { Result = jTable_ERROR_CODE, Message = ex.Message })); } }