Beispiel #1
0
        /// <summary>
        /// 导出停车场参数设置为xml文件
        /// </summary>
        /// <param name="path">文件路径</param>
        /// <returns></returns>
        public CommandResult ExportParameter(string path)
        {
            CommandResult result = null;

            try
            {
                OperatorBll obll = new OperatorBll(_repoUri);
                QueryResultList <OperatorInfo> operators = obll.GetAllOperators();

                WorkstationBll wbll = new WorkstationBll(_repoUri);
                QueryResultList <WorkStationInfo> workstations = wbll.GetAllWorkstations();

                APMBll abll = new APMBll(_repoUri);
                QueryResultList <APM> apms = abll.GetAllItems();

                if (operators.Result == ResultCode.Successful &&
                    workstations.Result == ResultCode.Successful &&
                    apms.Result == ResultCode.Successful)
                {
                    ParkingParameterDataBuffer parameter = new ParkingParameterDataBuffer();
                    parameter.UserSetting           = UserSetting.Current;
                    parameter.HolidaySetting        = HolidaySetting.Current;
                    parameter.AccessSetting         = AccessSetting.Current;
                    parameter.TariffSetting         = TariffSetting.Current;
                    parameter.CarTypeSetting        = CarTypeSetting.Current;
                    parameter.CustomCardTypeSetting = CustomCardTypeSetting.Current;
                    parameter.BaseCardTypeSetting   = BaseCardTypeSetting.Current;
                    parameter.KeySetting            = KeySetting.Current;
                    parameter.Operators             = operators.QueryObjects;
                    parameter.WorkStations          = workstations.QueryObjects;
                    parameter.APMs = apms.QueryObjects;

                    DataContractSerializer ser = new DataContractSerializer(typeof(ParkingParameterDataBuffer));
                    using (FileStream stream = new FileStream(path, FileMode.Create, FileAccess.Write))
                    {
                        ser.WriteObject(stream, parameter);
                    }
                    result = new CommandResult(ResultCode.Successful);
                }
                else
                {
                    result = new CommandResult(ResultCode.Fail, "获取系统参数设置失败!");
                }
            }
            catch (Exception ex)
            {
                result = new CommandResult(ResultCode.Fail, ex.Message);
                Ralid.GeneralLibrary.ExceptionHandling.ExceptionPolicy.HandleException(ex);
            }
            return(result);
        }
Beispiel #2
0
 public CommandResult Delete(RoleInfo info)
 {
     if (!info.CanDelete)
     {
         throw new InvalidOperationException(string.Format(Resource1.RoleBll_CannotDelete, info.Name));
     }
     else
     {
         OperatorBll             bll    = new OperatorBll(_RepoUri);
         OperatorSearchCondition search = new OperatorSearchCondition {
             RoleID = info.RoleID
         };
         QueryResultList <OperatorInfo> result = bll.GetOperators(search);
         if (result.Result == ResultCode.Successful && result.QueryObjects.Count > 0)
         {
             throw new InvalidOperationException(string.Format(Resource1.RoleBll_RoleBeUsed, info.RoleID, info.RoleID));
         }
     }
     return(provider.Delete(info));
 }