// GET: Warehouse/InWay/?code={code}
        public ActionResult InWay(string code)
        {
            ViewBag.Title = "توراهی";

            var model = new TableOption()
            {
                Id = "entryInWay"
            };

            if (!string.IsNullOrEmpty(code))
            {
                ViewBag.QrCode = code.Length < 8 ? code : code.RepairCipher()?.Decrypt();

                #region Table Data

                var tableData = Connections.SaleBranch.SqlConn.ExecuteReader(
                    "sp_GetInWayDetailsByOldInvoicId",
                    new { OldInvoicId = ViewBag.QrCode },
                    commandType: CommandType.StoredProcedure).ToDataTable();

                model.Data = tableData;
                model.DisplayRowsLength  = 50;
                model.TotalFooterColumns = new[] { "TotalPrice", "Qty" }; // column by name "تعداد" and "قیمت کل"
                model.CurrencyColumns    = new[] { 7, 8, 9 };

                #endregion
            }

            return(View("InWay/InWay", model));
        }
Пример #2
0
        public ActionResult CertificationCountingWarehouseDetails(string serial, string countingRows)
        {
            ViewBag.Title  = "تایید نهایی شمارش انبار";
            ViewBag.Serial = JsonConvert.DeserializeObject <int>(serial);

            var result = new WarehouseApiController().StoreWarehouseCounting(serial, countingRows);

            var table = new TableOption()
            {
                Id   = "CountingWarehouseHistoryDetails",
                Data = result,
                DisplayRowsLength = 10,
                Orders            = new[] { Tuple.Create(0, OrderType.asc) },
                CurrencyColumns   = new [] { 3 },
                Checkable         = false
            };

            var multipleStepOpt = new MultipleStepProgressTabOption()
            {
                Steps            = _countingWarehouseSteps,
                CurrentStepIndex = 3
            };

            var model = Tuple.Create(table, multipleStepOpt);

            return(View("CountingWarehouse/CertificationCountingWarehouseDetails", model));
        }
Пример #3
0
        public ActionResult CheckAndRepairUser(string empId)
        {
            if (string.IsNullOrEmpty(empId))
            {
                return(View());
            }

            using (var multi = Connections.SaleDistributeIdentity.SqlConn.QueryMultiple("sp_CheckAndCreateEmployeesRoles", new { EmployeId = empId }, commandType: CommandType.StoredProcedure))
            {
                var customer = multi.Read(); // don't use .ToDataTable() here because it is read twice !!!
                var menus    = multi.Read(); // don't use .ToDataTable() here because it is read twice !!!

                var optCustomer = new TableOption()
                {
                    Data = customer.ToDataTable()
                };

                var optMenus = new TableOption()
                {
                    Data = menus.ToDataTable()
                };

                ApplicationDbContext.Create().SaveChanges();

                return(View(Tuple.Create(optCustomer, optMenus)));
            }
        }
        public ActionResult ShowEntryReturnedInvoiceDetails(string invoiceSerialNo, string saleableRows, string unsaleableList)
        {
            ViewBag.Title = _saleReturnedSteps[3];

            ViewBag.InvoiceSerial = JsonConvert.DeserializeObject <int>(invoiceSerialNo);
            var saleable   = JsonConvert.DeserializeObject(saleableRows);
            var unsaleable = JsonConvert.DeserializeObject(unsaleableList);

            #region Table Data

            var tableData = Connections.SaleBranch.SqlConn.ExecuteReader(
                "sp_GetSaleReturnInvoiceDetailsTable", new { SerialNo = ViewBag.InvoiceSerial },
                commandType: CommandType.StoredProcedure).ToDataTable();

            var tblModel = new TableOption()
            {
                Id        = "saleReturnInvoicesRecipts",
                Data      = tableData,
                Orders    = new[] { Tuple.Create(0, OrderType.desc) },
                Checkable = false
            };

            #endregion

            var multipleStepOpt = new MultipleStepProgressTabOption()
            {
                Steps            = _saleReturnedSteps,
                CurrentStepIndex = 4
            };

            return(View("SaleReturnedInvoice/ShowEntryReturnedInvoiceDetails", Tuple.Create(multipleStepOpt, tblModel)));
        }
 /// <exclude/>
 public ITableBuilder Apply(TableOption option, object[] value)
 {
     if (option.GetType() == typeof(TableOption) && ((TableOption)option) == TableOption.columns)
         return Columns(value.Select(o => o.ToString()).ToArray());
     else
         return ApplyToTable(option.FieldName(), string.Format("[{0}]", string.Join(",", value)));
 }
