/// <summary>
        /// 加载FD数据,用于UI FD下拉框
        /// </summary>
        /// <returns></returns>
        public static ApiListResult <FusionDirectorModel> LoadFDList()
        {
            var ret = new ApiListResult <FusionDirectorModel>(false, ErrorCode.SYS_UNKNOWN_ERR, "", "", null);

            LogUtil.HWLogger.UI.InfoFormat("Loading FD list...");

            List <FusionDirectorModel> list = FusionDirectorWorker.Instance.GetList();

            if (list.Count == 0)
            {
                ret.Code    = ErrorCode.SYS_NO_FD;
                ret.Success = false;
                ret.Data    = list;
            }
            else
            {
                list.ForEach(x => {
                    x.LoginPwd = "";
                });
                ret.Code    = "0";
                ret.Success = true;
                ret.Data    = list;
            }
            LogUtil.HWLogger.UI.InfoFormat("Loading FD list completed, the ret is [{0}]", JsonUtil.SerializeObject(ret));
            return(ret);
        }
        /// <summary>
        /// 加载升级包任务列表
        /// </summary>
        private ApiListResult <HWESightTask> GetList(object eventData)
        {
            var ret = new ApiListResult <HWESightTask>(false, ConstMgr.ErrorCode.SYS_UNKNOWN_ERR, "", "", null);

            try
            {
                LogUtil.HWLogger.UI.InfoFormat("Querying basepackage task list...");
                //1.
                ESightEngine.Instance.InitESSessions();
                //2. 获取升级包任务数据
                IList <HWESightTask> hwESightTaskList = ESightEngine.Instance.FindAllBasePackageTaskWithSync();
                //3. 组织数据
                ret.Code    = "0";
                ret.Success = true;
                ret.Data    = hwESightTaskList;
                LogUtil.HWLogger.UI.InfoFormat("Querying basepackage task list successful, the ret is: [{0}]", JsonUtil.SerializeObject(ret));
            }
            catch (BaseException ex)
            {
                ret.Code         = string.Format("{0}{1}", ex.ErrorModel, ex.Code);
                ret.Success      = false;
                ret.ExceptionMsg = ex.Message;
                ret.Data         = null;
                LogUtil.HWLogger.UI.Error("Querying basepackage task list failed: ", ex);
            }
            catch (Exception ex)
            {
                ret.Code         = ConstMgr.ErrorCode.SYS_UNKNOWN_ERR;
                ret.Success      = false;
                ret.ExceptionMsg = ex.InnerException.Message ?? ex.Message;
                ret.Data         = null;
                LogUtil.HWLogger.UI.Error("Querying basepackage task list failed: ", ex);
            }
            return(ret);
        }
Beispiel #3
0
        /// <summary>
        /// 同步调运计划(外网-->内网)
        /// </summary>
        /// <param name="output"></param>
        /// <returns></returns>
        public void SyncTransportPlanData(string OutsideAddress, Action <string, eOutputType> output)
        {
            int res = 0;
            //调用接口获取需要同步到内网的数据
            string str = apiHelper.HttpApi(OutsideAddress + "api/services/minesendinfo/TransportPlanInfos/GetSyncList", "", "post");
            ApiListResult <TransportPlan> result = JsonConvert.DeserializeObject <ApiListResult <TransportPlan> >(str);

            if (result.success && result.result != null && result.result.items.Count > 0)
            {
                foreach (var item in result.result.items)
                {
                    int flag = 0;
                    item.SyncFlag = 1;
                    var entity = selfDber.EntitiesContainDeleted <TransportPlan>(" where id='" + item.Id + "'").FirstOrDefault();
                    if (entity == null)
                    {
                        flag += selfDber.Insert(item);
                    }
                    else
                    {
                        flag += selfDber.Update(item);
                    }
                    if (flag > 0)//内网更新成功后调用外网的接口将数据更新为不需要再次同步
                    {
                        apiHelper.HttpApi(OutsideAddress + "api/services/minesendinfo/TransportPlanInfos/SyncDataCallBack", JsonConvert.SerializeObject(item), "post");
                    }
                    res += flag;
                }
            }
            if (res > 0)
            {
                output(string.Format("调运计划信息同步(外网-->内网) {0} 条", res), eOutputType.Normal);
            }
        }
