示例#1
0
        public bool AddGoods(Goods good, out string result)
        {
            if (GoodsList.Exists(c => c.area_id == good.area_id &&
                                 c.width == good.width &&
                                 c.length == good.length &&
                                 (c.color.Equals(good.color) || c.name.Equals(good.name))))
            {
                result = "已经存在一样的规格的信息了!";
                return(false);
            }

            if (!Monitor.TryEnter(_go, TimeSpan.FromSeconds(2)))
            {
                result = "";
                return(false);
            }

            try
            {
                uint goodid = PubMaster.Dic.GenerateID(DicTag.NewGoodId);
                good.id = goodid;
                good.GoodCarrierType = PubMaster.Area.GetCarrierType(good.area_id);
                PubMaster.Mod.GoodSql.AddGoods(good);
                GoodsList.Add(good);
                SendMsg(good, ActionTypeE.Add);
                PubMaster.Dic.UpdateVersion(DicTag.PDA_GOOD_VERSION);
                result = "";
                return(true);
            }
            finally
            {
                Monitor.Exit(_go);
            }
        }
示例#2
0
        public List <Goods> GetStockOutGoodsList(uint filterarea)
        {
            List <uint> goodsids = StockList.FindAll(c => c.area == filterarea &&
                                                     (c.TrackType == TrackTypeE.储砖_出 || c.TrackType == TrackTypeE.储砖_出入)).Select(t => t.goods_id).ToList();

            return(GoodsList.FindAll(c => c.area_id == filterarea && goodsids.Contains(c.id)));
        }
示例#3
0
        public void CheckTrackSum(uint trackId)
        {
            StockSum sum = StockSumList.Find(c => c.track_id == trackId);

            uint goodsid = StockList.Find(c => c.track_id == trackId && c.goods_id != 0)?.goods_id ?? 0;

            if (sum == null)
            {
                Track track = PubMaster.Track.GetTrack(trackId);
                sum = new StockSum()
                {
                    track_id     = trackId,
                    goods_id     = goodsid,
                    produce_time = StockList.Find(c => trackId == c.track_id).produce_time,
                    area         = track.area,
                    track_type   = track.type
                };
                StockSumList.Add(sum);
                SortSumList();
            }
            if (goodsid > 0)
            {
                Goods goods = GoodsList.Find(c => c.id == goodsid);
                if (goods != null)
                {
                    sum.count  = (uint)StockList.Count(c => c.track_id == trackId);
                    sum.stack  = sum.count * goods.stack;
                    sum.pieces = sum.stack * goods.pieces;
                    SendSumMsg(sum, ActionTypeE.Update);
                }
            }
        }
示例#4
0
        public bool EditGood(Goods good, out string result)
        {
            if (!Monitor.TryEnter(_go, TimeSpan.FromSeconds(2)))
            {
                result = "";
                return(false);
            }
            try
            {
                Goods g = GoodsList.Find(c => c.id == good.id);
                if (g != null)
                {
                    g.name        = good.name;
                    g.color       = good.color;
                    g.width       = good.width;
                    g.length      = good.length;
                    g.oversize    = good.oversize;
                    g.memo        = good.memo;
                    g.stack       = good.stack;
                    g.pieces      = good.pieces;
                    g.carriertype = good.carriertype;
                    g.updatetime  = DateTime.Now;
                    PubMaster.Mod.GoodSql.EditGoods(g);
                    SendMsg(g, ActionTypeE.Update);
                    PubMaster.Dic.UpdateVersion(DicTag.PDA_GOOD_VERSION);
                    result = "";
                    return(true);
                }
            }
            finally { Monitor.Exit(_go); }

            result = "找不到该品种信息:" + good.name;
            return(false);
        }
示例#5
0
 public void GoodSearch(object obj = null) => Task.Factory.StartNew(() =>
 {
     GoodsList = fullGoodsList;
     if (!String.IsNullOrEmpty(GoodSearchText))
     {
         var searchList = GoodSearchText.Split(' ');
         if (searchList.Count() > 0)
         {
             foreach (var item in searchList)
             {
                 if (!String.IsNullOrEmpty(item))
                 {
                     var text  = item?.ToUpper()?.Trim(' ') ?? "";
                     GoodsList = GoodsList.Where(
                         x => (x.Name?.ToUpper().Trim(' ').Contains(text) ?? false) ||
                         (x.Id?.ToUpper().Trim(' ').Contains(text) ?? false) ||
                         (x.Manufacturer?.ToUpper().Trim(' ').Contains(text) ?? false) ||
                         (x.Code?.ToUpper().Trim(' ').Contains(text) ?? false) ||
                         (x.BarCode?.ToUpper().Trim(' ').Contains(text) ?? false)
                         ).ToList();
                 }
             }
         }
     }
 });
