public async Task <IActionResult> Edit(int id, [FromForm] AnalysisCode analysis_Code)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    bool isCodeExist = _context.AnalysisCode.Any(m => m.Code.Equals(analysis_Code.Code) && !m.Id.Equals(id));
                    if (isCodeExist)
                    {
                        ModelState.AddModelError("Code", "Code Already Exists!");
                        return(View(analysis_Code));
                        //return RedirectToAction(nameof(Index), new { error = "Code exists" });
                    }

                    AnalysisCode db_analysis_Code = _context.AnalysisCode.FirstOrDefault(m => m.Id.Equals(analysis_Code.Id));
                    if (analysis_Code == null || id != analysis_Code.Id)
                    {
                        return(NotFound());
                    }

                    OldDataAnalysis oldData = new OldDataAnalysis();
                    oldData.Code           = db_analysis_Code.Code;
                    oldData.Name           = db_analysis_Code.Name;
                    oldData.Remark         = db_analysis_Code.Remark;
                    oldData.AnalysisNumber = db_analysis_Code.AnalysisNumber;
                    oldData.Status         = db_analysis_Code.Status;

                    string oldJson = JsonConvert.SerializeObject(oldData);
                    string newJson = JsonConvert.SerializeObject(analysis_Code);

                    db_analysis_Code.Code             = analysis_Code.Code;
                    db_analysis_Code.Name             = analysis_Code.Name;
                    db_analysis_Code.Status           = analysis_Code.Status;
                    db_analysis_Code.Remark           = analysis_Code.Remark;
                    db_analysis_Code.AnalysisNumber   = analysis_Code.AnalysisNumber;
                    db_analysis_Code.ModifiedBy       = _configuration.GetValue <string>("HardcodeValue:Createdby");
                    db_analysis_Code.ModifiedDatetime = DateTime.UtcNow;
                    AuditService.InsertActionLog(db_analysis_Code.CompanyId, db_analysis_Code.CreatedBy, "Edit", "Analysis Code", oldJson, newJson);


                    _context.Update(db_analysis_Code);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!Analysis_CodeExists(analysis_Code.Id))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            return(View(analysis_Code));
        }
        private bool UpdateDm(string code, string name, string analysisNo, string remark, bool status)
        {
            bool res = false;

            try
            {
                AnalysisCode analysis_Code = _context.AnalysisCode.FirstOrDefault(m => m.Code.Equals(code));

                OldDataAnalysis oldData = new OldDataAnalysis();
                oldData.Code           = analysis_Code.Code;
                oldData.Name           = analysis_Code.Name;
                oldData.AnalysisNumber = analysis_Code.AnalysisNumber;
                oldData.Remark         = analysis_Code.Remark;
                oldData.Status         = analysis_Code.Status;

                string oldJson = JsonConvert.SerializeObject(oldData);
                string newJson = JsonConvert.SerializeObject(analysis_Code);

                if (analysis_Code != null)
                {
                    analysis_Code.Name             = name;
                    analysis_Code.Code             = code;
                    analysis_Code.AnalysisNumber   = Convert.ToInt32(analysisNo);
                    analysis_Code.Status           = status;
                    analysis_Code.Remark           = remark;
                    analysis_Code.ModifiedDatetime = DateTime.UtcNow;
                    analysis_Code.ModifiedBy       = _configuration.GetValue <string>("HardcodeValue:Modifiedby");
                    AuditService.InsertActionLog(analysis_Code.CompanyId, analysis_Code.CreatedBy, "Edit", "Analysis Code", oldJson, newJson);
                    _context.SaveChanges();
                    res = true;
                }
            }
            catch (Exception ex)
            {
                res = false;
            }

            return(res);
        }