public bool NASCustomFieldTypeStringControlDataEditingState_CRUD()
        {
            //Get data of custom field by ObjectCustomFieldId in ObjectCustomField table
            CustomFieldDataStringBO customFieldDataStringBO = new CustomFieldDataStringBO();
            CustomFieldDataString   customFieldDataString   =
                customFieldDataStringBO.GetCustomFieldData(session, ObjectCustomFieldId);

            //Set data to GUI
            txtStringValueEditing.Text = customFieldDataString.StringValue;
            txtStringValueEditing.Focus();
            return(true);
        }
        public bool NASCustomFieldTypeStringControlDataViewingState_CRUD()
        {
            //Get data of custom field by ObjectCustomFieldId in ObjectCustomField table
            CustomFieldDataStringBO customFieldDataStringBO = new CustomFieldDataStringBO();
            CustomFieldDataString   customFieldDataString   =
                customFieldDataStringBO.GetCustomFieldData(session, ObjectCustomFieldId);
            //Set data to GUI
            string linkText = customFieldDataString.StringValue.Equals(String.Empty) ?
                              "Chỉnh sửa" : customFieldDataString.StringValue;

            hyperlinkStringDataViewing.Text = linkText;
            return(true);
        }
Exemplo n.º 3
0
        public override bool UpdateCustomFieldData(Guid objectCustomFieldId, object value, CustomFieldTypeFlag flag)
        {
            UnitOfWork uow = null;

            try
            {
                uow = XpoHelper.GetNewUnitOfWork();
                //Get ObjectCustomField by Id
                ObjectCustomField objectCustomField =
                    uow.GetObjectByKey <ObjectCustomField>(objectCustomFieldId);
                if (objectCustomField.ObjectCustomFieldDatas.FirstOrDefault() != null)
                {
                    objectCustomField.CustomFieldType = flag.Value;
                    uow.FlushChanges();
                    CustomFieldDataString customFieldData =
                        (CustomFieldDataString)objectCustomField.ObjectCustomFieldDatas
                        .FirstOrDefault().CustomFieldDataId;
                    customFieldData.StringValue = (string)value;

                    ObjectBO objectBO = new ObjectBO();
                    DynamicObjectListSerializeDataItem dataitem = new DynamicObjectListSerializeDataItem()
                    {
                        ObjectCustomFieldId = objectCustomFieldId,
                        CustomFieldName     = customFieldData.CustomFieldId.Name,
                        CustomFieldData     = customFieldData.StringValue
                    };
                    objectBO.SetDynamicObjectListItem(uow, objectCustomField.ObjectId.ObjectId, dataitem);

                    uow.CommitChanges();
                }
                else
                {
                    throw new Exception();
                }
                return(true);
            }
            catch (Exception)
            {
                throw;
            }
            finally
            {
                if (uow != null)
                {
                    uow.Dispose();
                }
            }
        }
        public bool AddItemToSelectedCustomFieldDataItems(UnitOfWork uow, Guid objectCustomFieldId, Guid customFieldDataStringId)
        {
            try
            {
                //Get ObjectCustomField by Id
                ObjectCustomField objectCustomField =
                    uow.GetObjectByKey <ObjectCustomField>(objectCustomFieldId);

                if (objectCustomField == null)
                {
                    throw new Exception("The key is not exist in ObjectCustomField");
                }

                CustomFieldDataString customFieldDataString =
                    uow.GetObjectByKey <CustomFieldDataString>(customFieldDataStringId);

                if (customFieldDataString == null)
                {
                    throw new Exception("The key is not exist in CustomFieldDataString");
                }

                CriteriaOperator criteria = CriteriaOperator.And(
                    new BinaryOperator("ObjectCustomFieldId", objectCustomField),
                    new BinaryOperator("CustomFieldDataId", customFieldDataString)
                    );

                ObjectCustomFieldData ocfd = uow.FindObject <ObjectCustomFieldData>(criteria);

                if (ocfd == null)
                {
                    ocfd = new ObjectCustomFieldData(uow);
                    ocfd.ObjectCustomFieldId = objectCustomField;
                    ocfd.CustomFieldDataId   = customFieldDataString;
                }

                uow.CommitChanges();
                //else
                //    throw new Exception("The item has been added before");
                return(true);
            }
            catch (Exception)
            {
                throw;
            }
        }