示例#6
0
        protected override GoodViewsList getRandomObject()
        {
            var l = new GoodsList(null, null);

            SetRandom.Values(l);
            return(new GoodViewsList(l));
        }
示例#7
0
        protected void Page_Load(object sender, EventArgs e)
        {
            trace_id = Request.QueryString["trace_id"].IsNumber() ? Convert.ToInt32(Request.QueryString["trace_id"]) : 0;
            SqlHelper helper = LocalSqlHelper.WH;
            string    Sql    = "select isnull(sum(price*quantity),0) as all_sales,isnull(sum(price*quantity),0) as all_quantity from Tb_cashier_cart where cashier_id=@cashier_id and is_return=1 and trace_id=@trace_id";

            helper.Params.Add("@cashier_id", my_admin_id);
            helper.Params.Add("@trace_id", trace_id);
            DataTable dt = helper.ExecDataTable(Sql);

            all_sales = 0 - Convert.ToDouble(dt.Rows[0]["all_sales"]);

            if (!Page.IsPostBack)
            {
                TextRealMoney.Text = all_sales.ToString();
                int all_quantity = Convert.ToInt32(dt.Rows[0]["all_quantity"]);
                if (all_quantity == 0)
                {
                    JSHelper.WriteScript("alert('没有待结算商品');history.back();");
                    return;
                }

                helper.Params.Clear();
                Sql = "select *,sales=price*quantity from Tb_cashier_cart where  cashier_id=@cashier_id and is_return=1 and trace_id=@trace_id";
                helper.Params.Add("@cashier_id", my_admin_id);
                helper.Params.Add("@trace_id", trace_id);
                dt = helper.ExecDataTable(Sql);
                for (int i = 0; i < dt.Rows.Count; i++)
                {
                    // total_money += Convert.ToDouble(dt.Rows[i]["sales"]);
                    // total_goods += Convert.ToDouble(dt.Rows[i]["quantity"]);
                }
                GoodsList.DataShow(dt);
            }
        }
示例#8
0
        protected void Page_Load(object sender, EventArgs e)
        {
            id      = Convert.ToInt32(Request["id"]);
            work_id = Convert.ToInt32(Request["work_id"]);
            if (!Page.IsPostBack)
            {
                Session["anti_refresh"] = "1";

                int wm_id = 0;


                string Sql = "select a.wm_id,a.quantity,b.*,all_out_cost=0.00,all_do_cost=b.do_cost*a.quantity,all_other_cost=b.other_cost*a.quantity from dbo.Tb_Working_main a left join Tb_template b on a.tpl_id=b.tpl_id where a.work_id=" + work_id + " and a.operator_id=@operator_id";
                helper.Params.Add("@operator_id", my_admin_id);
                DataTable dt = helper.ExecDataTable(Sql);
                for (int i = 0; i < dt.Rows.Count; i++)
                {
                    dt.Rows[i]["all_out_cost"] = Convert.ToDouble(dt.Rows[i]["all_do_cost"]) + Convert.ToDouble(dt.Rows[i]["all_other_cost"]);
                    total_do_cost    += Convert.ToDouble(dt.Rows[i]["all_do_cost"]);
                    total_other_cost += Convert.ToDouble(dt.Rows[i]["all_other_cost"]);
                    total_out_cost   += Convert.ToDouble(dt.Rows[i]["all_out_cost"]);
                    total_goods      += Convert.ToDouble(dt.Rows[i]["quantity"]);
                }
                GoodsList.DataShow(dt);
                //产品,增加,修改,删除
            }
        }
