예제 #1
0
        public Task <string> AddContractTest(
            [PexAssumeUnderTest] ContractRepository target,
            string contextId,
            string token1,
            string token2
            )
        {
            Task <string> result = target.AddContract(contextId, token1, token2);

            return(result);
        }
예제 #2
0
        public void ContractCreation_AddContract_NewContract()
        {
            Customer testCustomer = new Customer(1, "STENA", "Danmark");

            cr.AddContract(testCustomer, new DateTime(2017, 1, 1), Currency.DKK, "SH");
            Contract actual = cr.GetContracts().Last();

            Assert.AreEqual("STENA", actual.Customer.Name);
            Assert.AreEqual(2017, actual.Date.Year);
            Assert.AreEqual(1, actual.Date.Month);
            Assert.AreEqual(1, actual.Date.Day);
            Assert.AreEqual("SH", actual.Initials);
        }
예제 #3
0
        public void ContractUpdate_AddAmount_DeliveredAmountIncreased()
        {
            Material     testMaterial     = new Material("E1", "Jern");
            Customer     testCustomer     = new Customer(1, "STENA", "Danmark");
            ContractLine testContractLine = new ContractLine(1, testMaterial, 1000, 0, 0, true, "test comment");

            cr.AddContract(testCustomer, DateTime.Now, 0, "SH");
            Contract actual = cr.GetContracts()[0];

            actual.Id = 1;
            actual.ContractLines.Add(testContractLine);

            Assert.AreEqual(0, actual.ContractLines.First().DeliveredAmount);
            cr.AddAmount(actual.Id, testContractLine.Id, 25);
            actual = cr.GetContracts()[0];
            Assert.AreEqual(25, actual.ContractLines.First().DeliveredAmount);

            cr.AddAmount(actual.Id, testContractLine.Id, -25);
        }
예제 #4
0
        public async Task <ActionResult> AddDo(DorderVM dorder, FormCollection frm)
        {
            int     saveCopy           = Convert.ToInt32(frm["SaveCopy"]);
            decimal lastDoNumber       = 0;
            decimal lastContractNumber = 0;
            double  totalQty           = 0;
            int     party = (int)dorder.Party;

            if (saveCopy == 1)
            {
                dorder.EcomID      = (int)Session["Comp"];
                dorder.CreatedOn   = DateTime.Today;
                lastDoNumber       = (decimal)dorder.DoNumber;
                lastContractNumber = (decimal)dorder.ContractNumber;
                Response reslut = await _Repository.AddDo(dorder);

                totalQty = (double)dorder.Weight;
                if (!reslut.IsError)
                {
                    ISettingRepository _setting = new SettingRepository();
                    _setting.UpdateDoAutoIncrement(dorder.autoincrement);
                    _setting.UpdateLastContractNumber((decimal)dorder.ContractNumber);
                    _setting.UpdateLastDoNumber((lastDoNumber + 1));


                    IContractRespository _contract = new ContractRepository();
                    ContractVM           contract  = new ContractVM();
                    contract.Party        = party;
                    contract.PartyName    = dorder.PartyName;
                    contract.TotatQty     = totalQty;
                    contract.Unit         = dorder.Unit;
                    contract.EcomID       = (int)Session["Comp"];
                    contract.CreatedOn    = DateTime.Today;
                    contract.ContractType = dorder.ContractType;
                    contract.ContractNo   = dorder.ContractNumber;
                    if (_contract.isInsertable(contract))
                    {
                        await _contract.AddContract(contract);
                    }
                    else
                    {
                        await _contract.UpdateContractQty(contract);
                    }

                    IAddressHistoryRepository _addresHistory = new AddressHistoryRepository();
                    AdressHistory             addressHistory = new AdressHistory();

                    addressHistory.Party          = dorder.Party;
                    addressHistory.EnglisgAddress = dorder.AddressEng;
                    addressHistory.UrduAddress    = dorder.AddressUrd;

                    if (_addresHistory.isInsertable((int)addressHistory.Party))
                    {
                        _addresHistory.AddAddressHistory(addressHistory);
                    }

                    else
                    {
                        _addresHistory.updqateAddressHistory(addressHistory);
                    }
                }
            }

            else
            {
                lastDoNumber = (decimal)dorder.DoNumber;
                for (int i = 0; i < saveCopy; i++)
                {
                    dorder.EcomID      = (int)Session["Comp"];
                    dorder.CreatedOn   = DateTime.Today;
                    dorder.DoNumber    = lastDoNumber;
                    lastContractNumber = (decimal)dorder.ContractNumber;
                    Response reslutloop = await _Repository.AddDo(dorder);

                    totalQty = totalQty + (double)dorder.Weight;
                    lastDoNumber++;
                }

                ISettingRepository _setting = new SettingRepository();
                _setting.UpdateDoAutoIncrement(dorder.autoincrement);
                _setting.UpdateLastContractNumber((decimal)dorder.ContractNumber);
                _setting.UpdateLastDoNumber((lastDoNumber));

                IContractRespository _contract = new ContractRepository();
                ContractVM           contract  = new ContractVM();
                contract.Party        = party;
                contract.PartyName    = dorder.PartyName;
                contract.TotatQty     = totalQty;
                contract.Unit         = dorder.Unit;
                contract.EcomID       = (int)Session["Comp"];
                contract.CreatedOn    = DateTime.Today;
                contract.ContractType = dorder.ContractType;
                contract.ContractNo   = dorder.ContractNumber;

                if (_contract.isInsertable(contract))
                {
                    await _contract.AddContract(contract);
                }
                else
                {
                    await _contract.UpdateContractQty(contract);
                }

                IAddressHistoryRepository _addresHistory = new AddressHistoryRepository();
                AdressHistory             addressHistory = new AdressHistory();

                addressHistory.Party          = dorder.Party;
                addressHistory.EnglisgAddress = dorder.AddressEng;
                addressHistory.UrduAddress    = dorder.AddressUrd;

                if (_addresHistory.isInsertable((int)addressHistory.Party))
                {
                    _addresHistory.AddAddressHistory(addressHistory);
                }

                else
                {
                    _addresHistory.updqateAddressHistory(addressHistory);
                }
            }

            return(RedirectToAction("Index"));
        }