Exemple #1
0
        //public ActionResult AddTerminal()
        //{
        //    TerminalAddModel model = new TerminalAddModel();
        //    model.TerminalManufacturerSelectList = new SelectList(TerminalManufacturerBLL.GetTerminalManufacturers(), "ID", "ManufacturerName");
        //    model.TerminalTypeSelectList = new SelectList(TerminalTypeBLL.GetTerminalTypes(), "ID", "TerminalName");
        //    return PartialView("_AddTerminal", model);
        //}

        //[HttpPost, ValidateAntiForgeryToken]
        //public ActionResult AddTerminal(TerminalAddModel model)
        //{
        //    if (ModelState.IsValid)
        //    {
        //        var result = TerminalBLL.AddTerminal(model);
        //        base.DoLog(OperationTypeEnum.Add, result, "TerminalCode:" + model.TerminalCode);
        //        return Json(result);
        //    }
        //    else
        //    {
        //        model.TerminalManufacturerSelectList = new SelectList(TerminalManufacturerBLL.GetTerminalManufacturers(), "ID", "ManufacturerName");
        //        model.TerminalTypeSelectList = new SelectList(TerminalTypeBLL.GetTerminalTypes(), "ID", "TerminalName");
        //        return PartialView("_AddTerminal", model);
        //    }
        //}
        #endregion

        public ActionResult AddTerminal()
        {
            TerminalAddModel model = new TerminalAddModel();
            var list = TerminalManufacturerBLL.GetTerminalManufacturers();

            model.TerminalManufacturerSelectList = new SelectList(list, "ID", "ManufacturerName");
            var tmid = 0;

            if (list != null && list.Count != 0)
            {
                tmid = list.First().ID;
            }
            model.TerminalTypeSelectList = new SelectList(TerminalTypeBLL.GetTerminalTypesByTMID(tmid), "ID", "TerminalName");
            var serverInfoList = ServerManagerBLL.GetServerInfoList();

            if (serverInfoList != null && serverInfoList.Count != 0)
            {
                model.ServerInfoID = serverInfoList.First().ID;
            }
            model.ServerInfoSelectList = new SelectList(serverInfoList, "ID", "ServerName");
            #region 默认值
            model.ContinuousDrivingThreshold = 14400;
            model.DrivingTimeThreshold       = 57600;
            model.MaximumParkingTime         = 3600;
            model.MinimumBreakTime           = 1200;
            model.MinimumDuration            = 5;
            #endregion

            return(PartialView("_AddTerminal", model));
        }
