public ResponsePackage DeleteForeignKey(int foreignKeyID)
 {
     RequestPackage request = new RequestPackage()
     {
         requestID = foreignKeyID
     };
     ResponsePackage response = new DBUtils().RunSqlAction(DictionaryForeignKeysRepository.DeleteForeignKey, request);
     response.ThrowExceptionIfError();
     return response;
 }
 public ResponsePackage DeleteDictionaryField(int dictionaryFieldID)
 {
     RequestPackage fieldRequest = new RequestPackage()
     {
         requestID = dictionaryFieldID
     };
     ResponsePackage response = new DBUtils().RunSqlAction(new DictionaryTypesAdministrator().DeleteDictionaryField, fieldRequest);
     response.ThrowExceptionIfError();
     return response;
 }
        public ResponsePackage DeleteDictionaryGroup(int dictionaryGroupID)
        {
            RequestPackage request = new RequestPackage()
            {
                requestID = dictionaryGroupID
            };

            ResponsePackage response = new DBUtils().RunSqlAction(DictionaryGroupsRepository.DeleteDictionaryGroup, request);
            response.ThrowExceptionIfError();
            return response;
        }
        public ResponseObjectPackage<List<DictionaryFieldAdminModel>> GetDictionaryTypesAdministratorData(int dictionaryID)
        {
            RequestPackage request = new RequestPackage()
            {
                requestID = dictionaryID
            };

            ResponseObjectPackage<List<DictionaryFieldAdminModel>> response = new DBUtils().RunSqlAction(new DictionaryTypesAdministrator().GetDictionaryTypesAdministratorData, request);
            response.ThrowExceptionIfError();
            return response;
        }
 /// <summary>
 /// Функция получения списка свойств компонента по его ID
 /// </summary>
 /// <param name="request">Объект-оболочка RequestPackage, содержащая в поле requestID id компонента</param>
 /// <returns>Объект-оболочка ResponseObjectPackagе, содержащая в поле resultData список свойств компонента</returns>
 public ResponseObjectPackage<List<ControlPropertyViewModel>> GetPropertiesByControlID(RequestPackage request)
 {
     ResponseObjectPackage<List<ControlPropertyViewModel>> response = new DBUtils().RunSqlAction(new ControlPropertiesRepository().GetPropertiesByControlID, request);
     response.ThrowExceptionIfError();
     // Свойству id ставим значение ID компонента
     response.resultData.Find(x => x.property.ToLower() == "id").value = request.requestID.ToString();
     foreach (ControlPropertyViewModel c in response.resultData)
     {
         c._value = c.GetRightValue();
     }
     return response;
 }
 /// <summary>
 /// Функция получения списка свойств компонентов формы по ее ID
 /// </summary>
 /// <param name="request">Объект-оболочка RequestPackage, содержащая в поле requestID ID формы</param>
 /// <returns>Объект-оболочка ResponseObjectPackagе, содержащая в поле resultData список свойств компонентов формы</returns>
 public ResponseObjectPackage<List<ControlPropertyViewModel>> GetPropertiesByFormID(RequestPackage request)
 {
     ResponseObjectPackage<List<ControlPropertyViewModel>> response = new DBUtils().RunSqlAction(new ControlPropertiesRepository().GetPropertiesByFormID, request);
     response.ThrowExceptionIfError();
     foreach (ControlPropertyViewModel c in response.resultData)
     {
         c._value = c.GetRightValue();
     }
     foreach (ControlPropertyViewModel c in response.resultData.FindAll(x => x.property.ToLower() == "id"))
     {
         c._value = c.controlID;
     }
     return response;
 }
        /// <summary>
        /// Удалить удаленные пользвателем компоненты
        /// </summary>
        /// <param name="package"></param>
        /// <returns></returns>
        public ResponsePackage DeleteOldControls(RequestObjectPackage<SaveControlModel> package)
        {
            // все контролы формы
            List<ControlListEntity> oldControls = new ControlsLogic().GetControlsByFormID(new RequestPackage() { requestID = package.requestID }).GetDataOrExceptionIfError();
            // список свежих ID контролов
            List<int> newIDs = new List<int>();
            Action<SaveControlModel> action = null;
            action = delegate(SaveControlModel current)
            {
                if (current.control.ID > 0)
                {
                    newIDs.Add(current.control.ID);
                }
                if (current.items != null && current.items.Count > 0)
                {
                    foreach (SaveControlModel ctrl in current.items)
                    {
                        action(ctrl);
                    }
                }
            };
            action(package.requestData);
            // Для контролов удалить все евенты
            RequestPackage delEvents = new RequestPackage() { requestID = package.requestID };
            ResponsePackage responseDelEvents = new DBUtils().RunSqlAction(new EventEditorDataCRUD().DeleteAllEvents, delEvents);
            responseDelEvents.ThrowExceptionIfError();
            // ID контролов для удаления
            List<int> IDsToDelete = oldControls.FindAll(x => newIDs.Contains(x.ID) == false).OrderByDescending(x => x.orderNumber).Select(x => x.ID).ToList();
            if (IDsToDelete != null && IDsToDelete.Count > 0)
            {
                foreach (int id in IDsToDelete)
                {
                    RequestPackage req = new RequestPackage() { requestID = id };
                    // Проверить возможность удаления
                    ResponsePackage responseCheck = new DBUtils(new FireBirdConnectionFactory()).RunSqlAction(new ControlsRepository().CheckDeleteControl, req);
                    responseCheck.ThrowExceptionIfError();
                    // Удалить свойства контрола
                    ResponsePackage responseDelProperty = new DBUtils(new FireBirdConnectionFactory()).RunSqlAction(new ControlPropertiesRepository().DeletePropertiesByControlID, req);
                    responseDelProperty.ThrowExceptionIfError();
                    // Удалить контрол
                    ResponsePackage responseDelControl = new DBUtils(new FireBirdConnectionFactory()).RunSqlAction(new ControlsRepository().DeleteControlByID, req);
                    responseDelControl.ThrowExceptionIfError();
                }
            }

            return new ResponsePackage();
        }
 /// <summary>
 /// Функция удаления свойства контрола по ее ID
 /// </summary>
 /// <param name="package">Объект-оболочка RequestPackage, содержащая в поле requestID ID свойства</param>
 /// <returns>Объект-оболочка ResponsePackagе</returns>
 public ResponsePackage DeletePropertyByID(RequestPackage package)
 {
     ResponsePackage response = new DBUtils(new FireBirdConnectionFactory()).RunSqlAction(new ControlPropertiesRepository().DeletePropertyByID, package);
     response.ThrowExceptionIfError();
     return response;
 }
        public ResponsePackage SaveDictionary(DictionaryModel dictionary)
        {
            RequestObjectPackage<DictionaryModel> request = new RequestObjectPackage<DictionaryModel>()
            {
                requestData = dictionary
            };

            ResponsePackage response = new DBUtils().RunSqlAction(new DictionaryTypesAdministrator().SaveDictionary, request);
            response.ThrowExceptionIfError();
            return response;
        }
 /// <summary>
 /// Получить список типов запросов
 /// </summary>
 /// <param name="package"></param>
 /// <returns></returns>
 public ResponseObjectPackage<List<QueryTypeModel>> GetQueryTypeList(RequestPackage package)
 {
     ResponseObjectPackage<List<QueryTypeModel>> response = new DBUtils(new FireBirdConnectionFactory()).RunSqlAction(new QueryEditorDataCRUD().GetQueryTypeList, package);
     response.ThrowExceptionIfError();
     return response;
 }
 /// <summary>
 /// Функция сохранения входного параметр запроса
 /// </summary>
 /// <param name="package"></param>
 /// <returns></returns>
 public ResponsePackage SaveQueryInParameter(RequestObjectPackage<QueryInParameterModel> package)
 {
     ResponsePackage response = new DBUtils(new FireBirdConnectionFactory()).RunSqlAction(new QueryEditorDataCRUD().SaveQueryInParameter, package);
     response.ThrowExceptionIfError();
     return response;
 }
 /// <summary>
 /// Получить список параметров
 /// </summary>
 /// <param name="package"></param>
 /// <returns></returns>
 public ResponseObjectPackage<List<ActionParameterTypeModel>> GetParamTypeList(RequestObjectPackage<ActionParameterTypeSearchTemplate> package)
 {
     ResponseObjectPackage<List<ActionParameterTypeModel>> response = new DBUtils().RunSqlAction(ActionParameterTypesRepository.GetBySearchTemplate, package);
     response.ThrowExceptionIfError();
     return response;
 }
 /// <summary>
 /// Функция сохранения типа запроса
 /// </summary>
 /// <param name="package"></param>
 /// <returns></returns>
 public ResponsePackage SaveQueryType(RequestObjectPackage<QueryTypeModel> package)
 {
     string sqlText = package.requestData.sqlText;
     sqlText = sqlText.Replace(System.Environment.NewLine, "");
     sqlText = sqlText.Replace("\n", "");
     package.requestData.sqlText = sqlText;
     ResponsePackage response = new DBUtils(new FireBirdConnectionFactory()).RunSqlAction(new QueryEditorDataCRUD().SaveQueryType, package);
     response.ThrowExceptionIfError();
     return response;
 }
 /// <summary>
 /// Функция получения списка типов свойств по его ID типа компонента
 /// </summary>
 /// <param name="request">Объект-оболочка RequestPackage, содержащая в поле requestID id типа компонента</param>
 /// <returns>Объект-оболочка ResponseObjectPackagе, содержащая в поле resultData список типов свойств</returns>
 public ResponseObjectPackage<List<PropertyTypeListEntity>> GetPropertyTypeListByControlType(RequestPackage request)
 {
     ResponseObjectPackage<List<PropertyTypeListEntity>> response = new DBUtils().RunSqlAction(new ControlTypePropertyTypeRepository().GetPropertyTypeListByControlType, request);
     response.ThrowExceptionIfError();
     return response;
 }
 /// <summary>
 /// Получить список типов событий
 /// </summary>
 /// <param name="package"></param>
 /// <returns></returns>
 public ResponseObjectPackage<List<EventType>> GetEventTypeList(RequestPackage package)
 {
     ResponseObjectPackage<List<EventType>> response = new DBUtils().RunSqlAction(new EventEditorDataCRUD().GetEventTypeList, package);
     response.ThrowExceptionIfError();
     return response;
 }
 /// <summary>
 /// Функция получения списка контролов формы по ее ID
 /// </summary>
 /// <param name="request">Объект-оболочка RequestPackage, содержащая в поле requestID id формы</param>
 /// <returns>Объект-оболочка ResponseObjectPackagе, содержащая в поле resultData список контролов формы</returns>
 public ResponseObjectPackage<List<ControlListEntity>> GetControlsByFormID(RequestPackage request)
 {
     ResponseObjectPackage<List<ControlListEntity>> response = new DBUtils().RunSqlAction(new ControlsRepository().GetControlsByFormID, request);
     response.ThrowExceptionIfError();
     return response;
 }
