public virtual async Task <ActionResult> Post([FromBody] IList <T1> newRecords) { if (!ModelState.IsValid) { return(StatusCode(StatusCodes.Status422UnprocessableEntity, "Can't processable Entities")); } try { var recordsToSave = _mapper.Map <List <T> >(newRecords); for (int i = 0; i < recordsToSave.Count; i++) { IAPPDoc curRcd = recordsToSave[i]; recordsToSave[i] = (T)DBValuesSetup.SetAppDocValues(curRcd); } await _appRepository.AddManyAsync(recordsToSave); await DBValuesSetup.CreateIndex <T>(_appRepository); } catch (Exception ex) { _logger.LogError($"Error occurred while performing Post operation; error:\n {ex.Message} "); return(StatusCode(StatusCodes.Status500InternalServerError, "Something went wrong while performing Post operation")); } return(Ok(true)); }
/// <summary> /// Sets the application document values. /// </summary> /// <param name="aPPDoc">a pp document.</param> /// <returns></returns> public static IAPPDoc SetAppDocValues(IAPPDoc aPPDoc) { aPPDoc.Version++; if (computeDate == 0) { computeDate = ComputeRunDate().ToUnixTimeSeconds(); } aPPDoc.ComputeDate = computeDate; return(aPPDoc); }
public async Task <bool> StoreValuesToDb() { if (slickChartFirmNames == null || slickChartFirmNames.Count == 0) { return(false); } var scfnDB = mapper.Map <List <SlickChartFirmNamesDB> >(slickChartFirmNames); for (int i = 0; i < scfnDB.Count; i++) { IAPPDoc aPPDoc = scfnDB[i]; scfnDB[i] = (SlickChartFirmNamesDB)DBValuesSetup.SetAppDocValues(aPPDoc); } var deleteCount = await appRepository.DeleteManyAsync <SlickChartFirmNamesDB>(r => r.ComputeDate <= scfnDB[0].ComputeDate); await appRepository.AddManyAsync(scfnDB); await DBValuesSetup.CreateIndex <SlickChartFirmNamesDB>(appRepository); return(true); }