Пример #1
0
        private void Form1_Shown(object sender, EventArgs e)
        {
            SqliteDataService.delOldData();

            if (SysConfig.IsTest)
            {
                List <CTagSumDif> d = new List <CTagSumDif>();
                for (int i = 0; i < 30; i++)
                {
                    CTagSumDif dif = new CTagSumDif("123", "123", "456", "zsa", "zcol", "zgui", 1, 0, i + 1, 0);
                    d.Add(dif);
                }
                printErrorLabelMulti("123", "345", d);
            }
        }
Пример #2
0
        public List <CTagSumDif> duibi(List <CMatQty> std)
        {
            List <CTagSumDif> re = new List <CTagSumDif>();

            if (std != null && std.Count > 0)
            {
                List <string> matList = tagDetailList.Select(i => i.MATNR).Distinct().ToList();
                foreach (var v in matList)
                {
                    TagDetailInfo ti = tagDetailList.FirstOrDefault(i => i.MATNR == v);

                    if (std.Exists(i => i.mat == v))
                    {
                        bool       hasAdd = !string.IsNullOrEmpty(ti.BARCD_ADD);
                        int        stdQty = std.First(i => i.mat == v).qty;
                        CTagSumDif d      = new CTagSumDif(ti.MATNR, ti.BARCD, ti.BARCD_ADD, ti.ZSATNR, ti.ZCOLSN, ti.ZSIZTX
                                                           , tagDetailList.Count(i => i.MATNR == v && !i.IsAddEpc), tagDetailList.Count(i => i.MATNR == v && i.IsAddEpc)
                                                           , tagDetailList.Count(i => i.MATNR == v && !i.IsAddEpc) - stdQty
                                                           , tagDetailList.Count(i => i.MATNR == v && i.IsAddEpc) - (hasAdd ? stdQty : 0));
                        re.Add(d);
                    }
                    else
                    {
                        CTagSumDif d = new CTagSumDif(ti.MATNR, ti.BARCD, ti.BARCD_ADD, ti.ZSATNR, ti.ZCOLSN, ti.ZSIZTX
                                                      , tagDetailList.Count(i => i.MATNR == v && !i.IsAddEpc), tagDetailList.Count(i => i.MATNR == v && i.IsAddEpc)
                                                      , tagDetailList.Count(i => i.MATNR == v && !i.IsAddEpc), tagDetailList.Count(i => i.MATNR == v && i.IsAddEpc));
                        re.Add(d);
                    }
                }

                foreach (var v in std)
                {
                    if (!matList.Exists(i => i == v.mat))
                    {
                        MaterialInfo mi     = materialList.FirstOrDefault(i => i.MATNR == v.mat);
                        HLATagInfo   ti     = hlaTagList.FirstOrDefault(i => i.MATNR == v.mat);
                        bool         hasAdd = false;
                        if (ti != null && !string.IsNullOrEmpty(ti.BARCD_ADD))
                        {
                            hasAdd = true;
                        }
                        CTagSumDif d = new CTagSumDif(v.mat, ti != null ? ti.BARCD : "", ti != null ? ti.BARCD_ADD : ""
                                                      , mi != null ? mi.ZSATNR : "", mi != null ? mi.ZCOLSN : "", mi != null ? mi.ZSIZTX : ""
                                                      , 0, 0
                                                      , 0 - v.qty, 0 - (hasAdd ? v.qty : 0));
                        re.Add(d);
                    }
                }
            }
            else
            {
                List <string> matList = tagDetailList.Select(i => i.MATNR).Distinct().ToList();
                foreach (var v in matList)
                {
                    TagDetailInfo ti = tagDetailList.FirstOrDefault(i => i.MATNR == v);

                    CTagSumDif d = new CTagSumDif(ti.MATNR, ti.BARCD, ti.BARCD_ADD, ti.ZSATNR, ti.ZCOLSN, ti.ZSIZTX
                                                  , tagDetailList.Count(i => i.MATNR == v && !i.IsAddEpc), tagDetailList.Count(i => i.MATNR == v && i.IsAddEpc)
                                                  , tagDetailList.Count(i => i.MATNR == v && !i.IsAddEpc), tagDetailList.Count(i => i.MATNR == v && i.IsAddEpc));
                    re.Add(d);
                }
            }

            return(re);
        }