Esempio n. 1
0
 private void bigbox_Click(object sender, EventArgs e)
 {
     this.checkedBox = boxsManager.Find(Box.Size.L);
     if (this.checkedBox == null)
     {
         errMsg.Text = "找不到合适的柜子";
         return;
     }
     checkedInfo        = Box.Size.L;
     this.boxChose.Text = checkedBox.CoordinateInfo.X.ToString() + checkedBox.CoordinateInfo.Y.ToString() + "号大柜";
     CLog4net.LogInfo("选取柜门:" + checkedBox.Code);
 }
Esempio n. 2
0
        private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
        {
            int code = (int)dataGridView1.Rows[e.RowIndex].Cells["code"].Value;

            //openbox
            if (e.ColumnIndex == 5)
            {
                bool issuccess = bm.Find(code).Open();

                //MessageBox.Show(issuccess.ToString());
                UpdateData();
            }
            //删包裹
            if (e.ColumnIndex == 6)
            {
                DataGridViewDisableButtonCell btnCell = (DataGridViewDisableButtonCell)dataGridView1.Rows[e.RowIndex].Cells["deletePackage"];
                if (btnCell.Enabled)
                {
                    bool issuccess = pm.TakePackage(code, 2);
                    //MessageBox.Show(issuccess.ToString());
                    UpdateData();
                }
            }
            //disable box
            if (e.ColumnIndex == 7)
            {
                //DataGridViewDisableButtonCell btnCell = (DataGridViewDisableButtonCell)dataGridView1.Rows[e.RowIndex].Cells["open"];
                if (bm.Find(code).CurrentState == Box.State.Fault)
                {
                    bm.DisableBox(code);
                    //btnCell.Enabled = true;
                    UpdateData();
                }
                else
                {
                    bm.EnableBox(code);
                    UpdateData();
                }
            }
        }
Esempio n. 3
0
        private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
        {
            try
            {
                int code = (int)dataGridView1.Rows[e.RowIndex].Cells["code"].Value;
                //openbox
                if (e.ColumnIndex == 5)
                {
                    bool issuccess = bm.Find(code).Open();
                    UpdateData();

                    CLog4net.LogInfo("管理员开箱:" + code);
                }
                //删包裹
                if (e.ColumnIndex == 6)
                {
                    DataGridViewDisableButtonCell btnCell = (DataGridViewDisableButtonCell)dataGridView1.Rows[e.RowIndex].Cells[deletePackageColName];
                    if (btnCell.Enabled)
                    {
                        DialogResult dr = MessageBox.Show("确认操作", "Information", MessageBoxButtons.OKCancel, MessageBoxIcon.Exclamation);
                        if (dr == DialogResult.Cancel)
                        {
                            return;
                        }

                        BoxsManager.GetInstance().ClearBox(code);
                        //MessageBox.Show(issuccess.ToString());
                        UpdateData();

                        bool issuccess = pm.TakePackage(code, 2);
                        CLog4net.LogInfo("管理员删除包裹:" + code + " success:" + issuccess);

                        ServerCallback3 sc = serverService.ManagerDeletePackage(code.ToString(), AboutConfig.GetInstance().GetAbout());
                        if (!sc.Success)
                        {
                            CLog4net.LogInfo("管理员删除包裹失败:" + code + " 服务器信息:" + sc.Message);
                            //return; //如果是因为服务器找不到需要删除的包裹,删包裹失败返回,那么客户端箱子将永远不能清空;
                        }
                    }
                }
                //disable box
                if (e.ColumnIndex == 7)
                {
                    DialogResult dr = MessageBox.Show("确认操作", "Information", MessageBoxButtons.OKCancel, MessageBoxIcon.Exclamation);
                    if (dr == DialogResult.Cancel)
                    {
                        return;
                    }
                    //DataGridViewDisableButtonCell btnCell = (DataGridViewDisableButtonCell)dataGridView1.Rows[e.RowIndex].Cells["open"];
                    if (bm.Find(code).CurrentState == Box.State.Fault)
                    {
                        bm.EnableBox(code);
                        //btnCell.Enabled = true;
                        UpdateData();

                        CLog4net.LogInfo("管理员启用箱子:" + code);
                    }
                    else
                    {
                        bm.DisableBox(code);
                        UpdateData();

                        CLog4net.LogInfo("管理员停用箱子:" + code);
                    }
                }
            }
            catch (Exception ex)
            {
                CLog4net.LogError("管理员操作异常:" + ex.ToString());
            }
        }
Esempio n. 4
0
        //取件时点击确定后的事件实现
        private void inputPwdPanel1_confirmEvent(object sender, EventArgs e)
        {
            //验证密码
            string password = inputPwdPanel1.getPwd().Trim();

            //校验不能为空
            if (password.Equals(""))
            {
                inputPwdPanel1.errorMessage("密码不能为空");
            }
            else
            {
                ServerCallback callback = serverService.RceiverLogin(password, this.about);
                if (callback.Success)
                {
                    bool issuccess = cameraService.TakePicture();
                    CLog4net.LogInfo("拍照是否成功:" + issuccess.ToString());
                    int tempcode = 0;
                    try
                    {
                        tempcode = Convert.ToInt32(callback.BoxCode);
                    }
                    catch (Exception err)
                    {
                        CLog4net.LogError("inputPwdPanel1_confirmEvent callback.BoxCode" + callback.BoxCode + " " + err);
                    }

                    //开箱
                    Box box = boxsManager.Find(tempcode);
                    if (box.Open())
                    {
                        boxsManager.ClearBox(tempcode);
                        //柜子地址
                        courierNum = box.CoordinateInfo.X.ToString() + box.CoordinateInfo.Y.ToString();
                        //跳转下一页
                        NavGetPackageSuccessState();
                        //设置信息
                        getPackageSuccess1.setInfo(courierNum);
                        string s = String.Format("取件成功,您的包裹在{0}号箱,请关闭柜门,谢谢", courierNum);
                        voiceService.BroadcastOnce(s);
                        CLog4net.LogInfo("取件成功");

                        Package package = packageManager.TakePackage(callback);
                        if (package != null)
                        {
                            //拍照
                            tempPackage = package;

                            if (package.Place.Code != box.Code)
                            {
                                CLog4net.LogError("服务器与客户端查询箱子不一致,服务器boxcode:" + callback.BoxCode + " 客户端boxcode:" + package.Place.Code + " 快递号:" + package.SN);
                            }
                        }
                        else
                        {
                            CLog4net.LogInfo("服务器与客户端查询箱子不一致:" + callback.BoxCode);
                        }
                    }
                    else
                    {
                        voiceService.BroadcastOnce("开柜失败");
                        returnSuccess1.errorMessage("如果储物柜无法打开,请联系管理员");
                        CLog4net.LogInfo("如果储物柜无法打开,请联系管理员:" + tempcode);
                    }
                }
                else
                {
                    if (callback.Message == null)
                    {
                        inputPwdPanel1.errorMessage("网络或者服务器连接失败");
                        voiceService.BroadcastOnce("网络或者服务器连接失败");
                        CLog4net.LogInfo("网络或者服务器连接异常");
                    }
                    else
                    {
                        if (callback.Message != "")
                        {
                            inputPwdPanel1.errorMessage(callback.Message);
                            voiceService.BroadcastOnce(callback.Message);
                            CLog4net.LogInfo(callback.Message);
                        }
                        else
                        {
                            inputPwdPanel1.errorMessage("取件密码错误");
                            voiceService.BroadcastOnce("密码错误");
                            CLog4net.LogInfo("取件密码错误");
                        }
                    }
                }
            }
        }