Example #1
0
        public static void KWSLogKFileActivity(WsSurveyModel wsSurveyModel)
        {
            var info = new
            {
                EAuditYear = wsSurveyModel.ENGYear,
                Workbooks = wsSurveyModel.WorkBooks,
                ClientYearEnd = wsSurveyModel.ClientYearEndDate == null ? null : wsSurveyModel.ClientYearEndDate.GetValueOrDefault().ToShortDateString(),
                BusinessUnit = wsSurveyModel.BusinessUnit,
                EAuditWorkFlow = wsSurveyModel.eAuditWorkflow,
                ProjectCode = wsSurveyModel.ProjectCode,
                DCSServer = wsSurveyModel.DCSServer,
                IsEBP = wsSurveyModel.EBPEngagement.ToBool<char>(),
                IsToMultiMAF = wsSurveyModel.SplitMAF.ToBool<char>(),
                IsToSingleMAF = wsSurveyModel.CombineMAF.ToBool<char>(),
                IsToDiffWorkFlow = wsSurveyModel.IsRFInDiffWF.ToBool<char>(),
                IsPartialRF = wsSurveyModel.IsPartilaRF.ToBool<char>(),
                RFModificationType = wsSurveyModel.RFModificationType,
                IsSAW = wsSurveyModel.IsSawEng,
                MAFName = wsSurveyModel.EngFileName,
                NoOfMAF = wsSurveyModel.NumberOfMAFs,
                PrimaryWBName = wsSurveyModel.PrimaryWBName,
                InstructionForRF = wsSurveyModel.GroupOrMultiInfo,
                RequiredDate = wsSurveyModel.RequiredDate == null ? null : wsSurveyModel.RequiredDate.GetValueOrDefault().ToShortDateString(),
            };

            var serInfo = JsonConvert.SerializeObject(info);

            //string postData = string.Format("Id=0&EngNum={0}&FileNum={1}&KPMGOnly={2}&IsUnderPreservation={3}&KFileActivityType={4}&Info={5}",
            //    wsSurveyModel.EngagementNumber, wsSurveyModel.DRMSFileNumber, wsSurveyModel.KPMGOnly.ToBool<char>(),
            //    wsSurveyModel.Preservation.ToBool<char>(), string.Format("Request{0}", wsSurveyModel.SurveyRequestType), serInfo);

            //var postData = new { Id = 0, EngNum = wsSurveyModel.EngagementNumber, FileNum = wsSurveyModel.DRMSFileNumber, KPMGOnly = wsSurveyModel.KPMGOnly.ToBool<char>(),
            //                     IsUnderPreservation = wsSurveyModel.Preservation.ToBool<char>(),
            //                     KFileActivityType = string.Format("Request{0}", wsSurveyModel.SurveyRequestType),
            //                     Info = serInfo
            //};

            //string url = string.Format("{0}{1}KWSLogKFileActivity?{2}", ConfigUtility.GetKWebAppBaseUrl, LogController, postData);

            //PostRequest(url);

            using (var client = new WebClient())
            {
                client.UseDefaultCredentials = true;

                var values = new NameValueCollection
                {
                    //{ "Id", "0" },
                    { "EngNum", wsSurveyModel.EngagementNumber },
                    { "FileNum", wsSurveyModel.DRMSFileNumber.ToString() },
                    { "KPMGOnly", wsSurveyModel.KPMGOnly.ToBool<char>().ToString() },
                    { "IsUnderPreservation", wsSurveyModel.Preservation.ToBool<char>().ToString() },
                    { "KFileActivityType", string.Format("Request{0}", wsSurveyModel.SurveyRequestType) },
                    { "Info", serInfo },
                };
                var result = client.UploadValues(string.Format("{0}{1}KWSLogKFileActivity", ConfigUtility.GetKWebAppBaseUrl, LogController), values);
                // TODO: do something with the results returned by the controller action
            }
        }
