Ejemplo n.º 1
0
        public SaleTransaction Update(SaleTransaction modifiedSale)
        {
            var entity = dbContext.SaleTransactions.AsNoTracking().FirstOrDefault(a => a.SaleId == modifiedSale.SaleId);

            if (entity == null)
            {
                throw new Exception("Selected Record does not exists.");
            }
            var auditLog = initAuditLogUpdate(entity, modifiedSale);

            updateRelatedTableColumns(ref modifiedSale);


            var correctedMC = mcRepository.GetCorrectedMC(modifiedSale.MC, entity.NetWt);

            entity.BaleCount    = modifiedSale.BaleCount;
            entity.BaleTypeDesc = modifiedSale.BaleTypeDesc;
            entity.BaleTypeId   = modifiedSale.BaleTypeId;
            entity.CategoryDesc = modifiedSale.CategoryDesc;
            entity.CategoryId   = modifiedSale.CategoryId;
            entity.Corrected10  = correctedMC.Corrected10;
            entity.Corrected12  = correctedMC.Corrected12;
            entity.Corrected14  = correctedMC.Corrected14;
            entity.Corrected15  = correctedMC.Corrected15;
            entity.CustomerId   = modifiedSale.CustomerId;
            entity.CustomerName = modifiedSale.CustomerName;
            entity.DriverName   = modifiedSale.DriverName;
            entity.HaulerId     = modifiedSale.HaulerId;
            entity.HaulerName   = modifiedSale.HaulerName;
            entity.MC           = modifiedSale.MC;
            //entity.MCStatus = modifiedSale.MCStatus;
            entity.MoistureReaderId   = modifiedSale.MoistureReaderId;
            entity.MoistureReaderDesc = modifiedSale.MoistureReaderDesc;
            entity.OT              = modifiedSale.OT;
            entity.PM              = modifiedSale.PM;
            entity.PaperMillId     = modifiedSale.PaperMillId;
            entity.PaperMillCode   = modifiedSale.PaperMillCode;
            entity.ProductId       = modifiedSale.ProductId;
            entity.ProductDesc     = modifiedSale.ProductDesc;
            entity.Remarks         = modifiedSale.Remarks;
            entity.SealNum         = modifiedSale.SealNum;
            entity.Trip            = modifiedSale.Trip;
            entity.VehicleNum      = modifiedSale.VehicleNum;
            entity.VehicleTypeId   = modifiedSale.VehicleTypeId;
            entity.VehicleTypeCode = modifiedSale.VehicleTypeCode;
            entity.WeigherOutId    = modifiedSale.WeigherOutId;
            entity.WeigherOutName  = modifiedSale.WeigherOutName;

            dbContext.SaleTransactions.Update(entity);
            dbContext.SaveChanges();

            if (auditLog != null)
            {
                auditLogRepository.Create(auditLog);
            }

            return(entity);
        }
Ejemplo n.º 2
0
        public async Task SaveAuditLog(string description, AuditActionEnum action)
        {
            var userId   = _contextAccessor.HttpContext.GetUserId();
            var auditLog = new AuditLog
            {
                Action      = action.GetDisplayName(),
                Description = description,
                IpAddress   = _contextAccessor.HttpContext.Connection.RemoteIpAddress.ToString(),
                Created     = DateTime.Now,
                CreatedBy   = userId
            };

            await _repository.Create(auditLog);
        }
Ejemplo n.º 3
0
        public void Handle(object sender, BasicDeliverEventArgs basicDeliverEventArgs)
        {
            var logEntry = new LogEntry
            {
                EventType  = basicDeliverEventArgs.BasicProperties.Type,
                Timestamp  = basicDeliverEventArgs.BasicProperties.Timestamp.UnixTime,
                RoutingKey = basicDeliverEventArgs.RoutingKey,
                EventJson  = Encoding.Unicode.GetString(basicDeliverEventArgs.Body)
            };

            _logger.LogTrace(
                $"Log entry for event: {logEntry.EventType} with routing key: {logEntry.RoutingKey} deserialized.");

            _repository.Create(logEntry);

            _logger.LogTrace(
                $"Log entry for event: {logEntry.EventType} with routing key: {logEntry.RoutingKey} saved.");
        }
