Пример #1
0
        /// <summary>
        /// 查询采购单审核数和未审核数
        /// </summary>
        /// <returns></returns>
        public ActionResult GetStocksStateCount()
        {
            List <int> list = new List <int>();

            list.Add(StocksDAL.FindStateCount(0));
            list.Add(StocksDAL.FindStateCount(1));
            return(Json(list));
        }
Пример #2
0
        public static Stocks GetStocksByKioskID_ProdID(int kioskid, int prodid)
        {
            var     dal = new StocksDAL();
            DataRow row = dal.GetStocksByKioskID_ProdID(kioskid, prodid);

            var ins = new Stocks();

            ins.Bind(row);

            return(ins);
        }
Пример #3
0
        /// <summary>
        /// 查询近12个月的采购单个数
        /// </summary>
        /// <returns></returns>
        public ActionResult GetStocksCountByMtoth1()
        {
            List <int> dts = new List <int>();
            DateTime   dt  = DateTime.Now.AddYears(-1);

            for (int i = 1; i <= 12; i++)
            {
                DateTime d = dt.AddMonths(i);
                dts.Add(StocksDAL.FindByYCount1(d));
            }
            return(Json(dts));
        }
Пример #4
0
        public static List <Stocks> GetStocksByReferenceAndKioskID(string directsupplier, int kioskid)
        {
            var dal        = new StocksDAL();
            var collection = new List <Stocks>();

            foreach (DataRow row in dal.GetStocksByReferenceAndKioskID(directsupplier, kioskid).Rows)
            {
                var instance = new Stocks();
                instance.Bind3(row);
                collection.Add(instance);
            }

            return(collection);
        }
Пример #5
0
        public static List <Stocks> GetKioskPhoneStocks(int id, int type)
        {
            var dal  = new StocksDAL();
            var coll = new List <Stocks>();

            foreach (DataRow row in dal.GetKioskPhoneStocks(id, type).Rows)
            {
                var ins = new Stocks();

                ins.Bind2(row);
                coll.Add(ins);
            }

            return(coll);
        }
        /// <summary>
        ///
        /// </summary>
        /// <param name="textWhere"></param>
        /// <param name="textOrder"></param>
        /// <param name="pageIndex"></param>
        /// <param name="pageRow"></param>
        /// <param name="columns"></param>
        /// <returns></returns>
        public DataTable GetLackOfInspectionListByPage(string textWhere, string textOrder, int pageIndex, int pageRow, List <string> dateColumns, out int dataCount)
        {
            DataTable supplyPlanData = GetSupplyPlanListByPage(textWhere, textOrder, pageIndex, pageRow, dateColumns, out dataCount);

            ///增加RDC数量和VMI数量
            foreach (var item in dateColumns)
            {
            }
            supplyPlanData.Columns.Add("RDC", typeof(decimal));
            supplyPlanData.Columns.Add("VMI", typeof(decimal));
            ///获取所有零件号
            List <string> partNos = new List <string>();

            foreach (DataRow dr in supplyPlanData.Rows)
            {
                string partNo = dr["PartNo"].ToString();
                if (partNos.Contains(partNo))
                {
                    continue;
                }
                partNos.Add(partNo);
            }
            List <StocksInfo>    stocksInfos    = new StocksDAL().GetList("[PART_NO] in ('" + string.Join("','", partNos.ToArray()) + "')", string.Empty);
            List <WarehouseInfo> warehouseInfos = new WarehouseDAL().GetList("[WAREHOUSE_TYPE] in (" + (int)WarehouseTypeConstants.RDC + "," + (int)WarehouseTypeConstants.VMI + ")", string.Empty);

            foreach (DataRow dr in supplyPlanData.Rows)
            {
                string partNo      = dr["PartNo"].ToString();
                string supplierNum = dr["SupplierNum"].ToString();
                string plant       = dr["Plant"].ToString();
                ///
                decimal rdcQty = stocksInfos.Where(d => warehouseInfos.Where(w => w.WarehouseType.GetValueOrDefault() == (int)WarehouseTypeConstants.RDC).Select(w => w.Warehouse).Contains(d.WmNo) &&
                                                   d.PartNo == partNo &&
                                                   d.SupplierNum == supplierNum &&
                                                   d.Plant == plant).Sum(d => d.AvailbleStocks.GetValueOrDefault());
                ///
                decimal vmiQty = stocksInfos.Where(d => warehouseInfos.Where(w => w.WarehouseType.GetValueOrDefault() == (int)WarehouseTypeConstants.VMI).Select(w => w.Warehouse).Contains(d.WmNo) &&
                                                   d.PartNo == partNo &&
                                                   d.SupplierNum == supplierNum &&
                                                   d.Plant == plant).Sum(d => d.AvailbleStocks.GetValueOrDefault());
                dr["RDC"] = rdcQty;
                dr["VMI"] = vmiQty;
            }
            return(supplyPlanData);
        }