Beispiel #4
0
        public async Task <ApiListResult> GetRegionBaseInfoList(int?parentId)
        {
            var returnResult = new ApiListResult();
            var list         = await _regionService.GetRegionInfoBaseListAsync(parentId);

            returnResult.List    = list;
            returnResult.Code    = 200;
            returnResult.Message = "获取成功";
            return(returnResult);
        }
Beispiel #5
0
        public async Task <ApiListResult <RegionInfo> > GetRegionInfoList(ParentIdNullableInput parentIdInput)
        {
            var returnResult = new ApiListResult <RegionInfo>();
            var list         = await _regionService.GetRegionInfoListAsync(parentIdInput.ParentId);

            returnResult.List    = list;
            returnResult.Code    = 200;
            returnResult.Message = "获取成功";
            return(returnResult);
        }
        public ApiListResult GetUserStatus()
        {
            var list   = typeof(UserStatus).GetEnumDictionary <UserStatus>();
            var result = new ApiListResult
            {
                Code    = 200,
                Message = "获取用户状态列表成功",
                List    = list,
            };

            return(result);
        }
Beispiel #7
0
        public ApiListResult <KeyValuePair <UserStatus, string> > GetUserStatuList()
        {
            var list   = typeof(UserStatus).GetEnumDictionary <UserStatus>();
            var result = new ApiListResult <KeyValuePair <UserStatus, string> >
            {
                Code    = 200,
                Message = "获取用户状态列表成功",
                List    = list,
            };

            return(result);
        }
        public async Task <ApiListResult> GetRoleBases()
        {
            var roles = await _roleService.GetBaseListInCacheAsync();

            var result = new ApiListResult
            {
                Code    = 200,
                Message = "获取角色列表成功",
                List    = roles,
            };

            return(result);
        }
        public async Task <ApiListResult> GetModulePermissions()
        {
            var permissions = await _permissionService.GetListInCacheAsync();

            ProjectPermissions(permissions);
            var result = new ApiListResult
            {
                Code    = 200,
                Message = "获取权限列表成功",
                List    = permissions,
            };

            return(result);
        }
        public async Task <ApiListResult> GetGroups()
        {
            var groups = await _groupService.GetListInCacheAsync();

            ProjectGroups(groups);
            var result = new ApiListResult
            {
                Code    = 200,
                Message = "获取分组列表成功",
                List    = groups,
            };

            return(result);
        }
