Esempio n. 1
0
        private HLACancelCheckChannelMachine.Utils.CPrintData getPrintData(List <CChaYi> chayi, CheckResult cr, ref bool isHZ)
        {
            HLACancelCheckChannelMachine.Utils.CPrintData re = new Utils.CPrintData();
            try
            {
                string curBoxNo = getBoxNo();
                re.hu          = curBoxNo;
                re.inventoryRe = cr.InventoryResult;
                re.totalNum    = 0;
                re.beizhu      = "";
                if (!mDocData.docData.Exists(i => i.hu == curBoxNo))
                {
                    return(re);
                }
                CCancelDocData docData = mDocData.docData.FirstOrDefault(i => i.hu == curBoxNo);

                re.totalNum = docData.barQty.Sum(i => i.qty);

                if (docData.mIsCp)
                {
                    re.beizhu += "客诉次品/";
                }
                if (docData.mIsHz)
                {
                    re.beizhu += "混规则/";
                    isHZ       = true;
                }
                if (docData.mIsDd)
                {
                    re.beizhu += "一箱多单/";
                }

                foreach (var v in chayi)
                {
                    Utils.CPrintContent con = new Utils.CPrintContent();

                    con.pin = v.pin;
                    con.se  = v.se;
                    con.gui = v.gui;

                    con.diff    = v.barChaYiQty;
                    con.diffAdd = v.barAddChaYiQty;
                    con.isRFID  = docData.mIsRFID;

                    re.content.Add(con);
                }
            }
            catch (System.Exception ex)
            {
                LogHelper.WriteLine(ex.Message + "\r\n" + ex.StackTrace.ToString());
            }

            return(re);
        }
Esempio n. 2
0
        public static void PrintTag(CPrintData contentData)
        {
            try
            {
                string    filepath = Application.StartupPath + "\\LabelMultiSkuCancel.mrt";
                StiReport report   = new StiReport();
                report.Load(filepath);
                report.Compile();

                report["RE"]       = contentData.inventoryRe ? "正常" : "异常";
                report["TotalNum"] = contentData.totalNum.ToString();
                report["Tag"]      = contentData.beizhu;
                report["HU"]       = contentData.hu;

                DataTable dt = new DataTable();
                dt.Columns.Add(new DataColumn("pin", Type.GetType("System.String")));
                dt.Columns.Add(new DataColumn("se", Type.GetType("System.String")));
                dt.Columns.Add(new DataColumn("gui", Type.GetType("System.String")));
                dt.Columns.Add(new DataColumn("diff", Type.GetType("System.String")));
                dt.Columns.Add(new DataColumn("diffAdd", Type.GetType("System.String")));
                dt.Columns.Add(new DataColumn("isRFID", Type.GetType("System.String")));

#if DEBUG
                CPrintContent pc = new CPrintContent();
                pc.pin     = "z";
                pc.se      = "s";
                pc.gui     = "g";
                pc.diff    = 2;
                pc.diffAdd = 2;
                pc.isRFID  = true;
                contentData.content.Add(pc);
#endif
                foreach (var v in contentData.content)
                {
                    DataRow row = dt.NewRow();
                    row["pin"]     = v.pin;
                    row["se"]      = v.se;
                    row["gui"]     = v.gui;
                    row["diff"]    = v.diff.ToString();
                    row["diffAdd"] = v.diffAdd.ToString();
                    row["isRFID"]  = v.isRFID ? "是" : "否";
                    dt.Rows.Add(row);
                }
                report.RegData("demo", dt);

                PrinterSettings printerSettings = new PrinterSettings();
                report.Print(false, printerSettings);
            }
            catch (Exception ex)
            {
                LogHelper.WriteLine(ex.Message + "\r\n" + ex.StackTrace);
            }
        }
Esempio n. 3
0
        public override CheckResult CheckData()
        {
            CheckResult result = base.CheckData();

            if (getBoxNo() == "")
            {
                result.UpdateMessage(HU_IS_NULL);
                result.InventoryResult = false;
            }

            if (!mDocData.docData.Exists(i => i.hu == getBoxNo()))
            {
                result.UpdateMessage(BU_ZAI_BEN_XIANG);
                result.InventoryResult = false;
            }

            if (result.Message.Contains(HU_IS_NULL) || result.Message.Contains(Consts.Default.XIANG_MA_BU_YI_ZHI))
            {
                //直接返回
                addGrid(result);
                return(result);
            }

            List <CChaYi> chayi = piPei3(getBoxNo());

            foreach (var v in chayi)
            {
                if (v.barChaYiQty != 0 || v.barAddChaYiQty != 0)
                {
                    result.UpdateMessage(BU_PIPEI);
                    result.InventoryResult = false;
                    break;
                }
            }

            if (result.InventoryResult)
            {
                result.UpdateMessage(Consts.Default.RIGHT);
            }

            foreach (var v in chayi)
            {
                v.inventoryRe = result.InventoryResult;
                v.msg         = result.Message;
            }

            ShowLoading("正在打印...");
            //print
            bool isHZ = false;

            Utils.CPrintData printData = getPrintData(chayi, result, ref isHZ);
            if (result.InventoryResult && printData.beizhu == "")
            {
            }
            else
            {
                Utils.PrintHelper.PrintTag(printData);
            }

            CCancelUpload uploadData = new CCancelUpload();

            uploadData.lgnum       = SysConfig.LGNUM;
            uploadData.boxno       = getBoxNo();
            uploadData.subuser     = SysConfig.CurrentLoginUser.UserId;
            uploadData.inventoryRe = result.InventoryResult;
            uploadData.equipID     = SysConfig.DeviceInfo.EQUIP_HLA;
            uploadData.loucheng    = SysConfig.DeviceInfo.LOUCENG;
            uploadData.docno       = mDocNo;
            uploadData.dianshuBoCi = mDianShuBoCi.ToString();
            uploadData.epcList.AddRange(epcList);
            uploadData.tagDetailList = tagDetailList.ToList();
            uploadData.isHZ          = isHZ;

            ShowLoading("正在上传SAP...");
            string sapRe  = "";
            string sapMsg = "";

            uploadSAP(uploadData, out sapRe, out sapMsg);

            playSound(result.InventoryResult && sapRe == "S");

            foreach (var v in chayi)
            {
                v.sapMsg = sapMsg;
                v.sapRe  = sapRe;
            }

            ShowLoading("正在保存到本地...");
            //save to local
            saveToLocal(mDocNo, getBoxNo(), result.InventoryResult ? "S" : "E", result.Message, chayi);

            addGrid(chayi);

            return(result);
        }