예제 #1
0
        public ActionResult Save(InsiderTrading.Models.NSEGroupDocumentMappingModel objNSEGroupDocumentModel, Dictionary <int, List <DocumentDetailsModel> > dicPolicyDocumentsUploadFileList, int GroupId)
        {
            ModelState.Remove("KEY");
            ModelState.Add("KEY", new ModelState());
            ModelState.Clear();
            var StockExchangeDateSubmission = Request.Form["SubmissionFromDate"];
            LoginUserDetails            objLoginUserDetails  = null;
            DocumentDetailsSL           objDocumentDetailsSL = new DocumentDetailsSL();
            List <DocumentDetailsModel> UploadFileDocumentDetailsModelList = null;
            NSEGroupDocumentMappingDTO  objNSEGroupDocDTO     = new NSEGroupDocumentMappingDTO();
            NSEGroupDetailsDTO          objNSEGroupDetailsDTO = new NSEGroupDetailsDTO();
            NSEGroupDTO objNSEGroupDTO = new NSEGroupDTO();

            objLoginUserDetails = (LoginUserDetails)InsiderTrading.Common.Common.GetSessionValue((string)ConstEnum.SessionValue.UserDetails);
            DateTime?date = null;

            using (NSEGroupSL ObjNSEGroupSL = new NSEGroupSL())
            {
                List <NSEGroupDTO> lstDate = ObjNSEGroupSL.Get_Group_Date(objLoginUserDetails.CompanyDBConnectionString, GroupId);
                foreach (var submitdate in lstDate)
                {
                    date = submitdate.DownloadedDate;
                }
            }
            if (StockExchangeDateSubmission == "")
            {
                ModelState.AddModelError("DateOfSubmissionToNSE", Common.Common.getResource("nse_lbl_50535"));
            }
            else
            {
                objNSEGroupDTO.SubmissionDate = Convert.ToDateTime(StockExchangeDateSubmission);
                if (objNSEGroupDTO.SubmissionDate > Common.Common.GetCurrentDate(objLoginUserDetails.CompanyDBConnectionString))
                {
                    ModelState.AddModelError("DateOfSubmissionToNSE", Common.Common.getResource("nse_lbl_50534"));
                }
                if (Convert.ToDateTime(date).Date > objNSEGroupDTO.SubmissionDate)
                {
                    ModelState.AddModelError("DateOfSubmissionToNSE", Common.Common.getResource("nse_lbl_50536"));
                }
            }
            if (ModelState.IsValid)
            {
                if (dicPolicyDocumentsUploadFileList.Count > 0) // file is uploaded and data found for file upload
                {
                    UploadFileDocumentDetailsModelList = dicPolicyDocumentsUploadFileList[ConstEnum.Code.UploadNseDocument];
                }
                List <DocumentDetailsModel> objSavedDocumentDetialsModelList = objDocumentDetailsSL.SaveDocumentDetails(objLoginUserDetails.CompanyDBConnectionString, UploadFileDocumentDetailsModelList, ConstEnum.Code.UploadNseDocument, GroupId, objLoginUserDetails.LoggedInUserID, objLoginUserDetails.CompanyName);
                DocumentDetailsDTO          objDocumentDetailsDTO            = null;
                objDocumentDetailsDTO = new DocumentDetailsDTO();
                using (NSEGroupSL objNSEGroupSL = new NSEGroupSL())
                {
                    if (UploadFileDocumentDetailsModelList != null)
                    {
                        foreach (var fleGUID in UploadFileDocumentDetailsModelList)
                        {
                            objNSEGroupDetailsDTO.LoggedInUserId = objLoginUserDetails.LoggedInUserID;
                            objNSEGroupDetailsDTO.GroupId        = GroupId;
                            List <NSEGroupDetailsDTO> GrouplistDetails = objNSEGroupSL.Save_NSEGroup_Details(objLoginUserDetails.CompanyDBConnectionString, objNSEGroupDetailsDTO);
                            foreach (var nseuserId in GrouplistDetails)
                            {
                                objNSEGroupDocDTO.NSEGroupDetailsId = nseuserId.NSEGroupDetailsId;
                                objNSEGroupDetailsDTO.GroupId       = Convert.ToInt32(GroupId);
                                bool bReturnDoc = objNSEGroupSL.Save_New_NSEDocument(objLoginUserDetails.CompanyDBConnectionString, objNSEGroupDocDTO, fleGUID.GUID);
                            }
                        }
                    }
                    objNSEGroupDTO.GroupId        = GroupId;
                    objNSEGroupDTO.LoggedInUserId = objLoginUserDetails.LoggedInUserID;
                    objNSEGroupDTO.StatusCodeId   = 508007;
                    bool bReturn = objNSEGroupSL.Update_NSEGroup(objLoginUserDetails.CompanyDBConnectionString, objNSEGroupDTO);
                }
                TradingTransactionMasterDTO objTradingTransactionMasterDTO = null;
                using (TradingTransactionSL objTradingTransactionSL = new TradingTransactionSL())
                {
                    using (NSEGroupSL objNSEGroupSL = new NSEGroupSL())
                    {
                        List <NSEGroupDetailsDTO> grpTransIdList = objNSEGroupSL.Get_Group_TransactionId(objLoginUserDetails.CompanyDBConnectionString, GroupId);
                        foreach (var TransId in grpTransIdList)
                        {
                            objTradingTransactionMasterDTO = new TradingTransactionMasterDTO();
                            objTradingTransactionMasterDTO.TransactionMasterId        = TransId.transId;
                            objTradingTransactionMasterDTO.TransactionStatusCodeId    = ConstEnum.Code.DisclosureStatusForHardCopySubmittedByCO;
                            objTradingTransactionMasterDTO.HardCopyByCOSubmissionDate = Convert.ToDateTime(StockExchangeDateSubmission);
                            objTradingTransactionMasterDTO = objTradingTransactionSL.GetTradingTransactionMasterCreate(objLoginUserDetails.CompanyDBConnectionString, objTradingTransactionMasterDTO, objLoginUserDetails.LoggedInUserID, out nDisclosureCompletedFlag);
                        }
                    }
                }
                return(RedirectToAction("Index", "NSEDownload", new { acid = ConstEnum.UserActions.NSEDownload }));
            }
            else
            {
                ViewBag.groupId      = GroupId;
                ViewBag.DownloadDate = date;
                ViewBag.UserAction   = Common.ConstEnum.UserActions.NSEDownload;
                objNSEGroupDocumentModel.NSEGroupDocumentFile = Common.Common.GenerateDocumentList(ConstEnum.Code.UploadNseDocument, 0, 0, null, 0, false, 0, ConstEnum.FileUploadControlCount.NSEUploadFile);
                return(View("NSEUploadDoc", objNSEGroupDocumentModel));
            }
        }