Пример #1
0
        public async Task <ActionResult> InsertRequest([FromForm] InsertRequestModel insertRequestModel)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState.GetErrors()));
            }

            if (insertRequestModel.PictureRequest == null)
            {
                return(BadRequest("Picture not null"));
            }
            if (insertRequestModel.PictureRequest.Count > 5)
            {
                return(BadRequest("Cannot upload more than 5 picture"));
            }
            string strPictureRequest = UploadFileToCloudinary.UploadListImage(insertRequestModel.PictureRequest).ListToString();

            ApplicationUser curUser = await _userManager.GetUserAsync(HttpContext.User);

            Company company = (from cmp in _context.Companys
                               where cmp.Id == insertRequestModel.CompanyId
                               select cmp).FirstOrDefault();

            if (company == null)
            {
                return(BadRequest("Company assign to required"));
            }
            DateTime utcNow  = DateTime.UtcNow;
            var      request = new Request
            {
                //Id = requestId,
                Address          = insertRequestModel.Address,
                Content          = insertRequestModel.Content,
                Latlng_latitude  = insertRequestModel.Latlng_latitude,
                Latlng_longitude = insertRequestModel.Latlng_longitude,
                TimeBeginRequest = utcNow,
                PictureRequest   = strPictureRequest,
                Status           = RequestStatus.Waiting.ToDescription(),
                Supervisor       = curUser,
                Company          = company
            };

            try
            {
                await _context.Requests.AddAsync(request);

                await _context.SaveChangesAsync();

                return(Ok(true));
            }
            catch (Exception ex)
            {
                return(BadRequest(ex));
            }
        }
Пример #2
0
        public async Task <ActionResult> RepairPersonFinish([FromForm] RepairPersonFinishModel repairPersonFinishModel)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState.GetErrors()));
            }
            ApplicationUser curUser = await _userManager.GetUserAsync(HttpContext.User);

            var request = _context.Requests.FirstOrDefault(rq => rq.Id == repairPersonFinishModel.RequestId);

            if (request.Status != RequestStatus.ToDo.ToDescription())
            {
                return(BadRequest("Cannot Finish"));
            }
            if (request.RepairPersonId != curUser.Id)
            {
                return(BadRequest("Cannot Finish"));
            }
            if (request != null)
            {
                if (request.RepairPersonId == curUser.Id)
                {
                    try
                    {
                        if (repairPersonFinishModel.ListPictureFinish.Count > 5)
                        {
                            return(BadRequest("Cannot upload more than 5 picture"));
                        }
                        string strPictureFinish = UploadFileToCloudinary.UploadListImage(repairPersonFinishModel.ListPictureFinish).ListToString();

                        DateTime utcNow = DateTime.UtcNow;
                        request.TimeFinish = utcNow;
                        request.Status     = RequestStatus.Done.ToDescription();

                        request.PictureFinish = strPictureFinish;

                        _context.Requests.Update(request);
                        await _context.SaveChangesAsync();

                        return(Ok(true));
                    }
                    catch (Exception ex)
                    {
                        return(BadRequest(ex));
                    }
                }
                else
                {
                    return(BadRequest("you are not allowed"));
                }
            }

            return(BadRequest(repairPersonFinishModel.RequestId + " does not exist"));
        }
        //[Authorize(Roles = "Supervisor, Repair Person")]
        public IActionResult UploadFiles(List <IFormFile> files)
        {
            if (files is null)
            {
                return(Ok(null));
            }
            List <string> listURI = UploadFileToCloudinary.UploadListImage(files);
            string        result  = listURI.ListToString();

            return(Ok(result));
        }
Пример #4
0
        public async Task <ActionResult> ChangeInformationCompany([FromForm] ChangeInformationCompanyModel changeInformationCompanyModel)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState.GetErrors()));
            }

            try
            {
                ApplicationUser admin = await _userManager.GetUserAsync(HttpContext.User);

                if (!admin.IsEnabled)
                {
                    BadRequest("Account blocked");
                }
                Company company = _context.Companys.FirstOrDefault(c => c.Id == changeInformationCompanyModel.CompanyId);
                if (company.AdminId != admin.Id)
                {
                    return(BadRequest("You are not allowed"));
                }
                if (changeInformationCompanyModel.Address != null)
                {
                    company.Address = changeInformationCompanyModel.Address;
                }
                if (changeInformationCompanyModel.Name != null)
                {
                    company.Name = changeInformationCompanyModel.Name;
                }
                if (changeInformationCompanyModel.Logo != null)
                {
                    company.Logo = UploadFileToCloudinary.UploadImage(changeInformationCompanyModel.Logo);
                }

                _context.Companys.Update(company);
                await _context.SaveChangesAsync();

                return(Ok(true));
            }
            catch (Exception ex)
            {
                return(BadRequest(ex));
            }
        }
Пример #5
0
        public async Task <ActionResult> UpdateAvatar([FromForm] UpdateAvatarModel updateAvatarModel)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState.GetErrors()));
            }
            try
            {
                ApplicationUser curUser = await _userManager.GetUserAsync(HttpContext.User);

                string strPicture = UploadFileToCloudinary.UploadImage(updateAvatarModel.FileAvatar);
                curUser.Avatar = strPicture;
                await _userManager.UpdateAsync(curUser);

                return(Ok(true));
            }
            catch (Exception ex)
            {
                return(BadRequest(ex));
            }
        }
Пример #6
0
        public async Task <ActionResult> AddCompany([FromForm] AddCompanyModel addCompanyModel)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState.GetErrors()));
            }

            try
            {
                ApplicationUser curUser = await _userManager.GetUserAsync(HttpContext.User);

                string  strPicture = UploadFileToCloudinary.UploadImage(addCompanyModel.Logo);
                Company company    = new Company
                {
                    AdminId = curUser.Id,
                    Name    = addCompanyModel.CompanyName,
                    Address = addCompanyModel.Address,
                    IsDepartmentOfConstruction = addCompanyModel.IsDepartmentOfConstruction,
                    Logo   = strPicture,
                    Status = true
                };
                await _context.Companys.AddAsync(company);

                await _context.SaveChangesAsync();

                //string companyId = _context.Companys.FirstOrDefault(c => c.AdminId == curUser.Id && c.Name == addCompanyModel.CompanyName).Id;
                //if (curUser.Company == null)
                //    curUser.ListAreaWorkingId = arWorkingId;
                //else
                //    curUser.ListAreaWorkingId = String_List.ToString(new List<string> { curUser.ListAreaWorkingId, arWorkingId });
                //await _userManager.UpdateAsync(curUser);
                return(Ok(true));
            }
            catch (Exception ex)
            {
                return(BadRequest(ex));
            }
        }