Пример #6
0
        // GET: Warehouse/ChooseReturnedInvoiceDetailsTable/?invoiceSerial={invoiceSerial}
        public ActionResult ChooseReturnedInvoiceDetailsTable(int invoiceSerial)
        {
            ViewBag.InvoiceSerial = invoiceSerial;

            #region Table Data

            var tableData = Connections.SaleBranch.SqlConn.ExecuteReader(
                "sp_GetSaleReturnInvoiceDetailsTable", new { SerialNo = invoiceSerial },
                commandType: CommandType.StoredProcedure).ToDataTable();

            var model = new TableOption()
            {
                Id   = "saleReturnInvoices",
                Data = tableData,
                DisplayRowsLength  = -1,
                Orders             = new[] { Tuple.Create(0, OrderType.asc) },
                TotalFooterColumns = new string[] { "تعداد" },
                CurrencyColumns    = new int[] { 8 },
                Checkable          = true
            };

            #endregion

            return(PartialView("SaleReturnedInvoice/_ChooseReturnedInvoiceDetailsTablePartial", model));
        }
        // GET: ReceiptsTable
        public ActionResult ReceiptsTable()
        {
            ViewBag.Username = CurrentUser.UserName;

            // Fill Table data ------------------------------------------
            #region Table Data

            var tableData = Connections.SaleBranch.SqlConn.ExecuteReader(
                "sp_GetInvoiceRemain",
                new { EmployeeID = CurrentUser.UserName, EmployeeTypeid = CurrentUser.EmployeeType, RunDate = "2" },
                commandType: CommandType.StoredProcedure).ToDataTable();

            var model = new TableOption()
            {
                Id   = "receipts",
                Data = tableData,
                DisplayRowsLength    = 10,
                Orders               = new[] { Tuple.Create(0, OrderType.desc) },
                TotalFooterColumns   = new[] { "InvoiceRemain", "Payable" },
                AverageFooterColumns = new[] { "ShamsiDateDiff" },
                CurrencyColumns      = new[] { 8, 9 }
            };

            #endregion
            //-----------------------------------------------------------


            ToolsController.SetLastUserRunningAction(CurrentUser.UserName, "ReceiptsTable", tableData);

            return(PartialView("Receipt/ReceiptsTable", model));
        }
Пример #8
0
 /// <exclude/>
 public ITableBuilder Apply(TableOption option, object[] value)
 {
     if (option.GetType() == typeof(TableOption) && option == TableOption.Columns)
     {
         return(Columns(value.Select(o => o.ToString()).ToArray()));
     }
     else
     {
         return(ApplyToTable(option.FieldName(), $"[{string.Join(",", value)}]"));
     }
 }
