/// <summary> /// 制卡时, 逻辑卡号不一致确认是否修改逻辑卡号 /// </summary> private void ModifyICCardID(string strPhysicalCardID, string strData) { if (!CStaticClass.CheckPushService()) {// 检查服务 return; } QueryServiceClient proxy = new QueryServiceClient(); PushServiceClient push = new PushServiceClient(new System.ServiceModel.InstanceContext(CStaticClass.myCallback)); try { string str = string.Format("当前卡片已经是本系统卡,确认是否将用户卡号修改为{0}?", strData);//用户卡号是{1}, DialogResult dr = MessageBox.Show(str, "提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Asterisk); if (dr == DialogResult.Cancel) { return; } CarLocationPanelLib.PushService.EnmFaultType type = push.ModifyICCardID(strPhysicalCardID, strData); switch (type) { // 修改成功 case CarLocationPanelLib.PushService.EnmFaultType.Success: { MessageBox.Show("修改成功!", "成功", MessageBoxButtons.OK, MessageBoxIcon.Asterisk); break; } // 当前IC卡没有制卡 case CarLocationPanelLib.PushService.EnmFaultType.NoICCardInfo: { MessageBox.Show("当前IC卡未制卡:" + strData, "警告", MessageBoxButtons.OK, MessageBoxIcon.Warning); break; } // 更新数据库失败 case CarLocationPanelLib.PushService.EnmFaultType.FailToUpdate: { MessageBox.Show("更新数据库失败", "警告", MessageBoxButtons.OK, MessageBoxIcon.Warning); break; } // 传入的参数卡号为空 case CarLocationPanelLib.PushService.EnmFaultType.Null: { MessageBox.Show("传入的参数卡号为空", "警告", MessageBoxButtons.OK, MessageBoxIcon.Warning); break; } // IC卡注销或挂失 case CarLocationPanelLib.PushService.EnmFaultType.LossORCancel: { MessageBox.Show("IC卡注销或挂失", "警告", MessageBoxButtons.OK, MessageBoxIcon.Warning); break; } // IC卡类型不正确 case CarLocationPanelLib.PushService.EnmFaultType.NotMatch: { MessageBox.Show("IC卡类型不正确", "警告", MessageBoxButtons.OK, MessageBoxIcon.Warning); break; } case CarLocationPanelLib.PushService.EnmFaultType.Exception: { MessageBox.Show(CStaticClass.GetExceptionInfo(null), "连接异常", MessageBoxButtons.OK, MessageBoxIcon.Error); break; } default: { MessageBox.Show("修改失败", "警告", MessageBoxButtons.OK, MessageBoxIcon.Warning); break; } } } catch (TimeoutException) { MessageBox.Show("The service operation timed out. ", "超时", MessageBoxButtons.OK, MessageBoxIcon.Error); } catch (FaultException exception) { MessageBox.Show(CStaticClass.GetExceptionInfo(exception), "SOAP错误", MessageBoxButtons.OK, MessageBoxIcon.Error); } catch (CommunicationException exception) { MessageBox.Show("There was a communication problem. " + CStaticClass.GetExceptionInfo(exception), "通信错误", MessageBoxButtons.OK, MessageBoxIcon.Error); } catch (Exception exception) { MessageBox.Show(CStaticClass.GetExceptionInfo(exception), "应用程序异常", MessageBoxButtons.OK, MessageBoxIcon.Error); } proxy.Close(); push.Close(); }