/// <summary> /// //Giai ma /// </summary> /// /// phongtv /// <param name="ModuleParent"></param> /// <param name="AttributeCode"></param> /// <param name="keyString"></param> /// <returns></returns> public int DecryptAtt(string ModuleParent, string AttributeCode, string keyString) { int result = 0; try { List <TblCimsattributeValue> CimsChk = db.TblCimsattributeValue.Where(a => a.IsDelete == false && a.Module == ModuleParent && a.AttributeCode == AttributeCode).ToList(); for (int i = 0; i < CimsChk.Count(); i++) { TblVocattributes AttChk = db.TblVocattributes.Where(a => a.IsDelete == false && a.ModuleParent == ModuleParent && a.AttributeCode == AttributeCode).FirstOrDefault(); AttChk.Encyption = false; db.Entry(AttChk).State = EntityState.Modified; db.SaveChanges(); string text = CimsChk[i].AttributeValue; CimsChk[i].AttributeValue = cimsCommon.DecryptStringAES(text, keyString); db.Entry(CimsChk[i]).State = EntityState.Modified; db.SaveChanges(); result = 2; } return(result); } catch (Exception ex) { return(result); throw ex; } }
public ResponseDTO UpdateEncrpytion(AttributeModel model, string orgCode) { using (TransactionScope scope = new TransactionScope()) { try { foreach (var item in model.tblVocattributes) { var result = db.TblEncryption.Where(x => x.AttributeCode == item.AttributeCode && x.ParentCode == item.ParentCode).FirstOrDefault(); if (result != null) { // Kiểm tra xem trường dữ liệu đã được mã hóa lần nào chưa if (result.IsFirst == true) { db.TblEncryption.Remove(result); } else { if (result.EncryptionStatus == result.FinalizationStatus) { // Kiểm tra trạng thái mã hóa của trường dữ liệu if (result.EncryptionStatus == true) { result.EncryptionStatus = false; result.UpdatedBy = model.UserName; //result.IsDone = true; result.IsDone = false; db.Entry(result).State = EntityState.Modified; } else { result.EncryptionStatus = true; result.UpdatedBy = model.UserName; //result.IsDone = true; result.IsDone = false; db.Entry(result).State = EntityState.Modified; } } else { result.IsDone = true; result.EncryptionStatus = result.FinalizationStatus; } } } else { // Thêm mới trường dữ liệu cần mã hóa if (item.ParentCode == EncryptionConstant.ADMIN_USER) { var attributeEncryption = new TblEncryption(); attributeEncryption.AttributeCode = item.AttributeCode; if (item.AttributeLabel == EncryptionConstant.HoTen) { attributeEncryption.AttributeLabel = item.AttributeLabel; attributeEncryption.Field = EncryptionConstant.FullName; } if (item.AttributeLabel == EncryptionConstant.DiaChi) { attributeEncryption.AttributeLabel = item.AttributeLabel; attributeEncryption.Field = EncryptionConstant.Address; } attributeEncryption.CreatedBy = model.UserName; attributeEncryption.CreateDate = DateTime.Now; attributeEncryption.ParentCode = item.ParentCode; attributeEncryption.ModuleName = item.ModuleName; attributeEncryption.EncryptionStatus = true; attributeEncryption.OrgCode = orgCode; attributeEncryption.IsFirst = true; attributeEncryption.IsDone = false; db.TblEncryption.Add(attributeEncryption); } else { var attributeEncryption = new TblEncryption(); attributeEncryption.AttributeCode = item.AttributeCode; attributeEncryption.AttributeLabel = item.AttributeLabel; attributeEncryption.CreatedBy = model.UserName; attributeEncryption.CreateDate = DateTime.Now; attributeEncryption.ParentCode = item.ParentCode; attributeEncryption.ModuleName = item.ModuleName; attributeEncryption.EncryptionStatus = true; attributeEncryption.OrgCode = orgCode; attributeEncryption.IsFirst = true; attributeEncryption.IsDone = false; db.TblEncryption.Add(attributeEncryption); } } } db.SaveChanges(); scope.Complete(); return(new ResponseDTO() { StatusCode = 200, Response = EncryptionConstant.MS0013 }); } catch (Exception ex) { return(new ResponseDTO() { StatusCode = 500, Response = ex.Message }); } } }
/// <summary> /// chỉnh sửa danh mục /// CreatedBy: Cuongpv1 /// CreatedDate: 23/05/2019 /// </summary> /// <param name="tblCategory">object</param> /// <returns></returns> public object UpdateCategory(CategoryChildren tblCategory) { try { int code = 0; object objCategory = new object(); string cateCode = LocDau(tblCategory.CategoryName).ToUpper(); string cateCode1 = (cateCode != "") ? Regex1(cateCode, CategoryConstant.regex, CategoryConstant.Space) : ""; TblCategoryGroup checkCateGroup = db.TblCategoryGroup.Where(v => v.CategoryCode == tblCategory.CategoryCode && v.IsDelete == false).FirstOrDefault(); TblCategory checkCateCode = db.TblCategory.Where(v => v.CategoryCode == tblCategory.CategoryCode && v.IsDelete == false).FirstOrDefault(); if (tblCategory.CategoryTypeCode != "") { if (checkCateGroup != null) { TblCategoryGroup checkCategoryCode_New = db.TblCategoryGroup.Where(v => v.CategoryCode == cateCode1 && v.CategoryGroupName.ToLower().TrimStart().TrimEnd() == tblCategory.CategoryName.ToLower().TrimStart().TrimEnd() && v.IsDelete == false).FirstOrDefault(); if (checkCategoryCode_New != null) { using (var ts = new TransactionScope()) { checkCateGroup.CategoryCode = cateCode1; checkCateGroup.CategoryGroupName = tblCategory.CategoryName; checkCateGroup.CategoryTypeCode = tblCategory.CategoryTypeCode; checkCateGroup.CategoryDescription = tblCategory.CategoryDescription; checkCateGroup.UpdateBy = tblCategory.UpdateBy; checkCateGroup.UpdateDate = DateTime.Now; checkCateGroup.IsDelete = false; db.Entry(checkCateGroup).State = EntityState.Modified; code = db.SaveChanges(); if (tblCategory.children.Count > 0) { AddCategoryChild(checkCateGroup.CategoryCode, tblCategory.children); } if (tblCategory.deleteCategory.Count > 0) { DeleteCategoryChild(tblCategory.deleteCategory); } objCategory = new { code = code, CategoryCode = checkCateGroup.CategoryCode }; ts.Complete(); } } else { TblCategoryGroup checkTblCategoryGroup = db.TblCategoryGroup.Where(v => v.CategoryCode == cateCode1 && v.IsDelete == false).FirstOrDefault(); if (checkTblCategoryGroup != null) { objCategory = new { code = 0, CategoryCode = "" }; } else { using (var ts = new TransactionScope()) { checkCateGroup.CategoryCode = cateCode1; checkCateGroup.CategoryGroupName = tblCategory.CategoryName; checkCateGroup.CategoryTypeCode = tblCategory.CategoryTypeCode; checkCateGroup.CategoryDescription = tblCategory.CategoryDescription; checkCateGroup.UpdateBy = tblCategory.UpdateBy; checkCateGroup.UpdateDate = DateTime.Now; checkCateGroup.IsDelete = false; db.Entry(checkCateGroup).State = EntityState.Modified; code = db.SaveChanges(); if (tblCategory.children.Count > 0) { AddCategoryChild(checkCateGroup.CategoryCode, tblCategory.children); } if (tblCategory.deleteCategory.Count > 0) { DeleteCategoryChild(tblCategory.deleteCategory); } objCategory = new { code = code, CategoryCode = checkCateGroup.CategoryCode }; ts.Complete(); } } } } else { TblCategory checkCateCode1 = db.TblCategory.Where(v => v.CategoryCode == tblCategory.CategoryCode && v.IsDelete == false).FirstOrDefault(); using (var ts = new TransactionScope()) { TblCategoryGroup addCategory = new TblCategoryGroup(); addCategory.CategoryCode = cateCode1; addCategory.CategoryGroupName = tblCategory.CategoryName; addCategory.CategoryTypeCode = tblCategory.CategoryTypeCode; addCategory.CategoryDescription = tblCategory.CategoryDescription; addCategory.CreateBy = tblCategory.CreateBy; addCategory.CreateDate = DateTime.Now; addCategory.IsDelete = false; db.TblCategoryGroup.Add(addCategory); code = db.SaveChanges(); if (checkCateCode1 != null) { db.TblCategory.Remove(checkCateCode1); db.SaveChanges(); } if (tblCategory.children.Count > 0) { AddCategoryChild(addCategory.CategoryCode, tblCategory.children); } if (tblCategory.deleteCategory.Count > 0) { DeleteCategoryChild(tblCategory.deleteCategory); } objCategory = new { code = code, CategoryCode = addCategory.CategoryCode }; ts.Complete(); } } } else { if (checkCateCode != null) { TblCategory checkCateCode_New = db.TblCategory.Where(v => v.CategoryCode == tblCategory.CategoryCode && v.CategoryName.ToLower().TrimStart().TrimEnd() == tblCategory.CategoryName.ToLower().TrimStart().TrimEnd() && v.IsDelete == false).FirstOrDefault(); if (checkCateCode_New != null) { using (var ts = new TransactionScope()) { checkCateCode.CategoryCode = cateCode1; checkCateCode.CategoryName = tblCategory.CategoryName; checkCateCode.CategoryTypeCode = tblCategory.CategoryTypeCode; checkCateCode.CategoryDescription = tblCategory.CategoryDescription; checkCateCode.CreateBy = tblCategory.CreateBy; checkCateCode.UpdateDate = DateTime.Now; checkCateCode.UpdateBy = tblCategory.UpdateBy; checkCateCode.IsDelete = false; db.Entry(checkCateCode).State = EntityState.Modified; code = db.SaveChanges(); if (tblCategory.children.Count > 0) { AddCategoryChild(checkCateCode.CategoryCode, tblCategory.children); } if (tblCategory.deleteCategory.Count > 0) { DeleteCategoryChild(tblCategory.deleteCategory); } objCategory = new { code = code, CategoryCode = checkCateCode.CategoryCode }; ts.Complete(); } } else { TblCategory checkCategory = db.TblCategory.Where(v => v.CategoryCode == cateCode1 && v.IsDelete == false).FirstOrDefault(); if (checkCategory != null) { objCategory = new { code = 0, CategoryCode = "" }; } else { TblCategoryGroup removeCategoryGroup = db.TblCategoryGroup.Where(v => v.CategoryCode == cateCode1 && v.IsDelete == false).FirstOrDefault(); using (var ts = new TransactionScope()) { TblCategory addCate = new TblCategory(); addCate.CategoryCode = cateCode1; addCate.CategoryTypeCode = tblCategory.CategoryTypeCode; addCate.CategoryName = tblCategory.CategoryName; addCate.CategoryDescription = tblCategory.CategoryDescription; addCate.IsDelete = false; addCate.CreateBy = tblCategory.UpdateBy; addCate.CreateDate = DateTime.Now; db.TblCategory.Add(addCate); code = db.SaveChanges(); if (removeCategoryGroup != null) { db.TblCategoryGroup.Remove(removeCategoryGroup); db.SaveChanges(); } if (tblCategory.children.Count > 0) { AddCategoryChild(addCate.CategoryCode, tblCategory.children); } if (tblCategory.deleteCategory.Count > 0) { DeleteCategoryChild(tblCategory.deleteCategory); } objCategory = new { code = code, CategoryCode = addCate.CategoryCode }; ts.Complete(); } } } } } return(objCategory); } catch (Exception ex) { return(new { code = 500, messsage = ex.Message }); } }