示例#9
0
        private void FillItemListWithTestData()
        {
            var bus = new Goods
            {
                Id            = 1,
                Name          = "Bus",
                Description   = "School bus",
                Cost          = 50000,
                Image         = "/cars/icons8-bus-64.png",
                ButtonContent = ButtonAction.Buy
            };
            var limousine = new Goods
            {
                Id            = 2,
                Name          = "Limousine",
                Description   = "Elite class",
                Cost          = 10000,
                Image         = "/cars/icons8-limousine-filled-50.png",
                ButtonContent = ButtonAction.Buy
            };
            var pickup = new Goods
            {
                Id            = 3,
                Name          = "Pickup",
                Description   = "Workhorse",
                Cost          = 20000,
                Image         = "/cars/icons8-pickup-48.png",
                ButtonContent = ButtonAction.Buy
            };
            var suv = new Goods
            {
                Id            = 4,
                Name          = "Suv",
                Description   = "Sport class",
                Cost          = 35000,
                Image         = "/cars/icons8-suv-48.png",
                ButtonContent = ButtonAction.Buy
            };
            var tesla = new Goods
            {
                Id            = 5,
                Name          = "Tesla",
                Description   = "Electric car",
                Cost          = 50000,
                Image         = "/cars/icons8-tesla-model-x-filled-50.png",
                ButtonContent = ButtonAction.Buy
            };

            GoodsList.Add(bus);
            GoodsList.Add(limousine);
            GoodsList.Add(pickup);
            GoodsList.Add(suv);
            GoodsList.Add(tesla);

            foreach (var goods in GoodsList)
            {
                goods.ActionEvent     += () => ActionEvent(goods);
                goods.PropertyChanged += GoodsPropertyChanged;
            }
        }
示例#10
0
 public List <Goods> GetGoodsList(uint filterarea)
 {
     if (filterarea == 0)
     {
         return(GetGoodsList());
     }
     return(GoodsList.FindAll(c => c.area_id == filterarea));
 }
示例#11
0
        //捆绑搜索订单
        protected void bindOrder(int page)
        {
            SqlHelper sp = LocalSqlHelper.WH;

            string    sql = "select * from Tb_ComplaintType with(nolock) order by typeid ";
            DataTable dt  = sp.ExecDataTable(sql);

            GoodsList.DataShow(dt);
        }
示例#12
0
        //捆绑搜索订单
        protected void bindOrder()
        {
            SqlHelper sp    = LocalSqlHelper.WH;
            int       count = 0;

            string    sql = "select * from TB_GoodsReturn with (nolock) where ChangeFlag=" + pid.ToString();
            DataTable dt  = sp.ExecDataTable(sql);

            GoodsList.DataShow(dt);
        }
示例#13
0
        private bool CampareGoodWidth(uint one, uint two)
        {
            Goods goodonw = GoodsList.Find(c => c.id == one);
            Goods goodtwo = GoodsList.Find(c => c.id == two);

            if (goodonw != null && goodtwo != null)
            {
                return(goodonw.width < goodtwo.width);
            }
            return(false);
        }
示例#14
0
        //捆绑搜索订单
        protected void bindOrder()
        {
            string where = getWhere();
            SqlHelper sp    = LocalSqlHelper.WH;
            int       count = 0;
            DataTable dt;

            dt = sp.ExecDataTable("select * from TB_GoodsReturn where " + getWhere());
            GoodsList.DataShow(dt);
            SiteHelper.ToExcel(GoodsList, "goods");
        }
示例#15
0
        //捆绑搜索订单
        protected void bindOrder(int page)
        {
            string where = getWhere();
            SqlHelper sp    = LocalSqlHelper.WH;
            int       count = 0;
            DataTable dt;

            dt = sp.TablesPageNew("Tb_Complaint", "*", "Status asc,ID desc", true, Pager.PageSize, page, where, out count);
            GoodsList.DataShow(dt);
            Pager.RecordCount       = count;
            Pager.UrlRewritePattern = "ComplaintList.aspx?page={0}&" + queryStr;
        }
示例#16
0
        public override double totalPrice()
        {
            double orignPirce = GoodsList.Sum(goods => goods.Num * goods.Price);
            double total      = 0;
            var    dicSort    = from objDic in fullReduce orderby objDic.Key ascending select objDic;

            foreach (KeyValuePair <double, double> item in dicSort)
            {
                if (orignPirce > item.Key)
                {
                    total -= item.Value;
                    break;
                }
            }
            return(total);
        }