Пример #7
0
 /// <summary>
 /// 多条件查询带分页
 /// </summary>
 /// <param name="StockID"></param>
 /// <param name="UsersName"></param>
 /// <param name="PPID"></param>
 /// <param name="StockDate"></param>
 /// <param name="StockInDate"></param>
 /// <param name="PageIndex"></param>
 /// <param name="PageSize"></param>
 /// <param name="count"></param>
 /// <returns></returns>
 public static List <Stocks> Find(string StockID, string UsersName, string PPID, string StockDate, string StockInDate, int PageIndex, int PageSize, out int count, int?StockState)
 {
     return(StocksDAL.Find(StockID, UsersName, PPID, StockDate, StockInDate, PageIndex, PageSize, out count, StockState));
 }
Пример #8
0
 internal static Stocks GetByID(string id)
 {
     return(StocksDAL.GetByID(id));
 }
Пример #9
0
 /// <summary>
 /// 修改
 /// </summary>
 /// <param name="dp"></param>
 /// <returns></returns>
 public static int EdiStocks(Stocks dp, List <StockDetail> list)
 {
     return(StocksDAL.EdiStocks(dp, list));
 }
Пример #10
0
 /// <summary>
 /// 审核采购订单
 /// </summary>
 /// <param name="id"></param>
 /// <returns></returns>
 public static int CKStocks(string id)
 {
     return(StocksDAL.CKStocks(id));
 }
Пример #11
0
 /// <summary>
 /// 添加
 /// </summary>
 /// <param name="dep"></param>
 /// <returns></returns>
 public static int AddStocks(Stocks dep, List <StockDetail> list)
 {
     return(StocksDAL.AddStocks(dep, list));
 }
Пример #12
0
 /// <summary>
 /// 删除
 /// </summary>
 /// <param name="id"></param>
 /// <returns></returns>
 public static int DelStocks(string id)
 {
     return(StocksDAL.DelStocks(id));
 }
Пример #13
0
 /// <summary>
 /// 查询所有
 /// </summary>
 /// <returns></returns>
 public static List <Stocks> GetAll()
 {
     return(StocksDAL.GetAll());
 }
Пример #14
0
 /// <summary>
 /// 分页查询
 /// </summary>
 /// <param name="PageIndex"></param>
 /// <param name="PageSize"></param>
 /// <returns></returns>
 public static List <Stocks> GetAllPage(int PageIndex, int PageSize)
 {
     return(StocksDAL.GetAllPage(PageIndex, PageSize));
 }
Пример #15
0
 public Guid Save(Stock model)
 {
     return(StocksDAL.Save(model));
 }
Пример #16
0
 public void Delete(Guid id)
 {
     StocksDAL.Delete(id);
 }
