示例#1
0
        public void RestoreItemDataFieldEntriesFromCloud(Accountant curr_acc, string cloudUrl, string cloudUID, string cloudPWD)
        {
            IList <ItemDataFieldEntry> ItemDataFieldEntries = curr_acc.ItemDataFieldEntryMgr.FindAllCollection();
            int           itemCount = ItemDataFieldEntries.Count;
            StringBuilder sb        = new StringBuilder();

            sb.Append("backup=ItemDataFieldEntries");
            sb.AppendFormat("&count={0}", itemCount);

            cloudUID = cloudUID.Trim();
            if (string.IsNullOrEmpty(cloudUID))
            {
                sb.AppendFormat("&uid={0}", NetUtil.UrlEncode(cloudUID));
            }
            cloudPWD = cloudPWD.Trim();
            if (string.IsNullOrEmpty(cloudPWD))
            {
                sb.AppendFormat("&pwd={0}", NetUtil.UrlEncode(cloudPWD));
            }

            for (int i = 0; i < itemCount; ++i)
            {
                ItemDataFieldEntry _itemdatafieldentry = ItemDataFieldEntries[i];
                sb.AppendFormat("&itemdatafieldentryid[]={0}", NetUtil.UrlEncode(_itemdatafieldentry.ItemDataFieldEntryID));
                sb.AppendFormat("&content[]={0}", NetUtil.UrlEncode(_itemdatafieldentry.Content));
                sb.AppendFormat("&datafieldid[]={0}", NetUtil.UrlEncode(_itemdatafieldentry.DataFieldID));
                sb.AppendFormat("&itemnumber[]={0}", NetUtil.UrlEncode(_itemdatafieldentry.ItemNumber));
            }

            cloudUrl = cloudUrl.Trim();
            NetUtil.Instance.HttpPost(cloudUrl, sb.ToString());
        }
示例#2
0
        protected override OpResult _Store(ItemDataFieldEntry _obj)
        {
            if (_obj == null)
            {
                return OpResult.NotifyStoreAction(OpResult.ResultStatus.ObjectIsNull, _obj, "ItemDataFieldEntry object cannot be created as it is null");
            }

            if (Exists(_obj))
            {
                //Console.WriteLine("execute update...{0}", _obj.ItemDataFieldEntryID);
                ExecuteNonQuery(GetQuery_UpdateQuery(_obj));
                return OpResult.NotifyStoreAction(OpResult.ResultStatus.Updated, _obj);
            }

            
            ExecuteNonQuery(GetQuery_InsertQuery(_obj));
            if (_obj.ItemDataFieldEntryID == null)
            {
                _obj.ItemDataFieldEntryID = DbMgr.GetLastInsertID();
            }
            _obj.FromDb = true;
            //Console.WriteLine("execute insert...{0}", _obj.ItemDataFieldEntryID);

            return OpResult.NotifyStoreAction(OpResult.ResultStatus.Created, _obj);
        }
示例#3
0
 public BOItemDataFieldEntry(Accountant acc, ItemDataFieldEntry _obj, Item _item, BOContext state)
     : base(acc, state)
 {
     mObjectID       = BOType.BOItemDataFieldEntry;
     mDataSource     = _obj;
     mDataProxy      = _obj.Clone() as ItemDataFieldEntry;
     mDataProxy.Item = _item;
     mItem           = _item;
 }
示例#4
0
 protected override OpResult _Delete(ItemDataFieldEntry _obj)
 {
     if (Exists(_obj))
     {
         DbDeleteStatement clause = DbMgr.CreateDeleteClause();
         clause.DeleteFrom("ItemDataFieldEntries").Criteria.IsEqual("ItemDataFieldEntries", "ItemDataFieldEntryID", _obj.ItemDataFieldEntryID);
         DbMgr.ExecuteNonQuery(clause);
         return OpResult.NotifyDeleteAction(OpResult.ResultStatus.ExistsAndDeleted, _obj);
     }
     return OpResult.NotifyDeleteAction(OpResult.ResultStatus.NotExists, _obj);
 }
