Esempio n. 1
0
        private LabelNormal GetNormal(List <FNLABELEntity> labels, List <LineEntity> lines)
        {
            LabelNormal ln = new LabelNormal();

            ln.TicketNo  = labels[0].TICKET_NO;
            ln.BucketNo  = labels[0].BUCKET_NO;
            ln.ItemCode  = labels[0].ZAIKEY;
            ln.ItemName  = GetItemName(ln.ItemCode);
            ln.ColorCode = labels[0].COLOR_CODE;
            ln.Unit      = (labels[0].MASTER_UNIT_WEIGHT * 1000).ToString("F4");
            ln.Section   = labels[0].SECTION;
            ln.UserName  = labels[0].USERNAME;
            if (labels[0].OPTION_FLAG.Equals("1"))
            {
                ln.OptionFlag = "(直行)";
            }

            decimal count = 0, weight = 0;

            foreach (FNLABELEntity label in labels)
            {
                count  += label.RETRIEVAL_QTY;
                weight += label.RETRIEVAL_WEIGHT;
            }
            ln.Count  = count.ToString("F0");
            ln.Weight = weight.ToString();

            for (int i = 0; lines.Count > 0 && i < 14; i++)
            {
                ln.AddDetails(lines[0].Line, lines[0].Count.ToString("F0"), lines[0].Weight.ToString());
                lines.RemoveAt(0);
            }
            return(ln);
        }
Esempio n. 2
0
        private void PrintNormal(List <FNLABELEntity> labels)
        {
            List <LineEntity> lines = new List <LineEntity>();
            LineEntity        line  = new LineEntity();

            for (int i = 0; i < labels.Count; i++)
            {
                if (i == 0)
                {
                    line.Line         = labels[i].LINE;
                    line.Count        = labels[i].RETRIEVAL_QTY;
                    line.Weight       = labels[i].RETRIEVAL_WEIGHT;
                    line.RetrievalNo  = labels[i].RETRIEVAL_NO.Trim();
                    line.SerialNo     = labels[i].SERIAL_NO;
                    line.NecessaryQty = labels[i].NECESSARY_QTY;
                    lines.Add(line);
                }
                else
                {
                    if (line.Line == labels[i].LINE)
                    {
                        line.Count  += labels[i].RETRIEVAL_QTY;
                        line.Weight += labels[i].RETRIEVAL_WEIGHT;
                    }
                    else
                    {
                        line              = new LineEntity();
                        line.Line         = labels[i].LINE;
                        line.Count        = labels[i].RETRIEVAL_QTY;
                        line.Weight       = labels[i].RETRIEVAL_WEIGHT;
                        line.RetrievalNo  = labels[i].RETRIEVAL_NO.Trim();
                        line.SerialNo     = labels[i].SERIAL_NO;
                        line.NecessaryQty = labels[i].NECESSARY_QTY;
                        lines.Add(line);
                    }
                }

                string date = (labels[i].START_DATE.Length == 8 ? labels[i].START_DATE.Insert(4, "/").Insert(7, "/") : labels[i].START_DATE) + (labels[i].START_TIMING_FLAG == "1" ? "AM" : labels[i].START_TIMING_FLAG == "2" ? "PM" : "");
                line.LineDetail.Add(new LineDetailEntity(date, labels[i].RETRIEVAL_QTY, labels[i].RETRIEVAL_WEIGHT, labels[i].RETRIEVAL_NO.Trim(), labels[i].SERIAL_NO, labels[i].NECESSARY_QTY));
            }


            List <LabelNormal> lns = new List <LabelNormal>();
            List <LabelDetail> lds = new List <LabelDetail>();

            foreach (LineEntity l in lines)
            {
                decimal count = 0, weight = 0;
                for (int i = 0; i < l.LineDetail.Count; i++)
                {
                    count  += l.LineDetail[i].Count;
                    weight += l.LineDetail[i].Weight;
                }

                while (l.LineDetail.Count > 0)
                {
                    LabelDetail ld = GetDetail(labels[0], l);
                    ld.Weight = weight.ToString("F4");
                    ld.Count  = count.ToString("F0");
                    lds.Add(ld);
                }
            }
            while (lines.Count > 0)
            {
                LabelNormal ln = GetNormal(labels, lines);
                lns.Add(ln);
            }

            if (GetRetrievalStation(labels[0].RETRIEVAL_STATION).UNIFY_TICKET_PRINTFLG == "1")
            {
                foreach (LabelNormal ln in lns)
                {
                    pc.DoPrint(GetPrintName(labels[0].PRINTER_NO), ln);
                }
            }

            if (GetRetrievalStation(labels[0].RETRIEVAL_STATION).TICKET_PRINTFLG == "1")
            {
                foreach (LabelDetail ld in lds)
                {
                    pc.DoPrint(GetPrintName(labels[0].PRINTER_NO), ld);
                }
            }
        }