コード例 #1
0
        public ActionResult Negotiate(RFIRFPComboViewModel inputs, FormCollection collections)
        {
            decimal?ReqType;
            string  status;
            var     TempNo    = TempData["TempNo"] != null?TempData["TempNo"].ToString():null;
            var     _VendorId = TempData["VendorId"] != null?TempData["VendorId"].ToString():null;

            ReqType = NegotiateBLL.getRequestType(inputs.Request.TEMP_ID);

            status = NegotiateBLL.InsertNegotiationForRequest(inputs, collections);
            if (status == "error")
            {
                TempData["ErrorMessage"] = "An Error Occurred";
            }
            else
            {
                TempData["SuccessMessage"] = "Negotiation Sent to selected vendors";
            }
            if (ReqType == 2)
            {
                if (TempNo != null && _VendorId != null)
                {
                    return(RedirectToAction("RFPVendorResponse", "VendorResponse", new { TempId = TempNo, VendorId = _VendorId }));
                }
                return(RedirectToAction("RFPAnalysis", "ResponseAnalysis", new { TempNo = inputs.Request.TEMP_ID }));
            }
            else
            {
                if (TempNo != null && _VendorId != null)
                {
                    return(RedirectToAction("RFQVendorResponse", "VendorResponse", new { TempId = TempNo, VendorId = _VendorId }));
                }
                return(RedirectToAction("RFPAnalysis", "ResponseAnalysis", new { TempNo = inputs.Request.TEMP_ID }));
            }
        }
コード例 #2
0
        public static string InsertNegotiationForRequest(RFIRFPComboViewModel inputs, FormCollection collection)
        {
            NegotiationsViewModel model = new NegotiationsViewModel();
            //SOURCING_RFQ_QUOTATION query = new SOURCING_RFQ_QUOTATION();
            SOURCING_NEGOTIATIONS _negotiations = new SOURCING_NEGOTIATIONS();
            SOURCING_NEG_PRICE    query         = new SOURCING_NEG_PRICE();

            try
            {
                decimal ResponseNumber = Convert.ToDecimal(collection["NegNumber"].ToString());
                var     context        = new Entities();
                foreach (var vendor in inputs.Vendors)
                {
                    decimal _negNo = Common.GetSequenceB();
                    model.VAT        = inputs.Request.NEGVAT;
                    model.VATVALUE   = inputs.Request.NEGVATVALUE;
                    model.TOTAL_AMT  = inputs.Request.NEGTOTALAMT;
                    model.GRANDTOTAL = inputs.Request.NEGGRANDTOTAL;
                    model.TEMP_ID    = inputs.Request.TEMP_ID;
                    model.RES_DATE   = DateTime.Now;

                    _negotiations.NEG_NO      = _negNo;
                    _negotiations.RESPONSE_NO = ResponseNumber;
                    _negotiations.GRANDTOTAL  = model.GRANDTOTAL;
                    _negotiations.TOTAL_AMT   = model.TOTAL_AMT;
                    _negotiations.VAT         = model.VAT;
                    _negotiations.VATVALUE    = model.VATVALUE;
                    _negotiations.RES_DATE    = model.RES_DATE;
                    _negotiations.VENDOR_ID   = vendor.VENDOR_ID;
                    _negotiations.NEGOTIATOR  = "BUYER";
                    _negotiations.TEMP_ID     = model.TEMP_ID;
                    _negotiations.STATUS      = "";
                    context.SOURCING_NEGOTIATIONS.Add(_negotiations);
                    context.SaveChanges();
                    foreach (var item in inputs.Item)
                    {
                        InsertNegPrice(item, inputs.Request.TEMP_ID, _negNo);
                    }

                    UpdateVendorStatus((decimal)vendor.VENDOR_ID, inputs.Request.TEMP_ID, ResponseNumber);
                    NotifyVendor((decimal)vendor.VENDOR_ID, inputs.Request.TEMP_ID);
                }
                return("success");
            }
            catch (Exception ex)
            {
                Logger.Log("An error occurred, Error: " + ex.Message +
                           "------------------------------------------------" + ex.StackTrace,
                           "error");
                return("error");
            }
        }
