public async Task <JsonResult> SaveCompany(CreateOrUpdateCompanyInput model) { if (PermissionChecker.IsGranted("Pages.Company.EditCompany")) { try { var oldCompany = await _companyService.GetCompanyByUserId(model.CompanyEditDto.UserId); if (oldCompany == null || oldCompany.Id != model.CompanyEditDto.Id) { return(Json(new { success = false, msg = "不存在操作对象" })); } CheckModelState(); using (var unitWork = UnitOfWorkManager.Begin()) { await _companyService.UpdateCompanyAsync(model.CompanyEditDto); await _companyIndustryAppService.DeleteCompanyIndustryByCompanyIdAsync(model.CompanyEditDto.Id.Value); List <string> industryIds = model.CompanyEditDto.Industry.Split(',').ToList(); foreach (string industryId in industryIds) { CreateOrUpdateCompanyIndustryInput industryInput = new CreateOrUpdateCompanyIndustryInput(); CompanyIndustryEditDto dto = new CompanyIndustryEditDto() { CompanyId = model.CompanyEditDto.Id.Value, IndustryId = int.Parse(industryId) }; industryInput.CompanyIndustryEditDto = dto; await _companyIndustryAppService.CreateOrUpdateCompanyIndustryAsync(industryInput); } var relativeUser = _userAppService.Get(new EntityDto <long> { Id = model.CompanyEditDto.UserId }).Result; relativeUser.UserType = UserType.Company; if (model.CompanyAuthEditDto != null) { relativeUser.UserType = UserType.VipCompany; await _companyAuthAppService.CreateOrUpdateCompanyAuthAsync(new CreateOrUpdateCompanyAuthInput() { CompanyAuthEditDto = model.CompanyAuthEditDto }); } var user = _userAppService.UpdateUser(relativeUser); unitWork.Complete(); } return(Json(new { success = true, msg = "" })); } catch (Exception e) { return(Json(new { success = false, msg = "保存失败" })); } } return(Json(new { success = false, msg = "无操作权限" })); }