Пример #9
0
        // GET: Warehouse/FillCountingWarehouseDetails/?serial={serial}
        public ActionResult FillCountingWarehouseDetails(int serial)
        {
            ViewBag.Title  = "شمارش موجودی انبار";
            ViewBag.Serial = serial;

            #region Table Data

            var tableData = Connections.SaleBranch.SqlConn.ExecuteReader(
                "sp_GetEmptyCountingWarehouseHistoryDetailsTable", new { CountingSerialNo = serial },
                commandType: CommandType.StoredProcedure).ToDataTable();

            var table = new TableOption()
            {
                Id   = "EmptyCountingWarehouseHistoryDetails",
                Data = tableData,
                DisplayRowsLength = 10,
                Orders            = new[] { Tuple.Create(0, OrderType.asc) },
                //TotalFooterColumns = new string[] { "وزن خالص" },
                CurrencyColumns = new int[] { 3 },
                Checkable       = false
            };

            var txtOpt = new TextBoxOption()
            {
                Placeholder  = "موجودی",
                DataStyle    = DataStyleType.warning,
                Max          = 999999,
                Min          = 0,
                Step         = 1,
                Type         = InputTypes.Number,
                DefaultValue = "0"
            };

            table.InputColumnsDataMember["5"] = txtOpt;
            table.InputColumnsDataMember["6"] = txtOpt;

            var multipleStepOpt = new MultipleStepProgressTabOption()
            {
                Steps            = _countingWarehouseSteps,
                CurrentStepIndex = 2
            };

            var model = Tuple.Create(table, multipleStepOpt);

            #endregion

            return(View("CountingWarehouse/FillCountingWarehouseDetails", model));
        }
Пример #10
0
        public ActionResult DynamicView()
        {
            var model = new TableOption()
            {
                Id = "entryInWay"
            };

            #region Table Data

            var tableData = Connections.Localhost.SqlConn.ExecuteReader("Select * From TestTable").ToDataTable();

            model.Data = tableData;
            model.DisplayRowsLength = 5;

            #endregion


            return(View(model));
        }
Пример #11
0
        // GET: Warehouse/CountingWarehouseHeaderTable
        public ActionResult CountingWarehouseHeaderTable()
        {
            #region Table Data

            var tableData = Connections.SaleBranch.SqlConn.ExecuteReader(
                "sp_GetCountingWarehouseHistoryTable", commandType: CommandType.StoredProcedure).ToDataTable();

            var model = new TableOption()
            {
                Id   = "CountingWarehouseHeaderTable",
                Data = tableData,
                DisplayRowsLength = 10,
                Orders            = new[] { Tuple.Create(0, OrderType.desc) },
                Checkable         = false
            };

            #endregion

            return(PartialView("CountingWarehouse/_CountingWarehouseHeaderTablePartial", model));
        }
Пример #12
0
        // GET: Warehouse/SaleReturnInvoicesTable
        public ActionResult SaleReturnInvoicesTable()
        {
            #region Table Data

            var tableData = Connections.SaleBranch.SqlConn.ExecuteReader(
                "sp_GetSaleReturnInvoicesTable", commandType: CommandType.StoredProcedure).ToDataTable();

            var model = new TableOption()
            {
                Id   = "saleReturnInvoices",
                Data = tableData,
                DisplayRowsLength  = 10,
                Orders             = new[] { Tuple.Create(0, OrderType.desc) },
                TotalFooterColumns = new string[] { "مبلغ برگشتي" },
                CurrencyColumns    = new int[] { 6 },
                Checkable          = false
            };

            #endregion

            return(PartialView("SaleReturnedInvoice/_SaleReturnInvoicesTablePartial", model));
        }
Пример #13
0
        private double GetUVWindHelper(double lat, double lon, TableOption para)
        {
            var x = (int)(Math.Floor(lat));
            var y = (int)(Math.Floor(lon));

            // Prevent interpolation using data that is out of range of array.
            if (x == 90)
            {
                x = 89;
            }
            if (y == 180)
            {
                y = 179;
            }

            return(Interpolate2D.Interpolate(
                       new double[] { x, x + 1 },
                       new double[] { y, y + 1 },
                       new[] {
                new[] { GetWindHelper(x, y, para), GetWindHelper(x, y + 1, para) },
                new[] { GetWindHelper(x + 1, y, para), GetWindHelper(x + 1, y + 1, para) }
            },
                       x, y));
        }