Exemple #2
0
 public ActionResult AddTerminal(TerminalAddModel model)
 {
     if (ModelState.IsValid)
     {
         model.CreateUserID = base.UserIDForLog;
         var result = TerminalBLL.AddTerminal(model);
         base.DoLog(OperationTypeEnum.Add, result, "TerminalCode:" + model.TerminalCode);
         return(Json(result));
     }
     else
     {
         var list = TerminalManufacturerBLL.GetTerminalManufacturers();
         model.TerminalManufacturerSelectList = new SelectList(list, "ID", "ManufacturerName");
         var tmid = 0;
         if (list != null && list.Count != 0)
         {
             tmid = list.First().ID;
         }
         model.TerminalTypeSelectList = new SelectList(TerminalTypeBLL.GetTerminalTypesByTMID(tmid), "ID", "TerminalName");
         var serverInfoList = ServerManagerBLL.GetServerInfoList();
         if (serverInfoList != null && serverInfoList.Count != 0)
         {
             model.ServerInfoID = serverInfoList.First().ID;
         }
         model.ServerInfoSelectList = new SelectList(serverInfoList, "ID", "ServerName");
         #region 默认值
         model.ContinuousDrivingThreshold = 144000;
         model.DrivingTimeThreshold       = 57600;
         model.MaximumParkingTime         = 3600;
         model.MinimumBreakTime           = 1200;
         model.MinimumDuration            = 5;
         #endregion
         return(PartialView("_AddTerminal", model));
     }
 }
        public PartialViewResult GetServerInfo(ServerManagerSearchModel model, int searchPage)
        {
            SearchDataWithPagedDatas <ServerManagerSearchModel, ServerManagerListModel> result = new SearchDataWithPagedDatas <ServerManagerSearchModel, ServerManagerListModel>();

            result.SearchModel = model;
            result.PagedDatas  = ServerManagerBLL.GetPagedServerManager(result.SearchModel, searchPage, this.PageSize);
            return(PartialView("_ServerPagedGrid", result));
        }
        /// <summary>
        /// 初始化查询界面
        /// </summary>
        /// <returns></returns>
        public PartialViewResult ServerSetting()
        {
            SearchDataWithPagedDatas <ServerManagerSearchModel, ServerManagerListModel> model = new SearchDataWithPagedDatas <ServerManagerSearchModel, ServerManagerListModel>();

            model.SearchModel = new ServerManagerSearchModel();
            model.PagedDatas  = ServerManagerBLL.GetPagedServerManager(model.SearchModel, 1, this.PageSize);
            return(PartialView("_ServerSetting", model));
        }
        public JsonResult DeleteServer(FormCollection fc)
        {
            string[] ids    = fc["tmid"].Split(',');
            var      result = ServerManagerBLL.DeleteServer(ids);

            base.DoLog(OperationTypeEnum.Delete, result, fc["tmid"]);
            return(Json(result));
        }
        public ActionResult EditServer(int id)
        {
            var result = ServerManagerBLL.GetServerByID(id);

            if (result.DataResult == null)
            {
                return(Content(result.Message));
            }
            return(PartialView("_EditServer", result.DataResult));
        }
 public ActionResult AddServer(ServerManagerEditModel model)
 {
     if (ModelState.IsValid)
     {
         model.CreateUserID = base.CurrentUserID;
         var result = ServerManagerBLL.AddServer(model);
         base.DoLog(OperationTypeEnum.Add, result, "ServerName:" + model.ServerName);
         return(Json(result));
     }
     else
     {
         return(PartialView("_AddServer", model));
     }
 }
 public ActionResult EditServer(ServerManagerEditModel model)
 {
     if (ModelState.IsValid)
     {
         model.UpdateUserID = base.CurrentUserID;
         var result = ServerManagerBLL.EditServer(model);
         base.DoLog(OperationTypeEnum.Edit, result, "ID:" + model.ID);
         return(Json(result));
     }
     else
     {
         return(PartialView("_EditServer", model));
     }
 }
Exemple #9
0
        //public ActionResult EditTerminal(long id)
        //{
        //    var result = TerminalBLL.GetTerminalByID(id);
        //    if (result.DataResult == null)
        //    {
        //        return Content(result.Message);
        //    }
        //    var model = result.DataResult;
        //    model.TerminalManufacturerSelectList = new SelectList(TerminalManufacturerBLL.GetTerminalManufacturers(), "ID", "ManufacturerName");
        //    model.TerminalTypeSelectList = new SelectList(TerminalTypeBLL.GetTerminalTypes(), "ID", "TerminalName");
        //    return PartialView("_EditTerminal", model);
        //}

        //[HttpPost, ValidateAntiForgeryToken]
        //public ActionResult EditTerminal(TerminalEditModel model)
        //{
        //    if (ModelState.IsValid)
        //    {
        //        var result = TerminalBLL.EditTerminal(model);
        //        base.DoLog(OperationTypeEnum.Edit, result, "ID:" + model.ID);
        //        return Json(result);
        //    }
        //    else
        //    {
        //        model.TerminalManufacturerSelectList = new SelectList(TerminalManufacturerBLL.GetTerminalManufacturers(), "ID", "ManufacturerName");
        //        model.TerminalTypeSelectList = new SelectList(TerminalTypeBLL.GetTerminalTypes(), "ID", "TerminalName");
        //        return PartialView("_EditTerminal", model);
        //    }
        //}
        #endregion


        public ActionResult EditTerminal(long id)
        {
            var result = TerminalBLL.GetTerminalByID(id);

            if (result.DataResult == null)
            {
                return(Content(result.Message));
            }
            var model = result.DataResult;

            model.SIMCodeIDOld = model.SIMCodeID == null ? null :(int?)model.SIMCodeID.Value;
            model.TerminalManufacturerSelectList = new SelectList(TerminalManufacturerBLL.GetTerminalManufacturers(), "ID", "ManufacturerName");
            model.TerminalTypeSelectList         = new SelectList(TerminalTypeBLL.GetTerminalTypesByTMID(model.TerminalManufacturerID), "ID", "TerminalName");
            model.ServerInfoSelectList           = new SelectList(ServerManagerBLL.GetServerInfoList(), "ID", "ServerName");
            return(PartialView("_EditTerminal", model));
        }