Example #2
0
        public static void SurveyRequest(WsSurveyModel wsSurveyModel)
        {
            using (var db = new SSCDbContext())
            {
                var lstParamName = new List<string>();
                var lstSqlParameter = new List<SqlParameter>();

                var lstSqlParam = new List<KeyValuePair<string, SqlParameter>>();

                foreach (PropertyDescriptor property in TypeDescriptor.GetProperties(wsSurveyModel.GetType()))
                {
                    var altPropName = property.Attributes.OfType<AltPropName>().FirstOrDefault();

                    if (altPropName != null)
                    {
                        lstParamName.Add(altPropName.Name);
                        lstSqlParameter.Add(new SqlParameter(altPropName.Name, property.GetValue(wsSurveyModel) ?? DBNull.Value));

                        lstSqlParam.Add(new KeyValuePair<string, SqlParameter>(
                                altPropName.Name,
                                new SqlParameter(altPropName.Name, property.GetValue(wsSurveyModel) ?? DBNull.Value)
                            ));
                    }
                }

                lstParamName.Add("@ActivityList");

                DataTable tblActivities = new DataTable();
                tblActivities.Columns.Add("ActivityName", typeof(string));
                tblActivities.Columns.Add("WorkbookNum", typeof(int));
                tblActivities.Columns.Add("WorkbookName", typeof(string));
                tblActivities.Columns.Add("RequiredDate", typeof(DateTime));

                if (wsSurveyModel.SurveyRequestType == SurveyRequestType.RF)
                {
                    //Error - More than one RF requested.
                    tblActivities.Rows.Add(new object[] { wsSurveyModel.SurveyRequestType.ToString(), 1, "", wsSurveyModel.RequiredDate });
                }
                else if (wsSurveyModel.SurveyRequestType == SurveyRequestType.RET)
                {
                    //Error - Workbook Name cannot be null/blank
                    int idx = 1;
                    wsSurveyModel.WorkBooks.Split(',').ToList().ForEach
                        (x => tblActivities.Rows.Add(new object[] { "PDF", idx++, x, wsSurveyModel.RequiredDate }));
                }

                var sqlParamActivityList = new SqlParameter("@ActivityList", SqlDbType.Structured);
                sqlParamActivityList.Value = tblActivities;
                sqlParamActivityList.TypeName = "udtTblSurveyActivityList";

                lstSqlParameter.Add(sqlParamActivityList);

                lstSqlParam.Add(new KeyValuePair<string, SqlParameter>(
                                "@ActivityList",
                                sqlParamActivityList
                            ));

                //
                lstParamName.Add("@Comments");
                //Comments
                //SequenceNumber
                DataTable tblComments = new DataTable();
                tblComments.Columns.Add("SequenceNumber", typeof(int));
                tblComments.Columns.Add("Comments", typeof(string));

                if (wsSurveyModel.SurveyRequestType == SurveyRequestType.RF)
                {
                    if (wsSurveyModel.IsRFInDiffWF.ToBool<char>())
                    {
                        tblComments.Rows.Add(new object[] { 1, "IsRFInDiffWF:CHANGE OF WORKFLOW – ADD “FOR GDC USE” IN THE FILE NAME" });
                    }

                    if (wsSurveyModel.IsPartilaRF.ToBool<char>())
                    {
                        tblComments.Rows.Add(new object[] { 2, "IsPartilaRF:PARTIAL RF – [" + wsSurveyModel.RFModificationType + "]" });
                    }

                    if (wsSurveyModel.IsSawEng)
                    {
                        tblComments.Rows.Add(new object[] { 3, "IsSawEng:SAW Engagement – Yes" });
                    }
                    else
                    {
                        tblComments.Rows.Add(new object[] { 3, "IsSawEng:SAW Engagement – No" });
                    }
                }

                var sqlParamComments = new SqlParameter("@Comments", SqlDbType.Structured);
                sqlParamComments.Value = tblComments;
                sqlParamComments.TypeName = "udtTblSurveyComments";
                lstSqlParameter.Add(sqlParamComments);

                lstSqlParam.Add(new KeyValuePair<string, SqlParameter>(
                                "@Comments",
                                sqlParamComments
                            ));
                //
                //SELECT @NSTID = ISNULL(MAX(SurveyRowId) + 1, '1') FROM Survey (NOLOCK)
                //INSERT INTO SurveyImport
                //SELECT @SurveyRowId = @@IDENTITY
                //SELECT @ActvityId = ActivityId FROM Activities WHERE ActivityType = 'SURVEYIMPORT' AND Enabled = 'Y';
                //SELECT @EmailActvityId = ActivityId FROM Activities WHERE ActivityType = 'SURVEYPDFEMAIL' AND Enabled = 'Y';
                //SELECT @EmailActvityId = ActivityId FROM Activities WHERE ActivityType = 'SURVEYRFEMAIL' AND Enabled = 'Y';
                //INSERT INTO FileActivities --Insert SURVEYIMPORT Activity for the Survey Records
                //INSERT INTO FileActivities --Insert SURVEY RF/PDF EMAIL Activity for the Survey Record
                //INSERT INTO Survey
                //INSERT INTO SurveyImportHistory
                //DELETE FROM SurveyImport

                //RET--
                //INSERT INTO SurveyWorkbooks -- Check if WoorkName exists for SurveyId - and increment the WB number
                //Exec spProcessSIActivity @SurveyRowId, @SurveyRowId -- Crazy

                //db.Database.ExecuteSqlCommand("EXEC spRequestSurvey " + string.Join(",", lstParamName), lstSqlParameter.ToArray());
                //db.Database.ExecuteSqlCommand("EXEC uspRequestSurvey " + string.Join(",", lstParamName), lstSqlParameter.ToArray());

                db.Database.ExecuteSqlCommand("EXEC uspRequestSurvey " + string.Join(",", lstSqlParam.Select(x => x.Key)), lstSqlParam.Select(x => x.Value).ToArray());
            }
        }
        public void PostSurveyRequest(FormDataCollection formData)
        {
            var kUsr_Requestor = AuditManager.Rep.AmUtility.GetKUsr(AmUtil.GetCurrentUser);

            var partner = string.IsNullOrWhiteSpace(formData.Get("hid_PartnerDesc_Name")) ? null : formData.Get("hid_PartnerDesc_Name");
            var manager = string.IsNullOrWhiteSpace(formData.Get("hid_ManagerDesc_Name")) ? null : formData.Get("hid_ManagerDesc_Name");

            var kUsr_Manager = AuditManager.Rep.AmUtility.GetKUsr(manager ?? partner ?? AmUtil.GetCurrentUser);
            var kUsr_Partner = AuditManager.Rep.AmUtility.GetKUsr(partner ?? manager ?? AmUtil.GetCurrentUser);

            //hid_ManagerDesc_Name
            //hid_PartnerDesc_Name

            var wsSurveyModel = new WsSurveyModel
            {
                SurveyRequestType = formData.Get("surveyRequestType").ToEnum<SurveyRequestType>(),
                ClientName = formData.Get("txtClient"),
                ClientNumber = formData.Get("txtClientNbr"),
                EngagementName = formData.Get("txtEngName"),
                EngagementNumber = formData.Get("txtEngNum"),
                Preservation = formData.Get("txtPreservation").FromBool<char, string>(),

                //ClientYearEndDate = formData.Get("txtClientYearEnd").ToDate<DateTime?>(SqlDateTime.MinValue.Value),//RET - null
                ClientYearEndDate = formData.Get("txtClientYearEnd").ToDate<DateTime?>(null),//RET - null
                //BusinessUnit = formData.Get("txtBusUnit") ?? string.Empty,//RET - null
                BusinessUnit = formData.Get("txtBusUnit"),//RET - null
                //eAuditWorkflow = formData.Get("txteAudITWF") ?? string.Empty,//RET - null
                eAuditWorkflow = formData.Get("txteAudITWF"),//RET - null

                ENGYear = formData.Get("surveyRequestType").ToEnum<SurveyRequestType>() == SurveyRequestType.RET ? formData.Get("txteAudITYr_RET") : formData.Get("txteAudITYr_RF"),

                EBPEngagement = formData.Get("radRFEBP").FromBool<char, string>(),//RET - false

                _11KEBP = false.FromBool<char>(), //Always false

                SplitMAF = formData.Get("rad1MAF2Multi").FromBool<char, string>(),//RET - false
                CombineMAF = formData.Get("radMultiMAF21").FromBool<char, string>(),//RET - false
                NumberOfMAFs = formData.Get("txtNoOfMAF").ToInt(1),//RET - 1
                //PrimaryWBName = formData.Get("txtPrimWBName") ?? string.Empty,//RET - null
                PrimaryWBName = formData.Get("txtPrimWBName"),//RET - null
                GroupOrMultiInfo = formData.Get("txtAIns") ?? string.Empty,//RET - ""

                DRMSFileNumber = int.Parse(formData.Get("txtDocNum")),
                EngFileName = formData.Get("txtMAFName"),

                //RequiredDate = formData.Get("surveyRequestType").ToEnum<SurveyRequestType>() == SurveyRequestType.RF ? DateTime.Parse(formData.Get("txtRFReqDate"))
                //: default(DateTime),
                //RequiredDate = formData.Get("txtRFReqDate").ToDate<DateTime?>(null),//RET - null
                RequiredDate = formData.Get("txtRFReqDate").ToDate<DateTime?>(SqlDateTime.MaxValue.ToString().ToDate<DateTime>()),//RET - null

                //ManagerEmail = formData.Get("txtMgrEmail") ?? string.Empty,
                //PartnerEmail = formData.Get("txtParEmail") ?? string.Empty,

                //-------------07-09-2015

                //ThirdPartyAllowed = formData.Get("radAgrClient").ToBool<string>(),

                //// Something fishy
                //ContractorAllowed = formData.Get("radAgrClientCal").Equals("YES", StringComparison.OrdinalIgnoreCase) ? 0 :
                //                        formData.Get("radAgrClientCal").Equals("NO", StringComparison.OrdinalIgnoreCase) ? 1 : 2,
                //// Something fishy

                //ContractorProhibited = formData.Get("radKPMGContEnt").ToBool<string>(),
                //ContractorProhibitReason = formData.Get("txtADesc"),

                //KPMGOnly = (formData.Get("radAgrClient").ToBool<string>() &&
                //            formData.Get("radAgrClientCal").ToBool<string>() &&
                //            !formData.Get("radKPMGContEnt").ToBool<string>()).FromBool<char, bool>(),

                KPMGOnly = formData.Get("hid_spanKPMGOnly").ToBool<string>().FromBool<char, bool>(),

                //-------------07-09-2015

                RequestorEmail = kUsr_Requestor.EmailId,
                RequestorFirstName = kUsr_Requestor.FName,
                RequestorId = kUsr_Requestor.UserId,
                RequestorLastName = kUsr_Requestor.LName,

                ManagerEmail = formData.Get("hid_ManagerDesc_Email") ?? string.Empty,

                //ManagerFirstName = formData.Get("hid_ManagerDesc_FirstName") ?? string.Empty,
                //ManagerLastName = formData.Get("hid_ManagerDesc_LastName") ?? string.Empty,
                ManagerFirstName = kUsr_Manager.FName,
                ManagerLastName = kUsr_Manager.LName,

                PartnerEmail = formData.Get("hid_PartnerDesc_Email") ?? string.Empty,

                //PartnerFirstName = formData.Get("hid_PartnerDesc_FirstName") ?? string.Empty,
                //PartnerLastName = formData.Get("hid_PartnerDesc_LastName") ?? string.Empty,
                PartnerFirstName = kUsr_Partner.FName,
                PartnerLastName = kUsr_Partner.LName,

                GroupOrMulti = false.FromBool<char>(),

                OfficeLocation = kUsr_Requestor.Location,

                WorkBooks = formData.Get("workBooks"),

                IsRFInDiffWF = formData.Get("radDiffWf").FromBool<char, string>(),
                IsPartilaRF = formData.Get("radPartialRF").FromBool<char, string>(),
                RFModificationType = formData.Get("radPartialRFDesc"),

                IsSawEng = formData.Get("radSawEng").ToBool(),

                //ProjectCode = formData.Get("cmbProjectCode"),
                ProjectCode = formData.Get("hid_projectCode"),
                DCSServer = formData.Get("cmbDCSServer"),
                ListofDcssServers = formData.Get("hid_cmbDCSServer_Options") + "," + formData.Get("cmbDCSServer"),
            };

            AuditManager.Rep.WsOperation.SurveyRequest(wsSurveyModel);

            //WsProfile_TP wsProfile_TP = new WsProfile_TP();

            //wsProfile_TP.TP_Q1 = formData.Get("radAgrClient");
            //wsProfile_TP.TP_Q2 = formData.Get("radAgrClientCal");
            //wsProfile_TP.TP_Q3 = formData.Get("radKPMGContEnt");
            //wsProfile_TP.TP_Q3_Comment = formData.Get("txtADesc");

            //AuditManager.Rep.WsOperation.UpdateWsProfile(formData.Get("txtEngNum"), wsProfile_TP, wsSurveyModel.SurveyRequestType == SurveyRequestType.RET ? UpdateProfileFrom.RET : UpdateProfileFrom.RF);

            ExtApi.KWSLogKFileActivity(wsSurveyModel);
        }