From c313a253b1fcdc75b6be5db575fc2b29fb407021 Mon Sep 17 00:00:00 2001
From: rk <94314517@qq.com>
Date: 星期三, 15 四月 2026 20:05:04 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
server/services/src/main/java/com/doumee/biz/system/impl/AgreementConfigBizImpl.java | 74 +++++++++++++++++++++++++++++++++++++
1 files changed, 74 insertions(+), 0 deletions(-)
diff --git a/server/services/src/main/java/com/doumee/biz/system/impl/AgreementConfigBizImpl.java b/server/services/src/main/java/com/doumee/biz/system/impl/AgreementConfigBizImpl.java
new file mode 100644
index 0000000..89636d3
--- /dev/null
+++ b/server/services/src/main/java/com/doumee/biz/system/impl/AgreementConfigBizImpl.java
@@ -0,0 +1,74 @@
+package com.doumee.biz.system.impl;
+
+import com.doumee.biz.system.AgreementConfigBiz;
+import com.doumee.biz.system.SystemDictDataBiz;
+import com.doumee.core.constants.Constants;
+import com.doumee.core.constants.ResponseStatus;
+import com.doumee.core.exception.BusinessException;
+import com.doumee.dao.dto.AgreementConfigDTO;
+import com.doumee.dao.system.model.SystemDictData;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+/**
+ * 鍗忚閰嶇疆涓氬姟瀹炵幇
+ * @author rk
+ * @date 2026/04/13
+ */
+@Service
+public class AgreementConfigBizImpl implements AgreementConfigBiz {
+
+ @Autowired
+ private SystemDictDataBiz systemDictDataBiz;
+
+ @Override
+ public AgreementConfigDTO getConfig() {
+ AgreementConfigDTO dto = new AgreementConfigDTO();
+ dto.setPrivacyAgreement(getValue(Constants.PRIVACY_AGREEMENT));
+ dto.setUserAgreement(getValue(Constants.USER_AGREEMENT));
+ dto.setAboutUs(getValue(Constants.ABOUT_US));
+ return dto;
+ }
+
+ @Override
+ @Transactional(rollbackFor = {Exception.class, BusinessException.class})
+ public void saveConfig(AgreementConfigDTO dto) {
+ validate(dto);
+ saveOrUpdate(Constants.PRIVACY_AGREEMENT, "闅愮鍗忚", dto.getPrivacyAgreement());
+ saveOrUpdate(Constants.USER_AGREEMENT, "鐢ㄦ埛鍗忚", dto.getUserAgreement());
+ saveOrUpdate(Constants.ABOUT_US, "鍏充簬鎴戜滑", dto.getAboutUs());
+ }
+
+ private String getValue(String label) {
+ SystemDictData data = systemDictDataBiz.queryByCode(Constants.SYSTEM, label);
+ return data != null ? data.getCode() : null;
+ }
+
+ private void saveOrUpdate(String label, String remark, String value) {
+ SystemDictData existing = systemDictDataBiz.queryByCode(Constants.SYSTEM, label);
+ if (existing != null && existing.getId() != null) {
+ existing.setCode(value);
+ systemDictDataBiz.updateById(existing);
+ } else {
+ SystemDictData newData = new SystemDictData();
+ newData.setDictId(100);
+ newData.setLabel(label);
+ newData.setRemark(remark);
+ newData.setCode(value);
+ newData.setDisabled(false);
+ newData.setDeleted(false);
+ systemDictDataBiz.create(newData);
+ }
+ }
+
+ private void validate(AgreementConfigDTO dto) {
+ if (dto == null
+ || StringUtils.isBlank(dto.getPrivacyAgreement())
+ || StringUtils.isBlank(dto.getUserAgreement())
+ || StringUtils.isBlank(dto.getAboutUs())) {
+ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "鎵�鏈夐厤缃」鍧囦负蹇呭~");
+ }
+ }
+}
--
Gitblit v1.9.3