Ver código fonte

修复由于applyid改为存loginid而找不到名称的问题

zou.yingbin 4 anos atrás
pai
commit
b8fc2aaf8c
1 arquivos alterados com 8 adições e 10 exclusões
  1. 8 10
      models/ermcpOPLog.go

+ 8 - 10
models/ermcpOPLog.go

@@ -9,8 +9,6 @@ package models
 import (
 	"fmt"
 	"mtp2_if/db"
-	"mtp2_if/mtpcache"
-	"strconv"
 )
 
 //变更变记录
@@ -25,7 +23,7 @@ type ErmcpOPLogModel struct {
 	APPLYID            string  `json:"applyid"  xorm:"'APPLYID'"`               // 操作人ID
 	CONTRACTTYPE       int32   `json:"contracttype"  xorm:"'CONTRACTTYPE'"`     // 现货合同类型 - 1:采购 -1:销售
 	OPERATELOGTYPEDESC string  `json:"operatelogtypedesc"`                      // 操作流水类型名称
-	APPLYNAME          string  `json:"applyname"`                               // 操作人名称
+	APPLYNAME          string  `json:"applyname" xorm:"'APPLYNAME'"`            // 操作人名称
 }
 
 func (r *ErmcpOPLogModel) decodeOperateLogType() {
@@ -47,11 +45,14 @@ func (r *ErmcpOPLogModel) buildSql() string {
 		"       LOGVALUE," +
 		"       BEFOREVALUE," +
 		"       AFTERVALUE," +
-		"       to_char(UPDATETIME,'yyyy-mm-dd hh24:mi:ss') UPDATETIME," +
+		"       to_char(UPDATETIME, 'yyyy-mm-dd hh24:mi:ss') UPDATETIME," +
 		"       APPLYID," +
-		"       CONTRACTTYPE" +
+		"       CONTRACTTYPE," +
+		"       l.logincode APPLYNAME" +
 		"  from ermcp_contractoperatelog t" +
-		"  where t.relatedid=%v"
+		"  left join loginaccount l" +
+		"    on t.applyid = l.loginid" +
+		" where t.relatedid = %v"
 	return fmt.Sprintf(str, r.RELATEDID)
 }
 
@@ -62,12 +63,9 @@ func (r *ErmcpOPLogModel) GetData() ([]ErmcpOPLogModel, error) {
 	if err := e.SQL(r.buildSql()).Find(&sData); err != nil {
 		return nil, err
 	}
-	// 类型解析成中文,操作人id转换为名称
+	// 类型解析成中文
 	for i := range sData {
 		sData[i].decodeOperateLogType()
-		if id, err := strconv.ParseInt(sData[i].APPLYID, 10, 64); err == nil {
-			sData[i].APPLYNAME = mtpcache.GetUserNameByUserId(id)
-		}
 	}
 	return sData, nil
 }