Пример #1
0
        /// <summary>
        /// 查询剩余电子面单数量
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnGetElecCount_Click(object sender, EventArgs e)
        {
            if (string.IsNullOrEmpty(txtCustomerID.Text.Trim()))
            {
                txtCustomerID.Focus();
                txtCustomerID.Select();
                txtCustomerID.ShowTip("商家ID必填");
                return;
            }
            if (string.IsNullOrEmpty(txtCustomerPassword.Text.Trim()))
            {
                txtCustomerPassword.Focus();
                txtCustomerPassword.Select();
                txtCustomerPassword.ShowTip("商家ID密码必填");
                return;
            }
            var elecUserInfoEntity = new ZtoElecUserInfoEntity();

            elecUserInfoEntity.Kehuid = txtCustomerID.Text.Replace(" ", "");
            elecUserInfoEntity.Pwd    = txtCustomerPassword.Text.Replace(" ", "");
            var result        = ZtoElecBillHelper.GetElecBillCount(elecUserInfoEntity);
            int elecBillCount = 0;

            if (int.TryParse(result, out elecBillCount))
            {
                XtraMessageBox.Show(string.Format("商家ID为:{1}可用线下电子面单数量为:{0}条", result, elecUserInfoEntity.Kehuid), AppMessage.MSG0000, MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
            else
            {
                XtraMessageBox.Show(result, AppMessage.MSG0000, MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
Пример #2
0
        private void CheckZtoElecInfo()
        {
            ZtoElecUserInfoEntity elecUserInfoEntity = BillPrintHelper.GetElecUserInfoEntity();

            if (elecUserInfoEntity != null)
            {
                if (_list == null || _list.Count == 0)
                {
                    MessageUtil.ShowWarning("请认真填写好发件人和收件人的姓名、电话、省市区、地址");
                    return;
                }
                var list = ZtoElecBillHelper.BindElecBillByCustomerId(_list, elecUserInfoEntity);
                if (list != null && list.Any())
                {
                    txtBillCode.Text = list.First().BillCode;
                    txtBigPen.Text   = list.First().BigPen;
                    _list.First().BillCode = txtBillCode.Text;
                    _list.First().BigPen   = txtBigPen.Text;
                    var printBillManager   = new ZtoPrintBillManager(BillPrintHelper.DbHelper);
                    // 表示更新
                    if (!string.IsNullOrEmpty(PrintBillId))
                    {
                        list.First().Id = BaseBusinessLogic.ConvertToDecimal(PrintBillId);
                        printBillManager.Update(list.First());
                        MessageUtil.ShowTips("获取成功,已更新本地");
                    }
                    else
                    {
                        // 新增
                        printBillManager.Add(list.First(), true);
                        MessageUtil.ShowTips("获取成功,已保存本地");
                    }
                }
                else
                {
                    MessageUtil.ShowError("全部获取电子面单单号失败");
                }
            }
            else
            {
                // 在默认发件人那边修改个人的商家ID信息
                // 获取系统是否有默认发件人,如果有救修改,如果没有就新增
                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));
                if (!userList.Any())
                {
                    XtraMessageBox.Show("系统未绑定默认发件人和商家ID,请进行绑定", AppMessage.MSG0000, MessageBoxButtons.OK, MessageBoxIcon.Information);
                    FrmAddSendMan addSendMan = new FrmAddSendMan();
                    addSendMan.ShowDialog();
                    addSendMan.Dispose();
                }
                else
                {
                    XtraMessageBox.Show("默认发件人未绑定商家ID,请进行绑定", AppMessage.MSG0000, MessageBoxButtons.OK, MessageBoxIcon.Information);
                    FrmAddSendMan frmSendMan = new FrmAddSendMan {
                        Id = userList.First().Id.ToString()
                    };
                    frmSendMan.ShowDialog();
                    frmSendMan.Dispose();
                }
            }
        }
Пример #3
0
        /// <summary>
        /// 取消订单
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnBackBill_Click(object sender, EventArgs e)
        {
            ZtoElecUserInfoEntity elecUserInfoEntity = BillPrintHelper.GetElecUserInfoEntity();

            if (elecUserInfoEntity != null)
            {
                List <object> stateList = new List <object>();
                //输入单号字符串集合
                var orderNumberList = DotNet.Utilities.StringUtil.SplitMobile(txtOrderNumbers.Text, false).ToList();
                if (!orderNumberList.Any())
                {
                    XtraMessageBox.Show("没有任何的订单信息,请在左侧填写订单号进行回收");
                    return;
                }
                ZtoPrintCancelManager cancelManager = new ZtoPrintCancelManager(BillPrintHelper.DbHelper);
                foreach (var orderNumber in orderNumberList)
                {
                    string msg    = "";
                    var    result = ZtoElecBillHelper.BackZtoElecBill(orderNumber, elecUserInfoEntity, ref msg);
                    stateList.Add(new
                    {
                        订单号 = orderNumber,
                        状态  = msg
                    });
                    // 取消成功了可以把订单号和单号都清空一下
                    if (result)
                    {
                        string commandText = string.Format("UPDATE ZTO_PRINT_BILL SET ORDER_NUMBER = '', BILL_CODE = '' WHERE ORDER_NUMBER = '" + orderNumber + "'");
                        if (IsUpdateBackUpData)
                        {
                            // 同时把单号的订单取消掉,备份库的订单号和单号也要取消掉
                            BillPrintHelper.BackupDbHelper.ExecuteNonQuery(commandText);
                        }
                        else
                        {
                            // 同时把单号的订单取消掉,打印数据的取消掉就行了
                            BillPrintHelper.DbHelper.ExecuteNonQuery(commandText);
                        }
                        var temp = _printBillEntities.Find(p => p.OrderNumber.Replace(" ", "").Replace("\t", "") == orderNumber.Replace(" ", ""));
                        if (temp != null)
                        {
                            cancelManager.Add(new ZtoPrintCancelEntity()
                            {
                                OrderNumber    = temp.OrderNumber,
                                BillCode       = temp.BillCode,
                                SendMan        = temp.SendMan,
                                SendPhone      = temp.SendPhone,
                                SendAddress    = temp.SendAddress,
                                ReceiveMan     = temp.ReceiveMan,
                                ReceivePhone   = temp.ReceivePhone,
                                ReceiveAddress = temp.ReceiveAddress,
                                Remark         = "取消时间点是:" + DateTime.Now.ToString(BaseSystemInfo.DateTimeFormat)
                            });
                        }
                        else
                        {
                            cancelManager.Add(new ZtoPrintCancelEntity()
                            {
                                OrderNumber = orderNumber,
                                Remark      = "取消时间点是:" + DateTime.Now.ToString(BaseSystemInfo.DateTimeFormat)
                            });
                        }
                    }
                }
                if (stateList.Any())
                {
                    gcStatus.DataSource = stateList;
                }
            }
            else
            {
                // 获取系统是否有默认发件人,如果有救修改,如果没有就新增
                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));
                if (!userList.Any())
                {
                    XtraMessageBox.Show("系统未绑定默认发件人和商家ID,请进行绑定", AppMessage.MSG0000, MessageBoxButtons.OK, MessageBoxIcon.Information);
                    FrmAddSendMan addSendMan = new FrmAddSendMan();
                    addSendMan.ShowDialog();
                    addSendMan.Dispose();
                }
                else
                {
                    XtraMessageBox.Show("默认发件人未绑定商家ID,请进行绑定", AppMessage.MSG0000, MessageBoxButtons.OK, MessageBoxIcon.Information);
                    FrmAddSendMan frmSendMan = new FrmAddSendMan {
                        Id = userList.First().Id.ToString()
                    };
                    frmSendMan.ShowDialog();
                    frmSendMan.Dispose();
                }
            }
        }
Пример #4
0
 public void Search(string expressCode, string billCode)
 {
     try
     {
         ////请求的Url: http://www.kuaidi100.com/query?type=shunfeng&postid=201215344815&id=1&valicode=&temp=0.12316451570950449
         //string json = HttpGet("http://www.kuaidi100.com/query", "type=" + expressCode + "&postid=" + billCode + "&id=1&valicode=&temp=0.12316451570950449");
         //if (string.IsNullOrEmpty(json))
         //{
         //    return;
         //}
         //Dictionary<string, object> ht = SelectDictionary(json);
         //if (ht["status"].ToString() == "200")
         //{
         //    ArrayList aList = new ArrayList();
         //    aList = (ArrayList)ht["data"];
         //    List<BillResult> billResults = new List<BillResult>();
         //    for (int i = 0; i < aList.Count; i++)
         //    {
         //        Dictionary<string, object> di = (Dictionary<string, object>)aList[i];
         //        billResults.Add(new BillResult()
         //        {
         //            time = di["time"].ToString(),
         //            context = di["context"].ToString()
         //        });
         //    }
         //    gcBill.DataSource = billResults;
         //}
         //else
         //{
         //    XtraMessageBox.Show(ht["message"].ToString(), AppMessage.MSG0000, MessageBoxButtons.OK, MessageBoxIcon.Warning);
         //}
         ZtoElecUserInfoEntity elecUserInfoEntity = BillPrintHelper.GetElecUserInfoEntity();
         if (elecUserInfoEntity == null)
         {
             STO.Print.Utilities.MessageUtil.ShowTips("未绑定申通线下商家ID,无法查询,请在系统设置中进行绑定");
             return;
         }
         var result = ZtoElecBillHelper.GetBillRecord(billCode, elecUserInfoEntity);
         if (!string.IsNullOrEmpty(result))
         {
             var searchBillResponseEntity = JsonConvert.DeserializeObject <ZtoSearchBillResponseEntity>(result);
             if (searchBillResponseEntity.Traces != null && searchBillResponseEntity.Traces.Length > 0)
             {
                 var billResults = new List <BillResult>();
                 foreach (ZtoSearchBillResponseEntity.Trace trace in searchBillResponseEntity.Traces)
                 {
                     billResults.Add(new BillResult
                     {
                         time    = trace.AcceptTime,
                         context = trace.Remark
                     });
                 }
                 gcBill.DataSource = billResults.OrderByDescending(p => p.time).ToList();
             }
         }
         else
         {
             btnSearch.ShowTip(result);
         }
         LoadBillImage(billCode);
     }
     catch (Exception exception)
     {
         XtraMessageBox.Show(exception.Message, AppMessage.MSG0000, MessageBoxButtons.OK, MessageBoxIcon.Error);
     }
 }