Пример #17
0
        /// <summary>
        /// 发布
        /// </summary>
        /// <param name="aId"></param>
        /// <param name="loginUser"></param>
        /// <returns></returns>
        public bool StartInfos(List <string> rowsKeyValues, string loginUser)
        {
            if (dal.GetList("[ID] IN (" + string.Join(",", rowsKeyValues) + ") and [STATUS] = " + (int)InventoryOrderStatusConstants.CREATED + "", string.Empty).Count == 0)
            {
                throw new Exception("MC:0x00000369");///状态为已创建的盘点单才允许进行发布
            }
            List <InventoryNoticeOrderInfo> info = dal.GetList("[ID] IN (" + string.Join(",", rowsKeyValues) + ")", string.Empty);

            if (info.Count == 0)
            {
                throw new Exception("MC:0x00000084");///数据错误
            }
            List <PartsStockInfo> partsStocks = new PartsStockDAL().GetList("[WM_NO] in ('" + string.Join("','", info.Select(d => d.WmNo).ToArray()) + "') and [ZONE_NO] in ('" + string.Join("','", info.Select(d => d.ZoneNo).ToArray()) + "') and [KEEPER] in ('" + string.Join("','", info.Select(d => d.Keeper).ToArray()) + "')", string.Empty);

            if (partsStocks.Count == 0)
            {
                throw new Exception("MC:0x00000370");///没有相关的物料仓储信息
            }
            List <StocksInfo> stocks = new StocksDAL().GetList("[WM_NO] in ('" + string.Join("','", partsStocks.Select(d => d.WmNo).ToArray()) + "') and [ZONE_NO] in ('" + string.Join("','", partsStocks.Select(d => d.ZoneNo).ToArray()) + "') and [PACKAGE_MODEL] in ('" + string.Join("','", partsStocks.Select(d => d.InboundPackageModel).ToArray()) + "') and [PART_NO] in ('" + string.Join("','", partsStocks.Select(d => d.PartNo).ToArray()) + "') and [SUPPLIER_NUM] in ('" + string.Join("','", partsStocks.Select(d => d.SupplierNum).ToArray()) + "')", string.Empty);
            string            check  = new ConfigBLL().GetValueByCode("NO_STOCK_MATERIAL_NOT_RELEASE_TO_INVENTORY_ORDER");
            string            stock  = new ConfigBLL().GetValueByCode("MATERIALS_USED_IN_AVAILABLE_STOCK");
            string            sql    = string.Empty;

            foreach (var item in info)
            {
                List <PartsStockInfo> partsStockInfos = partsStocks.Where(d => d.Keeper == item.Keeper && d.WmNo == item.WmNo && d.ZoneNo == item.ZoneNo).ToList();
                if (partsStockInfos.Count == 0)
                {
                    throw new Exception("MC:0x00000370");///没有相关的物料仓储信息
                }
                foreach (var items in partsStockInfos)
                {
                    List <StocksInfo> stocksInfos = stocks.Where(d => d.Keeper == items.Keeper && d.WmNo == items.WmNo && d.ZoneNo == item.ZoneNo && d.PartNo == items.PartNo).ToList();
                    string            Package     = items.Package == null ? "null" : items.Package.ToString();
                    if (check == "true")
                    {
                        int sum = 0;
                        if (stock == "true")
                        {
                            sum = (int)stocksInfos.Select(d => d.AvailbleStocks).Sum();
                        }
                        else
                        {
                            sum = (int)stocksInfos.Select(d => d.StocksNum).Sum();
                        }

                        if (sum > 0)
                        {
                            sql += "insert into [LES].[TT_WMM_INVENTORY_ORDER_PART] "
                                   + "([FID],[ORDER_CODE],[ORDER_FID],[WM_NO],[ZONE_NO],[DLOC],[PART_NO],[SUPPLIER_NUM],[PACKAGE_MODEL],[PACKAGE],[PART_CNAME],[PACKAGE_QTY],[REFERENCE_QTY],[VALID_FLAG],[CREATE_DATE],[CREATE_USER])"
                                   + "values("
                                   + "newid(),"
                                   + "N'" + item.OrderCode + "',"
                                   + "N'" + item.Fid + "',"
                                   + "N'" + items.WmNo + "',"
                                   + "N'" + items.ZoneNo + "',"
                                   + "N'" + items.Dloc + "',"
                                   + "N'" + items.PartNo + "',"
                                   + "N'" + items.SupplierNum + "',"
                                   + "N'" + items.InboundPackageModel + "',"
                                   + Package + ","
                                   + "N'" + items.PartCname + "',"
                                   + "N'" + stocksInfos.Select(d => d.Stocks).Sum() + "',"
                                   + "N'" + sum + "',"
                                   + "1,"
                                   + "GETDATE(),"
                                   + "N'" + loginUser + "'"
                                   + ")\n";
                        }
                    }
                    else
                    {
                        int sum = 0;
                        if (stock == "true")
                        {
                            sum = (int)stocksInfos.Select(d => d.AvailbleStocks).Sum();
                        }
                        else
                        {
                            sum = (int)stocksInfos.Select(d => d.StocksNum).Sum();
                        }
                        sql += "insert into [LES].[TT_WMM_INVENTORY_ORDER_PART] "
                               + "([FID],[ORDER_CODE],[ORDER_FID],[WM_NO],[ZONE_NO],[DLOC],[PART_NO],[SUPPLIER_NUM],[PACKAGE_MODEL],[PACKAGE],[PART_CNAME],[PACKAGE_QTY],[REFERENCE_QTY],[VALID_FLAG],[CREATE_DATE],[CREATE_USER])"
                               + "values("
                               + "newid(),"
                               + "N'" + item.OrderCode + "',"
                               + "N'" + item.Fid + "',"
                               + "N'" + items.WmNo + "',"
                               + "N'" + items.ZoneNo + "',"
                               + "N'" + items.Dloc + "',"
                               + "N'" + items.PartNo + "',"
                               + "N'" + items.SupplierNum + "',"
                               + "N'" + items.PackageModel + "',"
                               + Package + ","
                               + "N'" + items.PartCname + "',"
                               + "N'" + stocksInfos.Select(d => d.Stocks).Sum() + "',"
                               + "N'" + sum + "',"
                               + "1,"
                               + "GETDATE(),"
                               + "N'" + loginUser + "'"
                               + ")\n";
                    }
                }
            }


            using (TransactionScope trans = new TransactionScope())
            {
                if (string.IsNullOrEmpty(sql))
                {
                    throw new Exception("MC:0x00000440");///没有相关物料明细
                }
                sql += "update [LES].[TT_WMM_INVENTORY_NOTICE_ORDER] set [STATUS] = " + (int)InventoryOrderStatusConstants.PUBLISHED + ",[MODIFY_DATE] = GETDATE(),[MODIFY_USER] = N'" + loginUser + "' where [VALID_FLAG] = 1 and [ID] IN (" + string.Join(",", rowsKeyValues) + ") ";
                CommonDAL.ExecuteNonQueryBySql(sql);

                trans.Complete();
            }
            return(true);
        }
Пример #18
0
        public static void SetStocksByRefKiosdidProdid(string dr, int kioskid, int stocklist, int prodid, string checkby)
        {
            var dal = new StocksDAL();

            dal.SetStocksByRefKiosdidProdid(dr, kioskid, stocklist, prodid, checkby);
        }
Пример #19
0
        public static void InsertStocks(List <Stocks> collection)
        {
            var dal = new StocksDAL();

            dal.InsertStocks(collection);
        }
Пример #20
0
        public static void ModifyNewStocks(List <Stocks> newStocks, int type, int kioskid)
        {
            var dal = new StocksDAL();

            dal.ModifyNewStocks(newStocks, type, kioskid);
        }
Пример #21
0
        public static bool DeleteStocksByKiosk(int kioskID)
        {
            var dal = new StocksDAL();

            return(dal.DeleteStocksByKiosk(kioskID));
        }