コード例 #3
0
        public ActionResult RFI(RFIRFPComboViewModel model)
        {
            var principal = (ClaimsIdentity)User.Identity;
            var FullName  = principal.FindFirst(ClaimTypes.GivenName).Value;
            var UserId    = principal.FindFirst(ClaimTypes.Actor).Value;

            model.Request.INITIATOR_NAME = FullName;
            model.Request.INITIATOR      = Convert.ToDecimal(UserId);
            string process = ProcessRFP.ProcessRFPIndex(model);

            if (process != null)
            {
                HttpContext.Session["TempId"] = process;
                return(RedirectToAction("RFIInfo"));
            }
            return(View());
        }
コード例 #4
0
        // GET: ProcurementResolve
        public ActionResult AuthorityToProceed(string TempId = null, string VendorId = null)
        {
            RFIRFPComboViewModel  response            = new RFIRFPComboViewModel();
            RFQSummaryDisplay     _response           = new RFQSummaryDisplay();
            VendorResponseBLL     _VendorResponse     = new VendorResponseBLL();
            ProcurementResolveBLL _ProcurementResolve = new ProcurementResolveBLL();
            decimal?ReqType;
            decimal _TempId = Convert.ToDecimal(TempId);

            if (TempId == null && VendorId == null)
            {
                return(RedirectToAction("Index", "Admin"));
            }
            else
            {
                _VendorResponse.TempNo       = TempId;
                _ProcurementResolve.TempID   = TempId;
                _VendorResponse.VendorId     = VendorId;
                _ProcurementResolve.VendorID = VendorId;
                _ProcurementResolve.Resolve  = "Authority To Proceed";
                _ProcurementResolve.UpdateVendorResolve();
                ViewBag.TempId   = TempId;
                ViewBag.VendorId = VendorId;
                decimal _vendorId = Convert.ToDecimal(VendorId);
                ReqType = NegotiateBLL.getRequestType(_TempId);
                if (ReqType == 2)
                {
                    response = _VendorResponse.GetRFPSummaryInfo();
                    if (response.Vendor.STATUS != "RESPONDED" && response.Vendor.STATUS != null)
                    {
                        ViewBag.Response = _VendorResponse.getNegotiatedPrice(response.Request.TEMP_ID, _vendorId);
                    }
                    return(View(response));
                }
                else
                {
                    _response = _VendorResponse.GetRFQQuotationSummaryAfter();
                    if (_response._Vendor.STATUS != "RESPONDED" && _response._Vendor.STATUS != null)
                    {
                        ViewBag.Response = _VendorResponse.getNegotiatedPrice(_response.Request.TEMP_NO, _vendorId);
                    }
                    return(View("AuthorityToProceedII", _response));
                }
            }
        }
コード例 #5
0
        public ActionResult RegLetter(string TempId = null, string VendorId = null)
        {
            RFIRFPComboViewModel  response            = new RFIRFPComboViewModel();
            RFQSummaryDisplay     _response           = new RFQSummaryDisplay();
            LorVendorViewModel    _vend               = new LorVendorViewModel();
            VendorResponseBLL     _VendorResponse     = new VendorResponseBLL();
            ProcurementResolveBLL _ProcurementResolve = new ProcurementResolveBLL();
            decimal?ReqType;
            decimal _TempId = Convert.ToDecimal(TempId);

            if (TempId == null && VendorId == null)
            {
                return(RedirectToAction("Index", "Admin"));
            }
            else
            {
                _VendorResponse.TempNo       = TempId;
                _ProcurementResolve.TempID   = TempId;
                _VendorResponse.VendorId     = VendorId;
                _ProcurementResolve.VendorID = VendorId;
                _ProcurementResolve.Resolve  = "Letter of Rejection";
                _ProcurementResolve.UpdateVendorResolve();
                ViewBag.TempId   = TempId;
                ViewBag.VendorId = VendorId;
                ReqType          = NegotiateBLL.getRequestType(_TempId);
                if (ReqType == 2)
                {
                    response            = _VendorResponse.GetRFPSummaryInfo();
                    _vend.InitiatorName = response.Request.INITIATOR_NAME;
                    _vend.RefNum        = response.RefNum.REF_NO;
                    _vend.VendorName    = response.Vendor.VENDOR_NAME;
                }
                else
                {
                    _response           = _VendorResponse.GetRFQQuotationSummaryAfter();
                    _vend.InitiatorName = _response.Initiator.NAME;
                    _vend.RefNum        = _response.RefNum.REF_NO;
                    _vend.VendorName    = _response._Vendor.VENDOR_NAME;
                }
                return(View(_vend));
            }
        }