Beispiel #17
0
 /// <summary>
 /// Функция получения списка форм, зарегистрированных в системе
 /// </summary>
 /// <param name="request">Объект-оболочка RequestPackage</param>
 /// <returns>Объект-оболочка ResponseObjectPackagе, содержащая в поле resultData список объектов типа FormListEntity</returns>
 public ResponseObjectPackage<List<FormListEntity>> GetFormList(RequestPackage request)
 {
     ResponseObjectPackage<List<FormListEntity>> response = new DBUtils().RunSqlAction(new FormsRepository().GetFormsList, request);
     response.ThrowExceptionIfError();
     return response;
 }
Beispiel #18
0
 /// <summary>
 /// Функция сохранения формы
 /// </summary>
 /// <param name="request">Объект-оболочка RequestPackage, содержащая в поле requestData форму</param>
 /// <returns>Объект-оболочка ResponsePackage</returns>
 public ResponsePackage SaveForm(RequestObjectPackage<FormModel> request)
 {
     ResponsePackage response = new DBUtils().RunSqlAction(new FormsRepository().SaveForm, request);
     response.ThrowExceptionIfError();
     return response;
 }
 public ResponseObjectPackage<List<DomainValueTypeModel>> GetDomainValueTypes()
 {
     RequestPackage request = new RequestPackage();
     ResponseObjectPackage<List<DomainValueTypeModel>> response = new DBUtils().RunSqlAction(DomainValueTypesRepository.GetAll, request);
     response.ThrowExceptionIfError();
     return response;
 }
        public ResponsePackage SaveDictionaryField(DictionaryFieldModel field)
        {
            RequestObjectPackage<DictionaryFieldModel> fieldRequest = new RequestObjectPackage<DictionaryFieldModel>()
            {
                requestData = field
            };

            ResponsePackage response = new DBUtils().RunSqlAction(new DictionaryTypesAdministrator().SaveDictionaryField, fieldRequest);
            response.ThrowExceptionIfError();
            return response;
        }
        public ResponsePackage SaveDictionaryGroup(DictionaryGruopModel group)
        {
            RequestObjectPackage<DictionaryGruopModel> request = new RequestObjectPackage<DictionaryGruopModel>()
            {
                requestData = group
            };

            ResponsePackage response = new DBUtils().RunSqlAction(DictionaryGroupsRepository.SaveDictionaryGroup, request);
            response.ThrowExceptionIfError();
            return response;
        }
        public ResponsePackage SaveForeignKey(int dictionaryID, int dictionaryFieldIDSource)
        {
            int dictionaryFieldIDDestination = new DictionaryPrimaryKeysLogic().GetDictionaryPrimaryKeyByDictionaryID(dictionaryID)
                .GetDataOrExceptionIfError().dictionaryFieldID;

            RequestObjectPackage<DictionaryForeignKeyModel> request = new RequestObjectPackage<DictionaryForeignKeyModel>()
            {
                requestData = new DictionaryForeignKeyModel()
                {
                    ID = 0,
                    dictionaryFieldIDDestination = dictionaryFieldIDDestination,
                    dictionaryFieldIDSource = dictionaryFieldIDSource
                }
            };

            ResponsePackage response = new DBUtils().RunSqlAction(DictionaryForeignKeysRepository.SaveForeignKey, request);
            response.ThrowExceptionIfError();
            return response;
        }
 /// <summary>
 /// Функция удаления контрола из формы
 /// </summary>
 /// <param name="request">Объект-оболочка RequestPackage, содержащая в поле requestID ID контрола</param>
 /// <returns>Объект-оболочка ResponsePackagе</returns>
 public ResponsePackage DeleteControlByID(RequestPackage request)
 {
     ResponsePackage response = new DBUtils().RunSqlAction(new ControlsRepository().DeleteControlByID, request);
     response.ThrowExceptionIfError();
     return response;
 }
 /// <summary>
 /// Функция получения группы типов контролов формы по ее ID
 /// </summary>
 /// <param name="request">Объект-оболочка RequestPackage, содержащая в поле requestID ID группы типов контрола</param>
 /// <returns>Объект-оболочка ResponseObjectPackagе, содержащая в поле resultData группу типов контролов формы</returns>
 public ResponseObjectPackage<ControlTypeGroup> GetControlTypeGroupByID(RequestPackage request)
 {
     ResponseObjectPackage<ControlTypeGroup> response = new DBUtils().RunSqlAction(new ControlTypeGroupRepository().GetControlTypeGroupByID, request);
     response.ThrowExceptionIfError();
     return response;
 }
 /// <summary>
 /// Функция сохранения контрола формы для редактора форм.
 /// </summary>
 /// <param name="package">Объект-оболочка RequestPackage, содержащая в поле requestData контрол</param>
 /// <returns>Объект-оболочка ResponsePackagе</returns>
 public ResponsePackage SaveControl(RequestObjectPackage<ControlModel> package)
 {
     ResponsePackage response = new DBUtils(new FireBirdConnectionFactory()).RunSqlAction(new ControlsRepository().SaveControl, package);
     response.ThrowExceptionIfError();
     return response;
 }
 /// <summary>
 /// Функция получения типа свойств компонентов формы по его ID
 /// </summary>
 /// <param name="request">Объект-оболочка RequestPackage, содержащая в поле requestID id типа свойств</param>
 /// <returns>Объект-оболочка ResponseObjectPackagе, содержащая в поле resultData тип свойства</returns>
 public ResponseObjectPackage<ControlPropertyTypeModel> GetPropertyTypeByID(RequestPackage request)
 {
     ResponseObjectPackage<ControlPropertyTypeModel> response = new DBUtils().RunSqlAction(new ControlPropertyTypeRepository().GetPropertyTypeByID, request);
     response.ThrowExceptionIfError();
     return response;
 }