/// <summary> /// 保存字典对象 /// </summary> /// <param name="cuObj"></param> /// <returns></returns> public int SaveORG_DICT(ORG_DICT cuObj) { try { int re = _repo.SaveValidate(cuObj); if (re < 0) { return(re);//重复 } else { if (cuObj.ID == Guid.Empty) // 新增 { cuObj.ID = Guid.NewGuid(); re = (int)_repo.Insert(cuObj); } else { re = _repo.Update(cuObj); } } return(re); } catch (Exception) { return(-1); } }
/// <summary> /// 检查字典的重复性:同一个公司同一个父级相同名称或值不能重复 /// </summary> /// <param name="cuObj"></param> /// <returns></returns> public int SaveValidate(ORG_DICT cuObj) { string sql = @"SELECT count([ID]) FROM [ORG_DICT] where DICT_VALUE=@DICT_VALUE and ID<>@ID AND ORG_ID=@ORG_ID AND PARENT_ID=@PARENT_ID"; var cuo = base.Get <int>(sql, new { DICT_VALUE = cuObj.DICT_VALUE, ID = cuObj.ID, ORG_ID = cuObj.ORG_ID, PARENT_ID = cuObj.PARENT_ID }); if (cuo > 0) { return(-2); } sql = @"SELECT count([ID]) FROM [ORG_DICT] where DICT_CODE=@DICT_CODE and ID<>@ID AND ORG_ID=@ORG_ID AND PARENT_ID=@PARENT_ID"; cuo = base.Get <int>(sql, new { DICT_CODE = cuObj.DICT_CODE, ID = cuObj.ID, ORG_ID = cuObj.ORG_ID, PARENT_ID = cuObj.PARENT_ID }); if (cuo > 0) { return(-3); } return(0); }