コード例 #6
0
        public ActionResult UpdateRFIForm(RFIRFPComboViewModel model)
        {
            decimal _TempId;
            string  TempId = HttpContext.Session["TempId"].ToString();

            _TempId = Convert.ToDecimal(TempId);
            UpdateRequestBLL _model = new UpdateRequestBLL();

            _model.TempId = _TempId;
            _model._model = model;

            string output = _model.UpdateRFPIndex();

            if (output != null)
            {
                HttpContext.Session["TempId"] = Convert.ToString(output);
                return(RedirectToAction("GetRFIInfo"));
            }
            else
            {
                TempData["ErrorMessage"] = "An Error Occurred";
                return(RedirectToAction("EditRFIForm", "UpdateRequest", new { TempId = TempId }));
            }
        }
コード例 #7
0
        //Rerieve RFP vendor response summary
        #region RFP vendor response summary
        internal RFIRFPComboViewModel GetRFPSummaryInfo()
        {
            decimal TempId   = Convert.ToDecimal(this.TempNo);
            decimal VendorId = Convert.ToDecimal(this.VendorId);
            RFIRFPComboViewModel         Summary      = new RFIRFPComboViewModel();
            List <RFQITEMViewModel>      _Item        = new List <RFQITEMViewModel>();
            List <NegotiationsViewModel> Negotiations = new List <NegotiationsViewModel>();
            ProposalTemplateViewModel    _proposal    = new ProposalTemplateViewModel();
            ContactedVendorViewModel     _Vendors     = new ContactedVendorViewModel();

            try
            {
                using (var context = new Entities())
                {
                    var getVendors = context.SOURCING_CONTACTEDVENDOR.Where(vend => vend.TEMP_NO == TempId && vend.VENDOR_ID == VendorId).FirstOrDefault();
                    if (getVendors != null)
                    {
                        _Vendors.VENDOR_ID           = getVendors.VENDOR_ID;
                        _Vendors.VENDOR_NAME         = getVendors.VENDOR_NAME;
                        _Vendors.AUTO_EMAIL          = getVendors.AUTO_EMAIL;
                        _Vendors.VAT_PROPOSAL        = getVendors.VAT_PROPOSAL;
                        _Vendors.TOTALBFTAX_PROPOSAL = getVendors.TOTALBFTAX_PROPOSAL;
                        _Vendors.GRANDTOTAL_PROPOSAL = getVendors.GRANDTOTAL_PROPOSAL;
                        _Vendors.RESPONSE_DATE       = getVendors.RESPONSE_DATE;
                        _Vendors.ADDRESS             = getVendors.ADDRESS;
                        _Vendors.EMAIL = getVendors.EMAIL;
                        _Vendors.EXPECTED_DELIVERY_DATE = getVendors.EXPECTED_DELIVERY_DATE;
                        _Vendors.SUPPLIERS_QUOTE        = getVendors.SUPPLIERS_QUOTE;
                        _Vendors.PAYMENT_TERMS          = getVendors.PAYMENT_TERMS;
                        _Vendors.CONTACT_NAME           = getVendors.CONTACT_NAME;
                        _Vendors.STATUS              = getVendors.STATUS;
                        _Vendors.NEG_STATUS          = getVendors.NEG_STATUS;
                        _Vendors.VERDICT_ACCEPT_DATE = getVendors.VERDICT_ACCEPT_DATE;
                        _Vendors.VERDICT_ISSUE_DATE  = getVendors.VERDICT_ISSUE_DATE;


                        Summary.Vendor = _Vendors;
                    }
                    var getRefNum = context.SOURCING_REF_TEMP_LINK.Where(m => m.TEMP_NO == TempId).FirstOrDefault();
                    if (getRefNum != null)
                    {
                        Summary.RefNum.REF_NO = getRefNum.REF_NO;
                    }

                    //get FIles
                    IEnumerable <SOURCING_REQUEST_FILES> _queryFile = context.SOURCING_REQUEST_FILES.Where(f => f.SOURCE_REQ_ID == TempId && f.VENDORID == VendorId).ToList();
                    Summary._Files = _queryFile;
                    //get items


                    var getQuotesFromNegTable = context.SOURCING_NEGOTIATIONS.Where(m => m.TEMP_ID == TempId && m.VENDOR_ID == VendorId).OrderBy(m => m.NEG_NO).ToList();
                    var getItems = context.SOURCING_RFQ_ITEM.Where(it => it.TEMP_NO == TempId).ToList();
                    foreach (var _quote in getQuotesFromNegTable)
                    {
                        if (getItems != null)
                        {
                            foreach (var singleItem in getItems)
                            {
                                var getQuotes = context.SOURCING_NEG_PRICE.Where(it => it.ITEM_NO == singleItem.ITEM_NO && it.NEG_NO == _quote.NEG_NO).FirstOrDefault();
                                if (getQuotes != null)
                                {
                                    _Item.Add(new RFQITEMViewModel
                                    {
                                        ID           = getQuotes.ID,
                                        QUANTITY     = singleItem.QUANTITY,
                                        UNIT_OF_MEAS = singleItem.UNIT_OF_MEAS,
                                        DESCRIPTION  = singleItem.DESCRIPTION,
                                        ITEM_NO      = singleItem.ITEM_NO,
                                        UNIT_PRICE   = getQuotes.UNIT_PRICE,
                                        TOTAL_PRICE  = getQuotes.TOTAL_PRICE,
                                        NegNum       = _quote.NEG_NO
                                    });
                                }
                            }
                        }

                        Negotiations.Add(new NegotiationsViewModel
                        {
                            TOTAL_AMT   = _quote.TOTAL_AMT,
                            GRANDTOTAL  = _quote.GRANDTOTAL,
                            VAT         = _quote.VAT,
                            VATVALUE    = _quote.VATVALUE,
                            NEG_NO      = _quote.NEG_NO,
                            NEGOTIATOR  = _quote.NEGOTIATOR,
                            RESPONSE_NO = _quote.RESPONSE_NO,
                            STATUS      = _quote.STATUS,
                            TEMP_ID     = _quote.TEMP_ID,
                            VENDOR_ID   = _quote.VENDOR_ID,
                            RES_DATE    = _quote.RES_DATE,
                            NegItems    = _Item
                        });
                    }

                    Summary._Negotiations = Negotiations;

                    //var getItems = context.SOURCING_RFQ_ITEM.Where(it => it.TEMP_NO == TempId).ToList();
                    //if (getItems != null)
                    //{
                    //    foreach (var singleItem in getItems)
                    //    {
                    //        var getQuotes = context.SOURCING_RFQ_QUOTATION.Where(it => it.ITEM_NO == singleItem.ITEM_NO && it.VENDOR_ID == VendorId).FirstOrDefault();
                    //        _Item.Add(new RFQITEMViewModel
                    //        {
                    //            QUANTITY = singleItem.QUANTITY,
                    //            UNIT_OF_MEAS = singleItem.UNIT_OF_MEAS,
                    //            DESCRIPTION = singleItem.DESCRIPTION,
                    //            ITEM_NO = singleItem.ITEM_NO,
                    //            UNIT_PRICE = getQuotes.UNIT_PRICE,
                    //            TOTAL_PRICE = getQuotes.TOTAL_PRICE
                    //        });
                    //    }

                    //    Summary.Item = _Item;
                    //}

                    var getContactPerson   = context.SOURCING_CONTACTPERSON.Where(m => m.TEMP_NO == TempId).ToList();
                    var getTechnicalPerson = getContactPerson.Where(m => m.CONTACT_TYPE == "Technical").FirstOrDefault();
                    if (getTechnicalPerson != null)
                    {
                        Summary.Technical.TEMP_NO      = getTechnicalPerson.TEMP_NO;
                        Summary.Technical.NAME         = getTechnicalPerson.NAME;
                        Summary.Technical.DEPARTMENT   = getTechnicalPerson.DEPARTMENT;
                        Summary.Technical.DESIGNATION  = getTechnicalPerson.DESIGNATION;
                        Summary.Technical.TELEPHONE    = getTechnicalPerson.TELEPHONE;
                        Summary.Technical.EMAIL        = getTechnicalPerson.EMAIL;
                        Summary.Technical.CONTACT_TYPE = getTechnicalPerson.CONTACT_TYPE;
                    }
                    var getCommercialPerson = getContactPerson.Where(m => m.CONTACT_TYPE == "Commercial").FirstOrDefault();
                    if (getCommercialPerson != null)
                    {
                        Summary.Commercial.TEMP_NO      = getCommercialPerson.TEMP_NO;
                        Summary.Commercial.NAME         = getCommercialPerson.NAME;
                        Summary.Commercial.DEPARTMENT   = getCommercialPerson.DEPARTMENT;
                        Summary.Commercial.DESIGNATION  = getCommercialPerson.DESIGNATION;
                        Summary.Commercial.TELEPHONE    = getCommercialPerson.TELEPHONE;
                        Summary.Commercial.EMAIL        = getCommercialPerson.EMAIL;
                        Summary.Commercial.CONTACT_TYPE = getCommercialPerson.CONTACT_TYPE;
                    }

                    var query = context.SOURCING_RFP_RFI_REQ.Where(m => m.TEMP_ID == TempId).FirstOrDefault();
                    if (query != null)
                    {
                        Summary.Request.TEMP_ID              = query.TEMP_ID;
                        Summary.Request.PRJECT_TITLE         = query.PRJECT_TITLE;
                        Summary.Request.INITIATOR_NAME       = query.INITIATOR_NAME;
                        Summary.Request.INITIATOR            = query.INITIATOR;
                        Summary.Request.INITIATION_DATE      = query.INITIATION_DATE;
                        Summary.Request.PROJECT_OBJECTIVE    = query.PROJECT_OBJECTIVE;
                        Summary.Request.WORK_SCOPE           = query.WORK_SCOPE;
                        Summary.Request.UBN_OVERVIEW         = query.UBN_OVERVIEW;
                        Summary.Request.TECHNICAL_PROPOSAL   = query.TECHNICAL_PROPOSAL;
                        Summary.Request.ISSUE_DATE           = query.ISSUE_DATE;
                        Summary.Request.DUE_DATE             = query.DUE_DATE;
                        Summary.Request.DUE_TIME             = query.DUE_TIME;
                        Summary.Request.LST_QRY_RECEIPT_DATE = query.LST_QRY_RECEIPT_DATE;
                        Summary.Request.BANK_QRY_RES_DATE    = query.BANK_QRY_RES_DATE;
                        Summary.Request.LST_RPF_RECPT_DATE   = query.LST_RPF_RECPT_DATE;
                        Summary.Request.STATUS        = query.STATUS;
                        Summary.Request.NEGVATVALUE   = query.NEGVATVALUE;
                        Summary.Request.NEGVAT        = query.NEGVAT;
                        Summary.Request.NEGTOTALAMT   = query.NEGTOTALAMT;
                        Summary.Request.NEGGRANDTOTAL = query.NEGGRANDTOTAL;
                    }

                    var queryProposal = context.SOURCING_PROPOSAL.Where(m => m.TEMPID == TempId && m.VENDORID == VendorId && m.REQUEST_TYPE == 2).FirstOrDefault();
                    if (queryProposal != null)
                    {
                        Summary.proposal.PROPOSAL = queryProposal.PROPOSAL;
                    }
                    return(Summary);
                }
            }
            catch (Exception ex)
            {
                Logger.Log("Error retrieving data for summary display. Error: " + ex.Message +
                           "------------------------------------------------" + ex.StackTrace,
                           "error");
                return(null);
            }
        }
