/// <summary> /// Lấy thông tin. /// </summary> /// <param name="inputObject">DataModel</param> /// <returns>DataModel</returns> private InitDataModel GetInfo(InitDataModel inputObject) { // Khởi tạo biến cục bộ var getResult = new InitDataModel(); var companyCom = new CompanyCom(); var codeCom = new CodeCom(); var metaInfo = new BaseMeta(); var processDao = new MainDao(); var localeCom = new LocaleCom(); var storageFileCom = new StorageFileCom(); // Map dữ liệu DataHelper.CopyObject(inputObject, getResult); // Lấy ngôn ngữ chuẩn var basicLocale = localeCom.GetDefault(DataComLogics.CD_APP_CD_CLN); // Lấy danh sách ngôn ngữ var listLocales = codeCom.GetDiv(WebContextHelper.LocaleCd, DataComLogics.GRPCD_CLN_LOCALES, null, false, false); // Lấy giá trị combo var cbLocales = DataHelper.ToComboItems(listLocales, basicLocale); // Lấy danh sách banner var listBanner = processDao.GetListBanners(WebContextHelper.LocaleCd); // Lấy field var logoFileCd = companyCom.GetString("en", W150901Logics.CD_INFO_CD_LOGO_FILE_CD, false); var companyName = companyCom.GetString(WebContextHelper.LocaleCd, W150901Logics.CD_INFO_CD_COMPANY_NAME, false); var slogan = companyCom.GetString(WebContextHelper.LocaleCd, W150901Logics.CD_INFO_CD_SLOGAN, false); var address = companyCom.GetString(WebContextHelper.LocaleCd, W150901Logics.CD_INFO_CD_ADDRESS, false); var copyright = companyCom.GetString(WebContextHelper.LocaleCd, W150901Logics.CD_INFO_CD_COPYRIGHT, false); var twitterUrl = companyCom.GetString(WebContextHelper.LocaleCd, W150901Logics.CD_INFO_CD_TWITTER_URL, false); var googleUrl = companyCom.GetString(WebContextHelper.LocaleCd, W150901Logics.CD_INFO_CD_GOOGLE_URL, false); var facebookUrl = companyCom.GetString(WebContextHelper.LocaleCd, W150901Logics.CD_INFO_CD_FACEBOOK_URL, false); var youtubeUrl = companyCom.GetString(WebContextHelper.LocaleCd, W150901Logics.CD_INFO_CD_YOUTUBE_URL, false); var hotelurl1 = companyCom.GetString(WebContextHelper.LocaleCd, W150901Logics.CD_INFO_CD_HOTEL_URL_1, false); var hotelurl2 = companyCom.GetString(WebContextHelper.LocaleCd, W150901Logics.CD_INFO_CD_HOTEL_URL_2, false); var hotelurl3 = companyCom.GetString(WebContextHelper.LocaleCd, W150901Logics.CD_INFO_CD_HOTEL_URL_3, false); var hotelurl4 = companyCom.GetString(WebContextHelper.LocaleCd, W150901Logics.CD_INFO_CD_HOTEL_URL_4, false); // Gán giá trị trả về getResult.Logo = logoFileCd; getResult.CompanyName = companyName; getResult.Slogan = slogan; getResult.Address = address; getResult.Copyright = copyright; getResult.TwitterUrl = twitterUrl; getResult.FacebookUrl = facebookUrl; getResult.GoogleUrl = googleUrl; getResult.YoutubeUrl = youtubeUrl; getResult.HotelUrl1 = hotelurl1; getResult.HotelUrl2 = hotelurl2; getResult.HotelUrl3 = hotelurl3; getResult.HotelUrl4 = hotelurl4; getResult.ListBanner = listBanner; getResult.CboLocales = cbLocales.ListItems; getResult.CboLocalesSeleted = cbLocales.SeletedValue; // Kết quả trả về return getResult; }
/// <summary> /// Lấy thông tin. /// </summary> /// <param name="inputObject">DataModel</param> /// <returns>DataModel</returns> private InitDataModel GetInfo(InitDataModel inputObject) { // Khởi tạo biến cục bộ var getResult = new InitDataModel(); var codeCom = new CodeCom(); var localeCom = new LocaleCom(); var parameterCom = new ParameterCom(); // Map dữ liệu DataHelper.CopyObject(inputObject, getResult); // Lấy ngôn ngữ chuẩn var basicLocale = localeCom.GetDefault(DataComLogics.CD_APP_CD_CLN); // Lấy giá trị giới hạn trên grid var limit = parameterCom.GetNumber(DataComLogics.CD_PARAM_CD_ADM_LIMIT, false); // Lấy danh sách code var listLocales = codeCom.GetDiv( WebContextHelper.LocaleCd, DataComLogics.GRPCD_CLN_LOCALES, null, true, false); var listDeleteFlag = codeCom.GetDivDeleteFlag(WebContextHelper.LocaleCd, true); var listDeleteFlagGrd = codeCom.GetDivDeleteFlag(WebContextHelper.LocaleCd, false); // Lấy giá trị combo var cbLocales = DataHelper.ToComboItems(listLocales, basicLocale); var cbDeleteFlag = DataHelper.ToComboItems(listDeleteFlag, false); var cbDeleteFlagGrd = DataHelper.ToComboItems(listDeleteFlagGrd, false); // Gán giá trị trả về getResult.CboLocales = cbLocales.ListItems; getResult.CboLocalesSeleted = cbLocales.SeletedValue; getResult.CboDeleteFlag = cbDeleteFlag.ListItems; getResult.CboDeleteFlagSeleted = cbDeleteFlag.SeletedValueBoolean; getResult.CboGrdDeleteFlag = cbDeleteFlagGrd.ListItems; getResult.BasicLocale = basicLocale; getResult.Limit = limit; // Kết quả trả về return getResult; }
/// <summary> /// Kiểm tra thông tin. /// </summary> /// <param name="inputObject">DataModel</param> private void Check(InitDataModel inputObject) { // Khởi tạo biến cục bộ var masterDataCom = new MasterDataCom(); var localeCom = new LocaleCom(); var msgs = DataHelper.CreateList<Message>(); // Lấy ngôn ngữ chuẩn var basicLocale = localeCom.GetDefault(DataComLogics.CD_APP_CD_CLN); // Trường hợp status là edit if (inputObject.IsEdit) { if (DataCheckHelper.IsNull(inputObject.ServiceCd)) { msgs.Add(MessageHelper.GetMessage( "E_MSG_00013", "ADM_MA_SERVICES_00001")); } // Kiểm tra danh sách lỗi if (!DataCheckHelper.IsNull(msgs)) { throw new ExecuteException(msgs); } // Kiểm tra dữ liệu tồn tại var isExist = masterDataCom.IsExistService( basicLocale, inputObject.ServiceCd, true); if (!isExist) { msgs.Add(MessageHelper.GetMessage( "E_MSG_00016", "ADM_MA_SERVICES_00005")); } // Kiểm tra danh sách lỗi if (!DataCheckHelper.IsNull(msgs)) { throw new ExecuteException(msgs); } } }
/// <summary> /// Kiểm tra thông tin. /// </summary> /// <param name="inputObject">DataModel</param> private void Check(SaveBatchDataModel inputObject) { // Khởi tạo biến cục bộ var masterDataCom = new MasterDataCom(); var msgs = DataHelper.CreateList<Message>(); // Kiểm tra bắt buộc if (DataCheckHelper.IsNull(inputObject.ListData)) { msgs.Add(MessageHelper.GetMessage("E_MSG_00001", "P_CM_00015")); } // Kiểm tra danh sách lỗi if (!DataCheckHelper.IsNull(msgs)) { throw new ExecuteException(msgs); } // Lấy ngôn ngữ chuẩn var localeCom = new LocaleCom(); var basicLocale = localeCom.GetDefault(DataComLogics.CD_APP_CD_CLN); // Khởi tạo biến dùng trong loop var i = 1; // Duyệt danh sách dữ liệu foreach (var info in inputObject.ListData) { // Khởi tạo biến cục bộ var flagError = false; // Kiểm tra bắt buộc if (DataCheckHelper.IsNull(info.LocaleCd)) { flagError = true; msgs.Add(MessageHelper.GetMessageForList( "P_CM_00015", i, "E_MSG_00001", "P_CM_00012")); } if (DataCheckHelper.IsNull(info.PhotoCd)) { flagError = true; msgs.Add(MessageHelper.GetMessageForList( "P_CM_00015", i, "E_MSG_00001", "ADM_MA_PHOTOS_00001")); } //if (DataCheckHelper.IsNull(info.PhotoName)) { // flagError = true; // msgs.Add(MessageHelper.GetMessageForList( // "P_CM_00015", i, "E_MSG_00001", "ADM_MA_PHOTOS_00002")); //} // Trường hợp lỗi thì đi đến record tiếp theo if (flagError) { // Tăng giá trị i i++; // Đi đến record tiếp theo continue; } // Kiểm tra bắt buộc file if (info.LocaleCd == basicLocale) { var storageFileCom = new StorageFileCom(); var listFile = storageFileCom.GetList(info.LocaleCd, info.FileCd, false); if (listFile.Count == decimal.Zero) { msgs.Add(MessageHelper.GetMessage("E_MSG_00001", "ADM_MA_PHOTOS_00003")); } // Trường hợp lỗi thì đi đến record tiếp theo if (flagError) { // Tăng giá trị i i++; // Đi đến record tiếp theo continue; } } // Kiểm tra dữ liệu tồn tại var isExist = masterDataCom.IsExistPhoto( info.LocaleCd, info.PhotoCd, true); if (!isExist) { flagError = true; msgs.Add(MessageHelper.GetMessageForList( "P_CM_00015", i, "E_MSG_00016", "ADM_MA_PHOTOS_00005")); } // Trường hợp lỗi thì đi đến record tiếp theo if (flagError) { // Tăng giá trị i i++; // Đi đến record tiếp theo continue; } // Tăng giá trị i i++; } // Kiểm tra danh sách lỗi if (!DataCheckHelper.IsNull(msgs)) { throw new ExecuteException(msgs); } }
/// <summary> /// Lưu thông tin. /// </summary> /// <param name="inputObject">DataModel</param> /// <returns>DataModel</returns> private SaveBatchDataModel SaveInfo(SaveBatchDataModel inputObject) { // Khởi tạo biến cục bộ var saveResult = new SaveBatchDataModel(); var processDao = new MasterPhotosDao(); var localeCom = new LocaleCom(); var listUpdate = DataHelper.CreateList<PhotoObject>(); // Map dữ liệu DataHelper.CopyObject(inputObject, saveResult); // Lấy ngôn ngữ chuẩn var basicLocale = localeCom.GetDefault(DataComLogics.CD_APP_CD_CLN); // Lấy danh sách thông tin locale chuẩn var listBasicLocale = inputObject.ListData.Where(o => o.LocaleCd == basicLocale); // Duyệt danh sách thông tin locale chuẩn foreach (var info in listBasicLocale) { // Thêm vào danh sách cập nhật listUpdate.Add(info); // Lấy danh sách locale var listLocaleDb = processDao.GetListOtherLocale(basicLocale, info.PhotoCd); // Duyệt danh sách locale foreach (var other in listLocaleDb) { // Gán dữ liệu cập nhật other.PhotoCd = info.PhotoCd; other.FileCd = info.FileCd; other.SortKey = info.SortKey; other.DeleteFlag = info.DeleteFlag; // Thêm vào danh sách cập nhật listUpdate.Add(other); } } // Lấy danh sách thông tin locale var listOtherLocale = inputObject.ListData.Where(o => o.LocaleCd != basicLocale); // Khởi tạo comparer var comparer = new KeyEqualityComparer<PhotoObject>((k1, k2) => k1.PhotoCd == k2.PhotoCd && k1.LocaleCd == k2.LocaleCd ); // Duyệt danh sách thông tin locale foreach (var info in listOtherLocale) { if (listUpdate.Contains(info, comparer)) { // Lấy thông tin cập nhật var updateObj = listUpdate.Single(o => o.LocaleCd == info.LocaleCd && o.PhotoCd == info.PhotoCd); var idxObj = listUpdate.IndexOf(updateObj); // Gán dữ liệu cập nhật listUpdate[idxObj].PhotoName = info.PhotoName; listUpdate[idxObj].SearchName = info.SearchName; listUpdate[idxObj].Notes = info.Notes; } else { // Thêm vào danh sách cập nhật listUpdate.Add(info); } } // Xử lý tạo transaction var transaction = processDao.CreateTransaction(); // Duyệt danh sách dữ liệu foreach (var info in listUpdate) { // Xử lý update đối tượng dữ liệu processDao.Update(info, transaction); } // Xử lý lưu các thay đổi từ transaction processDao.CommitTransaction(transaction); // Thêm thông báo thành công saveResult.AddMessage("I_MSG_00004"); // Kết quả trả về return saveResult; }
/// <summary> /// Kiểm tra thông tin. /// </summary> /// <param name="inputObject">DataModel</param> private void Check(SaveDataModel inputObject) { // Khởi tạo biến cục bộ var masterDataCom = new MasterDataCom(); var localeCom = new LocaleCom(); var msgs = DataHelper.CreateList<Message>(); // Lấy ngôn ngữ chuẩn var basicLocale = localeCom.GetDefault(DataComLogics.CD_APP_CD_CLN); // Lấy đối tượng dữ liệu var dataInfo = inputObject.LocaleModel.DataInfo; var listLocale = inputObject.LocaleModel.ListLocale; // Kiểm tra bắt buộc if (DataCheckHelper.IsNull(dataInfo.LocaleCd)) { msgs.Add(MessageHelper.GetMessage("E_MSG_00001", "P_CM_00012")); } if (DataCheckHelper.IsNull(dataInfo.BannerCd)) { msgs.Add(MessageHelper.GetMessage("E_MSG_00001", "ADM_MA_BANNERS_00001")); } //if (DataCheckHelper.IsNull(dataInfo.BannerName)) { // msgs.Add(MessageHelper.GetMessage("E_MSG_00001", "ADM_MA_BANNERS_00002")); //} // Kiểm tra danh sách lỗi if (!DataCheckHelper.IsNull(msgs)) { throw new ExecuteException(msgs); } // Kiểm tra bắt buộc file var storageFileCom = new StorageFileCom(); var listFile = storageFileCom.GetList(dataInfo.LocaleCd, dataInfo.FileCd, false); if (listFile.Count == decimal.Zero) { msgs.Add(MessageHelper.GetMessage("E_MSG_00001", "ADM_MA_BANNERS_00003")); } // Kiểm tra danh sách lỗi if (!DataCheckHelper.IsNull(msgs)) { throw new ExecuteException(msgs); } // Kiểm tra locale hợp lệ if (dataInfo.LocaleCd != basicLocale) { msgs.Add(MessageHelper.GetMessage("E_MSG_00030")); } // Kiểm tra danh sách lỗi if (!DataCheckHelper.IsNull(msgs)) { throw new ExecuteException(msgs); } // Kiểm tra dữ liệu tồn tại var isExist = masterDataCom.IsExistBanner( dataInfo.LocaleCd, dataInfo.BannerCd, true); // Kiểm tra dữ liệu tồn tại trường hợp status là add if (inputObject.IsAdd && (isExist)) { msgs.Add(MessageHelper.GetMessage("E_MSG_00017", "ADM_MA_BANNERS_00005")); } // Kiểm tra dữ liệu tồn tại trường hợp status là edit if (inputObject.IsEdit && (!isExist)) { msgs.Add(MessageHelper.GetMessage("E_MSG_00016", "ADM_MA_BANNERS_00005")); } // Kiểm tra danh sách lỗi if (!DataCheckHelper.IsNull(msgs)) { throw new ExecuteException(msgs); } // Khởi tạo biến dùng trong loop var i = 1; var flagError = false; // Duyệt danh sách ngôn ngữ foreach (var info in listLocale) { // Gán trạng thái lỗi bằng false flagError = false; // Kiểm tra bắt buộc if (DataCheckHelper.IsNull(info.LocaleCd)) { flagError = true; msgs.Add(MessageHelper.GetMessageForList( "P_CM_00020", i, "E_MSG_00001", "P_CM_00012")); } //if (DataCheckHelper.IsNull(info.BannerName)) { // flagError = true; // msgs.Add(MessageHelper.GetMessageForList( // "P_CM_00020", i, "E_MSG_00001", "ADM_MA_BANNERS_00002")); //} // Trường hợp lỗi thì đi đến record tiếp theo if (flagError) { // Tăng giá trị i i++; // Đi đến record tiếp theo continue; } // Kiểm tra giá trị duy nhất var comparer = new KeyEqualityComparer<BannerObject>((k1, k2) => k1.RowNo != k2.RowNo && k1.LocaleCd == k2.LocaleCd ); if (dataInfo.LocaleCd == info.LocaleCd || listLocale.Contains(info, comparer)) { flagError = true; msgs.Add(MessageHelper.GetMessageForList( "P_CM_00020", i, "E_MSG_00017", "P_CM_00012")); } // Trường hợp lỗi thì đi đến record tiếp theo if (flagError) { // Tăng giá trị i i++; // Đi đến record tiếp theo continue; } // Tăng giá trị i i++; } // Kiểm tra danh sách lỗi if (!DataCheckHelper.IsNull(msgs)) { throw new ExecuteException(msgs); } }
/// <summary> /// Lấy thông tin. /// </summary> /// <param name="inputObject">DataModel</param> /// <returns>DataModel</returns> private InitDataModel GetInfo(InitDataModel inputObject) { // Khởi tạo biến cục bộ var getResult = new InitDataModel(); var processDao = new MasterServicesDao(); var localeCom = new LocaleCom(); var codeCom = new CodeCom(); var localeModel = new LocaleModel<ServiceObject>(); // Map dữ liệu DataHelper.CopyObject(inputObject, getResult); // Lấy ngôn ngữ chuẩn var basicLocale = localeCom.GetDefault(DataComLogics.CD_APP_CD_CLN); // Trường hợp status là edit hoặc copy if (inputObject.IsEdit || inputObject.IsCopy) { // Khởi tạo biến cục bộ var listData = DataHelper.CreateList<ServiceObject>(); // Lấy danh sách dữ liệu đa ngôn ngữ var listLocale = processDao.GetListLocale(inputObject.ServiceCd); // Khởi tạo biến dùng trong loop var rowNo = 0; var localeName = string.Empty; // Duyệt danh sách dữ liệu đa ngôn ngữ foreach (var info in listLocale) { // Lấy thông tin tên localeName = codeCom.GetName( WebContextHelper.LocaleCd, DataComLogics.GRPCD_CLN_LOCALES, info.LocaleCd, false); // Lấy số dòng if (info.LocaleCd != basicLocale) { info.RowNo = rowNo++; } // Gán thông tin dữ liệu info.LocaleName = localeName; // Xóa thông tin khi sao chép if (inputObject.IsCopy) { info.ServiceName = string.Empty; info.SearchName = string.Empty; } // Thêm vào danh sách kết quả listData.Add(info); } // Tiến hành convert đối tượng locale localeModel = DataHelper.ToLocaleModel(basicLocale, listData); } // Khởi tạo giá trị init if (inputObject.IsAdd) { localeModel.DataInfo.ServiceCd = DataHelper.GetUniqueKey(); localeModel.DataInfo.ServiceName = string.Empty; localeModel.DataInfo.SearchName = string.Empty; // localeModel.DataInfo.Slug = string.Empty; localeModel.DataInfo.FileCd = string.Empty; localeModel.DataInfo.LocaleCd = basicLocale; localeModel.DataInfo.SortKey = decimal.One; localeModel.DataInfo.DeleteFlag = false; if (inputObject.IsAddInit) { localeModel.ListLocale.Clear(); } } // Lấy danh sách code var listLocales = codeCom.GetDiv( WebContextHelper.LocaleCd, DataComLogics.GRPCD_CLN_LOCALES, basicLocale, false, false); var listDeleteFlag = codeCom.GetDivDeleteFlag(WebContextHelper.LocaleCd, false); // Lấy giá trị combo var cbLocales = DataHelper.ToComboItems(listLocales, string.Empty); var cbDeleteFlag = DataHelper.ToComboItems( listDeleteFlag, localeModel.DataInfo.DeleteFlag); // Gán giá trị trả về getResult.BasicLocale = basicLocale; getResult.LocaleModel = localeModel; getResult.CboLocales = cbLocales.ListItems; getResult.CboLocalesSeleted = cbLocales.SeletedValue; getResult.CboDeleteFlag = cbDeleteFlag.ListItems; getResult.LocaleModel.DataInfo.DeleteFlag = cbDeleteFlag.SeletedValueBoolean; // Kết quả trả về return getResult; }