コード例 #1
0
        public async Task InsertLogisticCenter(LogisticCenterDto logisticCenter)
        {
            var logisticCenterEntity = _mapper.Map <LogisticCenterDto, LogisticCenter>(logisticCenter);
            await _context.LogisticCenters.AddAsync(logisticCenterEntity);

            await _context.SaveChangesAsync();
        }
コード例 #2
0
        public async Task UpdateLogisticCenter(LogisticCenterDto logisticCenter)
        {
            var logisticCenterEntity = _mapper.Map <LogisticCenterDto, LogisticCenter>(logisticCenter);

            _context.Entry(logisticCenterEntity).State = EntityState.Modified;
            await _context.SaveChangesAsync();
        }
コード例 #3
0
        public async Task <LogisticCenterDto> ProcessLogisticCenter()
        {
            var paths = await _pathRepository.GetPaths();

            var currentLogisticCenter = (await _logisticCenterRepository.GetLogisticCenters()).LastOrDefault();
            var sum = paths.Sum(x => x.GetHashCode());

            if (sum == currentLogisticCenter?.CheckSum || sum == 0)
            {
                return(currentLogisticCenter);
            }

            var pathsCount = GetPathsCount(paths);
            var cityResult = GetCityLogisticCenter(pathsCount);

            var logisticCenter = new LogisticCenterDto {
                Name = cityResult.Name, CheckSum = sum
            };
            await _logisticCenterRepository.InsertLogisticCenter(logisticCenter);

            return(logisticCenter);
        }