Exemple #10
0
 public ActionResult EditTerminal(TerminalEditModel model)
 {
     if (ModelState.IsValid)
     {
         model.EditUserID = base.UserIDForLog;
         var result = TerminalBLL.EditTerminal(model);
         base.DoLog(OperationTypeEnum.Edit, result, "ID:" + model.ID);
         return(Json(result));
     }
     else
     {
         model.TerminalManufacturerSelectList = new SelectList(TerminalManufacturerBLL.GetTerminalManufacturers(), "ID", "ManufacturerName");
         model.TerminalTypeSelectList         = new SelectList(TerminalTypeBLL.GetTerminalTypesByTMID(model.TerminalManufacturerID), "ID", "TerminalName");
         model.ServerInfoSelectList           = new SelectList(ServerManagerBLL.GetServerInfoList(), "ID", "ServerName");
         return(PartialView("_EditTerminal", model));
     }
 }
Exemple #11
0
        public async Task <ActionResult> DealEmergencyAlarm(long id, string terminalCode, string dealInfo)
        {
            try
            {
                #region 调用WCF服务进行操作
                //查询终端对应的WCF地址
                var temp = ServerManagerBLL.GetTerminalServerInfo(terminalCode);
                if (temp.DataResult == null)
                {
                    return(Json(new OperationResult()
                    {
                        Message = PromptInformation.DBError
                    }));
                }
                var serverInfo = temp.DataResult;
                //调用服务确认紧急报警
                OperationResultGeneralRep result = null;
                using (var client = base.GetTerminalOperationClient(serverInfo.WCFAddress))
                {
                    //使用终端号执行人工确认报警消息方法
                    result = await client.ConfirmAlarmAsync(terminalCode, new TerminalOperation.ManualConfirmAlarmData()
                    {
                        ManualConfirmAlarmType = TerminalOperation.ManualConfirmAlarmType.确认紧急报警,
                        SerialNumber           = 0//在808协议中流水号0相当于确认所有相同类型报警
                    });
                }
                #endregion

                bool   success    = false;
                bool   needUpdate = false;
                string msg        = "{0}";

                //根据结果更新数据库
                //只有成功和超时需要更新处理记录
                if (result.State)//操作成功,看终端应答
                {
                    #region 操作成功
                    switch (result.ResultData.Value.Result)
                    {
                    case Asiatek.TMS.TerminalOperation.TerminalGeneralRepResult.成功或确认:    //需要更新
                        msg        = string.Format(msg, PromptInformation.OperationSuccess);
                        needUpdate = success = true;
                        break;

                    case Asiatek.TMS.TerminalOperation.TerminalGeneralRepResult.失败:
                        msg = string.Format(msg, PromptInformation.OperationFailure);
                        break;

                    case Asiatek.TMS.TerminalOperation.TerminalGeneralRepResult.消息有误:
                        msg = string.Format(msg, PromptInformation.MessageWrong);
                        break;

                    case Asiatek.TMS.TerminalOperation.TerminalGeneralRepResult.支持:
                        msg = string.Format(msg, PromptInformation.NotSupport);
                        break;
                    }
                    #endregion
                }
                else//操作失败
                {
                    #region 操作失败
                    switch (result.Code)
                    {
                    case Asiatek.TMS.TerminalOperation.OperationResultCode.终端号格式有误:
                        msg = string.Format(msg, PromptInformation.TerminalCodeFormatError);
                        break;

                    case Asiatek.TMS.TerminalOperation.OperationResultCode.终端号不存在:
                        msg = string.Format(msg, PromptInformation.TerminalCodeNotExist);
                        break;

                    case Asiatek.TMS.TerminalOperation.OperationResultCode.未知错误:
                        msg = string.Format(msg, PromptInformation.UnknownError);
                        break;

                    case Asiatek.TMS.TerminalOperation.OperationResultCode.终端离线:
                        msg = string.Format(msg, PromptInformation.TerminalIsOffline);
                        break;

                    case Asiatek.TMS.TerminalOperation.OperationResultCode.终端通讯异常:
                        msg = string.Format(msg, PromptInformation.CommunicationError);
                        break;

                    case Asiatek.TMS.TerminalOperation.OperationResultCode.等待应答超时:    //需要更新
                        msg        = string.Format(msg, PromptInformation.Timeout);
                        needUpdate = true;
                        break;

                    default:
                        msg = string.Format(msg, PromptInformation.UnknownError);
                        break;
                    }
                    #endregion
                }

                #region 更新处理记录
                if (needUpdate)//更新异常记录的处理信息
                {
                    ExceptionBLL.UpdateEmergencyAlarm(new UpdateEmergencyAlarmModel()
                    {
                        ID               = id,
                        DealUserID       = base.UserIDForLog,
                        DealInfo         = dealInfo,
                        LinkedServerName = serverInfo.LinkedServerName,
                        Timeout          = !success
                    });
                }
                #endregion

                return(Json(new OperationResult()
                {
                    Success = success, Message = msg
                }));
            }
            catch
            {
                return(Json(new OperationResult()
                {
                    Success = false, Message = PromptInformation.RemotingError
                }));
            }
        }
