|
@@ -7,6 +7,7 @@ import (
|
|
|
"eta_gn/eta_api/models/system"
|
|
|
"eta_gn/eta_api/services"
|
|
|
"eta_gn/eta_api/services/alarm_msg"
|
|
|
+ "eta_gn/eta_api/services/knowledge_approve"
|
|
|
"eta_gn/eta_api/utils"
|
|
|
"fmt"
|
|
|
"html"
|
|
@@ -120,7 +121,7 @@ func AddResource(req *knowledge.AddReq, sysUser *system.Admin) (item *knowledge.
|
|
|
item.SourceFrom = req.SourceFrom
|
|
|
item.ResourceType = req.ResourceType
|
|
|
item.Title = req.Title
|
|
|
- item.State = 1
|
|
|
+ item.State = knowledge.KnowledgeResourceStateUnpublished
|
|
|
item.Content = html.EscapeString(req.Content)
|
|
|
timestamp := strconv.FormatInt(time.Now().UnixNano(), 10)
|
|
|
item.ResourceCode = utils.MD5(utils.CHART_PREFIX + "_" + timestamp)
|
|
@@ -1030,7 +1031,7 @@ func addExcelResource(req *knowledge.AddReq, sysUser *system.Admin) (err error,
|
|
|
item.SourceFrom = req.SourceFrom
|
|
|
item.ResourceType = req.ResourceType
|
|
|
item.Title = req.Title
|
|
|
- item.State = 1
|
|
|
+ item.State = knowledge.KnowledgeResourceStateUnpublished
|
|
|
item.Content = html.EscapeString(req.Content)
|
|
|
timestamp := strconv.FormatInt(time.Now().UnixNano(), 10)
|
|
|
item.ResourceCode = utils.MD5(utils.CHART_PREFIX + "_" + timestamp)
|
|
@@ -1061,6 +1062,52 @@ func addExcelResource(req *knowledge.AddReq, sysUser *system.Admin) (err error,
|
|
|
return
|
|
|
}
|
|
|
|
|
|
+func SetKnowledgeResourcePublic(knowledgeId int) (errMsg string, err error) {
|
|
|
+ obj := new(knowledge.KnowledgeResource)
|
|
|
+ obj, err = obj.GetById(knowledgeId)
|
|
|
+ if err != nil {
|
|
|
+ if utils.IsErrNoRow(err) {
|
|
|
+ errMsg = "资源不存在"
|
|
|
+ return
|
|
|
+ }
|
|
|
+ errMsg = "获取资源失败"
|
|
|
+ err = fmt.Errorf("获取资源失败,Err:%v", err.Error())
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if !(obj.State == knowledge.KnowledgeResourceStateUnpublished || obj.State == knowledge.KnowledgeResourceStateRejected) {
|
|
|
+ errMsg = "不能重复设置公共"
|
|
|
+ err = fmt.Errorf("不能重复设置公共")
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if obj.ResourceType != knowledge.KnowledgeResourceTypeOpinion {
|
|
|
+ errMsg = "非法操作"
|
|
|
+ err = fmt.Errorf("非法操作")
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ ok, err := knowledge_approve.CheckKnowledgeOpenApprove(obj.ClassifyId)
|
|
|
+ if err != nil {
|
|
|
+ errMsg = "分类校验失败"
|
|
|
+ err = fmt.Errorf("分类校验失败,Err:%v", err)
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if !ok {
|
|
|
+ errMsg = "分类未开启审批流"
|
|
|
+ err = fmt.Errorf("分类未开启审批流")
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ obj.State = knowledge.KnowledgeResourceStatePending
|
|
|
+ obj.ModifyTime = time.Now()
|
|
|
+ err = obj.Update([]string{"state", "modify_time"})
|
|
|
+ if err != nil {
|
|
|
+ errMsg = "设置失败"
|
|
|
+ err = fmt.Errorf("设置失败,Err:" + err.Error())
|
|
|
+ return
|
|
|
+ }
|
|
|
+ return
|
|
|
+}
|
|
|
+
|
|
|
func GetKnowledgeResourceTmpList(dashboardDetailId, adminId int) (resp *knowledge.BiDashboardResourceAddResp, msg string, err error) {
|
|
|
if dashboardDetailId <= 0 {
|
|
|
data, er := utils.Rc.RedisBytes(utils.CACHE_KEY_BI_DASHBOARD_PREPARE_RESOURCE + strconv.Itoa(adminId))
|