コード例 #8
0
        //Retrieve RFI vendor response summary
        #region RFI vendor response summary
        public RFIRFPComboViewModel GetRFISummaryInfo()
        {
            decimal _TempId  = Convert.ToDecimal(this.TempNo);
            decimal VendorId = Convert.ToDecimal(this.VendorId);
            RFIRFPComboViewModel     Summary  = new RFIRFPComboViewModel();
            ContactedVendorViewModel _Vendors = new ContactedVendorViewModel();
            List <RFQITEMViewModel>  _Item    = new List <RFQITEMViewModel>();

            try
            {
                using (var context = new Entities())
                {
                    var getVendors = context.SOURCING_CONTACTEDVENDOR.Where(vend => vend.TEMP_NO == _TempId && vend.VENDOR_ID == VendorId).FirstOrDefault();
                    if (getVendors != null)
                    {
                        _Vendors.VENDOR_ID              = getVendors.VENDOR_ID;
                        _Vendors.VENDOR_NAME            = getVendors.VENDOR_NAME;
                        _Vendors.AUTO_EMAIL             = getVendors.AUTO_EMAIL;
                        _Vendors.VAT                    = getVendors.VAT;
                        _Vendors.TOTALBFTAX             = getVendors.TOTALBFTAX;
                        _Vendors.GRANDTOTAL             = getVendors.GRANDTOTAL;
                        _Vendors.RESPONSE_DATE          = getVendors.RESPONSE_DATE;
                        _Vendors.ADDRESS                = getVendors.ADDRESS;
                        _Vendors.EMAIL                  = getVendors.EMAIL;
                        _Vendors.EXPECTED_DELIVERY_DATE = getVendors.EXPECTED_DELIVERY_DATE;
                        _Vendors.SUPPLIERS_QUOTE        = getVendors.SUPPLIERS_QUOTE;
                        _Vendors.PAYMENT_TERMS          = getVendors.PAYMENT_TERMS;
                        _Vendors.CONTACT_NAME           = getVendors.CONTACT_NAME;
                        _Vendors.STATUS                 = getVendors.STATUS;


                        Summary.Vendor = _Vendors;
                    }
                    var getItems = context.SOURCING_RFQ_ITEM.Where(it => it.TEMP_NO == _TempId).ToList();
                    if (getItems != null)
                    {
                        foreach (var singleItem in getItems)
                        {
                            _Item.Add(new RFQITEMViewModel
                            {
                                QUANTITY     = singleItem.QUANTITY,
                                UNIT_OF_MEAS = singleItem.UNIT_OF_MEAS,
                                DESCRIPTION  = singleItem.DESCRIPTION,
                                RFI_INFO     = singleItem.RFI_INFO
                            });
                        }
                        Summary.Item = _Item;
                    }
                    //get Reference Number

                    var getRefNum = context.SOURCING_REF_TEMP_LINK.Where(m => m.TEMP_NO == _TempId).FirstOrDefault();
                    if (getRefNum != null)
                    {
                        Summary.RefNum.REF_NO = getRefNum.REF_NO;
                    }


                    var getContactPerson   = context.SOURCING_CONTACTPERSON.Where(m => m.TEMP_NO == _TempId).ToList();
                    var getTechnicalPerson = getContactPerson.Where(m => m.CONTACT_TYPE == "Technical").FirstOrDefault();
                    if (getTechnicalPerson != null)
                    {
                        Summary.Technical.TEMP_NO      = getTechnicalPerson.TEMP_NO;
                        Summary.Technical.NAME         = getTechnicalPerson.NAME;
                        Summary.Technical.DEPARTMENT   = getTechnicalPerson.DEPARTMENT;
                        Summary.Technical.DESIGNATION  = getTechnicalPerson.DESIGNATION;
                        Summary.Technical.TELEPHONE    = getTechnicalPerson.TELEPHONE;
                        Summary.Technical.EMAIL        = getTechnicalPerson.EMAIL;
                        Summary.Technical.CONTACT_TYPE = getTechnicalPerson.CONTACT_TYPE;
                    }
                    var getCommercialPerson = getContactPerson.Where(m => m.CONTACT_TYPE == "Commercial").FirstOrDefault();
                    if (getCommercialPerson != null)
                    {
                        Summary.Commercial.TEMP_NO      = getCommercialPerson.TEMP_NO;
                        Summary.Commercial.NAME         = getCommercialPerson.NAME;
                        Summary.Commercial.DEPARTMENT   = getCommercialPerson.DEPARTMENT;
                        Summary.Commercial.DESIGNATION  = getCommercialPerson.DESIGNATION;
                        Summary.Commercial.TELEPHONE    = getCommercialPerson.TELEPHONE;
                        Summary.Commercial.EMAIL        = getCommercialPerson.EMAIL;
                        Summary.Commercial.CONTACT_TYPE = getCommercialPerson.CONTACT_TYPE;
                    }

                    var query = context.SOURCING_RFP_RFI_REQ.Where(m => m.TEMP_ID == _TempId).FirstOrDefault();
                    if (query != null)
                    {
                        Summary.Request.TEMP_ID              = query.TEMP_ID;
                        Summary.Request.PRJECT_TITLE         = query.PRJECT_TITLE;
                        Summary.Request.INITIATOR_NAME       = query.INITIATOR_NAME;
                        Summary.Request.INITIATOR            = query.INITIATOR;
                        Summary.Request.INITIATION_DATE      = query.INITIATION_DATE;
                        Summary.Request.PROJECT_OBJECTIVE    = query.PROJECT_OBJECTIVE;
                        Summary.Request.WORK_SCOPE           = query.WORK_SCOPE;
                        Summary.Request.UBN_OVERVIEW         = query.UBN_OVERVIEW;
                        Summary.Request.TECHNICAL_PROPOSAL   = query.TECHNICAL_PROPOSAL;
                        Summary.Request.ISSUE_DATE           = query.ISSUE_DATE;
                        Summary.Request.DUE_DATE             = query.DUE_DATE;
                        Summary.Request.DUE_TIME             = query.DUE_TIME;
                        Summary.Request.LST_QRY_RECEIPT_DATE = query.LST_QRY_RECEIPT_DATE;
                        Summary.Request.BANK_QRY_RES_DATE    = query.BANK_QRY_RES_DATE;
                        Summary.Request.LST_RPF_RECPT_DATE   = query.LST_RPF_RECPT_DATE;
                        Summary.Request.STATUS = query.STATUS;
                    }

                    var queryProposal = context.SOURCING_PROPOSAL.Where(m => m.TEMPID == _TempId && m.VENDORID == VendorId && m.REQUEST_TYPE == 1).FirstOrDefault();
                    if (queryProposal != null)
                    {
                        Summary.proposal.PROPOSAL = queryProposal.PROPOSAL;
                    }
                    return(Summary);
                }
            }
            catch (Exception ex)
            {
                Logger.Log("Error retrieving data for summary display. Error: " + ex.Message, "error");
                return(null);
            }
        }
