Преглед на файлове

作者:张哲
时间:2023/01/18
类型:优化
描述:里程碑(1)处理Clob无法存储问题

ZizgZh преди 2 години
родител
ревизия
58a94c0896

+ 1 - 2
src/main/java/com/redxun/knowledge/entity/dao/Knowledge.java

@@ -12,7 +12,6 @@ package com.redxun.knowledge.entity.dao;
 
 import com.baomidou.mybatisplus.annotation.*;
 import com.fasterxml.jackson.annotation.JsonCreator;
-import com.mysql.cj.jdbc.Clob;
 import com.redxun.common.base.entity.BaseExtEntity;
 import lombok.Getter;
 import lombok.Setter;
@@ -55,7 +54,7 @@ public class Knowledge  extends BaseExtEntity<java.lang.String> {
     private String author;
     //知识内容
     @TableField(value = "CONTENT")
-    private Clob content;
+    private String content;
     //附件ID
     @TableField(value = "ATTACHMENT")
     private String attachment;

+ 1 - 1
src/main/java/com/redxun/knowledge/entity/dto/KnowledgeDto.java

@@ -27,7 +27,7 @@ public class KnowledgeDto {
     private String summary;
 
     // 知识内容
-    private Clob content;
+    private String content;
 
     // 附件ID
     // @NotBlank(message = "缺失关键参数:文件ID")

+ 1 - 1
src/main/java/com/redxun/knowledge/entity/vo/KnowledgeVo.java

@@ -43,7 +43,7 @@ public class KnowledgeVo {
     private String author;
 
     // 知识内容
-    private Clob content;
+    private String content;
 
     // 简介
     private String summary;

+ 13 - 3
src/main/java/com/redxun/knowledge/service/KnowledgeServiceImpl.java

@@ -11,11 +11,13 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.redxun.common.base.db.BaseDao;
 import com.redxun.common.base.db.BaseService;
 import com.redxun.common.base.db.PageHelper;
+import com.redxun.common.base.entity.IUser;
 import com.redxun.common.base.search.QueryFilter;
 import com.redxun.common.model.JPaasUser;
 import com.redxun.common.service.impl.SuperServiceImpl;
 import com.redxun.common.tool.IdGenerator;
 import com.redxun.common.tool.StringUtils;
+import com.redxun.common.utils.ContextUtil;
 import com.redxun.dto.user.OsUserDto;
 import com.redxun.knowledge.common.MessageService;
 import com.redxun.knowledge.common.UserService;
@@ -117,10 +119,17 @@ public class KnowledgeServiceImpl extends SuperServiceImpl<KnowledgeMapper, Know
             knowledge.setAttachment(knowledgeDto.getAttachment());
             knowledge.setAttachmentName(knowledgeDto.getAttachmentName());
             knowledge.setAttachmentType(knowledgeDto.getAttachmentType());
+            knowledge.setApprovalStatus(1);
+            knowledge.setApprovalBatch(1);
             knowledge.setContent(knowledgeDto.getContent());
-            knowledge.setUpdateBy(userService.queryLoginUser());
-            //knowledge.setAuthor(knowledgeDto.getAuthor());
-            //knowledge.setCreateBy(knowledgeDto.getCreateBy());
+            IUser users = ContextUtil.getCurrentUser();
+            knowledge.setCreateDepId(users.getDeptId());
+            knowledge.setTenantId(users.getTenantId());
+            knowledge.setCompanyId(users.getCompanyId());
+            knowledge.setCreateBy(users.getUserId());
+            knowledge.setCreateTime(new Date());
+            knowledge.setUpdateBy(users.getUserId());
+            knowledge.setUpdateTime(new Date());
 
             JPaasUser user = userService.queryUser(userService.queryLoginUser());
             if (user != null) {
@@ -143,6 +152,7 @@ public class KnowledgeServiceImpl extends SuperServiceImpl<KnowledgeMapper, Know
                         knowledgeApprove.setApproverId(node.getApproverId());
                         knowledgeApprove.setApproverName(node.getApproverName());
                         knowledgeApprove.setApprovalBatch(1);
+                        knowledgeApprove.setUpdateBy(users.getUserId());
                         knowledgeApprove.setSort(index + 1);
                         knowledgeApprove.setIsFinal(node.getIsFinal());
                         knowledgeApprove.setCreateBy(userService.queryLoginUser());

+ 34 - 21
src/main/resources/mapper/knowledge/KnowledgeMapper.xml

@@ -184,27 +184,40 @@
         where PK_ID = #{pkId}
     </update>
 
-<!--    <insert id="insert" parameterType="com.redxun.knowledge.entity.dao.Knowledge">-->
-<!--        DECLARE-->
-<!--        V_LANG CLOB :=-->
-<!--        #{content,jdbcType=CLOB};-->
-<!--        BEGIN-->
-<!--INSERT INTO KM_KNOWLEDGE(PK_ID, TITLES,CATEGORY_ID,TYPE,SUMMARY,ATTACHMENT,ATTACHMENT_NAME,ATTACHMENT_TYPE,UPDATE_BY_,AUTHOR,CONTENT-->
-<!--)VALUES(-->
-<!--        #{pkId,jdbcType=VARCHAR},-->
-<!--        #{titles},-->
-<!--        #{categoryId},-->
-<!--        #{type},-->
-<!--        #{summary},-->
-<!--        #{attachment},-->
-<!--        #{attachmentName},-->
-<!--        #{attachmentType},-->
-<!--        #{updateBy},-->
-<!--        #{author},-->
-<!--        V_LANG-->
-<!--        );-->
-<!--        END;-->
-<!--    </insert>-->
+    <insert id="insert" parameterType="com.redxun.knowledge.entity.dao.Knowledge">
+        DECLARE
+        V_LANG CLOB :=
+        #{content,jdbcType=CLOB};
+        BEGIN
+INSERT INTO KM_KNOWLEDGE(
+    PK_ID,CATEGORY_ID,TITLES,TYPE,SUMMARY,AUTHOR,CONTENT,ATTACHMENT,
+    ATTACHMENT_NAME,ATTACHMENT_TYPE,APPROVAL_STATUS,APPROVAL_BATCH,ORGANIZATION_ID,
+    COMPANY_ID_,CREATE_DEP_ID_,TENANT_ID_,CREATE_BY_,CREATE_TIME_,UPDATE_BY_,UPDATE_TIME_,DOCUMENT_ID
+)VALUES(
+        #{pkId,jdbcType=VARCHAR},
+        #{categoryId},
+        #{titles},
+        #{type},
+        #{summary},
+        #{author},
+        V_LANG,
+        #{attachment},
+        #{attachmentName},
+        #{attachmentType},
+        #{approvalStatus},
+        #{approvalBatch},
+        #{organizationId},
+        #{companyId},
+        #{createDepId},
+        #{tenantId},
+        #{createBy},
+        #{createTime},
+        #{updateBy},
+        #{updateTime},
+        #{documentId}
+        );
+        END;
+    </insert>
 
 
 </mapper>