Roc 2 سال پیش
والد
کامیت
839eaeabcb

+ 24 - 0
logic/yb_community_question/yb_community_question_comment.go

@@ -5,6 +5,7 @@ import (
 	"fmt"
 	"hongze/hongze_yb/global"
 	"hongze/hongze_yb/models/response"
+	"hongze/hongze_yb/models/tables/company_approval_message"
 	"hongze/hongze_yb/models/tables/wx_user"
 	"hongze/hongze_yb/models/tables/yb_comment_anonymous_user"
 	"hongze/hongze_yb/models/tables/yb_community_question_comment"
@@ -377,3 +378,26 @@ func HandleCommentByCommunityQuestionItemList(userId uint64, questionList []*res
 	}
 	return
 }
+
+// AddCompanyApprovalMessage 添加系统消息
+func AddCompanyApprovalMessage(createUserId, receiveUserId, companyId, companyApprovalId int, msgType, sourceType, approvalStatus int8, companyName, remark, content, mobile string) (err error) {
+	msgItem := &company_approval_message.CompanyApprovalMessage{
+		//ID:                0,
+		CreateUserID:      createUserId,
+		ReceiveUserID:     receiveUserId,
+		MessageStatus:     0, //消息状态:0未读,1:已读,2:作废
+		Remark:            remark,
+		Content:           content,
+		CompanyID:         companyId,
+		CompanyName:       companyName,
+		CreateTime:        time.Now(),
+		ModifyTime:        time.Now(),
+		CompanyApprovalID: companyApprovalId,
+		ApprovalStatus:    approvalStatus, //审批状态,1:待审批,2:已审批,3:已驳回
+		OperationStatus:   1,              //消息状态:1:待审批,2:已审批
+		MessageType:       msgType,        //1:申请消息,2:审批结果,3:消息通知
+		SourceType:        sourceType,     //消息来源,1:客户,2:合同,3:用印
+	}
+	err = msgItem.Create()
+	return
+}

+ 64 - 0
models/tables/company_approval_message/company_approval_message.go

@@ -0,0 +1,64 @@
+package company_approval_message
+
+import (
+	"time"
+)
+
+// CompanyApprovalMessage [...]
+type CompanyApprovalMessage struct {
+	ID                int       `gorm:"primaryKey;column:id;type:int(11);not null" json:"-"`
+	CreateUserID      int       `gorm:"column:create_user_id;type:int(11);default:0" json:"createUserId"`                             // 消息创建者id
+	ReceiveUserID     int       `gorm:"index:idx_receive_user_id;column:receive_user_id;type:int(11);default:0" json:"receiveUserId"` // 消息接收者id
+	MessageStatus     int       `gorm:"column:message_status;type:int(11);default:0" json:"messageStatus"`                            // 消息状态:0未读,1:已读,2:作废
+	Remark            string    `gorm:"column:remark;type:varchar(500);default:''" json:"remark"`                                     // 备注信息
+	Content           string    `gorm:"column:content;type:varchar(500);default:''" json:"content"`                                   // 消息内容
+	CompanyID         int       `gorm:"column:company_id;type:int(11)" json:"companyId"`                                              // 客户id
+	CompanyName       string    `gorm:"column:company_name;type:varchar(500)" json:"companyName"`                                     // 客户名称
+	CreateTime        time.Time `gorm:"column:create_time;type:datetime" json:"createTime"`                                           // 创建时间
+	ModifyTime        time.Time `gorm:"column:modify_time;type:datetime" json:"modifyTime"`                                           // 修改时间
+	CompanyApprovalID int       `gorm:"column:company_approval_id;type:int(11);default:0" json:"companyApprovalId"`                   // 审批单id
+	ApprovalStatus    int8      `gorm:"column:approval_status;type:tinyint(4);default:0" json:"approvalStatus"`                       // 审批状态:1:待审批,2:已审批,3:已驳回
+	OperationStatus   int8      `gorm:"column:operation_status;type:tinyint(4);default:0" json:"operationStatus"`                     // 1:待审批,2:已审批
+	MessageType       int8      `gorm:"column:message_type;type:tinyint(4);default:0" json:"messageType"`                             // 1:申请消息,2:审批结果,3:文字消息
+	SourceType        int8      `gorm:"index:idx_source_typ;column:source_type;type:tinyint(4);default:1" json:"sourceType"`          // 消息来源类型,1:客户,2:合同,3:用印,4:指标替换
+}
+
+// TableName get sql table name.获取数据库表名
+func (m *CompanyApprovalMessage) TableName() string {
+	return "company_approval_message"
+}
+
+// CompanyApprovalMessageColumns get sql column name.获取数据库列名
+var CompanyApprovalMessageColumns = struct {
+	ID                string
+	CreateUserID      string
+	ReceiveUserID     string
+	MessageStatus     string
+	Remark            string
+	Content           string
+	CompanyID         string
+	CompanyName       string
+	CreateTime        string
+	ModifyTime        string
+	CompanyApprovalID string
+	ApprovalStatus    string
+	OperationStatus   string
+	MessageType       string
+	SourceType        string
+}{
+	ID:                "id",
+	CreateUserID:      "create_user_id",
+	ReceiveUserID:     "receive_user_id",
+	MessageStatus:     "message_status",
+	Remark:            "remark",
+	Content:           "content",
+	CompanyID:         "company_id",
+	CompanyName:       "company_name",
+	CreateTime:        "create_time",
+	ModifyTime:        "modify_time",
+	CompanyApprovalID: "company_approval_id",
+	ApprovalStatus:    "approval_status",
+	OperationStatus:   "operation_status",
+	MessageType:       "message_type",
+	SourceType:        "source_type",
+}

+ 8 - 0
models/tables/company_approval_message/create.go

@@ -0,0 +1,8 @@
+package company_approval_message
+
+import "hongze/hongze_yb/global"
+
+func (yc *CompanyApprovalMessage) Create() (err error) {
+	err = global.DEFAULT_MYSQL.Create(yc).Error
+	return
+}

+ 1 - 0
models/tables/company_approval_message/query.go

@@ -0,0 +1 @@
+package company_approval_message

+ 40 - 0
models/tables/company_approval_message/update.go

@@ -0,0 +1,40 @@
+package company_approval_message
+
+import "hongze/hongze_yb/global"
+
+// Update 更新对应字段数据
+/*func (yc *YbComment) Update(updateCols []string) (err error) {
+	err = global.DEFAULT_MYSQL.Model(yc).Select(updateCols).Updates(*yc).Error
+	return
+}*/
+
+// Delete 软删除,隐藏评论
+func Delete(userId uint64, commentId uint64) (err error) {
+	tx := global.DEFAULT_MYSQL.Begin()
+	defer func() {
+		if err != nil {
+			tx.Rollback()
+		} else {
+			tx.Commit()
+		}
+	}()
+	sql1 := ` UPDATE yb_comment
+			SET
+            	enabled = 0,
+				modify_time = NOW(),
+				is_hot = 0,
+				is_top = 0
+			WHERE type = 1 and user_id = ? and comment_id = ?`
+	err = tx.Exec(sql1, userId, commentId).Error
+	if err != nil {
+		return
+	}
+	// 删除相关联的回复
+	sql2 := ` UPDATE yb_comment
+			SET
+            	enabled = 0,
+				modify_time = NOW()
+			WHERE reply_comment_id = ? and type = 2`
+	err = tx.Exec(sql2, commentId).Error
+	return
+}