コード例 #9
0
        public static RFIRFPComboViewModel GetSummaryInfo(string _TempId = null)
        {
            string TempId = "";
            RFIRFPComboViewModel            Summary  = new RFIRFPComboViewModel();
            List <ContactedVendorViewModel> _Vendors = new List <ContactedVendorViewModel>();
            List <RFQITEMViewModel>         _Item    = new List <RFQITEMViewModel>();

            if (_TempId == null)
            {
                TempId = HttpContext.Current.Session["TempId"].ToString();
            }
            else
            {
                TempId = _TempId;
                HttpContext.Current.Session["TempId"] = _TempId;
            }

            decimal _tempId = Convert.ToDecimal(TempId);

            try
            {
                using (var context = new Entities())
                {
                    var getVendors = context.SOURCING_CONTACTEDVENDOR.Where(vend => vend.TEMP_NO == _tempId).ToList();
                    if (getVendors != null)
                    {
                        foreach (var singleVendor in getVendors)
                        {
                            _Vendors.Add(new ContactedVendorViewModel
                            {
                                VENDOR_NAME = singleVendor.VENDOR_NAME,
                                AUTO_EMAIL  = singleVendor.AUTO_EMAIL,
                                VENDOR_ID   = singleVendor.VENDOR_ID,
                                STATUS      = singleVendor.STATUS ?? null
                            });
                        }
                        Summary.Vendors = _Vendors;
                    }

                    //get Reference Number

                    var getRefNum = context.SOURCING_REF_TEMP_LINK.Where(m => m.TEMP_NO == _tempId).FirstOrDefault();
                    if (getRefNum != null)
                    {
                        Summary.RefNum.REF_NO = getRefNum.REF_NO;
                    }
                    //get items
                    var getItems = context.SOURCING_RFQ_ITEM.Where(it => it.TEMP_NO == _tempId).ToList();
                    if (getItems != null)
                    {
                        foreach (var singleItem in getItems)
                        {
                            _Item.Add(new RFQITEMViewModel
                            {
                                QUANTITY     = singleItem.QUANTITY,
                                UNIT_OF_MEAS = singleItem.UNIT_OF_MEAS,
                                DESCRIPTION  = singleItem.DESCRIPTION,
                                RFI_INFO     = singleItem.RFI_INFO,
                                ITEM_NO      = singleItem.ITEM_NO
                            });
                        }
                        Summary.Item = _Item;
                    }

                    var getContactPerson   = context.SOURCING_CONTACTPERSON.Where(m => m.TEMP_NO == _tempId).ToList();
                    var getTechnicalPerson = getContactPerson.Where(m => m.CONTACT_TYPE == "Technical").FirstOrDefault();
                    if (getTechnicalPerson != null)
                    {
                        Summary.Technical.ID           = getTechnicalPerson.ID;
                        Summary.Technical.TEMP_NO      = getTechnicalPerson.TEMP_NO;
                        Summary.Technical.NAME         = getTechnicalPerson.NAME;
                        Summary.Technical.DEPARTMENT   = getTechnicalPerson.DEPARTMENT;
                        Summary.Technical.DESIGNATION  = getTechnicalPerson.DESIGNATION;
                        Summary.Technical.TELEPHONE    = getTechnicalPerson.TELEPHONE;
                        Summary.Technical.EMAIL        = getTechnicalPerson.EMAIL;
                        Summary.Technical.CONTACT_TYPE = getTechnicalPerson.CONTACT_TYPE;
                    }
                    var getCommercialPerson = getContactPerson.Where(m => m.CONTACT_TYPE == "Commercial").FirstOrDefault();
                    if (getCommercialPerson != null)
                    {
                        Summary.Commercial.ID           = getCommercialPerson.ID;
                        Summary.Commercial.TEMP_NO      = getCommercialPerson.TEMP_NO;
                        Summary.Commercial.NAME         = getCommercialPerson.NAME;
                        Summary.Commercial.DEPARTMENT   = getCommercialPerson.DEPARTMENT;
                        Summary.Commercial.DESIGNATION  = getCommercialPerson.DESIGNATION;
                        Summary.Commercial.TELEPHONE    = getCommercialPerson.TELEPHONE;
                        Summary.Commercial.EMAIL        = getCommercialPerson.EMAIL;
                        Summary.Commercial.CONTACT_TYPE = getCommercialPerson.CONTACT_TYPE;
                    }

                    var query = context.SOURCING_RFP_RFI_REQ.Where(m => m.TEMP_ID == _tempId).FirstOrDefault();
                    if (query != null)
                    {
                        Summary.Request.TEMP_ID              = query.TEMP_ID;
                        Summary.Request.PRJECT_TITLE         = query.PRJECT_TITLE;
                        Summary.Request.INITIATOR_NAME       = query.INITIATOR_NAME;
                        Summary.Request.INITIATOR            = query.INITIATOR;
                        Summary.Request.INITIATION_DATE      = query.INITIATION_DATE;
                        Summary.Request.PROJECT_OBJECTIVE    = query.PROJECT_OBJECTIVE;
                        Summary.Request.WORK_SCOPE           = query.WORK_SCOPE;
                        Summary.Request.UBN_OVERVIEW         = query.UBN_OVERVIEW;
                        Summary.Request.TECHNICAL_PROPOSAL   = query.TECHNICAL_PROPOSAL;
                        Summary.Request.ISSUE_DATE           = query.ISSUE_DATE;
                        Summary.Request.DUE_DATE             = query.DUE_DATE;
                        Summary.Request.DUE_TIME             = query.DUE_TIME;
                        Summary.Request.LST_QRY_RECEIPT_DATE = query.LST_QRY_RECEIPT_DATE;
                        Summary.Request.BANK_QRY_RES_DATE    = query.BANK_QRY_RES_DATE;
                        Summary.Request.LST_RPF_RECPT_DATE   = query.LST_RPF_RECPT_DATE;
                        Summary.Request.STATUS = query.STATUS;
                    }
                    return(Summary);
                }
            }
            catch (Exception ex)
            {
                Logger.Log("Error retrieving data for summary display. Error: " + ex.Message +
                           "------------------------------------------------" + ex.StackTrace,
                           "error");
                return(null);
            }
        }