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

使用自带的Udpat方法时,UpdateTime字段报错: ORA-01861: 文字与格式字符串不匹配\n

deng.yinping преди 5 месеца
родител
ревизия
f002bd2718
променени са 1 файла, в които са добавени 24 реда и са изтрити 2 реда
  1. 24 2
      controllers/common/notice.go

+ 24 - 2
controllers/common/notice.go

@@ -10,6 +10,7 @@ import (
 	"mtp2_if/utils"
 	"net/http"
 	"sort"
+	"time"
 
 	"github.com/gin-gonic/gin"
 )
@@ -260,13 +261,34 @@ func NoticeReaded(c *gin.Context) {
 	if has {
 		// 找到记录则更新已读状态
 		msgReceiver.Readstatus = 2
-		// msgReceiver.Updatetime = time.Now()
-		if _, err := engine.Where("AUTOID = ? AND MANAGERID = ? AND RECEIVERTYPE = ?", msgReceiver.Autoid, msgReceiver.Managerid, msgReceiver.Receivertype).Update(msgReceiver); err != nil {
+
+		// 使用下面方式时UpdateTime字段报错: ORA-01861: 文字与格式字符串不匹配\n
+		msgReceiver.Updatetime = time.Now()
+		sql := fmt.Sprintf(`
+		UPDATE Msgreceiver 
+		SET Readstatus = 2,
+			UPDATETIME = SYSDATE
+		WHERE AUTOID = %v AND MANAGERID = %v AND RECEIVERTYPE = 2
+		`, msgReceiver.Autoid, msgReceiver.Managerid)
+
+		if _, err = db.GetEngine().Exec(sql); err != nil {
 			// 执行失败
 			logger.GetLogger().Errorf("NoticeReaded failed: %s", err.Error())
 			appG.Response(http.StatusBadRequest, e.ERROR_OPERATION_FAILED, nil)
 			return
 		}
+
+		/*
+			    // 使用下面方式时UpdateTime字段报错: ORA-01861: 文字与格式字符串不匹配\n
+				// msgReceiver.Updatetime = time.Now()
+				if _, err := engine.Where("AUTOID = ? AND MANAGERID = ? AND RECEIVERTYPE = ?", msgReceiver.Autoid, msgReceiver.Managerid, msgReceiver.Receivertype).Update(msgReceiver); err != nil {
+					// 执行失败
+					logger.GetLogger().Errorf("NoticeReaded failed: %s", err.Error())
+					appG.Response(http.StatusBadRequest, e.ERROR_OPERATION_FAILED, nil)
+					return
+				}
+		*/
+
 	} else {
 		// 找不到记录则新建一条
 		m := new(models.Msgreceiver)