コード例 #1
0
        public async Task <IActionResult> CreateStaff([FromForm] StaffCreateRequest request)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            var result = await _staffService.Create(request);

            if (!result.IsSuccessed)
            {
                return(BadRequest(result));
            }
            return(Ok(result));
        }
コード例 #2
0
        public ActionResult Create([Bind(Include = "EmployeeId,FirstName,LastName,Email,PhoneNumber,Address,City,State,ZipCode,HireDate,Wage,Positionid,LocationId")] EmployeeViewModel employee)
        {
            if (ModelState.IsValid)
            {
                _staffService.Create(employee);
                return(RedirectToAction("Index"));
            }

            //ViewBag.LocationId = new SelectList(db.Locations, "LocationId", "LocationName", employee.LocationId);
            //ViewBag.Positionid = new SelectList(db.Positions, "PositionId", "PositionTitle", employee.Positionid);
            _locationService.GetAll().ToList();
            _positionService.GetAll().ToList();

            return(View(employee));
        }
コード例 #3
0
        public async Task <IHttpActionResult> Createstaff()
        {
            ResponseDataDTO <staff> response = new ResponseDataDTO <staff>();

            try
            {
                var path = Path.GetTempPath();

                if (!Request.Content.IsMimeMultipartContent("form-data"))
                {
                    throw new HttpResponseException(Request.CreateResponse(HttpStatusCode.UnsupportedMediaType));
                }

                MultipartFormDataStreamProvider streamProvider = new MultipartFormDataStreamProvider(path);

                await Request.Content.ReadAsMultipartAsync(streamProvider);

                // save file
                string fileName = "";
                foreach (MultipartFileData fileData in streamProvider.FileData)
                {
                    fileName = (FileExtension.SaveFileOnDisk(fileData));
                }
                #region ["Check null"]

                if (streamProvider.FormData["sta_fullname"] == null)
                {
                    response.Code    = HttpCode.INTERNAL_SERVER_ERROR;
                    response.Message = "Họ và tên không được để trống";
                    response.Data    = null;
                    return(Ok(response));
                }
                if (streamProvider.FormData["sta_username"] == null)
                {
                    response.Code    = HttpCode.INTERNAL_SERVER_ERROR;
                    response.Message = "Tên đăng nhập không được để trống";
                    response.Data    = null;
                    return(Ok(response));
                }
                if (streamProvider.FormData["sta_password"] == null)
                {
                    response.Code    = HttpCode.INTERNAL_SERVER_ERROR;
                    response.Message = "Mật khẩu không được để trống";
                    response.Data    = null;
                    return(Ok(response));
                }

                if (streamProvider.FormData["sta_mobile"] == null)
                {
                    response.Code    = HttpCode.INTERNAL_SERVER_ERROR;
                    response.Message = "Số điện thoại không được để trống";
                    response.Data    = null;
                    return(Ok(response));
                }

                if (streamProvider.FormData["sta_status"] == null)
                {
                    response.Code    = HttpCode.INTERNAL_SERVER_ERROR;
                    response.Message = "Trạng thái không được để trống";
                    response.Data    = null;
                    return(Ok(response));
                }

                if (streamProvider.FormData["department_id"] == null)
                {
                    response.Code    = HttpCode.INTERNAL_SERVER_ERROR;
                    response.Message = "Phòng ban không được để trống";
                    response.Data    = null;
                    return(Ok(response));
                }


                if (streamProvider.FormData["position_id"] == null)
                {
                    response.Code    = HttpCode.INTERNAL_SERVER_ERROR;
                    response.Message = "Chức vụ không được để trống";
                    response.Data    = null;
                    return(Ok(response));
                }
                if (streamProvider.FormData["add_province"] == null)
                {
                    response.Code    = HttpCode.INTERNAL_SERVER_ERROR;
                    response.Message = "Tinh/Thanh pho không được để trống";
                    response.Data    = null;
                    return(Ok(response));
                }
                if (streamProvider.FormData["add_district"] == null)
                {
                    response.Code    = HttpCode.INTERNAL_SERVER_ERROR;
                    response.Message = "Quan/Huyen không được để trống";
                    response.Data    = null;
                    return(Ok(response));
                }
                if (streamProvider.FormData["add_ward"] == null)
                {
                    response.Code    = HttpCode.INTERNAL_SERVER_ERROR;
                    response.Message = "Xa/Phuong không được để trống";
                    response.Data    = null;
                    return(Ok(response));
                }
                #endregion

                #region ["Check exits"]
                if (!check_department(Convert.ToInt32(streamProvider.FormData["department_id"])))
                {
                    response.Code    = HttpCode.NOT_FOUND;
                    response.Message = "Khong co ma phong ban trong csdl!";
                    response.Data    = null;
                    return(Ok(response));
                }
                if (!check_position(Convert.ToInt32(Convert.ToInt32(streamProvider.FormData["position_id"]))))
                {
                    response.Code    = HttpCode.NOT_FOUND;
                    response.Message = "Khong co ma bo phan trong csdl!";
                    response.Data    = null;
                    return(Ok(response));
                }
                if (!check_grouprole(Convert.ToInt32(streamProvider.FormData["group_role_id"])))
                {
                    response.Code    = HttpCode.NOT_FOUND;
                    response.Message = "Khong co ma nhom quyen trong csdl!";
                    response.Data    = null;
                    return(Ok(response));
                }

                #endregion
                // get data from formdata những trường bắt buộc
                StaffCreateViewModel StaffCreateViewModel = new StaffCreateViewModel
                {
                    sta_fullname = Convert.ToString(streamProvider.FormData["sta_fullname"]),
                    //sta_code = Convert.ToString(streamProvider.FormData["sta_code"]),
                    sta_username = Convert.ToString(streamProvider.FormData["sta_username"]),
                    sta_password = Convert.ToString(streamProvider.FormData["sta_password"]),
                    sta_email    = Convert.ToString(streamProvider.FormData["sta_email"]),

                    sta_aboutme            = Convert.ToString(streamProvider.FormData["sta_aboutme"]),
                    sta_mobile             = Convert.ToString(streamProvider.FormData["sta_mobile"]),
                    sta_identity_card      = Convert.ToString(streamProvider.FormData["sta_identity_card"]),
                    sta_address            = Convert.ToString(streamProvider.FormData["sta_address"]),
                    sta_hometown           = Convert.ToString(streamProvider.FormData["sta_hometown"]),
                    sta_reason_to_end_work = Convert.ToString(streamProvider.FormData["sta_reason_to_end_work"]),
                    sta_note = Convert.ToString(streamProvider.FormData["sta_note"]),

                    department_id   = Convert.ToInt32(streamProvider.FormData["department_id"]),
                    group_role_id   = Convert.ToInt32(streamProvider.FormData["group_role_id"]),
                    social_id       = Convert.ToInt32(streamProvider.FormData["social_id"]),
                    position_id     = Convert.ToInt32(streamProvider.FormData["position_id"]),
                    sta_leader_flag = Convert.ToByte(streamProvider.FormData["sta_leader_flag"]),



                    sta_status = Convert.ToByte(streamProvider.FormData["sta_status"]),
                    sta_sex    = Convert.ToByte(streamProvider.FormData["sta_sex"]),
                };
                //Kiểm tra các trường rằng buộc
                if (check_username_email(StaffCreateViewModel.sta_username, StaffCreateViewModel.sta_email))
                {
                    response.Code    = HttpCode.NOT_FOUND;
                    response.Message = "Da co username '" + StaffCreateViewModel.sta_username + "' hoac email '" + StaffCreateViewModel.sta_email + "' trong csdl";
                    response.Data    = null;
                    return(Ok(response));
                }
                //md5
                if (StaffCreateViewModel.sta_email != null)
                {
                    if (CheckEmail.IsValidEmail(StaffCreateViewModel.sta_email) == false)
                    {
                        response.Message = "Định dạng email không hợp lệ !";
                        response.Data    = null;
                        return(Ok(response));
                    }
                }

                //check_phone_number

                if (CheckNumber.IsPhoneNumber(StaffCreateViewModel.sta_mobile) == false)
                {
                    response.Message = "Số điện thoại không hợp lệ";
                    response.Data    = null;
                    return(Ok(response));
                }
                //Bắt các truongf còn lại
                //check datetime

                if (streamProvider.FormData["sta_birthday"] == null)
                {
                    StaffCreateViewModel.sta_birthday = null;
                }
                else
                {
                    StaffCreateViewModel.sta_birthday = Convert.ToDateTime(streamProvider.FormData["sta_birthday"]);
                }

                if (streamProvider.FormData["sta_identity_card_date"] == null)
                {
                    StaffCreateViewModel.sta_identity_card_date = null;
                }
                else
                {
                    StaffCreateViewModel.sta_identity_card_date = Convert.ToDateTime(streamProvider.FormData["sta_identity_card_date"]);
                }
                if (streamProvider.FormData["sta_end_work_date"] == null)
                {
                    StaffCreateViewModel.sta_end_work_date = null;
                }
                else
                {
                    StaffCreateViewModel.sta_end_work_date = Convert.ToDateTime(streamProvider.FormData["sta_end_work_date"]);
                }
                if (streamProvider.FormData["sta_start_work_date"] == null)
                {
                    StaffCreateViewModel.sta_start_work_date = null;
                }
                else
                {
                    StaffCreateViewModel.sta_start_work_date = Convert.ToDateTime(streamProvider.FormData["sta_start_work_date"]);
                }


                if (streamProvider.FormData["sta_created_date"] == null)
                {
                    StaffCreateViewModel.sta_created_date = DateTime.Now;
                }
                //Lấy ra bản ghi cuối cùng tạo mã code
                var x = _staffservice.GetLast();

                StaffCreateViewModel.sta_code = Utilis.CreateCode("KH", x.sta_id, 7);
                // mapping view model to entity
                var createdstaff = _mapper.Map <staff>(StaffCreateViewModel);
                createdstaff.sta_thumbnai = fileName;
                createdstaff.sta_password = StaffCreateViewModel.sta_password;

                // save new staff
                _staffservice.Create(createdstaff);
                var get_last_id = _staffservice.GetLast();
                //Create address
                AddressCreateViewModel addressCreateViewModel = new AddressCreateViewModel
                {
                    add_province = Convert.ToString(streamProvider.FormData["add_province"]),

                    add_district = Convert.ToString(streamProvider.FormData["add_district"]),
                    add_ward     = Convert.ToString(streamProvider.FormData["add_ward"]),
                };
                addressCreateViewModel.staff_id = get_last_id.sta_id;
                var createAddress = _mapper.Map <address>(addressCreateViewModel);
                _addressService.Create(createAddress);

                // return response
                response.Code    = HttpCode.OK;
                response.Message = MessageResponse.SUCCESS;
                response.Data    = createdstaff;
                return(Ok(response));
            }
            catch (Exception ex)
            {
                response.Code    = HttpCode.INTERNAL_SERVER_ERROR;
                response.Message = ex.Message;
                response.Data    = null;

                return(Ok(response));
            }
        }