Пример #1
0
        /// <summary>
        /// 线程执行校验单号函数
        /// </summary>
        /// <param name="updateBillItem"></param>
        public void CheckBillList(object updateBillItem)
        {
            var item = updateBillItem as LoadPrintMarkEntity;

            try
            {
                if (item != null)
                {
                    // 循环次数 65  2
                    var length = item.PrintBillEntities.Count > 50 ? Convert.ToInt32(Math.Ceiling(item.PrintBillEntities.Count / 50.0)) : 1;
                    // 每次循环单号个数 33
                    var listNo = item.PrintBillEntities.Count / length;

                    for (int i = 1; i < length + 1; i++)
                    {
                        List <ZtoPrintBillEntity> billCodeListSend;
                        if (i == 1)
                        {
                            billCodeListSend = item.PrintBillEntities.Skip((i - 1) * listNo).Take(listNo + 1).ToList();
                        }
                        else
                        {
                            billCodeListSend = item.PrintBillEntities.Skip((i - 1) * listNo + i - 1).Take(listNo + 1).ToList();
                        }
                        // 绑定大头笔信息
                        foreach (ZtoPrintBillEntity ztoPrintBillEntity in billCodeListSend)
                        {
                            // 如果大头笔已经有了就不用联网获取了
                            var selectedRemark = new List <string> {
                                ztoPrintBillEntity.SendProvince, ztoPrintBillEntity.SendCity, ztoPrintBillEntity.SendCounty
                            };
                            var selectedReceiveMark = new List <string> {
                                ztoPrintBillEntity.ReceiveProvince, ztoPrintBillEntity.ReceiveCity, ztoPrintBillEntity.ReceiveCounty
                            };
                            var printMark = BillPrintHelper.GetRemaike(string.Join(",", selectedRemark), ztoPrintBillEntity.SendAddress, string.Join(",", selectedReceiveMark), ztoPrintBillEntity.ReceiveAddress);
                            ztoPrintBillEntity.BigPen = printMark;
                            PrintBillEntities.Add(ztoPrintBillEntity);
                        }
                        BillCodeIndex += billCodeListSend.Count;
                        //指定委托方法
                        CheckDelegate refresh = Refresh;
                        Invoke(refresh, item.Code);
                    }
                }
            }
            catch (Exception ex)
            {
                lock (Obj)
                {
                    ProcessException(ex);
                }
            }
        }
Пример #2
0
 private void BindPrintMark()
 {
     if (BaseSystemInfo.OnInternet)
     {
         if (dgvSearchReceiveArea.Text.Trim().Length == 0)
         {
             return;
         }
         var sendAreaArray = dgvSearchSendArea.Text.Split('-');
         if (sendAreaArray.Length != 3)
         {
             sendAreaArray = new[] { "", "", "" };
         }
         var receiveAreaArray = dgvSearchReceiveArea.Text.Split('-');
         if (receiveAreaArray.Length != 3)
         {
             XtraMessageBox.Show(@"收件区域填写不正确,请重新填写", AppMessage.MSG0000, MessageBoxButtons.OK, MessageBoxIcon.Error);
             dgvSearchReceiveArea.Focus();
             return;
         }
         txtReceiveDestination.Text = receiveAreaArray[0];
         //var printMark = BillPrintHelper.GetLocalPrintMark(sendAreaArray[0], receiveAreaArray[0], receiveAreaArray[1], receiveAreaArray[2]);
         //if (printMark == null)
         //{
         var selectedRemark = new List <string>()
         {
             sendAreaArray[0], sendAreaArray[1], sendAreaArray[2]
         };
         var selectedReceiveMark = new List <string>()
         {
             receiveAreaArray[0], receiveAreaArray[1], receiveAreaArray[2]
         };
         var printMark = BillPrintHelper.GetRemaike(string.Join(",", selectedRemark), txtSendAddress.Text.Trim(), string.Join(",", selectedReceiveMark), dgvSearchReceiveArea.Text.Replace("-", "") + txtReceiveAddress.Text);
         //}
         txtPrintMark.Text = printMark;
         dgvSearchReceiveArea.ShowTip(null, "机打大头笔是:" + printMark, ToolTipLocation.RightBottom, ToolTipType.SuperTip);
     }
     else
     {
         dgvSearchReceiveArea.ShowTip(null, "未连接网络,无法获取大头笔", ToolTipLocation.RightBottom, ToolTipType.SuperTip, 3000);
     }
 }
