Browse Source

fix:消息列表

Roc 11 months ago
parent
commit
f69672112d

+ 28 - 2
controllers/data_manage/data_manage_permission/message.go

@@ -170,7 +170,11 @@ func (c *DataMangePermissionController) MessageRead() {
 // @Title 资产消息详情
 // @Description 资产消息详情
 // @Param   MessageId			query	int		true	"消息ID"
-// @Success 200 {object} report_approve.ReportApproveMessageListResp
+// @Param   PageSize   query   int  true       "每页数据条数"
+// @Param   CurrentIndex   query   int  true       "当前页页码,从1开始"
+// @Param   Source   query   int  false       "来源 :1:手工数据指标 2:钢联化工数据库 3:ETA指标库 4:ETA预测指标 5:图库 6:ETA表格"
+// @Param   SubSource   query   int  false       "子来源 :目前作用于ETA表格,2024-3-26 14:12:09"
+// @Success 200 {object} data_manage_permission.MessageDetailListResp
 // @router /message/detail [get]
 func (c *DataMangePermissionController) MessageDetail() {
 	br := new(models.BaseResponse).Init()
@@ -195,6 +199,24 @@ func (c *DataMangePermissionController) MessageDetail() {
 		br.IsSendEmail = false
 		return
 	}
+	source, _ := c.GetInt("Source")
+	// 子来源(目前作用于ETA表格,2024-3-26 14:12:09)
+	subSource, _ := c.GetInt("SubSource")
+
+	pageSize, _ := c.GetInt("PageSize")
+	currentIndex, _ := c.GetInt("CurrentIndex")
+
+	var startSize int
+	if pageSize <= 0 {
+		pageSize = utils.PageSize20
+	}
+	if currentIndex <= 0 {
+		currentIndex = 1
+	}
+	startSize = paging.StartIndex(currentIndex, pageSize)
+	resp := data_manage_permission.MessageDetailListResp{}
+	var total int
+	page := paging.GetPaging(currentIndex, pageSize, total)
 
 	messageOb := new(data_manage_permission.DataPermissionMessage)
 	messageItem, e := messageOb.GetItemById(messageId)
@@ -208,7 +230,7 @@ func (c *DataMangePermissionController) MessageDetail() {
 		return
 	}
 
-	resp, err := data_manage_permissionServ.GetMessageDetail(messageItem)
+	total, list, err := data_manage_permissionServ.GetMessageDetail(messageItem, source, subSource, startSize, pageSize)
 	if err != nil {
 		//br.Success = true
 		br.Msg = "获取失败"
@@ -216,6 +238,10 @@ func (c *DataMangePermissionController) MessageDetail() {
 		return
 	}
 
+	page = paging.GetPaging(currentIndex, pageSize, total)
+	resp.Paging = page
+	resp.List = list
+
 	br.Ret = 200
 	br.Success = true
 	br.Msg = "获取成功"

+ 8 - 3
models/data_manage/data_manage_permission/move_record.go

@@ -61,13 +61,18 @@ func AddDataPermissionMoveRecord(dataPermissionMoveRecordList []*DataPermissionM
 // @param opUniqueCode
 // @return items
 // @return err
-func GetListByOpUniqueCode(opUniqueCode string) (items []*DataPermissionMoveRecord, err error) {
+func GetListByOpUniqueCode(opUniqueCode string, source, subSource, startSize, pageSize int) (total int, items []*DataPermissionMoveRecord, err error) {
 	o := orm.NewOrmUsingDB("data")
-	sql := `SELECT * FROM data_permission_move_record WHERE op_unique_code = ? ORDER BY data_permission_move_record_id desc`
-	_, err = o.Raw(sql, opUniqueCode).QueryRows(&items)
+
+	// 获取总数
+	sql := `SELECT count(1) AS total FROM data_permission_move_record WHERE op_unique_code = ? AND source = ? AND sub_source = ? `
+	err = o.Raw(sql, opUniqueCode, source, subSource).QueryRow(&total)
 	if err != nil {
 		return
 	}
 
+	sql = `SELECT * FROM data_permission_move_record WHERE op_unique_code = ? AND source = ? AND sub_source = ? ORDER BY data_permission_move_record_id desc LIMIT ?,? `
+	_, err = o.Raw(sql, opUniqueCode, source, subSource, startSize, pageSize).QueryRows(&items)
+
 	return
 }

+ 6 - 0
models/data_manage/data_manage_permission/req_and_resp.go

@@ -79,3 +79,9 @@ type DataPermissionMessageListResp struct {
 type DataPermissionMessageReadReq struct {
 	MessageId int `description:"资产数据消息ID"`
 }
+
+// MessageDetailListResp 消息详情
+type MessageDetailListResp struct {
+	Paging *paging.PagingItem
+	List   interface{}
+}

+ 17 - 18
services/data/data_manage_permission/message.go

@@ -20,17 +20,27 @@ type MessageDetailItem struct {
 	CreateTime                 string `json:"create_time"`
 }
 
-// GetMoveEdbChartList 获取待转移的指标/图表列表
-// @param source 来源 :1:手工数据指标 2:钢联化工数据库 3:ETA指标库 4:ETA预测指标 5:图库 6:ETA表格
-func GetMessageDetail(messageInfo *data_manage_permission.DataPermissionMessage) (resp interface{}, err error) {
+// GetMessageDetail
+// @Description: 获取消息详情
+// @author: Roc
+// @datetime 2024-04-07 10:07:06
+// @param messageInfo *data_manage_permission.DataPermissionMessage
+// @param source int
+// @param subSource int
+// @param startSize int
+// @param pageSize int
+// @return resp interface{}
+// @return err error
+func GetMessageDetail(messageInfo *data_manage_permission.DataPermissionMessage, source, subSource, startSize, pageSize int) (total int, resp interface{}, err error) {
 	switch messageInfo.OpType {
 	// 操作类型,1:单个资产转移,2:资产模块转移,3:资产授权,4:资产分类授权
 	case 1, 2:
-		list, tmpErr := data_manage_permission.GetListByOpUniqueCode(messageInfo.OpUniqueCode)
+		tmpTotal, list, tmpErr := data_manage_permission.GetListByOpUniqueCode(messageInfo.OpUniqueCode, source, subSource, startSize, pageSize)
 		if tmpErr != nil {
 			err = tmpErr
 			return
 		}
+		total = tmpTotal
 		resp, err = formatMessageDetailItem(list)
 
 	}
@@ -38,20 +48,10 @@ func GetMessageDetail(messageInfo *data_manage_permission.DataPermissionMessage)
 	return
 }
 
-func formatMessageDetailItem(items []*data_manage_permission.DataPermissionMoveRecord) (resp map[int32]map[int32][]*MessageDetailItem, err error) {
-	resp = make(map[int32]map[int32][]*MessageDetailItem)
+func formatMessageDetailItem(items []*data_manage_permission.DataPermissionMoveRecord) (resp []*MessageDetailItem, err error) {
+	resp = make([]*MessageDetailItem, 0)
 	for _, v := range items {
-		// 大的渠道
-		tmpSourceResp, ok := resp[v.Source]
-		if !ok {
-			tmpSourceResp = make(map[int32][]*MessageDetailItem)
-		}
-		// 渠道下的不同类型
-		tmpSubSourceResp, ok2 := tmpSourceResp[v.SubSource]
-		if !ok2 {
-			tmpSubSourceResp = make([]*MessageDetailItem, 0)
-		}
-		tmpSourceResp[v.SubSource] = append(tmpSubSourceResp, &MessageDetailItem{
+		resp = append(resp, &MessageDetailItem{
 			DataPermissionMoveRecordId: v.DataPermissionMoveRecordId,
 			Source:                     v.Source,
 			SubSource:                  v.SubSource,
@@ -65,7 +65,6 @@ func formatMessageDetailItem(items []*data_manage_permission.DataPermissionMoveR
 			NewUserName:                v.NewUserName,
 			CreateTime:                 utils.TimeTransferString(utils.FormatDateTime, v.CreateTime),
 		})
-		resp[v.Source] = tmpSourceResp
 	}
 
 	return