コード例 #1
0
        public EoiDataContract(CorporationWebContract contract)
        {
            this.Id = contract.Id;

            _coporationWebContract = contract;
            _blueprint             = EoiDataInterface.GetBlueprint(contract.BlueprintId);
        }
コード例 #2
0
        public static bool CreateContract(string username, int id, int volume, decimal price, CorporationWebContractTypes contractType, bool materialIncluded, bool blueprintIncluded, string description, bool enablePartition)
        {
            var tmpCorpWebContract = new CorporationWebContract();

            tmpCorpWebContract.BlueprintId  = id;
            tmpCorpWebContract.ContractType = contractType;
            tmpCorpWebContract.Volume       = volume;
            tmpCorpWebContract.Price        = price;

            if (contractType == CorporationWebContractTypes.Buy)
            {
                tmpCorpWebContract.Client = username;
            }
            else if (contractType == CorporationWebContractTypes.Sell)
            {
                tmpCorpWebContract.Contractor = username;
            }

            tmpCorpWebContract.State             = CorporationWebContractStates.Pending;
            tmpCorpWebContract.MaterialIncluded  = materialIncluded;
            tmpCorpWebContract.BlueprintIncluded = blueprintIncluded;
            tmpCorpWebContract.Destination       = -1;
            tmpCorpWebContract.Description       = description;
            tmpCorpWebContract.EnablePartition   = enablePartition;

            var createContractRequest = new WebContracts(WebRequestType.Set, username, tmpCorpWebContract);
            var result = createContractRequest.Request();

            if (result.Status == WebRequestStatus.Failed)
            {
            }

            return(result.Status == WebRequestStatus.Ok);
        }
コード例 #3
0
        public static bool DeleteContract(string username, long id)
        {
            var tmpCorpWebContract = new CorporationWebContract();

            tmpCorpWebContract.Id = id;

            var createContractRequest = new WebContracts(WebRequestType.Set, username, tmpCorpWebContract, true);
            var result = createContractRequest.Request();

            if (result.Status == WebRequestStatus.Failed)
            {
            }

            return(result.Status == WebRequestStatus.Ok);
        }
コード例 #4
0
        public static bool AcceptContract(string username, long id, int selectedVolume)
        {
            var tmpCorpWebContract = new CorporationWebContract();

            tmpCorpWebContract.Id     = id;
            tmpCorpWebContract.Volume = selectedVolume;

            var createContractRequest = new WebContracts(WebRequestType.Set, username, tmpCorpWebContract, false, true);
            var result = createContractRequest.Request();

            if (result.Status == WebRequestStatus.Failed)
            {
            }

            return(result.Status == WebRequestStatus.Ok);
        }
コード例 #5
0
        internal bool Synchronize(CorporationWebContract corpContract)
        {
            var updated = false;

            if (_coporationWebContract == null || _eoiContract == null)
            {
                throw new InvalidOperationException("Synchronizing a Corporation Contract failed");
            }

            _coporationWebContract = corpContract;

            if (_coporationWebContract.Parent != _eoiContract.Parent)
            {
                _eoiContract.Parent = _coporationWebContract.Parent;
                updated             = true;
            }
            if (_coporationWebContract.Volume != _eoiContract.Volume)
            {
                _eoiContract.Volume = _coporationWebContract.Volume;
                updated             = true;
            }
            if (_coporationWebContract.Price != _eoiContract.Price)
            {
                _eoiContract.Price = _coporationWebContract.Price;
                updated            = true;
            }
            if (_coporationWebContract.Contractor != _eoiContract.Contractor)
            {
                _eoiContract.Contractor = _coporationWebContract.Contractor;
                updated = true;
            }
            switch (_coporationWebContract.State)
            {
            case CorporationWebContractStates.Pending:
                if (_eoiContract.State != ContractStates.Pending)
                {
                    _eoiContract.State = ContractStates.Pending;
                    updated            = true;
                }
                break;

            case CorporationWebContractStates.Accepted:
                if (_eoiContract.State != ContractStates.Accepted)
                {
                    _eoiContract.State = ContractStates.Accepted;
                    updated            = true;
                }
                break;

            case CorporationWebContractStates.Finished:
                if (_eoiContract.State != ContractStates.Finish)
                {
                    _eoiContract.State = ContractStates.Finish;
                    updated            = true;
                }
                break;

            default:
                break;
            }

            if (_coporationWebContract.BlueprintIncluded != _eoiContract.BlueprintIncluded)
            {
                _eoiContract.BlueprintIncluded = _coporationWebContract.BlueprintIncluded;
                updated = true;
            }
            if (_coporationWebContract.MaterialIncluded != _eoiContract.MaterialIncluded)
            {
                _eoiContract.MaterialIncluded = _coporationWebContract.MaterialIncluded;
                updated = true;
            }
            if (_coporationWebContract.EnablePartition != _eoiContract.EnablePartition)
            {
                _eoiContract.EnablePartition = _coporationWebContract.EnablePartition;
                updated = true;
            }
            if (_coporationWebContract.Destination != _eoiContract.Destination)
            {
                _eoiContract.Destination = _coporationWebContract.Destination;
                updated = true;
            }
            if (_coporationWebContract.Description != _eoiContract.Description)
            {
                _eoiContract.Description = _coporationWebContract.Description;
                updated = true;
            }

            this.Synchronized = true;

            return(updated);
        }
コード例 #6
0
 internal void Dispose()
 {
     _blueprint             = null;
     _coporationWebContract = null;
     _eoiContract           = null;
 }