Пример #3
0
        /// <summary>
        /// 打印多份
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnPrintMore_Click(object sender, EventArgs e)
        {
            try
            {
                int printNumber;
                if (string.IsNullOrEmpty(cmbPrintNumber.Text.Trim()))
                {
                    printNumber = 1;
                }
                else
                {
                    var result = int.TryParse(cmbPrintNumber.Text, out printNumber);
                    if (!result)
                    {
                        printNumber = 1;
                    }
                }
                if (gvReceiveMan.RowCount > 0)
                {
                    ZtoUserEntity defaultSendManEntity = new ZtoUserEntity();
                    if (ckUserDefaultSendMan.Checked)
                    {
                        ZtoUserManager userManager = new ZtoUserManager(BillPrintHelper.DbHelper);
                        var            userList    = userManager.GetList <ZtoUserEntity>(new KeyValuePair <string, object>(ZtoUserEntity.FieldIsDefault, 1), new KeyValuePair <string, object>(ZtoUserEntity.FieldIssendorreceive, 1));
                        defaultSendManEntity = userList.FirstOrDefault();
                    }
                    if (defaultSendManEntity == null)
                    {
                        if (XtraMessageBox.Show(@"未添加默认发件人信息,请添加默认发件人信息", AppMessage.MSG0000, MessageBoxButtons.OK, MessageBoxIcon.Information) == DialogResult.OK)
                        {
                            var addSendMan = new FrmAddSendMan();
                            addSendMan.ShowDialog();
                            addSendMan.Dispose();
                        }
                        return;
                    }
                    var list = GetCheckedUserRecord(gvReceiveMan);
                    if (list.Any())
                    {
                        _list = new List <ZtoPrintBillEntity>();
                        foreach (ZtoUserEntity userEntity in list)
                        {
                            ZtoPrintBillEntity printBillEntity = new ZtoPrintBillEntity
                            {
                                ReceiveMan      = userEntity.Realname,
                                ReceiveProvince = userEntity.Province,
                                ReceiveCity     = userEntity.City,
                                ReceiveCounty   = userEntity.County,
                                ReceivePhone    = userEntity.Mobile,
                                ReceiveAddress  = userEntity.Address,
                                SendDate        = DateTime.Now.ToString(BaseSystemInfo.DateFormat)
                            };
                            var tempAddress = printBillEntity.ReceiveAddress;
                            if (!string.IsNullOrEmpty(tempAddress))
                            {
                                if (!string.IsNullOrEmpty(printBillEntity.ReceiveProvince))
                                {
                                    tempAddress = tempAddress.Replace(printBillEntity.ReceiveProvince, "");
                                }
                                if (!string.IsNullOrEmpty(printBillEntity.ReceiveCity))
                                {
                                    tempAddress = tempAddress.Replace(printBillEntity.ReceiveCity, "");
                                }
                                if (!string.IsNullOrEmpty(printBillEntity.ReceiveCounty))
                                {
                                    tempAddress = tempAddress.Replace(printBillEntity.ReceiveCounty, "");
                                }
                            }
                            printBillEntity.ReceiveAddress = printBillEntity.ReceiveProvince +
                                                             printBillEntity.ReceiveCity + printBillEntity.ReceiveCounty +
                                                             tempAddress;
                            printBillEntity.ReceiveCompany  = userEntity.Company;
                            printBillEntity.ReceivePostcode = userEntity.Postcode;
                            if (string.IsNullOrEmpty(printBillEntity.ReceivePhone))
                            {
                                printBillEntity.ReceivePhone = userEntity.TelePhone;
                            }
                            if (ckUserDefaultSendMan.Checked)
                            {
                                printBillEntity.SendMan        = defaultSendManEntity.Realname;
                                printBillEntity.SendPhone      = defaultSendManEntity.Mobile + " " + defaultSendManEntity.TelePhone;
                                printBillEntity.SendProvince   = defaultSendManEntity.Province;
                                printBillEntity.SendCity       = defaultSendManEntity.City;
                                printBillEntity.SendCounty     = defaultSendManEntity.County;
                                printBillEntity.SendAddress    = defaultSendManEntity.Address;
                                printBillEntity.SendSite       = "";
                                printBillEntity.SendDate       = DateTime.Now.ToString(BaseSystemInfo.DateFormat);
                                printBillEntity.SendDeparture  = defaultSendManEntity.Province;
                                printBillEntity.SendCompany    = defaultSendManEntity.Company;
                                printBillEntity.SendDepartment = defaultSendManEntity.Department;
                                printBillEntity.SendPostcode   = defaultSendManEntity.Postcode;
                                var selectedRemark = new List <string> {
                                    printBillEntity.SendProvince, printBillEntity.SendCity, printBillEntity.SendCounty
                                };
                                var selectedReceiveMark = new List <string> {
                                    printBillEntity.ReceiveProvince, printBillEntity.ReceiveCity, printBillEntity.ReceiveCounty
                                };
                                var printMark = BillPrintHelper.GetRemaike(string.Join(",", selectedRemark), printBillEntity.SendAddress, string.Join(",", selectedReceiveMark), printBillEntity.ReceiveAddress);
                                printBillEntity.BigPen = printMark;
                            }

                            for (int i = 0; i < printNumber; i++)
                            {
                                _list.Add(printBillEntity);
                            }
                        }
                        GreatReport();
                        _report.PrintPreview(true);
                    }
                    else
                    {
                        XtraMessageBox.Show(@"请选择收件人数据。", AppMessage.MSG0000, MessageBoxButtons.OK, MessageBoxIcon.Information);
                    }
                }
                else
                {
                    XtraMessageBox.Show(@"请添加收件人数据。", AppMessage.MSG0000, MessageBoxButtons.OK, MessageBoxIcon.Information);
                }
            }
            catch (Exception exception)
            {
                XtraMessageBox.Show(exception.StackTrace, AppMessage.MSG0000, MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
Пример #4
0
        /// <summary>
        /// 线程执行校验单号函数
        /// </summary>
        /// <param name="updateBillItem"></param>
        public void CheckBillList(object updateBillItem)
        {
            var item = updateBillItem as LoadPrintMarkEntity;

            try
            {
                if (item != null)
                {
                    // 循环次数 65  2
                    var length = item.PrintBillEntities.Count > 50 ? Convert.ToInt32(Math.Ceiling(item.PrintBillEntities.Count / 50.0)) : 1;
                    // 每次循环单号个数 33
                    var listNo = item.PrintBillEntities.Count / length;

                    for (int i = 1; i < length + 1; i++)
                    {
                        List <ZtoPrintBillEntity> billCodeListSend;
                        if (i == 1)
                        {
                            billCodeListSend = item.PrintBillEntities.Skip((i - 1) * listNo).Take(listNo + 1).ToList();
                        }
                        else
                        {
                            billCodeListSend = item.PrintBillEntities.Skip((i - 1) * listNo + i - 1).Take(listNo + 1).ToList();
                        }
                        // 获取发件人的省市区
                        foreach (ZtoPrintBillEntity ztoPrintBillEntity in billCodeListSend)
                        {
                            if (string.IsNullOrEmpty(ztoPrintBillEntity.SendProvince) && string.IsNullOrEmpty(ztoPrintBillEntity.SendCity) && string.IsNullOrEmpty(ztoPrintBillEntity.SendCounty))
                            {
                                if (!string.IsNullOrEmpty(ztoPrintBillEntity.SendAddress))
                                {
                                    var baiAddressEntity = BaiduMapHelper.GetProvCityDistFromBaiduMap(ztoPrintBillEntity.SendAddress);
                                    if (baiAddressEntity != null)
                                    {
                                        ztoPrintBillEntity.SendProvince = baiAddressEntity.Result.AddressComponent.Province;
                                        ztoPrintBillEntity.SendCity     = baiAddressEntity.Result.AddressComponent.City;
                                        ztoPrintBillEntity.SendCounty   = baiAddressEntity.Result.AddressComponent.District;
                                        ZtoPrintBillEntity entity = ztoPrintBillEntity;
                                        marqueeProgressBarControl1.BeginInvoke(new Action(() =>
                                        {
                                            marqueeProgressBarControl1.Text = string.Format("正在获取发件人省市区({0}-{1}-{2}),数据加载中,请稍后...", entity.SendProvince, entity.SendCity, entity.SendCounty);
                                        }));
                                    }
                                }
                            }
                        }
                        // 获取收件人的省市区
                        foreach (ZtoPrintBillEntity ztoPrintBillEntity in billCodeListSend)
                        {
                            if (string.IsNullOrEmpty(ztoPrintBillEntity.ReceiveProvince) && string.IsNullOrEmpty(ztoPrintBillEntity.ReceiveCity) && string.IsNullOrEmpty(ztoPrintBillEntity.ReceiveCounty))
                            {
                                if (!string.IsNullOrEmpty(ztoPrintBillEntity.ReceiveAddress))
                                {
                                    var baiAddressEntity = BaiduMapHelper.GetProvCityDistFromBaiduMap(ztoPrintBillEntity.ReceiveAddress);
                                    if (baiAddressEntity != null)
                                    {
                                        ztoPrintBillEntity.ReceiveProvince = baiAddressEntity.Result.AddressComponent.Province;
                                        ztoPrintBillEntity.ReceiveCity     = baiAddressEntity.Result.AddressComponent.City;
                                        ztoPrintBillEntity.ReceiveCounty   = baiAddressEntity.Result.AddressComponent.District;
                                        ZtoPrintBillEntity entity = ztoPrintBillEntity;
                                        marqueeProgressBarControl1.BeginInvoke(new Action(() =>
                                        {
                                            marqueeProgressBarControl1.Text = string.Format("正在获取收件人省市区({0}-{1}-{2}),数据加载中,请稍后...", entity.ReceiveProvince, entity.ReceiveCity, entity.ReceiveCounty);
                                        }));
                                    }
                                }
                            }
                        }
                        // 绑定大头笔信息
                        foreach (ZtoPrintBillEntity ztoPrintBillEntity in billCodeListSend)
                        {
                            // 如果大头笔已经有了就不用联网获取了
                            var selectedRemark = new List <string> {
                                ztoPrintBillEntity.SendProvince, ztoPrintBillEntity.SendCity, ztoPrintBillEntity.SendCounty
                            };
                            var selectedReceiveMark = new List <string> {
                                ztoPrintBillEntity.ReceiveProvince, ztoPrintBillEntity.ReceiveCity, ztoPrintBillEntity.ReceiveCounty
                            };
                            var printMark = BillPrintHelper.GetRemaike(string.Join(",", selectedRemark), ztoPrintBillEntity.SendAddress, string.Join(",", selectedReceiveMark), ztoPrintBillEntity.ReceiveAddress);
                            ztoPrintBillEntity.BigPen = printMark;
                            PrintBillEntities.Add(ztoPrintBillEntity);
                            ZtoPrintBillEntity entity = ztoPrintBillEntity;
                            marqueeProgressBarControl1.BeginInvoke(new Action(() =>
                            {
                                marqueeProgressBarControl1.Text = string.Format("正在获取大头笔({0}),数据加载中,请稍后...", entity.BigPen);
                            }));
                        }
                        BillCodeIndex += billCodeListSend.Count;
                        //指定委托方法
                        CheckDelegate refresh = Refresh;
                        Invoke(refresh, item.Code);
                    }
                }
            }
            catch (Exception ex)
            {
                ProcessException(ex);
            }
        }