Beispiel #11
0
        /// <summary>
        /// 同步发车管理(外网-->内网)
        /// </summary>
        /// <param name="output"></param>
        /// <returns></returns>
        public void SyncCarSendData(string OutsideAddress, Action <string, eOutputType> output)
        {
            int res = 0;
            //调用接口获取需要同步到内网的数据
            string str = apiHelper.HttpApi(OutsideAddress + "api/services/minesendinfo/DepartManages/GetSyncList", "", "post");
            ApiListResult <DepartManage> result = JsonConvert.DeserializeObject <ApiListResult <DepartManage> >(str);

            if (result.success && result.result != null && result.result.items.Count > 0)
            {
                foreach (var item in result.result.items)
                {
                    int flag = 0;
                    item.SyncFlag = 1;
                    var entity = selfDber.EntitiesContainDeleted <DepartManage>(" where id='" + item.Id + "'").FirstOrDefault();
                    if (entity == null)
                    {
                        flag += selfDber.Insert(item);
                    }
                    else
                    {
                        flag += selfDber.UpdateDirectly(item);
                    }

                    var details = selfDber.Query <DepartManageDetail>("select * from CMCSTBDEPARTMANAGEDETAIL where MainId='" + item.Id + "'");

                    foreach (var detail in details)
                    {
                        selfDber.Delete <DepartManageDetail>(detail.Id);
                    }

                    foreach (var detail in item.CarDetails)
                    {
                        selfDber.Insert(detail);
                    }

                    if (flag > 0)//内网更新成功后调用外网的接口将数据更新为不需要再次同步
                    {
                        apiHelper.HttpApi(OutsideAddress + "api/services/minesendinfo/DepartManages/SyncDataCallBack", JsonConvert.SerializeObject(item), "post");
                    }
                    res += flag;
                }
            }
            if (res > 0)
            {
                output(string.Format("发车管理信息同步(外网-->内网) {0} 条", res), eOutputType.Normal);
            }
        }
        /// <summary>
        /// 获取FD列表数据
        /// </summary>
        /// <param name="eventData"></param>
        /// <returns></returns>
        private ApiListResult <FusionDirectorModel> GetList(object eventData)
        {
            var ret = new ApiListResult <FusionDirectorModel>(false, ErrorCode.SYS_UNKNOWN_ERR, "", "", null);

            try
            {
                //1. 处理参数
                var jsData        = JsonUtil.SerializeObject(eventData);
                var webOneFDParam = JsonUtil.DeserializeObject <WebOneFDParam <ParamPagingOfQueryFD> >(jsData);
                LogUtil.HWLogger.UI.InfoFormat("Querying FD list, the param is [{0}]", jsData);
                int    pageSize = webOneFDParam.Param.PageSize;
                int    pageNo   = webOneFDParam.Param.PageNo;
                string hostIp   = webOneFDParam.Param.HostIp;
                //2. 获取数据
                var list       = FusionDirectorWorker.Instance.GetList();
                var filterList = list.Where(x => x.HostIP.Contains(hostIp)).Skip((pageNo - 1) * pageSize).Take(pageSize).ToList();
                filterList.ForEach(x =>
                {
                    x.LoginPwd = "";
                });
                //3. 返回数据
                ret.Code        = "0";
                ret.Data        = filterList;
                ret.TotalNum    = list.Count();
                ret.Description = "";
                LogUtil.HWLogger.UI.InfoFormat("Querying FD list successful, the ret is [{0}]", JsonUtil.SerializeObject(ret));
            }

            catch (Exception ex)
            {
                LogUtil.HWLogger.UI.Error(ex);
                ret.Code     = ErrorCode.SYS_UNKNOWN_ERR;
                ret.Data     = null;
                ret.TotalNum = 0;
                LogUtil.HWLogger.UI.Error("Querying FD list failed: ", ex);
            }
            return(ret);
        }
