public JsonResult UploadFile(HttpPostedFileBase itemExcelFile)
        {
            var qtyPacked = string.Empty;
            var qty       = string.Empty;

            var data  = (new ExcelReader()).ReadExcel(itemExcelFile);
            var model = new List <ProductionUploadItems>();

            if (data != null)
            {
                foreach (var dataRow in data.DataRows)
                {
                    if (dataRow[0] == "")
                    {
                        continue;
                    }


                    var     item           = new ProductionUploadItems();
                    var     brand          = _brandRegistrationBll.GetByFaCode(dataRow[1], dataRow[2]);
                    var     prodQty        = dataRow[4] == "" ? 0 : Convert.ToDecimal(dataRow[4]);
                    decimal zb             = dataRow[3] == "" ? 0 : Convert.ToDecimal(dataRow[3]); //brand.PROD_CODE == "01" ? Convert.ToDecimal(dataRow[3]) : 0;
                    var     packedQty      = dataRow[3] == "" ? "0" : dataRow[3];                  //brand.PROD_CODE == "01" ? 0 : Convert.ToDecimal(dataRow[3]);
                    decimal packedAdjusted = 0;

                    if (dataRow.Count >= 8)
                    {
                        packedAdjusted = dataRow[7] == "" ? 0 : Convert.ToDecimal(dataRow[7]);
                    }
                    else
                    {
                        packedAdjusted = 0;
                    }


                    item.CompanyCode      = dataRow[0];
                    item.PlantWerks       = dataRow[1];
                    item.FaCode           = dataRow[2];
                    item.BrandDescription = brand == null ? string.Empty : brand.BRAND_CE;
                    item.QtyPacked        = packedQty.ToString();
                    item.Qty            = dataRow[5].ToLower() == "btg" ? Math.Round(prodQty).ToString() : dataRow[4];
                    item.Uom            = dataRow[5];
                    item.ProductionDate = dataRow[6];
                    item.Zb             = zb;
                    item.PackedAdjusted = packedAdjusted;
                    if (dataRow.Count >= 9)
                    {
                        item.Remark = dataRow[8];
                    }


                    model.Add(item);
                }
            }
            var input        = Mapper.Map <List <ProductionUploadItemsInput> >(model);
            var outputResult = _productionBll.ValidationDailyUploadDocumentProcess(input, qtyPacked, qty);

            model = Mapper.Map <List <ProductionUploadItems> >(outputResult);
            return(Json(model));
        }
예제 #2
0
        public void SaveUpload(ProductionUploadItems uploadItems, string userId)
        {
            var dbUpload = Mapper.Map <PRODUCTION>(uploadItems);

            _repository.InsertOrUpdate(dbUpload);

            _uow.SaveChanges();
        }