Facebook
From easwar, 7 Months ago, written in C#.
Embed
Download Paste or View Raw
Hits: 300
  1.       public DataTable GetRequestIDandprocess(string strProjectKey, string strLeaseKey)
  2.         {
  3.             string multicolumnjson = string.Empty;
  4.             DataTable DtALLRequestIDfromLog = new DataTable();
  5.             try
  6.             {
  7.                 string ActivityLogSectionName = Convert.ToString(_configuration.GetSection("REmaapSettings").GetSection("ActivityLogSectionName").Value);
  8.                 string ActivityLogFeildName = Convert.ToString(_configuration.GetSection("REmaapSettings").GetSection("ActivityLogFeildName").Value);
  9.                 dbc = new DBConnection(_configuration.GetSection("REmaapSettings").GetSection("strProjectsConn").Value.Replace("#PROJECTDB#", "REmaap_" + strProjectKey));
  10.                 DataTable DtGetActivityLogFldNames = dbc.GenerateDataTable("SELECT DTL.FIELD_NAME,DTL.FIELD_DESCRIPTION,HDR.TABLE_NAME,DTL.FKEY_MASTER_SECTION, DTL.FKEY_MASTER_FIELD FROM " +
  11.                                                                             "tbl_section_hdr HDR JOIN tbl_section_DTL DTL ON HDR.PKEY = DTL.FKEY_PARENT WHERE SECTION_NAME ='"
  12.                                                                             + ActivityLogSectionName + "' AND IFNULL(is_hidden, '') = 'N' AND FIELD_DESCRIPTION IN(" + ActivityLogFeildName + ")");
  13.  
  14.                 if (DtGetActivityLogFldNames.Rows.Count > 0)
  15.                 {
  16.                     if (DtGetActivityLogFldNames.Select("FIELD_DESCRIPTION='Request ID'").Length > 0 && DtGetActivityLogFldNames.Select("FIELD_DESCRIPTION='Process Status'").Length > 0 && DtGetActivityLogFldNames.Select("FIELD_DESCRIPTION='Process'").Length > 0)
  17.                     {
  18.                         string StrReqIDName = Convert.ToString(DtGetActivityLogFldNames.Select("FIELD_DESCRIPTION='Request ID'")[0]["FIELD_NAME"]);
  19.                         string StrProcessStatusIDName = Convert.ToString(DtGetActivityLogFldNames.Select("FIELD_DESCRIPTION='Process Status'")[0]["FIELD_NAME"]);
  20.                         string StrTrackIDName = Convert.ToString(DtGetActivityLogFldNames.Select("FIELD_DESCRIPTION='Workflow track'")[0]["FIELD_NAME"]);
  21.  
  22.                         string StrProcessIDName = Convert.ToString(DtGetActivityLogFldNames.Select("FIELD_DESCRIPTION='Process'")[0]["FIELD_NAME"]);
  23.                         string StrMasterSectionID = Convert.ToString(DtGetActivityLogFldNames.Select("FIELD_DESCRIPTION='Process'")[0]["FKEY_MASTER_SECTION"]);
  24.                         string StrFkeyMasterFieldID = Convert.ToString(DtGetActivityLogFldNames.Select("FIELD_DESCRIPTION='Process'")[0]["FKEY_MASTER_FIELD"]);
  25.  
  26.                         string StrMasterTblName = dbc.retrieveScalar("SELECT TABLE_NAME FROM TBL_SECTION_HDR WHERE pkey IN " + "(" + StrMasterSectionID + ")");
  27.                         string StrMasterFieldName = dbc.retrieveScalar("SELECT FIELD_NAME FROM TBL_SECTION_DTL WHERE PKEY IN" + "(" + StrFkeyMasterFieldID + ")");
  28.  
  29.                         string StrSectionName = Convert.ToString(DtGetActivityLogFldNames.Rows[0]["TABLE_NAME"]);
  30.  
  31.                         DtALLRequestIDfromLog = dbc.GenerateDataTable("SELECT DISTINCT A_LOG." + StrReqIDName + " REQUEST_ID,IFNULL(A_LOG." + StrProcessStatusIDName + ",'') Description,IFNULL(ml.Description,'') TrackName,IFNULL(MS." + StrMasterFieldName + ",'') PROCESS_TYPE,MS.pkey AS PROCESS_TYPE_KEY FROM " +
  32.                                                                                 "REmaap_" + strProjectKey + "." + StrSectionName + " A_LOG LEFT JOIN REmaap_" + strProjectKey + ".Masterlist ML ON  A_LOG." + StrTrackIDName + "= ML.PKEY " +
  33.                                                                                 "LEFT JOIN REmaap_" + strProjectKey + "." + StrMasterTblName + " MS ON  MS.PKEY = A_LOG." + StrProcessIDName + " " +
  34.                                                                                 "WHERE  A_LOG.fkey_parent IN('" + strLeaseKey + "')  ORDER BY CAST(IFNULL(A_LOG." + StrReqIDName + ", 0) AS SIGNED) DESC;");
  35.  
  36.  
  37.                         DataTable DtGetAcCompletedWf = dbc.GenerateDataTable("SELECT IFNULL(WS1.Description,0) Description,IFNULL(WTM.TRACK_Description,'') Track_Description,Wtm.PKEY FROM " +
  38.                                                                                 "REmaap_" + strProjectKey + ".WorkFlow_Stages WS1 JOIN REmaap_" + strProjectKey + ".WORKFLOW_RULES_DTL DTL ON DTL.FKEY_WORKFLOW = WS1.PKEY " +
  39.                                                                                 "JOIN remaap_mvc_master.WORKFLOW_RULES_HDR HDR ON HDR.PKEY = DTL.FKEY_PARENT " +
  40.                                                                                 "JOIN REmaap_" + strProjectKey + ".workflow_trackmaster WTM ON WTM.PKEY = DTL.FKEY_TRACKMASTER " +
  41.                                                                                 "WHERE HDR.STATIC_RULES = 'Activity Complete' AND HDR.IS_ACTIVE = 'Y' AND WTM.IS_ACTIVE = 'Y'");
  42.  
  43.  
  44.  
  45.  
  46.                         foreach (DataRow _Dr in DtGetAcCompletedWf.Rows)
  47.                         {
  48.                             if (DtALLRequestIDfromLog.AsEnumerable().Where(A1 => (Convert.ToString(A1["Description"]).ToUpper().Trim() == Convert.ToString(_Dr["Description"]).ToUpper().Trim()) && (Convert.ToString(A1["TrackName"]).ToUpper().Trim() == Convert.ToString(_Dr["Track_Description"]).ToUpper().Trim())).Count() > 0)
  49.                             {
  50.                                 DtALLRequestIDfromLog.Rows.Cast<DataRow>().Where(A1 => (Convert.ToString(A1["Description"]).ToUpper().Trim() == Convert.ToString(_Dr["Description"]).ToUpper().Trim()) && (Convert.ToString(A1["TrackName"]).ToUpper().Trim() == Convert.ToString(_Dr["Track_Description"]).ToUpper().Trim())).ToList().ForEach(r => r.Delete());
  51.                                 DtALLRequestIDfromLog.AcceptChanges();
  52.                             }
  53.                         }
  54.  
  55.                         DtALLRequestIDfromLog.Columns.Remove("TrackName");
  56.                         DtALLRequestIDfromLog.Columns.Remove("Description");
  57.                     }
  58.  
  59.                 }
  60.                 //multicolumnjson = _DAL.ConvertToJson(DtALLRequestIDfromLog, false);
  61.  
  62.             }
  63.             catch (Exception ex)
  64.             {
  65.                 _logDetails.strprojkey = strProjectKey;
  66.                 Log.WriteLog(ex, _logDetails);
  67.             }
  68.             return DtALLRequestIDfromLog;
  69.         }
  70.         public string GetPicklistvalues(string strProjectKey, string strLeaseKey)
  71.         {
  72.             string Status = string.Empty;
  73.             string Data = string.Empty;
  74.             string Msg = string.Empty;
  75.             DBConnection dbcMaster = new DBConnection(_configuration.GetSection("REmaapSettings").GetSection("MasterConnectionString").Value);
  76.             dbc = new DBConnection(_configuration.GetSection("REmaapSettings").GetSection("strProjectsConn").Value.Replace("#PROJECTDB#", "REmaap_" + strProjectKey));
  77.  
  78.             try
  79.             {
  80.                 string StrPicklistJson = string.Empty;
  81.                 if (strProjectKey != null && strProjectKey.Trim() != "")
  82.                 {
  83.                     string Excludedsections = Convert.ToString(_configuration.GetSection("REmaapSettings").GetSection("ExcludedSections").Value);
  84.                     DataTable dtSectionNames = dbc.GenerateDataTable("SELECT PKEY ,SECTION_NAME as VALUE FROM TBL_SECTION_HDR  WHERE IFNULL(ISACTIVE,'') = 'Y' AND Is_Parent = 0 " +
  85.                                                          "AND IFNULL(IS_MASTER_SECTION, '') = 'N' AND  IFNULL(IS_REQUIREDFORMAPPING, '') <> 'Y' " +
  86.                                                          " AND SECTION_NAME NOT IN(" + Excludedsections + ") ORDER BY CAST(DISPLAY_ORDER AS UNSIGNED INTEGER) ASC");
  87.                     DataTable dtFeedbacksource = dbcMaster.GenerateDataTable("SELECT PKEY,FEEDBACK_VALUE AS VALUE FROM report_feedback_master WHERE FEEDBACK_GROUP = 'Feedback_Source' AND IS_ACTIVE = 'Y' ORDER BY display_order");
  88.                     DataTable dtFeedbacktype = dbcMaster.GenerateDataTable("SELECT PKEY,FEEDBACK_VALUE AS VALUE FROM report_feedback_master WHERE FEEDBACK_GROUP = 'Feedback_Type' AND IS_ACTIVE = 'Y' ORDER BY display_order");
  89.                     DataTable DtALLRequestIDfromLog = GetRequestIDandprocess(strProjectKey, strLeaseKey);
  90.                     var Full_Source_Data = new
  91.                     {
  92.                         Sections = dtSectionNames,
  93.                         Feedbacksource = dtFeedbacksource,
  94.                         Feedbacktype = dtFeedbacktype,
  95.                         reuqestIdValues = DtALLRequestIDfromLog,
  96.                     };
  97.                     if (dtSectionNames.Rows.Count > 0 && dtFeedbacksource.Rows.Count > 0 && dtFeedbacktype.Rows.Count > 0)
  98.                     {
  99.                         StrPicklistJson = _DAL.ConvertToJson(Full_Source_Data, false);
  100.                         if (!string.IsNullOrEmpty(StrPicklistJson))
  101.                         {
  102.                             Status = "\"Status\" : " + "\"Success\"";
  103.                             Data = "\"Data\" : " + StrPicklistJson + "";
  104.                             Msg = "\"Message\" : " + "\"\"";
  105.                         }
  106.                         else
  107.                         {
  108.                             Status = "\"Status\" : " + "\"Error\"";
  109.                             Data = "\"Data\" : " + "\"\"";
  110.                             Msg = "\"Message\" : \"" + "\"No data found. There are no items available to populate the dropdown.\"";
  111.                         }
  112.                     }
  113.                 }
  114.             }
  115.             catch (Exception ex)
  116.             {
  117.                 _logDetails.strprojkey = strProjectKey;
  118.                 Log.WriteLog(ex, _logDetails);
  119.                 Status = "\"Status\" : " + "\"Error\"";
  120.                 Data = "\"Data\" : " + "\"\"";
  121.                 Msg = "\"Message\" : \"" + ex.Message.ToString() + "\"";
  122.  
  123.             }
  124.             string strResult = "{" + Status + "," + Data + "," + Msg + "}";
  125.             return strResult;
  126.         }
  127.         public string RecordFeedbackDetails(string strProjectKey, string strLeaseKey)
  128.         {
  129.             string Status = string.Empty;
  130.             string Data = string.Empty;
  131.             string Msg = string.Empty;
  132.             string StrMasterSectionID = string.Empty, StrFkeyMasterFieldID = string.Empty, StrMasterTblName = string.Empty, StrMasterFieldName = string.Empty,
  133.                 ActivityLogFieldsQuerry = string.Empty, ActivityLogJoinsQuerry = string.Empty;
  134.             string ActivityLogSectionName = Convert.ToString(_configuration.GetSection("REmaapSettings").GetSection("ActivityLogSectionName").Value);
  135.             string ActivityLogFeildName = Convert.ToString(_configuration.GetSection("REmaapSettings").GetSection("ActivityLogFeildName").Value);
  136.             DBConnection dbcMaster = new DBConnection(_configuration.GetSection("REmaapSettings").GetSection("MasterConnectionString").Value);
  137.             dbc = new DBConnection(_configuration.GetSection("REmaapSettings").GetSection("strProjectsConn").Value.Replace("#PROJECTDB#", "REmaap_" + strProjectKey));
  138.             try
  139.             {
  140.                 string StrRecordFeedbackJson = string.Empty;
  141.                 if (strProjectKey != null && strLeaseKey != null && strProjectKey.Trim() != "" && strLeaseKey.Trim() != "")
  142.                 {
  143.                     DataTable dtRecordFeedbackHeader = dbcMaster.GenerateDataTable("SELECT PKEY AS pKey,FIELD_NAME AS columnName,FIELD_DESCRIPTION AS columnDescription FROM REPORT_FEEDBACK_FIELDS  where IS_ACTIVE = 'Y'");
  144.  
  145.                     DataTable DtGetActivityLogFldNames = dbc.GenerateDataTable("SELECT DTL.FIELD_DESCRIPTION,HDR.TABLE_NAME,DTL.FKEY_MASTER_SECTION, DTL.FKEY_MASTER_FIELD FROM " +
  146.                                                                            "tbl_section_hdr HDR JOIN tbl_section_DTL DTL ON HDR.PKEY = DTL.FKEY_PARENT WHERE SECTION_NAME ='"
  147.                                                                            + ActivityLogSectionName + "' AND IFNULL(is_hidden, '') = 'N' AND FIELD_DESCRIPTION IN(" + ActivityLogFeildName + ")");
  148.                     if (DtGetActivityLogFldNames.Rows.Count > 0)
  149.                     {
  150.                         if (DtGetActivityLogFldNames.Select("FIELD_DESCRIPTION='Request ID'").Length > 0 && DtGetActivityLogFldNames.Select("FIELD_DESCRIPTION='Process Status'").Length > 0 && DtGetActivityLogFldNames.Select("FIELD_DESCRIPTION='Process'").Length > 0)
  151.                         {
  152.                             StrMasterSectionID = Convert.ToString(DtGetActivityLogFldNames.Select("FIELD_DESCRIPTION='Process'")[0]["FKEY_MASTER_SECTION"]);
  153.                             StrFkeyMasterFieldID = Convert.ToString(DtGetActivityLogFldNames.Select("FIELD_DESCRIPTION='Process'")[0]["FKEY_MASTER_FIELD"]);
  154.                             StrMasterTblName = dbc.retrieveScalar("SELECT TABLE_NAME FROM TBL_SECTION_HDR WHERE pkey IN " + "(" + StrMasterSectionID + ")");
  155.                             StrMasterFieldName = dbc.retrieveScalar("SELECT FIELD_NAME FROM TBL_SECTION_DTL WHERE PKEY IN" + "(" + StrFkeyMasterFieldID + ")");
  156.  
  157.                             ActivityLogFieldsQuerry = "rfd.FKEY_REQUEST_ID AS requestId,MS." + StrMasterFieldName + " AS processType,MS.PKEY AS processTypeKey, ";
  158.                             ActivityLogJoinsQuerry = "LEFT JOIN REmaap_" + strProjectKey + "." + StrMasterTblName + " MS ON MS.pkey = rfd.FKEY_PROCESS_TYPE ";
  159.                         }
  160.                     }
  161.                     DataTable dtRecordFeedbackDetail = dbcMaster.GenerateDataTable("SELECT rfd.PKEY,hdr.SECTION_NAME AS section,rfd.FKEY_SECTIONKEY AS sectionKey, rfd.REPORTED_DATE AS reportedDate,M.FEEDBACK_VALUE AS feedbackSource,rfd.FKEY_FEEDBACK_SOURCE AS feedbackSourceKey,rfd.FKEY_FEEDBACK_TYPE AS feedbackTypekey, M2.FEEDBACK_VALUE AS feedbackType,rfd.FEEDBACK_DESCRIPTION AS feedbackComment,rfd.FEEDBACK_RESPONSE_COMMENTS AS responseComment, " + ActivityLogFieldsQuerry + " " +
  162.                                                         "RFD.ADDED_BY AS userKey, U.USER_NAME AS addedBy,Added_on AS addedOn,U2.USER_NAME AS modifiedBy, Modified_On AS modifiedOn FROM report_feedback_details rfd " +
  163.                                                         "LEFT JOIN REmaap_" + strProjectKey + ".tbl_section_hdr hdr ON rfd.FKEY_SECTIONKEY = hdr.pkey" + " " +
  164.                                                         ActivityLogJoinsQuerry +
  165.                                                         "INNER JOIN report_feedback_master M ON M.pkey = RFD.FKEY_FEEDBACK_SOURCE" + " " +
  166.                                                         "LEFT JOIN report_feedback_master M2 ON M2.pkey = RFD.FKEY_FEEDBACK_TYPE" + " " +
  167.                                                         "LEFT JOIN users_master U ON U.PKEY = rfd.Added_by LEFT JOIN users_master U2 ON U2.PKEY = rfd.Modified_by " + " WHERE rfd.FKEY_PROJECT = '" + strProjectKey + "' AND rfd.FKEY_LEASEKEY ='" + strLeaseKey + "' ORDER BY rfd.MODIFIED_ON DESC");
  168.  
  169.                     var Full_Source_Data = new
  170.                     {
  171.                         RecordFeedbackHeader = dtRecordFeedbackHeader,
  172.                         RecordFeedbackDetail = dtRecordFeedbackDetail,
  173.                     };
  174.  
  175.                     if (dtRecordFeedbackHeader.Rows.Count > 0)
  176.                     {
  177.                         if (Full_Source_Data != null)
  178.                         {
  179.                             StrRecordFeedbackJson = _DAL.ConvertToJson(Full_Source_Data, false);
  180.                         }
  181.                         if (!string.IsNullOrEmpty(StrRecordFeedbackJson))
  182.                         {
  183.                             Status = "\"Status\" : " + "\"Success\"";
  184.                             Data = "\"Data\" : " + StrRecordFeedbackJson + "";
  185.                             Msg = "\"Message\" : " + "\"\"";
  186.                         }
  187.                         else
  188.                         {
  189.                             Status = "\"Status\" : " + "\"Error\"";
  190.                             Data = "\"Data\" : " + "\"\"";
  191.                             Msg = "\"Message\" : \"" + "\"An error occurred while loading data.\"";
  192.                         }
  193.                     }
  194.                 }
  195.             }
  196.             catch (Exception ex)
  197.             {
  198.                 _logDetails.strprojkey = strProjectKey;
  199.                 Log.WriteLog(ex, _logDetails);
  200.                 Status = "\"Status\" : " + "\"Error\"";
  201.                 Data = "\"Data\" : " + "\"\"";
  202.                 Msg = "\"Message\" : \"" + ex.Message.ToString() + "\"";
  203.             }
  204.             string strResult = "{" + Status + "," + Data + "," + Msg + "}";
  205.             return strResult;
  206.         }
  207.         public string AddRecordFeedback(JObject RecordfdJsonvalue)
  208.         {
  209.             string Status = string.Empty;
  210.             string Msg = string.Empty;
  211.             string strResult = string.Empty;
  212.             string strProjectKey = string.Empty, strSectionkey = string.Empty, strLeasekey = string.Empty, fkeyFeedbacksource = string.Empty,
  213.             fkeyFeedbacktype = string.Empty, feedbackDescription = string.Empty, feedbackResponsecomments = string.Empty, strUserKey = string.Empty,
  214.             strReporteddate = string.Empty, strRequestID = string.Empty, strProcessType = string.Empty;
  215.  
  216.             List<string> lstQuery = new List<string>();
  217.             try
  218.             {
  219.                 dynamic lstfld = JsonConvert.DeserializeObject(RecordfdJsonvalue.ToString());
  220.                 dynamic JSONValue = lstfld.CurrentRow;
  221.                 //dynamic JSONValue = JArray.Parse("[" + RecordfdJsonvalue + "]");
  222.                 DBConnection dbcMaster = new DBConnection(_configuration.GetSection("REmaapSettings").GetSection("MasterConnectionString").Value);
  223.                 if (JSONValue.Count > 0)
  224.                 {
  225.                     strProjectKey = Convert.ToString(JSONValue[0].strProjectKey);
  226.                     strSectionkey = Convert.ToString(JSONValue[0].strSectionkey);
  227.                     strLeasekey = Convert.ToString(JSONValue[0].strLeasekey);
  228.                     fkeyFeedbacksource = Convert.ToString(JSONValue[0].fkeyFeedbacksource);
  229.                     fkeyFeedbacktype = Convert.ToString(JSONValue[0].fkeyFeedbacktype);
  230.                     strReporteddate = Convert.ToString(JSONValue[0].strReporteddate);
  231.                     feedbackDescription = Convert.ToString(JSONValue[0].feedbackDescription);
  232.                     feedbackResponsecomments = Convert.ToString(JSONValue[0].feedbackResponsecomments);
  233.                     strUserKey = Convert.ToString(JSONValue[0].addedBy);
  234.                     strRequestID = Convert.ToString(JSONValue[0].requestId);
  235.                     strProcessType = Convert.ToString(JSONValue[0].processType);
  236.                 }
  237.                 if (!string.IsNullOrEmpty(strProjectKey) && !string.IsNullOrEmpty(strLeasekey) && !string.IsNullOrEmpty(strSectionkey)
  238.                     && !string.IsNullOrEmpty(feedbackDescription) && !string.IsNullOrEmpty(strUserKey) && !string.IsNullOrEmpty(strReporteddate))
  239.                 {
  240.  
  241.  
  242.                     //fkeyFeedbacktype = fkeyFeedbacktype != "0" ? fkeyFeedbacktype : "null";
  243.                     //strRequestID = strRequestID != "0" ? strRequestID : "null";
  244.                     //strProcessType = strProcessType != "0" ? strProcessType : "null";
  245.                     lstQuery.Add("INSERT INTO Report_Feedback_Details(FKEY_PROJECT,FKEY_SECTIONKEY,FKEY_LEASEKEY,FKEY_FEEDBACK_SOURCE,FKEY_FEEDBACK_TYPE,REPORTED_DATE,FEEDBACK_DESCRIPTION,FEEDBACK_RESPONSE_COMMENTS,FKEY_REQUEST_ID,FKEY_PROCESS_TYPE,Added_by,Added_On,Modified_By,Modified_On) " +
  246.                                             "VALUES ('" + strProjectKey + "','" + strSectionkey + "','" + strLeasekey + "','" + fkeyFeedbacksource + "','" + fkeyFeedbacktype + "','" + strReporteddate + "','" + _DAL.stripQuotes(feedbackDescription) + "','" + _DAL.stripQuotes(feedbackResponsecomments) + "','" +
  247.                                             strRequestID + "','" + strProcessType + "','" + strUserKey + "', NOW(),'" + strUserKey + "',NOW() )");
  248.                     if (lstQuery.Count > 0)
  249.                     {
  250.                         dbcMaster.executeNonQuery(lstQuery.ToArray());
  251.                         bool Audittrail = SaveAuditTrail(RecordfdJsonvalue);
  252.                         if (Audittrail)
  253.                         {
  254.  
  255.                             //_classicViewController.Error_Msg_Json("errmsg_009");
  256.                             Status = "\"Status\" : " + "\"Success\"";
  257.                             Msg = "\"Message\" :" + "\"Saved Succesfully\"";
  258.                         }
  259.                         else
  260.                         {
  261.                             Status = "\"Status\" : " + "\"Error\"";
  262.                             Msg = "\"Message\" : \"Error In Saving Data\"";
  263.                         }
  264.                     }
  265.                 }
  266.                 else
  267.                 {
  268.                     Status = "\"Status\" : " + "\"Error\"";
  269.                     Msg = "\"Message\" : \"Error In Saving Data\"";
  270.                 }
  271.  
  272.             }
  273.  
  274.             catch (Exception ex)
  275.             {
  276.                 _logDetails.strprojkey = strProjectKey;
  277.                 Log.WriteLog(ex, _logDetails);
  278.                 Status = "\"Status\" : " + "\"Error\"";
  279.                 Msg = "\"Message\" : \"" + ex.Message.ToString() + "\"";
  280.             }
  281.             strResult = "{" + Status + "," + Msg + "}";
  282.             return strResult;
  283.         }
  284.         public string UpdateRecordFeedback(JObject RecordfdJsonvalue)
  285.         {
  286.             string Status = string.Empty;
  287.             string Msg = string.Empty;
  288.             string strResult = string.Empty;
  289.             string strProjectKey = string.Empty, strPkey = string.Empty, strSectionkey = string.Empty, strLeasekey = string.Empty, fkeyFeedbacksource = string.Empty,
  290.             strUserKey = string.Empty, fkeyFeedbacktype = string.Empty, feedbackDescription = string.Empty, feedbackResponsecomments = string.Empty,
  291.              strReporteddate = string.Empty, strRequestID = string.Empty, strProcessType = string.Empty;
  292.  
  293.             List<string> lstQuery = new List<string>();
  294.             try
  295.             {
  296.                 dynamic lstfld = JsonConvert.DeserializeObject(RecordfdJsonvalue.ToString());
  297.                 dynamic JSONValue = lstfld.CurrentRow;
  298.                 //dynamic JSONValue = JArray.Parse("[" + RecordfdJsonvalue + "]");
  299.                 DBConnection dbcMaster = new DBConnection(_configuration.GetSection("REmaapSettings").GetSection("MasterConnectionString").Value);
  300.                 if (JSONValue.Count > 0)
  301.                 {
  302.                     strPkey = Convert.ToString(JSONValue[0].strPkey);
  303.                     strSectionkey = Convert.ToString(JSONValue[0].strSectionkey);
  304.                     fkeyFeedbacksource = Convert.ToString(JSONValue[0].fkeyFeedbacksource);
  305.                     fkeyFeedbacktype = Convert.ToString(JSONValue[0].fkeyFeedbacktype);
  306.                     strReporteddate = Convert.ToString(JSONValue[0].strReporteddate);
  307.                     feedbackDescription = Convert.ToString(JSONValue[0].feedbackDescription);
  308.                     feedbackResponsecomments = Convert.ToString(JSONValue[0].feedbackResponsecomments);
  309.                     strUserKey = Convert.ToString(JSONValue[0].modifiedby);
  310.                     strRequestID = Convert.ToString(JSONValue[0].requestId);
  311.                     strProcessType = Convert.ToString(JSONValue[0].processType);
  312.                 }
  313.                 if (!string.IsNullOrEmpty(strPkey) && !string.IsNullOrEmpty(strSectionkey) && !string.IsNullOrEmpty(feedbackDescription)
  314.                     && !string.IsNullOrEmpty(strUserKey) && !string.IsNullOrEmpty(strReporteddate))
  315.                 {
  316.                     //fkeyFeedbacktype = fkeyFeedbacktype != "0" ? fkeyFeedbacktype : "null";
  317.                     //strRequestID = strRequestID != "0" ? strRequestID : "null";
  318.                     //strProcessType = strProcessType != "0" ? strProcessType : "null";
  319.                     lstQuery.Add("UPDATE Report_Feedback_Details SET FKEY_SECTIONKEY = '" + strSectionkey + "',FKEY_FEEDBACK_SOURCE = '" + fkeyFeedbacksource + "',FKEY_FEEDBACK_TYPE = '" + fkeyFeedbacktype +
  320.                                     "',REPORTED_DATE = '" + strReporteddate + "',FEEDBACK_DESCRIPTION ='" + _DAL.stripQuotes(feedbackDescription) + "'," +
  321.                                     "FEEDBACK_RESPONSE_COMMENTS = '" + _DAL.stripQuotes(feedbackResponsecomments) + "',FKEY_REQUEST_ID = '" + strRequestID + "',FKEY_PROCESS_TYPE = '" + strProcessType + "', Modified_By = '" + strUserKey + "',Modified_On = NOW() WHERE PKEY = '" + strPkey + "'");
  322.                     if (lstQuery.Count > 0)
  323.                     {
  324.                         dbcMaster.executeNonQuery(lstQuery.ToArray());
  325.                         bool Audittrail = SaveAuditTrail(RecordfdJsonvalue);
  326.                         if (Audittrail)
  327.                         {
  328.                             Status = "\"Status\" : " + "\"Success\"";
  329.                             Msg = "\"Message\" : \"Updated Succesfully\"";
  330.                         }
  331.                         else
  332.                         {
  333.                             Status = "\"Status\" : " + "\"Error\"";
  334.                             Msg = "\"Message\" : \"Error on Updating the Values\"";
  335.                         }
  336.                     }
  337.                 }
  338.                 else
  339.                 {
  340.                     Status = "\"Status\" : " + "\"Error\"";
  341.                     Msg = "\"Message\" : \"Error on Updating the Values\"";
  342.                 }
  343.  
  344.             }
  345.  
  346.             catch (Exception ex)
  347.             {
  348.                 _logDetails.strprojkey = strProjectKey;
  349.                 Log.WriteLog(ex, _logDetails);
  350.                 Status = "\"Status\" : " + "\"Error\"";
  351.                 Msg = "\"Message\" : \"" + ex.Message.ToString() + "\"";
  352.             }
  353.             strResult = "{" + Status + "," + Msg + "}";
  354.             return strResult;
  355.         }