Browse Source

fix(反馈报修): 添加处理人姓名、处理时间字段,将处理类型改为字符串

liuyaqi 3 years ago
parent
commit
006083b85e

+ 48 - 42
dao/feedback/internal/feedback.go

@@ -26,20 +26,22 @@ type FeedbackDao struct {
 
 // FeedbackColumns defines and stores column names for table feedback.
 type feedbackColumns struct {
-	Id                 string // Id
-	Type               string // 反馈类型
-	Status             string // 反馈状态 1 未处理 2 已处理
-	Content            string // 反馈内容
-	CurrentProcessorId string // 当前处理人 Id
-	CreatedById        string // 创建者 Id
-	CreatedByName      string // 创建者用户名
-	CreatedByMobile    string // 创建者联系方式
-	CreatedByEmail     string // 创建者邮箱
-	CreatedByDeptId    string // 创建者部门 Id
-	CreatedByDeptName  string // 创建者部门名称
-	CreatedAt          string // 创建时间
-	UpdatedAt          string // 更新时间
-	DeletedAt          string // 删除时间
+	Id                   string // Id
+	Type                 string // 反馈类型
+	Status               string // 反馈状态 1 未处理 2 已处理
+	Content              string // 反馈内容
+	CurrentProcessorId   string // 当前处理人 Id
+	CurrentProcessorName string // 当前处理人姓名
+	ProcessedAt          string // 处理时间
+	CreatedById          string // 创建者 Id
+	CreatedByName        string // 创建者用户名
+	CreatedByMobile      string // 创建者联系方式
+	CreatedByEmail       string // 创建者邮箱
+	CreatedByDeptId      string // 创建者部门 Id
+	CreatedByDeptName    string // 创建者部门名称
+	CreatedAt            string // 创建时间
+	UpdatedAt            string // 更新时间
+	DeletedAt            string // 删除时间
 }
 
 var (
@@ -49,20 +51,22 @@ var (
 		DB:    g.DB("default"),
 		Table: "feedback",
 		Columns: feedbackColumns{
-			Id:                 "Id",
-			Type:               "Type",
-			Status:             "Status",
-			Content:            "Content",
-			CurrentProcessorId: "CurrentProcessorId",
-			CreatedById:        "CreatedById",
-			CreatedByName:      "CreatedByName",
-			CreatedByMobile:    "CreatedByMobile",
-			CreatedByEmail:     "CreatedByEmail",
-			CreatedByDeptId:    "CreatedByDeptId",
-			CreatedByDeptName:  "CreatedByDeptName",
-			CreatedAt:          "CreatedAt",
-			UpdatedAt:          "UpdatedAt",
-			DeletedAt:          "DeletedAt",
+			Id:                   "Id",
+			Type:                 "Type",
+			Status:               "Status",
+			Content:              "Content",
+			CurrentProcessorId:   "CurrentProcessorId",
+			CurrentProcessorName: "CurrentProcessorName",
+			ProcessedAt:          "ProcessedAt",
+			CreatedById:          "CreatedById",
+			CreatedByName:        "CreatedByName",
+			CreatedByMobile:      "CreatedByMobile",
+			CreatedByEmail:       "CreatedByEmail",
+			CreatedByDeptId:      "CreatedByDeptId",
+			CreatedByDeptName:    "CreatedByDeptName",
+			CreatedAt:            "CreatedAt",
+			UpdatedAt:            "UpdatedAt",
+			DeletedAt:            "DeletedAt",
 		},
 	}
 )
@@ -74,20 +78,22 @@ func NewFeedbackDao(tenant string) FeedbackDao {
 		DB:    g.DB(tenant),
 		Table: "feedback",
 		Columns: feedbackColumns{
-			Id:                 "Id",
-			Type:               "Type",
-			Status:             "Status",
-			Content:            "Content",
-			CurrentProcessorId: "CurrentProcessorId",
-			CreatedById:        "CreatedById",
-			CreatedByName:      "CreatedByName",
-			CreatedByMobile:    "CreatedByMobile",
-			CreatedByEmail:     "CreatedByEmail",
-			CreatedByDeptId:    "CreatedByDeptId",
-			CreatedByDeptName:  "CreatedByDeptName",
-			CreatedAt:          "CreatedAt",
-			UpdatedAt:          "UpdatedAt",
-			DeletedAt:          "DeletedAt",
+			Id:                   "Id",
+			Type:                 "Type",
+			Status:               "Status",
+			Content:              "Content",
+			CurrentProcessorId:   "CurrentProcessorId",
+			CurrentProcessorName: "CurrentProcessorName",
+			ProcessedAt:          "ProcessedAt",
+			CreatedById:          "CreatedById",
+			CreatedByName:        "CreatedByName",
+			CreatedByMobile:      "CreatedByMobile",
+			CreatedByEmail:       "CreatedByEmail",
+			CreatedByDeptId:      "CreatedByDeptId",
+			CreatedByDeptName:    "CreatedByDeptName",
+			CreatedAt:            "CreatedAt",
+			UpdatedAt:            "UpdatedAt",
+			DeletedAt:            "DeletedAt",
 		},
 	}
 	return dao

+ 48 - 42
dao/repair/internal/repair.go

@@ -26,20 +26,22 @@ type RepairDao struct {
 
 // RepairColumns defines and stores column names for table repair.
 type repairColumns struct {
-	Id                 string // Id
-	Type               string // 报修类型
-	Status             string // 报修状态 1 未处理 2 已处理
-	Content            string // 报修内容
-	CurrentProcessorId string // 当前处理人 Id
-	CreatedById        string // 创建者 Id
-	CreatedByName      string // 创建者用户名
-	CreatedByMobile    string // 创建者联系方式
-	CreatedByEmail     string // 创建者邮箱
-	CreatedByDeptId    string // 创建者部门 Id
-	CreatedByDeptName  string // 创建者部门名称
-	CreatedAt          string // 创建时间
-	UpdatedAt          string // 更新时间
-	DeletedAt          string // 删除时间
+	Id                   string // Id
+	Type                 string // 报修类型
+	Status               string // 报修状态 1 未处理 2 已处理
+	Content              string // 报修内容
+	CurrentProcessorId   string // 当前处理人 Id
+	CurrentProcessorName string // 当前处理人姓名
+	ProcessedAt          string // 处理时间
+	CreatedById          string // 创建者 Id
+	CreatedByName        string // 创建者用户名
+	CreatedByMobile      string // 创建者联系方式
+	CreatedByEmail       string // 创建者邮箱
+	CreatedByDeptId      string // 创建者部门 Id
+	CreatedByDeptName    string // 创建者部门名称
+	CreatedAt            string // 创建时间
+	UpdatedAt            string // 更新时间
+	DeletedAt            string // 删除时间
 }
 
 var (
@@ -49,20 +51,22 @@ var (
 		DB:    g.DB("default"),
 		Table: "repair",
 		Columns: repairColumns{
-			Id:                 "Id",
-			Type:               "Type",
-			Status:             "Status",
-			Content:            "Content",
-			CurrentProcessorId: "CurrentProcessorId",
-			CreatedById:        "CreatedById",
-			CreatedByName:      "CreatedByName",
-			CreatedByMobile:    "CreatedByMobile",
-			CreatedByEmail:     "CreatedByEmail",
-			CreatedByDeptId:    "CreatedByDeptId",
-			CreatedByDeptName:  "CreatedByDeptName",
-			CreatedAt:          "CreatedAt",
-			UpdatedAt:          "UpdatedAt",
-			DeletedAt:          "DeletedAt",
+			Id:                   "Id",
+			Type:                 "Type",
+			Status:               "Status",
+			Content:              "Content",
+			CurrentProcessorId:   "CurrentProcessorId",
+			CurrentProcessorName: "CurrentProcessorName",
+			ProcessedAt:          "ProcessedAt",
+			CreatedById:          "CreatedById",
+			CreatedByName:        "CreatedByName",
+			CreatedByMobile:      "CreatedByMobile",
+			CreatedByEmail:       "CreatedByEmail",
+			CreatedByDeptId:      "CreatedByDeptId",
+			CreatedByDeptName:    "CreatedByDeptName",
+			CreatedAt:            "CreatedAt",
+			UpdatedAt:            "UpdatedAt",
+			DeletedAt:            "DeletedAt",
 		},
 	}
 )
@@ -74,20 +78,22 @@ func NewRepairDao(tenant string) RepairDao {
 		DB:    g.DB(tenant),
 		Table: "repair",
 		Columns: repairColumns{
-			Id:                 "Id",
-			Type:               "Type",
-			Status:             "Status",
-			Content:            "Content",
-			CurrentProcessorId: "CurrentProcessorId",
-			CreatedById:        "CreatedById",
-			CreatedByName:      "CreatedByName",
-			CreatedByMobile:    "CreatedByMobile",
-			CreatedByEmail:     "CreatedByEmail",
-			CreatedByDeptId:    "CreatedByDeptId",
-			CreatedByDeptName:  "CreatedByDeptName",
-			CreatedAt:          "CreatedAt",
-			UpdatedAt:          "UpdatedAt",
-			DeletedAt:          "DeletedAt",
+			Id:                   "Id",
+			Type:                 "Type",
+			Status:               "Status",
+			Content:              "Content",
+			CurrentProcessorId:   "CurrentProcessorId",
+			CurrentProcessorName: "CurrentProcessorName",
+			ProcessedAt:          "ProcessedAt",
+			CreatedById:          "CreatedById",
+			CreatedByName:        "CreatedByName",
+			CreatedByMobile:      "CreatedByMobile",
+			CreatedByEmail:       "CreatedByEmail",
+			CreatedByDeptId:      "CreatedByDeptId",
+			CreatedByDeptName:    "CreatedByDeptName",
+			CreatedAt:            "CreatedAt",
+			UpdatedAt:            "UpdatedAt",
+			DeletedAt:            "DeletedAt",
 		},
 	}
 	return dao

+ 1 - 1
model/feedback/feedback.go

@@ -49,7 +49,7 @@ type FeedbackTransReq struct {
 
 type FeedbackProcessReq struct {
 	Id   int    `json:"id" v:"required#请输入反馈 Id"`  // 反馈Id
-	Type int    `json:"type" v:"required#请输入处理方式"` // 处理方式
+	Type string `json:"type" v:"required#请输入处理方式"` // 处理方式
 	Note string `json:"note" v:"required#请输入处理描述"` // 处理描述
 }
 

+ 16 - 14
model/feedback/internal/feedback.go

@@ -10,18 +10,20 @@ import (
 
 // Feedback is the golang structure for table feedback.
 type Feedback struct {
-	Id                 int         `orm:"Id,primary"         json:"id"`                 // Id
-	Type               string      `orm:"Type"               json:"type"`               // 反馈类型
-	Status             int         `orm:"Status"             json:"status"`             // 反馈状态 1 未处理 2 已处理
-	Content            string      `orm:"Content"            json:"content"`            // 反馈内容
-	CurrentProcessorId int         `orm:"CurrentProcessorId" json:"currentProcessorId"` // 当前处理人 Id
-	CreatedById        int         `orm:"CreatedById"        json:"createdById"`        // 创建者 Id
-	CreatedByName      string      `orm:"CreatedByName"      json:"createdByName"`      // 创建者用户名
-	CreatedByMobile    string      `orm:"CreatedByMobile"    json:"createdByMobile"`    // 创建者联系方式
-	CreatedByEmail     string      `orm:"CreatedByEmail"     json:"createdByEmail"`     // 创建者邮箱
-	CreatedByDeptId    int         `orm:"CreatedByDeptId"    json:"createdByDeptId"`    // 创建者部门 Id
-	CreatedByDeptName  string      `orm:"CreatedByDeptName"  json:"createdByDeptName"`  // 创建者部门名称
-	CreatedAt          *gtime.Time `orm:"CreatedAt"          json:"createdAt"`          // 创建时间
-	UpdatedAt          *gtime.Time `orm:"UpdatedAt"          json:"updatedAt"`          // 更新时间
-	DeletedAt          *gtime.Time `orm:"DeletedAt"          json:"deletedAt"`          // 删除时间
+	Id                   int         `orm:"Id,primary"         json:"id"`                     // Id
+	Type                 string      `orm:"Type"               json:"type"`                   // 反馈类型
+	Status               int         `orm:"Status"             json:"status"`                 // 反馈状态 1 未处理 2 已处理
+	Content              string      `orm:"Content"            json:"content"`                // 反馈内容
+	CurrentProcessorId   int         `orm:"CurrentProcessorId" json:"currentProcessorId"`     // 当前处理人 Id
+	CurrentProcessorName string      `orm:"CurrentProcessorName" json:"currentProcessorName"` // 当前处理人姓名
+	ProcessedAt          *gtime.Time `orm:"ProcessedAt"          json:"processedAt"`          // 处理时间
+	CreatedById          int         `orm:"CreatedById"        json:"createdById"`            // 创建者 Id
+	CreatedByName        string      `orm:"CreatedByName"      json:"createdByName"`          // 创建者用户名
+	CreatedByMobile      string      `orm:"CreatedByMobile"    json:"createdByMobile"`        // 创建者联系方式
+	CreatedByEmail       string      `orm:"CreatedByEmail"     json:"createdByEmail"`         // 创建者邮箱
+	CreatedByDeptId      int         `orm:"CreatedByDeptId"    json:"createdByDeptId"`        // 创建者部门 Id
+	CreatedByDeptName    string      `orm:"CreatedByDeptName"  json:"createdByDeptName"`      // 创建者部门名称
+	CreatedAt            *gtime.Time `orm:"CreatedAt"          json:"createdAt"`              // 创建时间
+	UpdatedAt            *gtime.Time `orm:"UpdatedAt"          json:"updatedAt"`              // 更新时间
+	DeletedAt            *gtime.Time `orm:"DeletedAt"          json:"deletedAt"`              // 删除时间
 }

+ 1 - 1
model/feedback/internal/feedback_result.go

@@ -14,7 +14,7 @@ type FeedbackResult struct {
 	FeedbackId    int         `orm:"FeedbackId"     json:"feebackId"`    // 反馈Id
 	ProcessById   int         `orm:"ProcessById"   json:"processById"`   // 处理人 Id
 	ProcessByName string      `orm:"ProcessByName" json:"processByName"` // 处理人名称
-	ProcessType   int         `orm:"ProcessType"   json:"processType"`   // 处理方式
+	ProcessType   string      `orm:"ProcessType"   json:"processType"`   // 处理方式
 	ProcessNote   string      `orm:"ProcessNote"   json:"processNote"`   // 处理描述
 	CreatedAt     *gtime.Time `orm:"CreatedAt"     json:"createdAt"`     // 创建时间
 	UpdatedAt     *gtime.Time `orm:"UpdatedAt"     json:"updatedAt"`     // 更新时间

+ 16 - 14
model/repair/internal/repair.go

@@ -10,18 +10,20 @@ import (
 
 // Repair is the golang structure for table repair.
 type Repair struct {
-	Id                 int         `orm:"Id,primary"         json:"id"`                 // Id
-	Type               string      `orm:"Type"               json:"type"`               // 报修类型
-	Status             int         `orm:"Status"             json:"status"`             // 报修状态 1 未处理 2 已处理
-	Content            string      `orm:"Content"            json:"content"`            // 报修内容
-	CurrentProcessorId int         `orm:"CurrentProcessorId" json:"currentProcessorId"` // 当前处理人 Id
-	CreatedById        int         `orm:"CreatedById"        json:"createdById"`        // 创建者 Id
-	CreatedByName      string      `orm:"CreatedByName"      json:"createdByName"`      // 创建者用户名
-	CreatedByMobile    string      `orm:"CreatedByMobile"    json:"createdByMobile"`    // 创建者联系方式
-	CreatedByEmail     string      `orm:"CreatedByEmail"     json:"createdByEmail"`     // 创建者邮箱
-	CreatedByDeptId    int         `orm:"CreatedByDeptId"    json:"createdByDeptId"`    // 创建者部门 Id
-	CreatedByDeptName  string      `orm:"CreatedByDeptName"  json:"createdByDeptName"`  // 创建者部门名称
-	CreatedAt          *gtime.Time `orm:"CreatedAt"          json:"createdAt"`          // 创建时间
-	UpdatedAt          *gtime.Time `orm:"UpdatedAt"          json:"updatedAt"`          // 更新时间
-	DeletedAt          *gtime.Time `orm:"DeletedAt"          json:"deletedAt"`          // 删除时间
+	Id                   int         `orm:"Id,primary"         json:"id"`                     // Id
+	Type                 string      `orm:"Type"               json:"type"`                   // 报修类型
+	Status               int         `orm:"Status"             json:"status"`                 // 报修状态 1 未处理 2 已处理
+	Content              string      `orm:"Content"            json:"content"`                // 报修内容
+	CurrentProcessorId   int         `orm:"CurrentProcessorId" json:"currentProcessorId"`     // 当前处理人 Id
+	CurrentProcessorName string      `orm:"CurrentProcessorName" json:"currentProcessorName"` // 当前处理人姓名
+	ProcessedAt          *gtime.Time `orm:"ProcessedAt"          json:"processedAt"`          // 处理时间
+	CreatedById          int         `orm:"CreatedById"        json:"createdById"`            // 创建者 Id
+	CreatedByName        string      `orm:"CreatedByName"      json:"createdByName"`          // 创建者用户名
+	CreatedByMobile      string      `orm:"CreatedByMobile"    json:"createdByMobile"`        // 创建者联系方式
+	CreatedByEmail       string      `orm:"CreatedByEmail"     json:"createdByEmail"`         // 创建者邮箱
+	CreatedByDeptId      int         `orm:"CreatedByDeptId"    json:"createdByDeptId"`        // 创建者部门 Id
+	CreatedByDeptName    string      `orm:"CreatedByDeptName"  json:"createdByDeptName"`      // 创建者部门名称
+	CreatedAt            *gtime.Time `orm:"CreatedAt"          json:"createdAt"`              // 创建时间
+	UpdatedAt            *gtime.Time `orm:"UpdatedAt"          json:"updatedAt"`              // 更新时间
+	DeletedAt            *gtime.Time `orm:"DeletedAt"          json:"deletedAt"`              // 删除时间
 }

+ 1 - 1
model/repair/internal/repair_result.go

@@ -14,7 +14,7 @@ type RepairResult struct {
 	RepairId      int         `orm:"RepairId"      json:"repairId"`      // 报修Id
 	ProcessById   int         `orm:"ProcessById"   json:"processById"`   // 处理人 Id
 	ProcessByName string      `orm:"ProcessByName" json:"processByName"` // 处理人名称
-	ProcessType   int         `orm:"ProcessType"   json:"processType"`   // 处理方式
+	ProcessType   string      `orm:"ProcessType"   json:"processType"`   // 处理方式
 	ProcessNote   string      `orm:"ProcessNote"   json:"processNote"`   // 处理描述
 	CreatedAt     *gtime.Time `orm:"CreatedAt"     json:"createdAt"`     // 创建时间
 	UpdatedAt     *gtime.Time `orm:"UpdatedAt"     json:"updatedAt"`     // 更新时间

+ 1 - 1
model/repair/repair.go

@@ -49,7 +49,7 @@ type RepairTransReq struct {
 
 type RepairProcessReq struct {
 	Id   int    `json:"id" v:"required#请输入报修 Id"`  // 报修Id
-	Type int    `json:"type" v:"required#请输入处理方式"` // 处理方式
+	Type string `json:"type" v:"required#请输入处理方式"` // 处理方式
 	Note string `json:"note" v:"required#请输入处理描述"` // 处理描述
 }
 

+ 26 - 8
service/feedback/feedback.go

@@ -164,18 +164,24 @@ func (s FeedbackService) Add(ctx context.Context, req *feedback.FeedbackAddReq)
 	return int(id), err
 }
 
+type user struct {
+	Id       int
+	Realname string
+}
+
 func (s FeedbackService) Trans(ctx context.Context, req *feedback.FeedbackTransReq) error {
 	validErr := gvalid.CheckStruct(ctx, req, nil)
 	if validErr != nil {
 		return myerrors.NewMsgError(nil, validErr.Current().Error())
 	}
-	r, err := s.Dao.DB.Table("base_user").Where("Id", req.UserId).One()
+	trnasTo := user{}
+	err := s.Dao.DB.Table("base_user").Where("Id", req.UserId).Struct(&trnasTo)
+	if err == sql.ErrNoRows {
+		return myerrors.NewMsgError(nil, fmt.Sprintf("转交人不存在: %d", req.UserId))
+	}
 	if err != nil {
 		return err
 	}
-	if r.IsEmpty() {
-		return myerrors.NewMsgError(nil, fmt.Sprintf("转交人不存在: %d", req.UserId))
-	}
 
 	f, err := s.Dao.Where("Id = ?", req.Id).One()
 	if err != nil {
@@ -185,7 +191,11 @@ func (s FeedbackService) Trans(ctx context.Context, req *feedback.FeedbackTransR
 		return myerrors.NewMsgError(nil, fmt.Sprintf("反馈不存在: %d", req.Id))
 	}
 
-	_, err = s.Dao.Where("Id = ?", req.Id).Data("CurrentProcessorId", req.UserId).Update()
+	_, err = s.Dao.Where("Id = ?", req.Id).Data(
+		map[string]interface{}{
+			"CurrentProcessorId":   req.UserId,
+			"CurrentProcessorName": trnasTo.Realname,
+		}).Update()
 	if err != nil {
 		return err
 	}
@@ -215,7 +225,13 @@ func (s FeedbackService) Process(ctx context.Context, req *feedback.FeedbackProc
 		return myerrors.NewMsgError(nil, fmt.Sprintf("反馈不存在: %d", req.Id))
 	}
 
-	_, err = s.Dao.Where("Id = ?", req.Id).Data("Status", 2).Update()
+	_, err = s.Dao.Where("Id = ?", req.Id).Data(
+		map[string]interface{}{
+			"CurrentProcessorId":   s.userInfo.Id,
+			"CurrentProcessorName": s.userInfo.RealName,
+			"ProcessedAt":          gtime.Now(),
+			"Status":               2,
+		}).Update()
 	if err != nil {
 		return err
 	}
@@ -259,8 +275,10 @@ func (s FeedbackService) Reactivate(ctx context.Context, req *feedback.FeedbackR
 
 	_, err = s.Dao.Where("Id = ?", req.Id).Data(
 		map[string]interface{}{
-			"Status":             1,
-			"CurrentProcessorId": 0,
+			"Status":               1,
+			"CurrentProcessorId":   0,
+			"CurrentProcessorName": nil,
+			"ProcessedAt":          nil,
 		}).Update()
 	if err != nil {
 		return err

+ 26 - 8
service/repair/repair.go

@@ -164,18 +164,24 @@ func (s RepairService) Add(ctx context.Context, req *repair.RepairAddReq) (int,
 	return int(id), err
 }
 
+type user struct {
+	Id       int
+	Realname string
+}
+
 func (s RepairService) Trans(ctx context.Context, req *repair.RepairTransReq) error {
 	validErr := gvalid.CheckStruct(ctx, req, nil)
 	if validErr != nil {
 		return myerrors.NewMsgError(nil, validErr.Current().Error())
 	}
-	r, err := s.Dao.DB.Table("base_user").Where("Id", req.UserId).One()
+	trnasTo := user{}
+	err := s.Dao.DB.Table("base_user").Where("Id", req.UserId).Struct(&trnasTo)
+	if err == sql.ErrNoRows {
+		return myerrors.NewMsgError(nil, fmt.Sprintf("转交人不存在: %d", req.UserId))
+	}
 	if err != nil {
 		return err
 	}
-	if r.IsEmpty() {
-		return myerrors.NewMsgError(nil, fmt.Sprintf("转交人不存在: %d", req.UserId))
-	}
 
 	f, err := s.Dao.Where("Id = ?", req.Id).One()
 	if err != nil {
@@ -185,7 +191,11 @@ func (s RepairService) Trans(ctx context.Context, req *repair.RepairTransReq) er
 		return myerrors.NewMsgError(nil, fmt.Sprintf("报修不存在: %d", req.Id))
 	}
 
-	_, err = s.Dao.Where("Id = ?", req.Id).Data("CurrentProcessorId", req.UserId).Update()
+	_, err = s.Dao.Where("Id = ?", req.Id).Data(
+		map[string]interface{}{
+			"CurrentProcessorId":   req.UserId,
+			"CurrentProcessorName": trnasTo.Realname,
+		}).Update()
 	if err != nil {
 		return err
 	}
@@ -215,7 +225,13 @@ func (s RepairService) Process(ctx context.Context, req *repair.RepairProcessReq
 		return myerrors.NewMsgError(nil, fmt.Sprintf("报修不存在: %d", req.Id))
 	}
 
-	_, err = s.Dao.Where("Id = ?", req.Id).Data("Status", 2).Update()
+	_, err = s.Dao.Where("Id = ?", req.Id).Data(
+		map[string]interface{}{
+			"CurrentProcessorId":   s.userInfo.Id,
+			"CurrentProcessorName": s.userInfo.RealName,
+			"ProcessedAt":          gtime.Now(),
+			"Status":               2,
+		}).Update()
 	if err != nil {
 		return err
 	}
@@ -259,8 +275,10 @@ func (s RepairService) Reactivate(ctx context.Context, req *repair.RepairReactiv
 
 	_, err = s.Dao.Where("Id = ?", req.Id).Data(
 		map[string]interface{}{
-			"Status":             1,
-			"CurrentProcessorId": 0,
+			"Status":               1,
+			"CurrentProcessorId":   0,
+			"CurrentProcessorName": nil,
+			"ProcessedAt":          nil,
 		}).Update()
 	if err != nil {
 		return err

+ 3 - 1
sql/feedback.sql

@@ -5,6 +5,8 @@ CREATE TABLE `feedback` (
   `Status` int NOT NULL COMMENT '反馈状态 1 未处理 2 已处理',
   `Content` text NOT NULL COMMENT '反馈内容',
   `CurrentProcessorId` int NOT NULL COMMENT '当前处理人 Id',
+  `CurrentProcessorName` varchar(255) COMMENT '当前处理人姓名',
+  `ProcessedAt` datetime COMMENT '处理时间',
   `CreatedById` int NOT NULL COMMENT '创建者 Id',
   `CreatedByName` varchar(255) NOT NULL COMMENT '创建者用户名',
   `CreatedByMobile` varchar(255) NOT NULL COMMENT '创建者联系方式',
@@ -36,7 +38,7 @@ CREATE TABLE `feedback_result` (
   `FeedbackId` int NOT NULL COMMENT '反馈Id',
   `ProcessById` int NOT NULL COMMENT '处理人 Id',
   `ProcessByName` varchar(255) NOT NULL COMMENT '处理人名称',
-  `ProcessType` int COMMENT '处理方式',
+  `ProcessType` varchar(255) COMMENT '处理方式',
   `ProcessNote` text COMMENT '处理描述',
   `CreatedAt` datetime COMMENT '创建时间',
   `UpdatedAt` datetime COMMENT '更新时间',

+ 3 - 1
sql/repair.sql

@@ -5,6 +5,8 @@ CREATE TABLE `repair` (
   `Status` int NOT NULL COMMENT '报修状态 1 未处理 2 已处理',
   `Content` text NOT NULL COMMENT '报修内容',
   `CurrentProcessorId` int NOT NULL COMMENT '当前处理人 Id',
+  `CurrentProcessorName` varchar(255) COMMENT '当前处理人姓名',
+  `ProcessedAt` datetime COMMENT '处理时间',
   `CreatedById` int NOT NULL COMMENT '创建者 Id',
   `CreatedByName` varchar(255) NOT NULL COMMENT '创建者用户名',
   `CreatedByMobile` varchar(255) NOT NULL COMMENT '创建者联系方式',
@@ -36,7 +38,7 @@ CREATE TABLE `repair_result` (
   `RepairId` int NOT NULL COMMENT '报修Id',
   `ProcessById` int NOT NULL COMMENT '处理人 Id',
   `ProcessByName` varchar(255) NOT NULL COMMENT '处理人名称',
-  `ProcessType` int COMMENT '处理方式',
+  `ProcessType` varchar(255) COMMENT '处理方式',
   `ProcessNote` text COMMENT '处理描述',
   `CreatedAt` datetime COMMENT '创建时间',
   `UpdatedAt` datetime COMMENT '更新时间',

+ 5 - 5
swaggerui/swagger.yml

@@ -1900,7 +1900,7 @@ components:
         - note
       properties:
         id:
-          type: integer
+          type: string
           description: 反馈 id
         type:
           type: integer
@@ -1995,7 +1995,7 @@ components:
           type: integer
           description: 报修 id
         type:
-          type: integer
+          type: string
           description: 处理方式
         note:
           type: string
@@ -2229,7 +2229,7 @@ components:
         id: 2
     FeedbackAdd:
       value:
-        type: 1
+        type: "1"
         content: 测试
         mobile: "18001156784"
         email: "123@123.com"
@@ -2241,7 +2241,7 @@ components:
     FeedbackProcess:
       value:
         id: 2
-        type: 1
+        type: "1"
         note: 测试处理
     FeedbackReactivate:
       value:
@@ -2255,7 +2255,7 @@ components:
         id: 2
     RepairAdd:
       value:
-        type: 1
+        type: "1"
         content: 测试
         mobile: "18001156784"
         email: "123@123.com"