示例#17
0
        //捆绑搜索订单
        protected void bindOrder()
        {
            string where = getWhere();
            SqlHelper sp = LocalSqlHelper.WH;

            string    sql = "select typeid,typeName,count1=0,count2=0,count3=0 from Tb_ComplaintType order by typeId";
            DataTable dt  = sp.ExecDataTable(sql);

            for (int i = 0; i < dt.Rows.Count; i++)
            {
                dt.Rows[i]["count1"] = sp.ExecScalar("select isnull(count(*),0) from Tb_Complaint where " + where + " and typeId=" + dt.Rows[i]["typeid"].ToString() + " and status=0"); //待处理
                dt.Rows[i]["count2"] = sp.ExecScalar("select isnull(count(*),0) from Tb_Complaint where " + where + " and typeId=" + dt.Rows[i]["typeid"].ToString() + " and status=1"); //处理中
                dt.Rows[i]["count3"] = sp.ExecScalar("select isnull(count(*),0) from Tb_Complaint where " + where + " and typeId=" + dt.Rows[i]["typeid"].ToString() + " and status=2"); //已处理
            }
            GoodsList.DataShow(dt);
        }
示例#18
0
        protected void bindTemplatePro()
        {
            string Sql = "select a.wm_id,a.quantity,b.*,all_out_cost=0.00,all_do_cost=b.do_cost*a.quantity,all_other_cost=b.other_cost*a.quantity from Tb_Working_main a left join Tb_template b on a.tpl_id=b.tpl_id where a.work_id=" + work_id + " and a.operator_id=@operator_id";

            helper.Params.Add("@operator_id", my_admin_id);
            DataTable dt = helper.ExecDataTable(Sql);

            for (int i = 0; i < dt.Rows.Count; i++)
            {
                dt.Rows[i]["all_out_cost"] = Convert.ToDouble(dt.Rows[i]["all_do_cost"]) + Convert.ToDouble(dt.Rows[i]["all_other_cost"]);
                total_do_cost    += Convert.ToDouble(dt.Rows[i]["all_do_cost"]);
                total_other_cost += Convert.ToDouble(dt.Rows[i]["all_other_cost"]);
                total_out_cost   += Convert.ToDouble(dt.Rows[i]["all_out_cost"]);
                total_goods      += Convert.ToDouble(dt.Rows[i]["quantity"]);
            }
            GoodsList.DataShow(dt);
        }
示例#19
0
        public void Refresh(bool refr_1 = true, bool refr_2 = true, bool refr_3 = true)
        {
            if (refr_1)
            {
                GoodsList.Clear();
                GoodsList.AddRange(PubMaster.Mod.GoodSql.QueryGoodsList());
            }

            if (refr_2)
            {
                StockList.Clear();
                StockList.AddRange(PubMaster.Mod.GoodSql.QueryStockList());
            }

            if (refr_3)
            {
                StockSumList.Clear();
                StockSumList.AddRange(PubMaster.Mod.GoodSql.QueryStockSumList());
            }
        }
示例#20
0
        public string Get()
        {
            List <GoodsModel> list = new List <GoodsModel> {
                new GoodsModel {
                    price = "69.90", title = "德芙", img = "http://m.360buyimg.com/babel/s211x211_jfs/t3688/270/776223567/128582/fa074fb3/58170f6dN6b9a12bf.jpg"
                },
                new GoodsModel {
                    price = "63.00", title = "费列罗", img = "http://m.360buyimg.com/babel/s211x211_jfs/t613/100/1264998035/221234/1a29d51f/54c34525Nb4f6581c.jpg"
                },
                new GoodsModel {
                    price = "29.90", title = "大米", img = "http://m.360buyimg.com/babel/s211x211_jfs/t1258/40/17387560/108696/aced445f/54e011deN3ae867ae.jpg"
                },
                new GoodsModel {
                    price = "54.90", title = "安慕希", img = "http://m.360buyimg.com/babel/s211x211_jfs/t2734/15/680373407/215934/3abaa748/572057daNc09b5da7.jpg"
                },
                new GoodsModel {
                    price = "58.90", title = "金典", img = "http://m.360buyimg.com/babel/s211x211_jfs/t2482/145/1424008556/91991/d62f5454/569f47a2N3f763060.jpg"
                },
                new GoodsModel {
                    price = "60.00", title = "味可滋", img = "http://m.360buyimg.com/babel/s211x211_jfs/t2368/3/874563950/70786/7b5e8edd/563074c8N4d535db4.jpg"
                },
                new GoodsModel {
                    price = "248.00", title = "泸州老窖", img = "http://m.360buyimg.com/babel/s211x211_jfs/t283/166/1424018055/189580/7c0792b7/543b4958N05fa2feb.jpg"
                },
                new GoodsModel {
                    price = "328.80", title = "剑南春", img = "http://m.360buyimg.com/babel/s350x350_g15/M05/1A/0A/rBEhWlNeLAwIAAAAAAHyok3PZY0AAMl8gO8My0AAfK6307.jpg"
                },
                new GoodsModel {
                    price = "49.00", title = "蓝莓", img = "http://m.360buyimg.com/babel/s211x211_jfs/t2332/148/2952098628/94387/e64654e2/56f8d76aNb088c2ab.jpg"
                },
                new GoodsModel {
                    price = "68.00", title = "芒果", img = "http://m.360buyimg.com/n0/jfs/t3709/334/1378702984/206759/5c100ab5/58253588Naaa05c5c.jpg!q70.jpg"
                }
            };

            GoodsList GoodsList = new GoodsList();

            GoodsList.goods = list;

            return(JsonConvert.SerializeObject(GoodsList));
        }
