新增获取问诊订单im内容列表-分页接口
This commit is contained in:
parent
cf016fd42a
commit
5fb14e2bfd
@ -194,3 +194,61 @@ func (r *OrderInquiry) GetOrderInquiryRecord(c *gin.Context) {
|
|||||||
|
|
||||||
responses.OkWithData(getUserDoctorResponses, c)
|
responses.OkWithData(getUserDoctorResponses, c)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// GetOrderInquiryImPage 获取问诊订单im内容列表-分页
|
||||||
|
func (r *OrderInquiry) GetOrderInquiryImPage(c *gin.Context) {
|
||||||
|
id := c.Param("order_inquiry_id")
|
||||||
|
if id == "" {
|
||||||
|
responses.FailWithMessage("缺少参数", c)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// 将 id 转换为 int64 类型
|
||||||
|
orderInquiryId, err := strconv.ParseInt(id, 10, 64)
|
||||||
|
if err != nil {
|
||||||
|
responses.Fail(c)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
req := requests.OrderInquiryRequest{}
|
||||||
|
if err := c.ShouldBind(&req.GetOrderInquiryImPage); err != nil {
|
||||||
|
responses.FailWithMessage(err.Error(), c)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// 参数验证
|
||||||
|
if err := global.Validate.Struct(req.GetOrderInquiryImPage); err != nil {
|
||||||
|
responses.FailWithMessage(utils.Translate(err), c)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
if req.GetOrderInquiryImPage.Page == 0 {
|
||||||
|
req.GetOrderInquiryImPage.Page = 1
|
||||||
|
}
|
||||||
|
|
||||||
|
if req.GetOrderInquiryImPage.PageSize == 0 {
|
||||||
|
req.GetOrderInquiryImPage.PageSize = 20
|
||||||
|
}
|
||||||
|
|
||||||
|
messageImDao := dao.MessageImDao{}
|
||||||
|
messageIm, total, err := messageImDao.GetMessageImPageSearch(orderInquiryId, req.GetOrderInquiryImPage.Page, req.GetOrderInquiryImPage.PageSize)
|
||||||
|
if err != nil {
|
||||||
|
responses.FailWithMessage(err.Error(), c)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// 处理返回值
|
||||||
|
GetMessageImPageResponses := dto.GetMessageImListDto(messageIm)
|
||||||
|
if err != nil {
|
||||||
|
responses.FailWithMessage(err.Error(), c)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
result := make(map[string]interface{})
|
||||||
|
result["page"] = req.GetOrderInquiryImPage.Page
|
||||||
|
result["page_size"] = req.GetOrderInquiryImPage.PageSize
|
||||||
|
result["total"] = total
|
||||||
|
result["data"] = GetMessageImPageResponses
|
||||||
|
responses.OkWithData(result, c)
|
||||||
|
|
||||||
|
}
|
||||||
|
|||||||
@ -70,3 +70,25 @@ func (r *MessageImDao) AddMessageIm(tx *gorm.DB, model *model.MessageIm) (*model
|
|||||||
}
|
}
|
||||||
return model, nil
|
return model, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// GetMessageImPageSearch 获取Im消息列表-分页
|
||||||
|
func (r *MessageImDao) GetMessageImPageSearch(orderInquiryId int64, page, pageSize int) (m []*model.MessageIm, total int64, err error) {
|
||||||
|
var totalRecords int64
|
||||||
|
|
||||||
|
// 构建查询条件
|
||||||
|
query := global.Db.Model(&model.MessageIm{}).Where("order_inquiry_id = ?", orderInquiryId)
|
||||||
|
|
||||||
|
// 排序
|
||||||
|
query = query.Order("created_at desc")
|
||||||
|
|
||||||
|
// 查询总数量
|
||||||
|
if err := query.Count(&totalRecords).Error; err != nil {
|
||||||
|
return nil, 0, err
|
||||||
|
}
|
||||||
|
|
||||||
|
err = query.Scopes(model.Paginate(page, pageSize)).Find(&m).Error
|
||||||
|
if err != nil {
|
||||||
|
return nil, 0, err
|
||||||
|
}
|
||||||
|
return m, totalRecords, nil
|
||||||
|
}
|
||||||
|
|||||||
@ -4,6 +4,7 @@ type OrderInquiryRequest struct {
|
|||||||
GetOrderInquiryPage // 获取问诊订单列表-分页
|
GetOrderInquiryPage // 获取问诊订单列表-分页
|
||||||
CancelOrderInquiry // 取消问诊订单
|
CancelOrderInquiry // 取消问诊订单
|
||||||
GetOrderInquiryRecordPage // 获取问诊记录列表-分页
|
GetOrderInquiryRecordPage // 获取问诊记录列表-分页
|
||||||
|
GetOrderInquiryImPage // 获取问诊订单im内容列表-分页
|
||||||
}
|
}
|
||||||
|
|
||||||
// GetOrderInquiryPage 获取问诊订单列表-分页
|
// GetOrderInquiryPage 获取问诊订单列表-分页
|
||||||
@ -58,3 +59,9 @@ type GetOrderInquiryRecordPage struct {
|
|||||||
PatientName string `json:"patient_name" form:"patient_name" label:"患者姓名-就诊人"`
|
PatientName string `json:"patient_name" form:"patient_name" label:"患者姓名-就诊人"`
|
||||||
Mobile string `json:"mobile" form:"mobile" label:"手机号-医生/患者"`
|
Mobile string `json:"mobile" form:"mobile" label:"手机号-医生/患者"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// GetOrderInquiryImPage 获取问诊订单im内容列表-分页
|
||||||
|
type GetOrderInquiryImPage struct {
|
||||||
|
Page int `json:"page" form:"page" label:"页码"`
|
||||||
|
PageSize int `json:"page_size" form:"page_size" label:"每页个数"`
|
||||||
|
}
|
||||||
|
|||||||
@ -375,6 +375,9 @@ func privateRouter(r *gin.Engine, api controller.Api) {
|
|||||||
|
|
||||||
// 取消问诊订单
|
// 取消问诊订单
|
||||||
inquiryGroup.PUT("/cancel/:order_inquiry_id", api.OrderInquiry.CancelOrderInquiry)
|
inquiryGroup.PUT("/cancel/:order_inquiry_id", api.OrderInquiry.CancelOrderInquiry)
|
||||||
|
|
||||||
|
// 获取问诊订单im内容列表-分页
|
||||||
|
inquiryGroup.GET("/im/:order_inquiry_id", api.OrderInquiry.GetOrderInquiryImPage)
|
||||||
}
|
}
|
||||||
|
|
||||||
// 药品订单
|
// 药品订单
|
||||||
@ -408,6 +411,7 @@ func privateRouter(r *gin.Engine, api controller.Api) {
|
|||||||
// 问诊记录详情
|
// 问诊记录详情
|
||||||
inquiryRecordGroup.GET("/:order_inquiry_id", api.OrderInquiry.GetOrderInquiryRecord)
|
inquiryRecordGroup.GET("/:order_inquiry_id", api.OrderInquiry.GetOrderInquiryRecord)
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// 病例管理
|
// 病例管理
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user