Exemple #12
0
        public async Task <ActionResult> SendVolice(string terminalCode, string voliceMsg)
        {
            try
            {
                if (string.IsNullOrWhiteSpace(terminalCode) || string.IsNullOrWhiteSpace(voliceMsg))
                {
                    return(Json(new OperationResult()
                    {
                        Message = PromptInformation.UnknownError
                    }));
                }

                #region 调用WCF服务进行操作
                //查询终端对应的WCF地址
                var temp = ServerManagerBLL.GetTerminalServerInfo(terminalCode);
                if (temp.DataResult == null)
                {
                    return(Json(new OperationResult()
                    {
                        Message = PromptInformation.DBError
                    }));
                }
                var serverInfo = temp.DataResult;
                if (string.IsNullOrWhiteSpace(serverInfo.WCFAddress))
                {
                    return(Json(new OperationResult()
                    {
                        Message = PromptInformation.TerminalSetting_WCFError
                    }));
                }
                //调用服务下发声音
                OperationResultGeneralRep result = null;
                var realMessageText = System.Web.HttpUtility.HtmlDecode(voliceMsg.Trim());
                using (var client = base.GetTerminalOperationClient(serverInfo.WCFAddress))
                {
                    result = await client.SendTextInfoAsync(terminalCode, new TextInformationData()
                    {
                        Content             = realMessageText,
                        TextInformationFlag = TextInformationFlag.紧急 | TextInformationFlag.终端TTS播读
                    });
                }
                #endregion

                bool   success = false;
                string msg     = "{0}";
                if (result.State)//操作成功,看终端应答
                {
                    #region 操作成功
                    switch (result.ResultData.Value.Result)
                    {
                    case Asiatek.TMS.TerminalOperation.TerminalGeneralRepResult.成功或确认:    //需要更新
                        msg = string.Format(msg, PromptInformation.OperationSuccess);
                        break;

                    case Asiatek.TMS.TerminalOperation.TerminalGeneralRepResult.失败:
                        msg = string.Format(msg, PromptInformation.OperationFailure);
                        break;

                    case Asiatek.TMS.TerminalOperation.TerminalGeneralRepResult.消息有误:
                        msg = string.Format(msg, PromptInformation.MessageWrong);
                        break;

                    case Asiatek.TMS.TerminalOperation.TerminalGeneralRepResult.支持:
                        msg = string.Format(msg, PromptInformation.NotSupport);
                        break;
                    }
                    #endregion
                }
                else//操作失败
                {
                    #region 操作失败
                    switch (result.Code)
                    {
                    case Asiatek.TMS.TerminalOperation.OperationResultCode.终端号格式有误:
                        msg = string.Format(msg, PromptInformation.TerminalCodeFormatError);
                        break;

                    case Asiatek.TMS.TerminalOperation.OperationResultCode.终端号不存在:
                        msg = string.Format(msg, PromptInformation.TerminalCodeNotExist);
                        break;

                    case Asiatek.TMS.TerminalOperation.OperationResultCode.未知错误:
                        msg = string.Format(msg, PromptInformation.UnknownError);
                        break;

                    case Asiatek.TMS.TerminalOperation.OperationResultCode.终端离线:
                        msg = string.Format(msg, PromptInformation.TerminalIsOffline);
                        break;

                    case Asiatek.TMS.TerminalOperation.OperationResultCode.终端通讯异常:
                        msg = string.Format(msg, PromptInformation.CommunicationError);
                        break;

                    case Asiatek.TMS.TerminalOperation.OperationResultCode.等待应答超时:    //需要更新
                        msg = string.Format(msg, PromptInformation.Timeout);
                        break;

                    default:
                        msg = string.Format(msg, PromptInformation.UnknownError);
                        break;
                    }
                    #endregion
                }
                return(Json(new OperationResult()
                {
                    Success = success, Message = msg
                }));
            }
            catch
            {
                return(Json(new OperationResult()
                {
                    Success = false, Message = PromptInformation.RemotingError
                }));
            }
        }