private bool CreatePG() { ServerCallback3 serviceShakeHand = frmMain.serverService.ServiceShakeHand(frmMain.about, null); if (serviceShakeHand.Success == false) { frmMain.ShowSystemPromptMessage("网络或者服务器连接失败,请稍后再试"); frmMain.voiceService.BroadcastOnce("网络或者服务器连接失败,请稍后再试"); CLog4net.LogInfo("网络或者服务器连接异常"); return(false); } //创建包裹 Package p = frmMain.packageManager.CreatePackage(courier.Code, courier.CompanyName, sn, telNum, checkedBox); ServerCallback serverConnect = frmMain.serverService.PackageCreate(p, frmMain.about); if (serverConnect.Success) { //拍照 bool issuccess = frmMain.cameraService.TakePicture(); CLog4net.LogInfo("拍照是否成功:" + issuccess.ToString()); frmMain.boxsManager.UserBox(checkedBox.Code); frmMain.packageManager.CreatePackageSuccess(p); CLog4net.LogInfo("创建包裹成功"); return(true); } else { /** * 包裹发送到服务器失败,该次操作不成功 * */ if (serverConnect.Message != null && serverConnect.Message != "") { frmMain.ShowSystemPromptMessage(serverConnect.Message); frmMain.voiceService.BroadcastOnce(serverConnect.Message); CLog4net.LogInfo(serverConnect.Message); } else { frmMain.ShowSystemPromptMessage("网络或者服务器连接失败,请稍后再试"); frmMain.voiceService.BroadcastOnce("网络或者服务器连接失败,请稍后再试"); CLog4net.LogInfo("包裹发送到服务器失败"); } return(false); } }
private void buttonExit_Click(object sender, EventArgs e) { CLog4net.LogInfo("点击退出系统"); if (MessageBox.Show("确认退出系统", "Confirm Message", MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.Yes) { CLog4net.LogInfo("退出系统"); this.Dispose(); Application.Exit(); } else { CLog4net.LogInfo("取消退出系统"); } }
public void Load() { this.eLocksManager = ELocksManager.GetInstance(); /** * 从数据库获取锁控板列表 * * */ DatabaseService service = Service.Factory.ServicesFactory.GetInstance().GetDatabaseService(); this.locks = service.GetELock(); CLog4net.LogInfo("ELocksManager is Loaded"); }
public override void Start(params object[] args) { CLog4net.LogInfo("点击后台,进入身份验证界面"); base.Start(); base.labelMessage.Text = "提示信息:刷卡或输入卡号密码"; this.textBoxUser.Text = ""; this.textBoxPassword.Text = ""; this.textBoxUser.Focus(); IniConfigManager iniConfig = new IniConfigManager(); this.labelVersion.Text = "客户端版本号:" + System.Reflection.Assembly.GetExecutingAssembly().GetName().Version.ToString(); }
/// <summary> /// 清空柜子 /// </summary> /// <param name="code"></param> public void ClearBox(int code) { Box box = Find(code); if (box == null) { CLog4net.LogInfo("未找到箱子:" + code); return; } box.IsIdle = true; bool sucess = databaseService.UpdateBox(box); CLog4net.LogInfo("清空箱子:" + code + " " + sucess); }
/// <summary> /// 进入创建包裹结束界面 /// </summary> /// <param name="ConsigneeTel"></param> /// <param name="TrackingNum"></param> /// <param name="courierNum"></param> private void NavSavePackageSuccessState(string ConsigneeTel, string TrackingNum, string courierNum) { CLog4net.LogInfo("进入创建包裹结束界面"); //显示寄存信息 savePackageSuccess1.setInfo(ConsigneeTel, TrackingNum, courierNum); string voiceString = string.Format("存件成功,您的包裹在{0}号箱,请确认柜门关闭,谢谢", courierNum); voiceService.BroadcastOnce(voiceString); savePackageSuccess1.BringToFront(); currentPanel = panelName.savePackageSuccess; savePackageSuccess1.errorMessage(""); resetCountdownAndBack(10, true, true); }
private void Stop() { try { if (voice != null) { voice.Speak(string.Empty, SpeechVoiceSpeakFlags.SVSFPurgeBeforeSpeak); } } catch (Exception e) { CLog4net.LogError("语音播报停止错误" + e); } }
public override void Start(params object[] args) { CLog4net.LogInfo("进入选择智能柜界面"); frmMain.voiceService.BroadcastOnce("请选择合适大小的箱子"); base.Start(); base.labelMessage.Text = "提示信息:请选择合适大小的箱子"; Tick = (int)args[0]; courier = (Courier)args[1]; checkedBox = (Box)args[2]; int[] boxCount = frmMain.boxsManager.GetAvailableBoxCount(); //更新页面的box数量 updateBoxNum(boxCount[2], boxCount[1], boxCount[0]); }
public bool Open(int code) { bool success = false; ELock eLock = ELocksManager.GetInstance().GetLock(code); if (eLock == null) { CLog4net.LogError("根据柜号:" + code + " 寻找锁号失败:eLock==nulll"); return(false); } if (eLock.BoxCode == 0) { CLog4net.LogError("根据柜号:" + code + " 寻找锁号失败:eLock.BoxCode == 0"); return(false); } try { if (isDebug) { return(true); } VCI_CAN_OBJ obj = PDUProducter.CreateOpenCmd(Convert.ToUInt32(eLock.Address), Convert.ToUInt32(eLock.Password), Convert.ToInt32(eLock.Value), timeout); VCI_CAN_OBJ response = CanManager.GetInsatnce().SendPdu(obj); if (response.Data != null) { bool parameterLegal = response.Data[0] == 1 ? true : false; bool passwordPass = response.Data[1] == 1 ? true : false; bool isReceivedData = response.Data[2] == 1 ? true : false; success = (isReceivedData & passwordPass & parameterLegal) == true ? true : false; if (!success) { CLog4net.LogError("Can发送开箱 " + "parameterLegal:" + parameterLegal + " passwordPass" + passwordPass + " parameterLegal" + parameterLegal); } } else { CLog4net.LogError("Can发送开箱 " + "response.Data == null"); } } catch (Exception e) { CLog4net.LogError("Can控制器OPEN异常: " + e.ToString()); return(false); } return(success); }
private void buttonXReboot_Click(object sender, EventArgs e) { CLog4net.LogInfo("点击重启"); if (MessageBox.Show("确认重启", "Confirm Message", MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.Yes) { CLog4net.LogInfo("确认重启"); this.Dispose(); Application.Exit(); System.Diagnostics.Process.Start(System.Reflection.Assembly.GetExecutingAssembly().Location); } else { CLog4net.LogInfo("取消重启"); } }
public override void Start(params object[] args) { CLog4net.LogInfo("点击寄件,进入确认快递信息界面"); frmMain.voiceService.BroadcastOnce("请确认快递信息"); base.Start(); if (args.Length > 0) { courier = (Courier)args[0]; checkedBox = (Box)args[1]; sn = (string)args[2]; telNum = (string)args[3]; } this.labelMessage.Text = string.Format("您存如的快递信息如下:\r\r快递单号:{0}\r收件人手机号码:{1}", sn, telNum); }
/// <summary> /// 进入选择智能柜界面 /// </summary> private void NavChooseBoxState() { CLog4net.LogInfo("进入选择智能柜界面"); voiceService.BroadcastOnce("请选择智能柜"); this.tempChooseBox = null; int[] boxCount = boxsManager.GetAvailableBoxCount(); //更新页面的box数量 chooseBox1.updateBoxNum(boxCount[2], boxCount[1], boxCount[0]); chooseBox1.BringToFront(); chooseBox1.clearCheckedInfo(); chooseBox1.errorMessage(""); currentPanel = panelName.chooseBox; resetCountdownAndBack(120, true, true); }
public string GetServerTimeup() { string result = ""; try { result = this.iniFileController.IniReadValue("Server", "Timeup"); } catch (Exception e) { CLog4net.LogError(e); } return(result); }
public string GetDatabasePassword() { string result = ""; try { result = this.iniFileController.IniReadValue("Database", "Password"); } catch (Exception e) { CLog4net.LogError(e); } return(result); }
public string GetUpdateAppName() { string result = ""; try { result = this.iniFileController.IniReadValue("UpdateApp", "Name"); } catch (Exception e) { CLog4net.LogError(e); } return(result); }
public string GetAdvPath() { string result = ""; try { result = this.iniFileController.IniReadValue("Adv", "Path"); } catch (Exception e) { CLog4net.LogError(e); } return(result); }
public string GetAboutCommissioningData() { string result = ""; try { result = this.iniFileController.IniReadValue("About", "CommissioningData"); } catch (Exception e) { CLog4net.LogError(e); } return(result); }
public ServerCallback3 ManagerDeletePackage(string boxCode, About about) { ServerCallback3 sc = new ServerCallback3(); string loginUrl = about.ServerUrl; Encoding encoding = Encoding.GetEncoding("gb2312"); IDictionary <string, string> parameters = new Dictionary <string, string>(); string datetime = UnixTime.ConvertDateTimeToUnixTime(DateTime.Now).ToString(); string token = CMD5.UserMd5(boxCode) + CMD5.UserMd5(datetime) + CMD5.UserMd5(CMD5.UserMd5(about.CabinetCode)); parameters.Add("token", CMD5.UserMd5(token)); parameters.Add("box", boxCode); parameters.Add("cabinetCode", about.CabinetCode); parameters.Add("datetime", datetime); parameters.Add("c", "Admin"); parameters.Add("a", "openbox"); try { string result = ""; using (HttpWebResponse response = HttpWebResponseUtility.CreatePostHttpResponse(loginUrl, parameters, timeoutMSecond, null, encoding, null)) { string cookieString = response.Headers["Set-Cookie"]; using (StreamReader reader = new StreamReader(response.GetResponseStream(), System.Text.Encoding.UTF8)) { result = reader.ReadToEnd(); } } StringReader sr = new StringReader(result); JsonSerializer serializer = new JsonSerializer(); try { sc = (ServerCallback3)serializer.Deserialize(new JsonTextReader(sr), typeof(ServerCallback3)); } catch (Exception e) { sc = null; CLog4net.LogError(e.ToString()); } CLog4net.LogInfo("服务器连接:" + result); } catch (Exception e) { CLog4net.LogError("ManagerDeletePackage " + e); } return(sc); }
private void ShowCurrentModle(About a) { switch (a.Model) { case "a": this.qr.Visible = false; frmMain.voiceService.BroadcastOnce("请输入取件密码"); break; case "b": this.qr.Visible = true; this.qr.Text = a.CabinetCode; frmMain.voiceService.BroadcastOnce("请扫描二维码或输入取件密码"); break; case "c": this.qr.Visible = false; frmMain.voiceService.BroadcastOnce("请扫描二维码或输入取件密码"); if (this.vguangQR == null) { this.vguangQR = new VGuangQR(); this.vguangQR.Load(); try { //设置扫码成功时的回调 VGuangQR.decodeCall = new VGuangQR.DecodeCallBack(decodeCallBackStr); VGuangQR.setDecodeCallBack(VGuangQR.decodeCall); //设置设备状态变化时回调 VGuangQR.deviceStatusCall = new VGuangQR.DeviceStatusCallBack(deviceStatusCallBack); VGuangQR.setDeviceStatusCallBack(VGuangQR.deviceStatusCall); } catch (Exception e) { CLog4net.LogError(e); } } else { this.vguangQR.OpenDevice(); } break; default: this.qr.Visible = false; frmMain.voiceService.BroadcastOnce("请输入取件密码"); break; } }
public bool ResponseOpenBoxCmd(string code, bool isOpen, About about) { ServerCallback2 sc = new ServerCallback2(); string loginUrl = about.ServerUrl; Encoding encoding = Encoding.GetEncoding("gb2312"); IDictionary <string, string> parameters = new Dictionary <string, string>(); string datetime = UnixTime.ConvertDateTimeToUnixTime(DateTime.Now).ToString(); string orderstatus = isOpen == true ? "boxopened" : "error"; string token = CMD5.UserMd5(code) + CMD5.UserMd5(datetime); parameters.Add("token", CMD5.UserMd5(token)); parameters.Add("code", code); parameters.Add("orderstatus", orderstatus); parameters.Add("datetime", datetime); parameters.Add("c", "Pack"); parameters.Add("a", "remoteOpenBoxFeedback"); try { string result = ""; using (HttpWebResponse response = HttpWebResponseUtility.CreatePostHttpResponse(loginUrl, parameters, timeoutMSecond, null, encoding, null)) { string cookieString = response.Headers["Set-Cookie"]; using (StreamReader reader = new StreamReader(response.GetResponseStream(), System.Text.Encoding.UTF8)) { result = reader.ReadToEnd(); } } StringReader sr = new StringReader(result); JsonSerializer serializer = new JsonSerializer(); try { sc = (ServerCallback2)serializer.Deserialize(new JsonTextReader(sr), typeof(ServerCallback2)); } catch (Exception e) { CLog4net.LogError(e); } CLog4net.LogInfo("服务器连接:" + result); } catch (Exception e) { CLog4net.LogError("ResponseOpenBoxCmd" + e); } return(sc.Received); }
/// <summary> /// 快递员取回 /// </summary> /// <param name="pac"></param> /// <param name="about"></param> /// <returns></returns> public ServerCallback CourierTackBack(string sn, Courier cour, Resource.About about) { ServerCallback sc = new ServerCallback(); string loginUrl = about.ServerUrl + courierTackBack; Encoding encoding = Encoding.GetEncoding("gb2312"); IDictionary <string, string> parameters = new Dictionary <string, string>(); string datetime = UnixTime.ConvertDateTimeToUnixTime(DateTime.Now).ToString(); string token = CMD5.UserMd5(cour.Code) + CMD5.UserMd5(datetime); parameters.Add("token", CMD5.UserMd5(token)); parameters.Add("courierCode", cour.Code); parameters.Add("packageCode", sn); parameters.Add("cabinetCode", about.CabinetCode); parameters.Add("datetime", datetime); parameters.Add("c", "Courier"); parameters.Add("a", "getback"); try { string result = ""; using (HttpWebResponse response = HttpWebResponseUtility.CreatePostHttpResponse(loginUrl, parameters, timeoutMSecond, null, encoding, null)) { string cookieString = response.Headers["Set-Cookie"]; using (StreamReader reader = new StreamReader(response.GetResponseStream(), System.Text.Encoding.UTF8)) { result = reader.ReadToEnd(); } } StringReader sr = new StringReader(result); JsonSerializer serializer = new JsonSerializer(); try { sc = (ServerCallback)serializer.Deserialize(new JsonTextReader(sr), typeof(ServerCallback)); } catch (Exception e) { CLog4net.LogError(e.ToString()); } CLog4net.LogInfo("服务器连接:" + result); } catch (Exception e) { CLog4net.LogError("CourierTackBack" + e); } return(sc); }
/// <summary> /// 移除不在目录中图片 /// </summary> /// <param name="images"></param> private void RemoveOldImages(List <string> images) { try { bool over = false; while (over == false) { DirectoryInfo TheFolder = new DirectoryInfo(adFile); FileInfo[] files = TheFolder.GetFiles(); if (files.Length == 0) { over = true; break; } bool[] pass = new bool[files.Length]; for (int i = 0; i < files.Length; i++) { for (int j = 0; j < images.Count; j++) { if (files[i].Name == images[j]) { pass[i] = true; continue; } } } bool resutl = true; for (int k = 0; k < pass.Length; k++) { if (pass[k] == false) { files[k].Delete(); } resutl = resutl & pass[k]; } over = resutl; } } catch (Exception e) { CLog4net.LogError("RemoveOldImages " + e); } }
public VoiceServiceImplByDotNetSpeech() { try { if (voice == null) { voice = new SpVoice(); sFlags = SpeechVoiceSpeakFlags.SVSFlagsAsync; setDescription("VW Lily"); } } catch (Exception e) { CLog4net.LogError("语音初始化错误" + e); } }
public string GetServerUpdateURL() { string result = ""; try { result = this.iniFileController.IniReadValue("Server", "UpdateURL"); } catch (Exception e) { result = "http://darene.cn/dareneApi/baimitong/update.xml"; CLog4net.LogError(e); } return(result); }
public string GetAboutVersion() { string result = ""; try { result = this.iniFileController.IniReadValue("About", "Version"); } catch (Exception e) { result = "1.0.0"; CLog4net.LogError(e); } return(result); }
public string GetCanTimeout() { string result = ""; try { result = this.iniFileController.IniReadValue("Can", "Timeout"); } catch (Exception e) { result = "100"; CLog4net.LogError(e); } return(result); }
public string GetCanDebug() { string result = ""; try { result = this.iniFileController.IniReadValue("Can", "Debug"); } catch (Exception e) { result = "false"; CLog4net.LogError(e); } return(result); }
/// <summary> /// 快递柜配置 /// </summary> /// <param name="about"></param> /// <returns></returns> public ServerCallback CabinetConfig(Resource.About about) { ServerCallback sc = new ServerCallback(); string loginUrl = about.ServerUrl + courierLogin; Encoding encoding = Encoding.GetEncoding("gb2312"); IDictionary <string, string> parameters = new Dictionary <string, string>(); parameters.Add("cabinetName", about.Name); parameters.Add("companyName", about.CompanyName); parameters.Add("address", about.Address); parameters.Add("telNum", about.TelNum); parameters.Add("configTime", UnixTime.ConvertDateTimeToUnixTime(about.ConfigTime).ToString()); parameters.Add("createdTime", UnixTime.ConvertDateTimeToUnixTime(about.CreatedTime).ToString()); parameters.Add("remark", about.Remark); try { string result = ""; using (HttpWebResponse response = HttpWebResponseUtility.CreatePostHttpResponse(loginUrl, parameters, timeoutMSecond, null, encoding, null)) { string cookieString = response.Headers["Set-Cookie"]; using (StreamReader reader = new StreamReader(response.GetResponseStream(), System.Text.Encoding.UTF8)) { result = reader.ReadToEnd(); } } StringReader sr = new StringReader(result); JsonSerializer serializer = new JsonSerializer(); try { sc = (ServerCallback)serializer.Deserialize(new JsonTextReader(sr), typeof(ServerCallback)); } catch (Exception e) { CLog4net.LogError("CabinetConfig" + e); } CLog4net.LogInfo("服务器连接:" + result); } catch (Exception e) { CLog4net.LogError(e); } return(sc); }
/// <summary> /// 根据size随机寻找一个空闲有用的柜子 /// </summary> /// <param name="size"></param> /// <returns></returns> public Box Find(Box.Size size) { #region 方法1 //try //{ // List<Box> boxs = new List<Box>(); // IDictionaryEnumerator enu = BoxsDictionary.GetEnumerator(); // while (enu.MoveNext()) // { // Box cab = (Box)(enu.Entry.Value); // if (cab.IsIdle && cab.ThisSize.Equals(size) && !cab.CurrentState.Equals(Box.State.Fault)) // { // boxs.Add(cab); // } // } // if (boxs.Count == 0) // { // CLog4net.LogError("根据size随机寻找一个空闲有用的柜子失败:"+size.ToString()); // return null; // } // int index = new Random().Next(boxs.Count); // return this.BoxsDictionary[boxs[index].Code]; //} //catch (Exception e) //{ // CLog4net.LogError("Box Find:" + e); // return null; //} #endregion #region 方法2 try { Box box = databaseService.GetIdleBoxBySize(size); return(box); } catch (Exception e) { CLog4net.LogError("Box Find:" + e); return(null); } #endregion }
public bool PackagePickUpLog(Resource.PickUpLog log, About about) { ServerCallback sc = new ServerCallback(); string loginUrl = about.ServerUrl + packageDeliverLog; Encoding encoding = Encoding.GetEncoding("gb2312"); IDictionary <string, string> parameters = new Dictionary <string, string>(); parameters.Add("courierCode", log.CourierCode.ToString()); parameters.Add("sn", log.Sn); parameters.Add("boxCode", log.BoxCode.ToString()); parameters.Add("receiverTelNum", log.ReceiverTelNum); parameters.Add("cabinetCode", about.CabinetCode.ToString()); parameters.Add("deletedTime", UnixTime.ConvertDateTimeToUnixTime(log.DeletedTime).ToString()); parameters.Add("receiverIdentity", log.ReceiverIdentity.ToString()); parameters.Add("remark", log.Remark); try { string result = ""; using (HttpWebResponse response = HttpWebResponseUtility.CreatePostHttpResponse(loginUrl, parameters, timeoutMSecond, null, encoding, null)) { string cookieString = response.Headers["Set-Cookie"]; using (StreamReader reader = new StreamReader(response.GetResponseStream(), System.Text.Encoding.UTF8)) { result = reader.ReadToEnd(); } } StringReader sr = new StringReader(result); JsonSerializer serializer = new JsonSerializer(); try { sc = (ServerCallback)serializer.Deserialize(new JsonTextReader(sr), typeof(ServerCallback)); } catch (Exception e) { CLog4net.LogError(e.ToString()); } CLog4net.LogInfo("服务器连接:" + result); } catch (Exception e) { CLog4net.LogError("PackagePickUpLog" + e); } return(sc.Success); }