示例#21
0
        public bool DeleteGood(uint goodid, out string result)
        {
            if (PubMaster.Device.ExistDevByGid(goodid))
            {
                result = "砖机配置了该规格!";
                return(false);
            }

            if (PubMaster.Goods.ExistStockInTrackByGid(goodid))
            {
                result = "储砖库存内有该规格";
                return(false);
            }

            if (!Monitor.TryEnter(_go, TimeSpan.FromSeconds(2)))
            {
                result = "";
                return(false);
            }
            try
            {
                Goods gs = GetGoods(goodid);
                if (gs != null)
                {
                    DeleteStockByGid(goodid);
                    Thread.Sleep(500);

                    PubMaster.Mod.GoodSql.DeleteGoods(gs);
                    GoodsList.Remove(gs);
                    SendMsg(gs, ActionTypeE.Delete);
                    result = "删除成功:" + gs.name;
                    return(true);
                }
            }
            finally { Monitor.Exit(_go); }

            result = "删除失败!";
            return(false);
        }
示例#22
0
    private void GetGoodsListSuccess(GoodsList result)
    {
        goodsOptionView.enabled = true;
        payView.enabled         = true;

        List <Dropdown.OptionData> options = new List <Dropdown.OptionData>();

        foreach (GoodsInfo goodsInfo in result.goods)
        {
            string goodsId           = goodsInfo.goodsId;
            Dropdown.OptionData item = new Dropdown.OptionData();
            item.text = goodsId;
            options.Add(item);
        }
        goodsOptionView.AddOptions(options);
        goodsOptionView.itemText.text = options[0].text;
        currentGoodsId = result.goods[0].goodsId;
        goodsOptionView.onValueChanged.AddListener(delegate(int index)
        {
            currentGoodsId = result.goods[index].goodsId;
            goodsOptionView.itemText.text = result.goods[index].goodsId;
        });
    }
示例#23
0
        /// <summary>
        /// 获取轨道库存最大规格
        /// </summary>
        /// <param name="trackid"></param>
        /// <returns></returns>
        private Goods GetTrackGoods(uint trackid)
        {
            uint goodsid = StockList.Find(c => c.track_id == trackid)?.goods_id ?? 0;

            if (goodsid != 0)
            {
                //是否存在不同规格的库存在同一个轨道
                if (StockList.Exists(c => c.track_id == trackid && c.goods_id != goodsid))
                {
                    var goodsids = StockList.FindAll(c => c.track_id == trackid)
                                   .GroupBy(x => new { x.goods_id })
                                   .Select(t => t.Key.goods_id);
                    foreach (var goodid in goodsids)
                    {
                        if (CampareGoodWidth(goodsid, goodid))
                        {
                            goodsid = goodid;
                        }
                    }
                }
                return(GoodsList.Find(c => c.id == goodsid));
            }
            return(null);
        }
示例#24
0
        public override double totalPrice()
        {
            double orignPirce = GoodsList.Sum(goods => goods.Num * goods.Price);

            return(orignPirce * discount);
        }
