예제 #1
0
        public async Task <IActionResult> UpdatetCertificate(int id, [FromBody] UpdateCertificateResource certificateObj)
        {
            var tempCertificateModel = await _certificateService.UpdateInfomationCertificate(id, certificateObj);

            if (!tempCertificateModel.AppResult.Result)
            {
                return(BadRequest(tempCertificateModel.AppResult));
            }

            return(Ok(tempCertificateModel.AppResult));
        }
예제 #2
0
        public async Task <CertificateViewModel <SaveCertificateResource> > UpdateInfomationCertificate(int certificateId, UpdateCertificateResource certificateObj)
        {
            model.AppResult.Result = false;
            // Validate Start/End Date
            if (!Functions.ValidateInputTime(certificateObj.StartDate, certificateObj.EndDate))
            {
                model.AppResult.Message = Constant.DATETIME_ERROR;
                return(model);
            }
            // Validate Id of CertificateInfo
            var tempCertificateInfo = await _certificateRepository.FindAsync(certificateId);

            if (tempCertificateInfo is null)
            {
                model.AppResult.Message = Constant.PERSONID_ERROR;
                return(model);
            }

            // Define DateTime.Year = "1111" is null
            var valueStartDate = Functions.ConvertDateTime(certificateObj.StartDate);
            var valueEndDate   = Functions.ConvertDateTime(certificateObj.EndDate);

            // Set value into CertificateInfo
            tempCertificateInfo.Name      = Regex.Replace(certificateObj.Name.Trim(), @"\s{2,}", " ");
            tempCertificateInfo.Provider  = Regex.Replace(certificateObj.Provider.Trim(), @"\s{2,}", " ");
            tempCertificateInfo.StartDate = valueStartDate;
            tempCertificateInfo.EndDate   = (valueEndDate.Year == 1111) ? (DateTime?)null : valueEndDate; // Define DateTime.Year = "1111" is null
            tempCertificateInfo.UpdatedBy = Helpers.HttpContext.CurrentUser;
            tempCertificateInfo.UpdatedAt = DateTime.Now;

            var isSuccess = await _certificateRepository.UpdateAsync(tempCertificateInfo);

            if (isSuccess > 0)
            {
                model.AppResult.Result  = true;
                model.AppResult.Message = Constant.UPDATE_SUCCESS;
                return(model);
            }
            model.AppResult.Message = "Bad Request";
            return(model);
        }