Ejemplo n.º 4
0
        public IActionResult Post([FromBody] AuditLog model)
        {
            try
            {
                if (!ModelState.IsValid)
                {
                    return(InvalidModelStateResult());
                }
                var modelStateErrors = repository.Validate(model);
                if (modelStateErrors.Count() > 0)
                {
                    ModelState.AddModelErrors(modelStateErrors);
                }

                var result = RedirectToAction("ValidateCode", model);

                return(Accepted(repository.Create(model)));
            }
            catch (Exception ex)
            {
                logger.LogError(ex.GetExceptionMessages());
                return(StatusCode(StatusCodes.Status500InternalServerError, Constants.ErrorMessages.CreateError));
            }
        }
Ejemplo n.º 5
0
        public PurchaseTransaction Update(PurchaseTransaction modifiedPurchase)
        {
            var entity = dbContext.PurchaseTransactions.AsNoTracking().FirstOrDefault(a => a.PurchaseId == modifiedPurchase.PurchaseId);

            if (entity == null)
            {
                throw new Exception("Selected Record does not exists.");
            }

            var auditLog = initAuditLogUpdate(entity, modifiedPurchase);

            updateRelatedTableColumns(ref modifiedPurchase);

            var correctedMC = mcRepository.GetCorrectedMC(modifiedPurchase.MC, entity.NetWt);

            entity.BaleCount          = modifiedPurchase.BaleCount;
            entity.BaleTypeDesc       = modifiedPurchase.BaleTypeDesc;
            entity.BaleTypeId         = modifiedPurchase.BaleTypeId;
            entity.CategoryDesc       = modifiedPurchase.CategoryDesc;
            entity.CategoryId         = modifiedPurchase.CategoryId;
            entity.Corrected10        = correctedMC.Corrected10;
            entity.Corrected12        = correctedMC.Corrected12;
            entity.Corrected14        = correctedMC.Corrected14;
            entity.Corrected15        = correctedMC.Corrected15;
            entity.DriverName         = modifiedPurchase.DriverName;
            entity.MC                 = modifiedPurchase.MC;
            entity.MCStatus           = modifiedPurchase.MCStatus;
            entity.MoistureReaderId   = modifiedPurchase.MoistureReaderId;
            entity.MoistureReaderDesc = modifiedPurchase.MoistureReaderDesc;
            entity.OT                 = modifiedPurchase.OT;
            entity.PM                 = modifiedPurchase.PM;
            entity.PurchaseOrderId    = modifiedPurchase.PurchaseOrderId;
            entity.PONum              = modifiedPurchase.PONum;
            entity.POType             = modifiedPurchase.POType;
            entity.Price              = modifiedPurchase.Price;
            entity.RawMaterialId      = modifiedPurchase.RawMaterialId;
            entity.RawMaterialDesc    = modifiedPurchase.RawMaterialDesc;
            entity.Remarks            = modifiedPurchase.Remarks;
            entity.SourceId           = modifiedPurchase.SourceId;
            entity.SourceName         = modifiedPurchase.SourceName;
            entity.SourceCategoryId   = modifiedPurchase.SourceCategoryId;
            entity.SourceCategoryDesc = modifiedPurchase.SourceCategoryDesc;
            entity.SubSupplierName    = modifiedPurchase.SubSupplierName;
            entity.SupplierId         = modifiedPurchase.SupplierId;
            entity.SupplierName       = modifiedPurchase.SupplierName;
            entity.Trip               = modifiedPurchase.Trip;
            entity.VehicleNum         = modifiedPurchase.VehicleNum;
            entity.VehicleTypeId      = modifiedPurchase.VehicleTypeId;
            entity.VehicleTypeCode    = modifiedPurchase.VehicleTypeCode;
            entity.WeigherOutId       = modifiedPurchase.WeigherOutId;
            entity.WeigherOutName     = modifiedPurchase.WeigherOutName;

            entity.MoistureReaderLogsModified = modifiedPurchase.MoistureReaderLogsModified;

            dbContext.PurchaseTransactions.Update(entity);

            if (modifiedPurchase.MoistureReaderLogsModified)
            {
                dbContext.RemoveRange(dbContext.moistureReaderLogs.Where(a => a.TransactionId == modifiedPurchase.PurchaseId));
            }

            dbContext.SaveChanges();

            if (auditLog != null)
            {
                auditLogRepository.Create(auditLog);
            }

            balingStationRepository.CheckAndCreateStockStatusReminder();

            return(entity);
        }