Beispiel #13
0
        public ApiListResult <ModuleMenu> GetMenus()
        {
            var list          = new List <ModuleMenu>();
            var menuProviders = _menuProviders.OrderBy(m => m.Order);

            foreach (var menuProvider in menuProviders)
            {
                var items = menuProvider.GetModuleMenus();
                foreach (var item in items)
                {
                    AddMenuToList(list, item);
                }
            }

            var result = new ApiListResult <ModuleMenu>
            {
                Code    = 200,
                Message = "获取菜单成功",
                List    = list
            };

            return(result);
        }
        /// <summary>
        /// 加载eSight数据,用于UI eSight下拉框
        /// </summary>
        /// <returns></returns>
        public static ApiListResult <HWESightHost> LoadESightList()
        {
            var ret = new ApiListResult <HWESightHost>(false, ConstMgr.ErrorCode.SYS_UNKNOWN_ERR, "", "", null);

            LogUtil.HWLogger.UI.InfoFormat("Loading eSight list...");
            ESightEngine.Instance.InitESSessions();
            List <HWESightHost> hwESightHostList = ESSessionHelper.GethwESightHostList();

            if (hwESightHostList.Count == 0)
            {
                ret.Code    = ConstMgr.ErrorCode.SYS_NO_ESIGHT;
                ret.Success = false;
                ret.Data    = hwESightHostList;
            }
            else
            {
                ret.Code    = "0";
                ret.Success = true;
                ret.Data    = hwESightHostList;
            }
            LogUtil.HWLogger.UI.InfoFormat("Loading eSight list completed, the ret is [{0}]", JsonUtil.SerializeObject(ret));
            return(ret);
        }
 private void SetSaveResultWhenComplete(int errorCount, int eSightCount, string errorCode, ref ApiListResult <WebReturnESightResult> ret)
 {
     if (errorCount == 0)
     {
         ret.Code    = "0";
         ret.Success = true;
     }
     else if (errorCount == eSightCount)
     {
         ret.Code    = errorCode;
         ret.Success = false;
     }
     else
     {
         ret.Code    = ConstMgr.ErrorCode.SYS_UNKNOWN_PART_ERR;
         ret.Success = false;
     }
 }
        /// <summary>
        /// 添加升级包
        /// </summary>
        private ApiListResult <WebReturnESightResult> Save(object eventData)
        {
            var ret = new ApiListResult <WebReturnESightResult>(ConstMgr.ErrorCode.SYS_UNKNOWN_ERR, "");

            try
            {
                //1. 获取UI传来的参数
                var jsData    = JsonUtil.SerializeObject(eventData);
                var newJsData = CommonBLLMethodHelper.HidePassword(jsData);
                LogUtil.HWLogger.UI.InfoFormat("Saving basepackage..., the param is [{0}]", newJsData);
                WebMutilESightsParam <BasePackage> webMutilESightsParam = JsonUtil.DeserializeObject <WebMutilESightsParam <BasePackage> >(jsData);
                //2. 根据HostIP获取IESSession
                IList <WebReturnESightResult> webReturnESightResultList = new List <WebReturnESightResult>();
                int    eSightCount = webMutilESightsParam.ESights.Count;
                int    errorCount  = 0;
                string errorCode   = "";
                foreach (string hostIP in webMutilESightsParam.ESights)
                {
                    IESSession esSession = null;
                    //3. 保存
                    WebReturnESightResult webReturnESightResult = new WebReturnESightResult();
                    try
                    {
                        esSession = ESSessionHelper.GetESSession(hostIP);
                        esSession.BasePackageWorker.UploadBasePackage(webMutilESightsParam.Data);

                        webReturnESightResult.ESightIp    = hostIP;
                        webReturnESightResult.Code        = 0;
                        webReturnESightResult.Description = "successful";
                        LogUtil.HWLogger.UI.InfoFormat("Saving basepackage successful on eSight [{0}]", webReturnESightResult.ESightIp);
                    }
                    catch (BaseException ex)
                    {
                        webReturnESightResult.ESightIp    = hostIP;
                        webReturnESightResult.Code        = CommonUtil.CoreUtil.GetObjTranNull <int>(ex.Code);
                        webReturnESightResult.ErrorModel  = ex.ErrorModel;
                        webReturnESightResult.Description = ex.Message;
                        errorCount++;
                        SetErrorCode(errorCount, ex.Code, ex.ErrorModel, ref errorCode);
                        LogUtil.HWLogger.UI.Error(string.Format("Saving basepackage failed on eSight [{0}]: ", webReturnESightResult.ESightIp), ex);
                    }
                    catch (Exception ex)
                    {
                        webReturnESightResult.ESightIp    = hostIP;
                        webReturnESightResult.Code        = CommonUtil.CoreUtil.GetObjTranNull <int>(ConstMgr.ErrorCode.SYS_UNKNOWN_ERR);
                        webReturnESightResult.Description = ex.InnerException.Message ?? ex.Message;
                        errorCount++;
                        SetErrorCode(errorCount, ConstMgr.ErrorCode.SYS_UNKNOWN_ERR, "", ref errorCode);
                        LogUtil.HWLogger.UI.Error(string.Format("Saving basepackage failed on eSight [{0}]: ", webReturnESightResult.ESightIp), ex);
                    }
                    webReturnESightResultList.Add(webReturnESightResult);
                }
                SetSaveResultWhenComplete(errorCount, eSightCount, errorCode, ref ret);
                ret.Data = webReturnESightResultList;
                LogUtil.HWLogger.UI.InfoFormat("Saving basepackage completed! the ret is [{0}]", JsonUtil.SerializeObject(ret));
            }
            catch (BaseException ex)
            {
                LogUtil.HWLogger.UI.Error("Saving basepackage failed: ", ex);
                ret.Code         = string.Format("{0}{1}", ex.ErrorModel, ex.Code);
                ret.Success      = false;
                ret.ExceptionMsg = ex.Message;
                ret.Data         = null;
            }
            catch (Exception ex)
            {
                LogUtil.HWLogger.UI.Error("Saving basepackage failed: ", ex);
                ret.Code         = ConstMgr.ErrorCode.SYS_UNKNOWN_ERR;
                ret.Success      = false;
                ret.ExceptionMsg = ex.InnerException.Message ?? ex.Message;
                ret.Data         = null;
            }
            return(ret);
        }