示例#5
0
        protected override void InitializeProperties()
        {
            base.InitializeProperties();

            #region DATA_FIELD
            AddProperty(DATA_FIELD,
                        DATA_FIELD,
                        delegate()
            {
                return(mDataProxy.DataField);
            },
                        delegate(object value)
            {
                if (value == null)
                {
                    mDataProxy.DataField = null;
                }
                else
                {
                    mDataProxy.DataField = value as DataField;
                }
            },
                        delegate()
            {
                return(CanEdit);
            },
                        delegate()
            {
                return(true);
            },
                        delegate(object value, ref string error)
            {
                if (value == null)
                {
                    return(true);
                }
                else if (value is DataField)
                {
                    DataField df = value as DataField;
                    if (this.RecordContext == BOContext.Record_Create)
                    {
                        if (mAccountant.ItemDataFieldEntryMgr.ExistsByItemNumberAndDataFieldID(mDataProxy.ItemNumber, df.DataFieldID))
                        {
                            error = DecorateEntityAlreadyExistError(DATA_FIELD, df.DataFieldName);
                            return(false);
                        }
                    }
                    else if (this.RecordContext == BOContext.Record_Update)
                    {
                        ItemDataFieldEntry idfe = mAccountant.ItemDataFieldEntryMgr.FindByItemNumberAndDataFieldID(mDataProxy.ItemNumber, df.DataFieldID);
                        if (idfe != null && idfe.DataFieldID.Value != df.DataFieldID.Value)
                        {
                            error = DecorateEntityAlreadyExistError(DATA_FIELD, df.DataFieldName);
                            return(false);
                        }
                    }
                    return(true);
                }
                error = DecorateTypeMismatchError(DATA_FIELD, "DataField");
                return(false);
            });
            #endregion

            #region ITEM
            AddProperty(ITEM,
                        ITEM,
                        delegate()
            {
                return(mDataProxy.Item);
            },
                        delegate(object value)
            {
                mDataProxy.Item = value as Item;
            },
                        delegate()
            {
                return(true);
            },
                        delegate()
            {
                return(true);
            },
                        delegate(object value, ref string error)
            {
                if (value is Item)
                {
                    return(true);
                }
                error = DecorateTypeMismatchError(ITEM, "Item");
                return(false);
            });
            #endregion

            #region CONTENT
            AddProperty(CONTENT,
                        CONTENT,
                        delegate()
            {
                return(mDataProxy.Content);
            },
                        delegate(object value)
            {
                if (value is string)
                {
                    mDataProxy.Content = (string)value;
                }
                else
                {
                    throw new Exception("Content must be of type string");
                }
            },
                        delegate()
            {
                return(true);
            },
                        delegate()
            {
                return(true);
            },
                        delegate(object value, ref string error)
            {
                if (value is string)
                {
                    if (IsWithinRange(value as string, 1, 255, out error))
                    {
                        return(true);
                    }
                    error = DecorateError(CONTENT, error);
                }
                else
                {
                    error = DecorateTypeMismatchError(CONTENT, "string");
                }
                return(false);
            });
            #endregion
        }
示例#6
0
 public void DeleteItemDataFieldEntry(ItemDataFieldEntry dfe, Item _item)
 {
     mAccountant.DeleteItemDataFieldEntry(dfe, _item);
 }
示例#7
0
 public void OpenItemDataFieldEntry(ItemDataFieldEntry dfe, Item _item)
 {
     mInventoryPresenter.ShowItemDataFieldEntry(mAccountant.OpenItemDataFieldEntry(dfe, _item));
 }
示例#8
0
 private DbUpdateStatement GetQuery_UpdateQuery(ItemDataFieldEntry _obj)
 {
     return DbMgr.CreateUpdateClause("ItemDataFieldEntries", GetFields(_obj), "ItemDataFieldEntryID", _obj.ItemDataFieldEntryID);
 }
示例#9
0
 private DbInsertStatement GetQuery_InsertQuery(ItemDataFieldEntry _obj)
 {
     Dictionary<string, DbFieldEntry> fields = GetFields(_obj);
     return DbMgr.CreateInsertClause("ItemDataFieldEntries", fields);
 }