Ejemplo n.º 6
0
        public Inyard WeighIn(Inyard model)
        {
            var refNum = refNumRepository.Get().FirstOrDefault();

            model.InyardNum = refNum?.InyardNum;

            updateRelatedTableColumns(ref model);

            var newInyard = new Inyard()
            {
                BaleCount         = model.BaleCount,
                BaleTypeDesc      = baleTypeRepository.Get().Where(a => a.BaleTypeId == model.BaleTypeId).Take(1).Select(a => a.BaleTypeDesc).FirstOrDefault(),
                BaleTypeId        = model.BaleTypeId,
                BalingStationNum  = model.BalingStationNum,
                BalingStationCode = model.BalingStationCode,
                BalingStationName = model.BalingStationName,
                CategoryDesc      = model.CategoryDesc,
                CategoryId        = model.CategoryId,
                ClientId          = model.ClientId,
                ClientName        = model.ClientName,
                CommodityDesc     = model.CommodityDesc,
                CommodityId       = model.CommodityId,
                DateTimeIn        = model.DateTimeIn,
                DateTimeOut       = null,
                DriverName        = model.DriverName?.ToUpper(),
                DRNum             = model.DRNum?.ToUpper(),
                GrossWt           = model.GrossWt,
                HaulerId          = model.HaulerId,
                HaulerName        = model.HaulerName,
                InyardNum         = model.InyardNum,
                IsOfflineIn       = model.IsOfflineIn,
                IsOfflineOut      = model.IsOfflineOut,
                MC       = model.MC,
                MCStatus = model.MCStatus,
                MoistureReaderProcess = model.MoistureReaderProcess,
                MoistureReaderDesc    = model.MoistureReaderDesc,
                MoistureReaderId      = model.MoistureReaderId,
                MoistureSettingsId    = 1,
                NetWt               = model.NetWt,
                OT                  = model.OT,
                PlantMC             = model.PlantMC,
                PlantNetWt          = model.PlantNetWt,
                PlantTruckOrigin    = model.PlantTruckOrigin?.ToUpper(),
                PM                  = model.PM,
                PaperMillId         = model.PaperMillId,
                PaperMillCode       = model.PaperMillCode,
                PurchaseOrderId     = model.PurchaseOrderId,
                PONum               = model.PONum,
                POType              = model.POType,
                Price               = model.Price,
                Remarks             = model.Remarks?.ToUpper(),
                SealNum             = model.SealNum?.ToUpper(),
                SignatoryId         = 1,
                SourceCategoryDesc  = model.SourceCategoryDesc,
                SourceCategoryId    = model.SourceCategoryId,
                SourceId            = model.SourceId,
                SourceName          = model.SourceName,
                SubSupplierName     = model.SubSupplierName?.ToUpper(),
                TareWt              = model.TareWt,
                TimeZoneIn          = model.DateTimeIn.GetTimeZone(),
                TimeZoneOut         = null,
                TransactionProcess  = model.TransactionProcess,
                TransactionTypeCode = model.TransactionTypeCode,
                Trip                = model.Trip?.ToUpper(),
                VehicleNum          = model.VehicleNum?.ToUpper(),
                VehicleTypeCode     = model.VehicleTypeCode,
                VehicleTypeId       = model.VehicleTypeId,
                WeigherInId         = model.WeigherInId,
                WeigherInName       = model.WeigherInName,
                WeigherOutId        = null,
                WeigherOutName      = null
            };

            dbContext.Inyards.Add(newInyard);

            refNum.InyardNum = String.Format(StringFormats.REFNO_FORMAT, Convert.ToInt32(refNum.InyardNum) + 1);
            dbContext.ReferenceNumbers.Update(refNum);
            dbContext.SaveChanges();

            if (model.TransactionTypeCode == "I" && model.IsOfflineIn == false)
            {
                var vd = new VehicleDeliveryRestriction()
                {
                    VehicleNum  = model.VehicleNum,
                    CommodityId = model.CommodityId,
                    DateTimeIn  = model.DateTimeIn
                };

                vehicleDeliveryRestrictionRepository.Create(vd);

                var pg = new PurchaseGrossWtRestriction()
                {
                    VehicleNum = model.VehicleNum,
                    Weight     = model.InitialWt,
                    DateTimeIn = model.DateTimeIn
                };

                purchaseGrossWtRestrictionRepository.Create(pg);
            }

            if (model.IsOfflineIn)
            {
                var auditLog = new AuditLog()
                {
                    AuditLogEventId   = auditLogEventRepository.GetOfflineInEventId(),
                    UserAccountId     = model.WeigherInId,
                    AuditLogEventDesc = String.Empty,
                    Notes             = formatOfflineInEvent(model)
                };
                auditLogRepository.Create(auditLog);
            }
            return(newInyard);
        }