public async Task <JsonResult> AddStaff(VmStaff staff) { var ret = new VM_JsonOnlyResult(); var modelState = (new VmStaffValidator()).Validate(staff); if (!modelState.IsValid) { ret.Value = -1001; ret.Err = string.Join("<br>", modelState.Errors.Select(m => m.ErrorMessage)); return(await Task.FromResult(Json(ret))); } var errorMsg = ""; m_UserManagerService.PreOnAddHandler = () => { var retCheck = true; if (m_UserManagerService.UserIsExists(staff.NagigatedDomainObject.Name)) { errorMsg += "用户名已存在,请重新输入!"; retCheck = false; } if (m_UserManagerService.UserIdCardIsExists(staff.NagigatedDomainObject.IdCard)) { errorMsg += "$身份证号已存在,请重新输入!"; retCheck = false; } return(retCheck); }; var dep = m_DepartmentManagerService.GetDepartment(staff.NagigatedDomainObject.DepartmentName); staff.NagigatedDomainObject.DepartmentId = dep?.ID; var role = m_UserManagerService.GetRole(staff.NagigatedDomainObject.Role.Name); staff.NagigatedDomainObject.Role = role; staff.NagigatedDomainObject.RoleId = role?.ID; var added = await m_UserManagerService.AddObject(staff.NagigatedDomainObject, true); if (added == AppServiceExecuteStatus.Success) { ret.Value = staff.NagigatedDomainObject.ID; ret.Result = true; return(Json(ret)); } ret.Err = errorMsg.Trim('$').Replace("$", "<br>");//string.Format(added.ToDescription(), "员工信息已存在"); if (string.IsNullOrEmpty(ret.Err)) { ret.Err = string.Format(added.ToDescription(), "员工信息添加失败"); } return(Json(ret)); }
public async Task <JsonResult> UpdateStaff(VmStaff staff) { var ret = new VM_JsonOnlyResult(); var modelState = (new VmStaffValidator()).Validate(staff); if (!modelState.IsValid) { ret.Value = -1001; ret.Err = string.Join("<br>", modelState.Errors.Select(m => m.ErrorMessage)); return(await Task.FromResult(Json(ret))); } var errorMsg = ""; m_UserManagerService.PreOnUpdateHandler = () => { //var selfUser = m_UserManagerService.GetUser(staff.NagigatedDomainObject.ID); //if (selfUser == null) // return null; //var otherUser = m_UserManagerService.GetUser(staff.NagigatedDomainObject.Name); //if (otherUser == null || otherUser.ID == selfUser.ID) // return selfUser; var existUserName = m_UserManagerService.UserIsExists(staff.NagigatedDomainObject.Name, staff.NagigatedDomainObject.ID); if (existUserName) { errorMsg += "用户名已存在,请重新输入!"; } var existIdCard = m_UserManagerService.UserIdCardIsExists(staff.NagigatedDomainObject.IdCard, staff.NagigatedDomainObject.ID); if (existIdCard) { errorMsg += "$身份证号已存在,请重新输入!"; } if (!existUserName && !existIdCard) { return(m_UserManagerService.GetUser(staff.NagigatedDomainObject.ID)); } return(null); }; m_UserManagerService.OnUpdatingHandler = (existOject, newObject) => { var n = VmPersonMapper.MapTo(((Person)newObject), (Person)existOject); var dep = m_DepartmentManagerService.GetDepartment(staff.NagigatedDomainObject.DepartmentName); n.DepartmentId = dep?.ID; var role = m_UserManagerService.GetRole(staff.NagigatedDomainObject.Role.Name); n.Role = role; n.RoleId = role?.ID; }; var updatedRet = await m_UserManagerService.UpdateObject(staff.NagigatedDomainObject, true); if (updatedRet == AppServiceExecuteStatus.Success) { ret.Value = staff.NagigatedDomainObject.ID; ret.Result = true; return(Json(ret)); } ret.Err = errorMsg.Trim('$').Replace("$", "<br>"); if (string.IsNullOrEmpty(ret.Err)) { ret.Err = string.Format(updatedRet.ToDescription(), "更新员工信息失败"); } return(Json(ret)); }