示例#25
0
 public CarrierTypeE GetGoodsCarrierType(uint goods_id)
 {
     return(GoodsList.Find(c => c.id == goods_id).GoodCarrierType);
 }
示例#26
0
 private byte GetGoodStack(uint goodid)
 {
     return(GoodsList.Find(c => c.id == goodid)?.stack ?? 1);
 }
示例#27
0
 public string GetGoodsName(uint Goods_id)
 {
     return(GoodsList.Find(c => c.id == Goods_id)?.name ?? "");
 }
示例#28
0
 public byte GetGoodsPieces(uint goodid)
 {
     return((byte)(GoodsList.Find(c => c.id == goodid)?.pieces ?? 0));
 }
示例#29
0
 public Goods GetGoods(uint id)
 {
     return(GoodsList.Find(c => c.id == id));
 }
示例#30
0
文件: Program.cs 项目: lorvis/study
 static void Main(string[] args)
 {
     Commander chief = new Commander("Alex", "Popov");
     AutoRifle ak_47 = new AutoRifle(firearmDmgTypes.PIERCING, "AK-47", 5000, 5, 40,firearmFireModes.AUTO | firearmFireModes.BURST | firearmFireModes.SINGLE);
     Rifleman strelok = new Rifleman("Mecheniy", "Strelok", 80, 150, 70, ak_47);
     MeleeWeapon sword = new MeleeWeapon(meleeDmgTypes.CUTTING, "ZWEIHANDER", 15000, 4, 12);
     MeleeWarrior mechnik;
     try
     {
         new MeleeWarrior("Alexander", "of Macedon", 20, 15, 35, null);
     }
     catch(WarriorException e)
     {
         if(e.wInfo != null)
         {
             if (e.wInfo.Name == "Alexander" && e.wInfo.Surname == "of Macedon")
             {
                 Console.WriteLine("\nEXCEPTION CAUGHT, HERE'S YOUR SWORD, MACEDONSKY\n");
                 mechnik = new MeleeWarrior("Alexander", "Makedonsky", 20, 15, 35, sword);
             }
             else
             {
                 Console.WriteLine("YOU ARE NOT MACEDONSKY!");
                 throw e;
             }
         }
         else
         {
             Console.WriteLine("WARRIOR'S INFO IS NULL!");
             throw e;
         }
     }
     catch(Exception e)
     {
         Console.WriteLine(e);
         Environment.Exit(1);
     }
     finally
     {
         mechnik = new MeleeWarrior("Alexander", "Makedonsky", 20, 15, 35, sword);
     }
     chief.addSubordinate(strelok);
     chief.addSubordinate(mechnik);
     Target mountain = new Target("GORA", 10000);
     Target sea = new Target("MORE", 100000);
     Target horse = new Target("LOSHAD'", 100);
     Target[] tseli = { mountain, sea, horse };
     chief.target(tseli);
     //chief.commandAttack();
     strelok.readyAll();
     strelok.attack();
     strelok.attack();
     mechnik.readyAll();
     Console.WriteLine("\n\n");
     mechnik.attack();
     mechnik.attack();
     Console.WriteLine("\n\n");
     chief.commandAttack();
     chief.commandAttack();
     Console.WriteLine("\n\n");
     Target earth = new Target("EARTH", 1000000);
     Target river = new Target("RIVER", 50000);
     Target volcano = new Target("VOLCANO", 600000);
     Target[] tseli2 = { earth, river, volcano };
     AutoRifle fort = new AutoRifle(firearmDmgTypes.PIERCING, "FORT", 10000, 50, 80, firearmFireModes.AUTO | firearmFireModes.BURST | firearmFireModes.SINGLE);
     Rifleman soldier = new Rifleman("Ukrainian", "Soldier", 666, 666, 666, fort);
     chief.removeSubordinate(strelok);
     chief.addSubordinate(soldier);
     chief.target(tseli2);
     chief.commandAttack();
     Console.WriteLine("Completed successfully !!");
     GoodsList < Weapon > weps = new GoodsList<Weapon>();
     weps.len();
     Console.ReadKey();
 }
示例#31
0
 public bool IsGoodsOverSize(uint goods_id)
 {
     return(GoodsList.Find(c => c.id == goods_id)?.oversize ?? true);
 }