Пример #14
0
        // GET: Warehouse/CertificationSelectedReturnedInvoiceDetails/?invoiceSerial={invoiceSerial}&rows={rows}
        public ActionResult CertificationSelectedReturnedInvoiceDetails(int invoiceSerial, string rows)
        {
            ViewBag.Title         = "تایید برگشتی قابل فروش و غیر قابل فروش";
            ViewBag.InvoiceSerial = invoiceSerial;
            string[] sRows = ViewBag.SaleableRows = rows.Split(',');

            #region Table Data

            var tableData = Connections.SaleBranch.SqlConn.ExecuteReader(
                "sp_GetSaleReturnInvoiceDetailsTable", new { SerialNo = invoiceSerial },
                commandType: CommandType.StoredProcedure).ToDataTable();

            // creates a copy of the schema (columns)only.
            DataTable lstSaleable   = tableData.Clone(),
                      lstUnSaleable = tableData.Clone();

            // check row id for saleable list
            foreach (DataRow row in tableData.Rows)
            {
                if (sRows.Contains(row[0].ToString())) // row[0] = row["Id"]
                {
                    lstSaleable.Rows.Add(row.ItemArray);
                }
                else
                {
                    lstUnSaleable.Rows.Add(row.ItemArray);
                }
            }

            var modelSaleable = new TableOption()
            {
                Id   = "saleable",
                Data = lstSaleable,
                DisplayRowsLength = -1,
                Orders            = new[] { Tuple.Create(0, OrderType.asc) },
                Checkable         = false
            };

            var modelUnSaleable = new TableOption()
            {
                Id   = "unsaleable",
                Data = lstUnSaleable,
                DisplayRowsLength = -1,
                Orders            = new[] { Tuple.Create(0, OrderType.asc) }
            };

            var reasons        = Connections.SaleCore.SqlConn.Query("SELECT ReasonID, ReasonName FROM Reason");
            var reasonComboOpt = new ComboBoxOption()
            {
                Placeholder       = "انتخاب علت برگشتی",
                MenuHeaderText    = "علت برگشتی را انتخاب کنید",
                ShowOptionSubText = false,
                DataStyle         = Core.Enums.DataStyleType.warning,
                ShowTick          = true,
                DataLiveSearch    = true,
                DataSize          = "8",
                Data = reasons.Select(x => new ComboBoxDataModel()
                {
                    Value = ((object)x.ReasonID).ToString(), Text = x.ReasonName
                }).ToList()
            };
            modelUnSaleable.InputColumnsDataMember["4"] = reasonComboOpt;

            var multipleStepOpt = new MultipleStepProgressTabOption()
            {
                Steps            = _saleReturnedSteps,
                CurrentStepIndex = 3
            };

            var model = Tuple.Create(modelSaleable, modelUnSaleable, multipleStepOpt);

            #endregion

            return(View("SaleReturnedInvoice/CertificationSelectedReturnedInvoiceDetails", model));
        }
Пример #15
0
 public override void ExplicitVisit(TableOption node) { this.action(node); }
Пример #16
0
 /// <exclude/>
 public ITableBuilder Apply(TableOption option, object value)
 {
     return(ApplyToTable(option.FieldName(), value));
 }
Пример #17
0
 private double GetWindHelper(int lat, int lon, TableOption para)
 {
     return(para == TableOption.U ?
            uTable[lat + 90, lon + 180] :
            vTable[lat + 90, lon + 180]);
 }
		/// <exclude/>
        public ITableBuilder Apply(TableOption option, object value)
        {
            return ApplyToTable(option.FieldName(), value);
        }
 public override void ExplicitVisit(TableOption fragment)
 {
     _fragments.Add(fragment);
 }
Пример #20
0
 /// <inheritDoc/>
 new public ITableBuilderT <TModel> Apply(TableOption option, object[] value)
 {
     base.Apply(option, value);
     return(this);
 }