Exemplo n.º 5
0
        public CustomFieldDataString GetCustomFieldData(Session session, Guid objectCustomFieldId)
        {
            CustomFieldDataString customFieldData = null;

            try
            {
                session = XpoHelper.GetNewSession();
                //Get ObjectCustomField by Id
                ObjectCustomField objectCustomField =
                    session.GetObjectByKey <ObjectCustomField>(objectCustomFieldId);
                if (objectCustomField.ObjectCustomFieldDatas.FirstOrDefault() != null)
                {
                    //Return string data
                    return((CustomFieldDataString)
                           objectCustomField.ObjectCustomFieldDatas.FirstOrDefault().CustomFieldDataId);
                }
                return(customFieldData);
            }
            catch (Exception)
            {
                throw;
            }
        }
        public bool UpdateCustomFieldData(Guid objectCustomFieldId, Guid customFieldDataStringId)
        {
            Session session = null;

            try
            {
                session = XpoHelper.GetNewSession();
                //Get ObjectCustomField by Id
                session.BeginTransaction();

                ObjectCustomField objectCustomField =
                    session.GetObjectByKey <ObjectCustomField>(objectCustomFieldId);

                if (objectCustomField == null)
                {
                    throw new Exception("The key is not exist in ObjectCustomField");
                }

                CustomFieldDataString customFieldDataString =
                    session.GetObjectByKey <CustomFieldDataString>(customFieldDataStringId);

                if (customFieldDataString == null)
                {
                    session.Delete(objectCustomField.ObjectCustomFieldDatas);
                    DynamicObjectListSerializeDataItem dataitem = new DynamicObjectListSerializeDataItem()
                    {
                        ObjectCustomFieldId = objectCustomFieldId,
                        CustomFieldName     = null,
                        CustomFieldData     = null
                    };
                    ObjectBO objectBO = new ObjectBO();
                    objectBO.SetDynamicObjectListItem(session, objectCustomField.ObjectId.ObjectId, dataitem);
                    //throw new Exception("The key is not exist in CustomFieldDataString");
                }
                else
                {
                    if (objectCustomField.ObjectCustomFieldDatas != null && objectCustomField.ObjectCustomFieldDatas.Count > 0)
                    {
                        for (int i = 0; i < objectCustomField.ObjectCustomFieldDatas.Count; i++)
                        {
                            objectCustomField.ObjectCustomFieldDatas[i].Delete();
                        }
                    }
                    ObjectCustomFieldData ocfd = new ObjectCustomFieldData(session);
                    ocfd.ObjectCustomFieldId = objectCustomField;
                    ocfd.CustomFieldDataId   = customFieldDataString;
                    ocfd.Save();

                    ObjectBO objectBO = new ObjectBO();
                    DynamicObjectListSerializeDataItem dataitem = new DynamicObjectListSerializeDataItem()
                    {
                        ObjectCustomFieldId = objectCustomFieldId,
                        CustomFieldName     = customFieldDataString.CustomFieldId.Name,
                        CustomFieldData     = customFieldDataString.StringValue
                    };
                    objectBO.SetDynamicObjectListItem(session, objectCustomField.ObjectId.ObjectId, dataitem);
                }
                session.CommitTransaction();
                return(true);
            }
            catch (Exception)
            {
                session.RollbackTransaction();
                throw;
            }
            finally
            {
                if (session != null)
                {
                    session.Dispose();
                }
            }
        }
Exemplo n.º 7
0
        private CustomFieldData InitDefaultDataForBasicCustomFieldType(
            Session session,
            BasicCustomFieldTypeEnum basicCustomFieldType,
            Guid customFieldId)
        {
            CustomFieldData customFieldData = null;
            CustomField     customField     = null;

            customField = session.GetObjectByKey <CustomField>(customFieldId);

            if (customField == null)
            {
                throw new Exception("Could not found the custom field");
            }

            switch (basicCustomFieldType)
            {
            case BasicCustomFieldTypeEnum.STRING:
                customFieldData = new CustomFieldDataString(session)
                {
                    CustomFieldDataId = Guid.NewGuid(),
                    CustomFieldId     = customField,
                    StringValue       = String.Empty
                };
                customFieldData.Save();
                break;

            case BasicCustomFieldTypeEnum.DATETIME:
                customFieldData = new CustomFieldDataDateTime(session)
                {
                    CustomFieldDataId = Guid.NewGuid(),
                    CustomFieldId     = customField,
                    DateTimeValue     = DateTime.MinValue
                };
                customFieldData.Save();
                break;

            case BasicCustomFieldTypeEnum.FLOAT:
                customFieldData = new CustomFieldDataFloat(session)
                {
                    CustomFieldDataId = Guid.NewGuid(),
                    CustomFieldId     = customField,
                    FloatValue        = float.MinValue
                };
                customFieldData.Save();
                break;

            case BasicCustomFieldTypeEnum.INTEGER:
                customFieldData = new CustomFieldDataInt(session)
                {
                    CustomFieldDataId = Guid.NewGuid(),
                    CustomFieldId     = customField,
                    IntValue          = int.MinValue
                };
                customFieldData.Save();
                break;

            default:
                break;
            }

            return(customFieldData);
        }