From 2b53e9d86a358dcf2553e810cab46cba4aee161e Mon Sep 17 00:00:00 2001
From: 疯狂的狮子li <15040126243@163.com>
Date: 星期五, 17 九月 2021 11:12:43 +0800
Subject: [PATCH] Merge branch 'master' of https://gitee.com/y_project/RuoYi-Vue into dev
---
ruoyi-common/src/main/java/com/ruoyi/common/annotation/Log.java | 5 +
ruoyi-ui/src/components/DictTag/index.vue | 103 +++++++++++++------------
ruoyi-framework/src/main/java/com/ruoyi/framework/aspectj/LogAspect.java | 20 ++--
ruoyi-generator/src/main/resources/vm/java/mapper.java.vm | 66 ++++++++++++++++
4 files changed, 134 insertions(+), 60 deletions(-)
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/annotation/Log.java b/ruoyi-common/src/main/java/com/ruoyi/common/annotation/Log.java
index eb05dc7..ca02c6c 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/annotation/Log.java
+++ b/ruoyi-common/src/main/java/com/ruoyi/common/annotation/Log.java
@@ -38,4 +38,9 @@
* 鏄惁淇濆瓨璇锋眰鐨勫弬鏁�
*/
public boolean isSaveRequestData() default true;
+
+ /**
+ * 鏄惁淇濆瓨鍝嶅簲鐨勫弬鏁�
+ */
+ public boolean isSaveResponseData() default true;
}
diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/aspectj/LogAspect.java b/ruoyi-framework/src/main/java/com/ruoyi/framework/aspectj/LogAspect.java
index e8c47a3..78a7b3a 100644
--- a/ruoyi-framework/src/main/java/com/ruoyi/framework/aspectj/LogAspect.java
+++ b/ruoyi-framework/src/main/java/com/ruoyi/framework/aspectj/LogAspect.java
@@ -33,7 +33,7 @@
/**
* 鎿嶄綔鏃ュ織璁板綍澶勭悊
- *
+ *
* @author ruoyi
*/
@Aspect
@@ -61,7 +61,7 @@
/**
* 鎷︽埅寮傚父鎿嶄綔
- *
+ *
* @param joinPoint 鍒囩偣
* @param e 寮傚父
*/
@@ -91,9 +91,6 @@
// 璇锋眰鐨勫湴鍧�
String ip = ServletUtils.getClientIP();
operLog.setOperIp(ip);
- // 杩斿洖鍙傛暟
- operLog.setJsonResult(JsonUtils.toJsonString(jsonResult));
-
operLog.setOperUrl(ServletUtils.getRequest().getRequestURI());
if (loginUser != null)
{
@@ -112,7 +109,7 @@
// 璁剧疆璇锋眰鏂瑰紡
operLog.setRequestMethod(ServletUtils.getRequest().getMethod());
// 澶勭悊璁剧疆娉ㄨВ涓婄殑鍙傛暟
- getControllerMethodDescription(joinPoint, controllerLog, operLog);
+ getControllerMethodDescription(joinPoint, controllerLog, operLog, jsonResult);
// 淇濆瓨鏁版嵁搴�
SpringUtils.getBean(AsyncService.class).recordOper(operLog);
}
@@ -127,12 +124,12 @@
/**
* 鑾峰彇娉ㄨВ涓鏂规硶鐨勬弿杩颁俊鎭� 鐢ㄤ簬Controller灞傛敞瑙�
- *
+ *
* @param log 鏃ュ織
* @param operLog 鎿嶄綔鏃ュ織
* @throws Exception
*/
- public void getControllerMethodDescription(JoinPoint joinPoint, Log log, SysOperLog operLog) throws Exception
+ public void getControllerMethodDescription(JoinPoint joinPoint, Log log, SysOperLog operLog, Object jsonResult) throws Exception
{
// 璁剧疆action鍔ㄤ綔
operLog.setBusinessType(log.businessType().ordinal());
@@ -146,11 +143,16 @@
// 鑾峰彇鍙傛暟鐨勪俊鎭紝浼犲叆鍒版暟鎹簱涓��
setRequestValue(joinPoint, operLog);
}
+ // 鏄惁闇�瑕佷繚瀛榬esponse锛屽弬鏁板拰鍊�
+ if (log.isSaveResponseData() && StringUtils.isNotNull(jsonResult))
+ {
+ operLog.setJsonResult(StringUtils.substring(JsonUtils.toJsonString(jsonResult), 0, 2000));
+ }
}
/**
* 鑾峰彇璇锋眰鐨勫弬鏁帮紝鏀惧埌log涓�
- *
+ *
* @param operLog 鎿嶄綔鏃ュ織
* @throws Exception 寮傚父
*/
diff --git a/ruoyi-generator/src/main/resources/vm/java/mapper.java.vm b/ruoyi-generator/src/main/resources/vm/java/mapper.java.vm
index 6f8ff7b..aa1e27d 100644
--- a/ruoyi-generator/src/main/resources/vm/java/mapper.java.vm
+++ b/ruoyi-generator/src/main/resources/vm/java/mapper.java.vm
@@ -13,4 +13,70 @@
*/
public interface ${ClassName}Mapper extends BaseMapperPlus<${ClassName}> {
+ /**
+ * 鏌ヨ${functionName}鍒楄〃
+ *
+ * @param ${className} ${functionName}
+ * @return ${functionName}闆嗗悎
+ */
+ public List<${ClassName}> select${ClassName}List(${ClassName} ${className});
+
+ /**
+ * 鏂板${functionName}
+ *
+ * @param ${className} ${functionName}
+ * @return 缁撴灉
+ */
+ public int insert${ClassName}(${ClassName} ${className});
+
+ /**
+ * 淇敼${functionName}
+ *
+ * @param ${className} ${functionName}
+ * @return 缁撴灉
+ */
+ public int update${ClassName}(${ClassName} ${className});
+
+ /**
+ * 鍒犻櫎${functionName}
+ *
+ * @param ${pkColumn.javaField} ${functionName}涓婚敭
+ * @return 缁撴灉
+ */
+ public int delete${ClassName}By${pkColumn.capJavaField}(${pkColumn.javaType} ${pkColumn.javaField});
+
+ /**
+ * 鎵归噺鍒犻櫎${functionName}
+ *
+ * @param ${pkColumn.javaField}s 闇�瑕佸垹闄ょ殑鏁版嵁涓婚敭闆嗗悎
+ * @return 缁撴灉
+ */
+ public int delete${ClassName}By${pkColumn.capJavaField}s(${pkColumn.javaType}[] ${pkColumn.javaField}s);
+#if($table.sub)
+
+ /**
+ * 鎵归噺鍒犻櫎${subTable.functionName}
+ *
+ * @param ${pkColumn.javaField}s 闇�瑕佸垹闄ょ殑鏁版嵁涓婚敭闆嗗悎
+ * @return 缁撴灉
+ */
+ public int delete${subClassName}By${pkColumn.capJavaField}s(${pkColumn.javaType}[] ${pkColumn.javaField}s);
+
+ /**
+ * 鎵归噺鏂板${subTable.functionName}
+ *
+ * @param ${subclassName}List ${subTable.functionName}鍒楄〃
+ * @return 缁撴灉
+ */
+ public int batch${subClassName}(List<${subClassName}> ${subclassName}List);
+
+
+ /**
+ * 閫氳繃${functionName}涓婚敭鍒犻櫎${subTable.functionName}淇℃伅
+ *
+ * @param ${pkColumn.javaField} ${functionName}ID
+ * @return 缁撴灉
+ */
+ public int delete${subClassName}By${subTableFkClassName}(${pkColumn.javaType} ${pkColumn.javaField});
+#end
}
diff --git a/ruoyi-ui/src/components/DictTag/index.vue b/ruoyi-ui/src/components/DictTag/index.vue
index 542c6ed..b0484bc 100644
--- a/ruoyi-ui/src/components/DictTag/index.vue
+++ b/ruoyi-ui/src/components/DictTag/index.vue
@@ -1,51 +1,52 @@
-<template>
- <div>
- <template v-for="(item, index) in options">
- <template v-if="values.includes(item.dictValue)">
- <span
- v-if="item.listClass == 'default' || item.listClass == ''"
- :key="item.dictValue"
- :index="index"
- :class="item.cssClass"
- >{{ item.dictLabel }}</span
- >
- <el-tag
- v-else
- :key="item.dictValue"
- :index="index"
- :type="item.listClass == 'primary' ? '' : item.listClass"
- :class="item.cssClass"
- >
- {{ item.dictLabel }}
- </el-tag>
- </template>
- </template>
- </div>
-</template>
-
-<script>
-export default {
- name: "DictTag",
- props: {
- options: {
- type: Array,
- default: null,
- },
- value: [Number, String, Array],
- },
- computed: {
- values() {
- if (this.value !== null && typeof this.value !== 'undefined') {
- return Array.isArray(this.value) ? this.value : [String(this.value)];
- } else {
- return [];
- }
- },
- },
-};
-</script>
-<style scoped>
-.el-tag + .el-tag {
- margin-left: 10px;
-}
-</style>
\ No newline at end of file
+<template>
+ <div>
+ <template v-for="(item, index) in options">
+ <template v-if="values.includes(item.dictValue)">
+ <span
+ v-if="item.listClass == 'default' || item.listClass == ''"
+ :key="item.dictValue"
+ :index="index"
+ :class="item.cssClass"
+ >{{ item.dictLabel }}</span
+ >
+ <el-tag
+ v-else
+ :disable-transitions="true"
+ :key="item.dictValue"
+ :index="index"
+ :type="item.listClass == 'primary' ? '' : item.listClass"
+ :class="item.cssClass"
+ >
+ {{ item.dictLabel }}
+ </el-tag>
+ </template>
+ </template>
+ </div>
+</template>
+
+<script>
+export default {
+ name: "DictTag",
+ props: {
+ options: {
+ type: Array,
+ default: null,
+ },
+ value: [Number, String, Array],
+ },
+ computed: {
+ values() {
+ if (this.value !== null && typeof this.value !== 'undefined') {
+ return Array.isArray(this.value) ? this.value : [String(this.value)];
+ } else {
+ return [];
+ }
+ },
+ },
+};
+</script>
+<style scoped>
+.el-tag + .el-tag {
+ margin-left: 10px;
+}
+</style>
--
Gitblit v1.9.3