public virtual async Task <IHttpActionResult> DeleteAsync([FromUri] EmployeeDeleteRequest request)
        {
            var result = await _employeeService.DeleteAsync(a => a.Id == request.Id);

            if (result > 0)
            {
                return(Succeed(result, "删除成功"));
            }
            else
            {
                return(Fail("删除失败"));
            }
        }
        public async Task ShouldDeleteEmployee()
        {
            var employeeId = Guid.NewGuid();
            var request    = new EmployeeDeleteRequest()
            {
                EmployeeId = employeeId,
            };

            await _controller.Delete(request);

            _mock.Mock <IEmployeesService>()
            .Verify(service => service.DeleteAsync(employeeId));
        }
        public SimpleResponse <bool> Delete(EmployeeDeleteRequest request)
        {
            var entity = new EmployeeEntity();

            entity.EmployeeId = request.EmployeeId;


            var deleted = false;

            using (var adapter = DataAccessAdapterFactory.NewDataAccessAdapter())
            {
                OnBeforeEmployeeDeleteRequest(adapter, request, entity);
                deleted = adapter.DeleteEntity(entity);
                OnAfterEmployeeDeleteRequest(adapter, request, entity, ref deleted);
            }
            return(new SimpleResponse <bool> {
                Result = deleted
            });
        }
Beispiel #4
0
        public HttpResponseMessage DeleteEmployee([FromBody] EmployeeDeleteRequest deleteRequest)
        {
            try
            {
                Log.Info("initializing delete employee");
                //Return a single employee detail
                if (!ModelState.IsValid)
                {
                    throw new ArgumentException("Employee ID to Delete is not found.");
                }

                var httpResponseMessage = new HttpResponseMessage()
                {
                    Content = new ObjectContent <IList <OrgChartHeirarchy> >(EmployeeRepo.DeleteEmployee(deleteRequest.Id, deleteRequest.AlertnativeManagerId),
                                                                             Configuration.Formatters.JsonFormatter),
                    StatusCode = HttpStatusCode.OK,
                };
                return(httpResponseMessage);
            }
            catch (ArgumentException hex)
            {
                var errorMessage = Helper.HttpResponseErrorMessage(hex.Message, _correlationId);
                Log.Error("Exception occurred in delete employee method", hex);
                throw new HttpResponseException(Request.CreateErrorResponse(HttpStatusCode.BadRequest, errorMessage));
            }
            catch (InvalidOperationException ex)
            {
                var errorMessage = Helper.HttpResponseErrorMessage(ex.Message, _correlationId);
                Log.Error("Exception occurred in delete employee method", ex);
                throw new HttpResponseException(Request.CreateErrorResponse(HttpStatusCode.ExpectationFailed, errorMessage));
            }
            catch (Exception ex)
            {
                var errorMessage = Helper.HttpResponseErrorMessage(ex.Message, _correlationId);
                Log.Error("Exception occurred in delete employee method", ex);
                throw new HttpResponseException(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, errorMessage));
            }
        }
 partial void OnAfterEmployeeDeleteRequest(IDataAccessAdapter adapter, EmployeeDeleteRequest request, EmployeeEntity entity, ref bool deleted);
 partial void OnBeforeEmployeeDeleteRequest(IDataAccessAdapter adapter, EmployeeDeleteRequest request, EmployeeEntity entity);
 public async Task Delete([FromQuery] EmployeeDeleteRequest request)
 {
     await _employeesService.DeleteAsync(request.EmployeeId);
 }