增加年度审查隐藏字段

This commit is contained in:
haomingming 2026-07-22 10:31:06 +08:00
parent b6f4d04b46
commit a349f447f9
7 changed files with 149 additions and 2 deletions

View File

@ -272,6 +272,24 @@ func (r *Export) OrderInquiryForAccount(c *gin.Context) {
return
}
// 特殊处理
// 获取配置
systemConfigDao := dao.SystemConfigDao{}
systemConfig, err := systemConfigDao.GetSystemConfigById(1)
if err != nil {
responses.FailWithMessage(err.Error(), c)
return
}
// 年度审查
if systemConfig.IsAnnualReview == 1 {
adminUserId := c.GetInt64("UserId")
if adminUserId == 1845704393354121216 || adminUserId == 1732273543535661056 {
annualReviewHide := 0
req.AnnualReviewHide = &annualReviewHide
}
}
// 获取数据
orderInquiryDao := dao.OrderInquiryDao{}
orderInquirys, err := orderInquiryDao.GetOrderInquiryForAccountExportListSearch(req)
@ -416,6 +434,24 @@ func (r *Export) OrderInquiry(c *gin.Context) {
return
}
// 特殊处理
// 获取配置
systemConfigDao := dao.SystemConfigDao{}
systemConfig, err := systemConfigDao.GetSystemConfigById(1)
if err != nil {
responses.FailWithMessage(err.Error(), c)
return
}
// 年度审查
if systemConfig.IsAnnualReview == 1 {
adminUserId := c.GetInt64("UserId")
if adminUserId == 1845704393354121216 || adminUserId == 1732273543535661056 {
annualReviewHide := 0
req.AnnualReviewHide = &annualReviewHide
}
}
// 获取数据
orderInquiryDao := dao.OrderInquiryDao{}
orderInquirys, err := orderInquiryDao.GetOrderInquiryExportListSearch(req)

View File

@ -54,8 +54,10 @@ func (r *OrderInquiry) GetOrderInquiryPage(c *gin.Context) {
if adminUserId == 1845704393354121216 || adminUserId == 1732273543535661056 {
status := 1
req.MultiPointStatus = &status
}
annualReviewHide := 0
req.AnnualReviewHide = &annualReviewHide
}
}
orderInquiryDao := dao.OrderInquiryDao{}
@ -105,6 +107,40 @@ func (r *OrderInquiry) GetOrderInquiry(c *gin.Context) {
responses.OkWithData(getUserDoctorResponses, c)
}
// PutAnnualReviewHide 修改问诊订单年度审查隐藏状态
func (r *OrderInquiry) PutAnnualReviewHide(c *gin.Context) {
id := c.Param("order_inquiry_id")
if id == "" {
responses.FailWithMessage("缺少参数", c)
return
}
orderInquiryId, err := strconv.ParseInt(id, 10, 64)
if err != nil {
responses.Fail(c)
return
}
req := requests.PutAnnualReviewHide{}
if err := c.ShouldBind(&req); err != nil {
responses.FailWithMessage(err.Error(), c)
return
}
if err := global.Validate.Struct(req); err != nil {
responses.FailWithMessage(utils.Translate(err), c)
return
}
orderInquiryService := service.OrderInquiryService{}
err = orderInquiryService.PutAnnualReviewHide(orderInquiryId, *req.AnnualReviewHide)
if err != nil {
responses.FailWithMessage(err.Error(), c)
return
}
responses.Ok(c)
}
// CancelOrderInquiry 取消问诊订单
func (r *OrderInquiry) CancelOrderInquiry(c *gin.Context) {
@ -203,8 +239,10 @@ func (r *OrderInquiry) GetOrderInquiryRecordPage(c *gin.Context) {
if adminUserId == 1845704393354121216 || adminUserId == 1732273543535661056 {
status := 1
req.GetOrderInquiryRecordPage.MultiPointStatus = &status
}
annualReviewHide := 0
req.GetOrderInquiryRecordPage.AnnualReviewHide = &annualReviewHide
}
}
orderInquiryDao := dao.OrderInquiryDao{}
@ -323,6 +361,24 @@ func (r *OrderInquiry) GetOrderInquiryForAccountPage(c *gin.Context) {
req.PageSize = 20
}
// 特殊处理
// 获取配置
systemConfigDao := dao.SystemConfigDao{}
systemConfig, err := systemConfigDao.GetSystemConfigById(1)
if err != nil {
responses.FailWithMessage(err.Error(), c)
return
}
// 年度审查
if systemConfig.IsAnnualReview == 1 {
adminUserId := c.GetInt64("UserId")
if adminUserId == 1845704393354121216 || adminUserId == 1732273543535661056 {
annualReviewHide := 0
req.AnnualReviewHide = &annualReviewHide
}
}
orderInquiryDao := dao.OrderInquiryDao{}
orderInquiry, total, err := orderInquiryDao.GetOrderInquiryForAccountPageSearch(req, req.Page, req.PageSize)
if err != nil {

View File

@ -267,6 +267,11 @@ func (r *OrderInquiryDao) GetOrderInquiryPageSearch(req requests.GetOrderInquiry
query = query.Where("user_id IN (?)", patientSubQuery).Or("doctor_id IN (?)", doctorSubQuery)
}
// 年度审查隐藏
if req.AnnualReviewHide != nil {
query = query.Where("annual_review_hide = ?", req.AnnualReviewHide)
}
// 排序
query = query.Order("created_at desc")
@ -464,6 +469,11 @@ func (r *OrderInquiryDao) GetOrderInquiryRecordPageSearch(req requests.GetOrderI
query = query.Where("user_id IN (?)", patientSubQuery).Or("doctor_id IN (?)", doctorSubQuery)
}
// 年度审查隐藏
if req.AnnualReviewHide != nil {
query = query.Where("annual_review_hide = ?", req.AnnualReviewHide)
}
// 排序
query = query.Order("created_at desc")
@ -627,6 +637,11 @@ func (r *OrderInquiryDao) GetOrderInquiryForAccountPageSearch(req requests.GetOr
query = query.Where("user_id IN (?)", subQuery)
}
// 年度审查隐藏
if req.AnnualReviewHide != nil {
query = query.Where("annual_review_hide = ?", req.AnnualReviewHide)
}
// 排序
query = query.Order("created_at desc")
@ -776,6 +791,11 @@ func (r *OrderInquiryDao) GetOrderInquiryForAccountExportListSearch(req requests
}
}
// 年度审查隐藏
if req.AnnualReviewHide != nil {
query = query.Where("annual_review_hide = ?", req.AnnualReviewHide)
}
// 当前选中数据
if req.Type == 2 {
if req.Id == "" {

View File

@ -43,6 +43,7 @@ type OrderInquiry struct {
PatientNameMask string `gorm:"column:patient_name_mask;type:varchar(255);comment:患者姓名-就诊人(掩码)" json:"patient_name_mask"`
PatientSex int `gorm:"column:patient_sex;type:tinyint(1);default:0;comment:患者性别-就诊人0:未知 1:男 2:女)" json:"patient_sex"`
PatientAge int `gorm:"column:patient_age;type:int(1);comment:患者年龄-就诊人" json:"patient_age"`
AnnualReviewHide int `gorm:"column:annual_review_hide;type:tinyint(1);default:0;comment:年度审查隐藏0:否 1:是)" json:"annual_review_hide"`
UserDoctor *UserDoctor `gorm:"foreignKey:DoctorId;references:doctor_id" json:"user_doctor"` // 医生
TransferUserDoctor *UserDoctor `gorm:"foreignKey:TransferDoctorId;references:doctor_id" json:"transfer_user_doctor"` // 接受抄方的医生
User *User `gorm:"foreignKey:UserId;references:user_id" json:"user"` // 患者

View File

@ -8,6 +8,12 @@ type OrderInquiryRequest struct {
GetOrderInquiryForAccountPage // 获取账户关联问诊订单列表-分页
OrderInquiryForAccountExportList // 医生账户-关联订单-导出
OrderInquiryExportList // 问诊订单列表-导出
PutAnnualReviewHide // 修改问诊订单年度审查隐藏状态
}
// PutAnnualReviewHide 修改问诊订单年度审查隐藏状态
type PutAnnualReviewHide struct {
AnnualReviewHide *int `json:"annual_review_hide" form:"annual_review_hide" validate:"required,oneof=0 1" label:"年度审查隐藏"`
}
// GetOrderInquiryPage 获取问诊订单列表-分页
@ -33,6 +39,7 @@ type GetOrderInquiryPage struct {
CreatedAt string `json:"created_at" form:"created_at" label:"订单创建时间"` // 时间区间数组形式下标0为开始时间下标1为结束时间
PatientName string `json:"patient_name" form:"patient_name" label:"患者姓名-就诊人"`
Mobile string `json:"mobile" form:"mobile" label:"手机号-医生/患者"`
AnnualReviewHide *int `json:"-" form:"-"` // 用于内部传递隐藏条件
}
// CancelOrderInquiry 取消问诊订单
@ -64,6 +71,7 @@ type GetOrderInquiryRecordPage struct {
CreatedAt string `json:"created_at" form:"created_at" label:"订单创建时间"` // 时间区间数组形式下标0为开始时间下标1为结束时间
PatientName string `json:"patient_name" form:"patient_name" label:"患者姓名-就诊人"`
Mobile string `json:"mobile" form:"mobile" label:"手机号-医生/患者"`
AnnualReviewHide *int `json:"-" form:"-"` // 用于内部传递隐藏条件
}
// GetOrderInquiryImPage 获取问诊订单im内容列表-分页
@ -90,6 +98,7 @@ type GetOrderInquiryForAccountPage struct {
IsWithdrawal *int `json:"is_withdrawal" form:"is_withdrawal" label:"是否提现"` // 0:否 1:是 2:提现中
CancelTime string `json:"cancel_time" form:"cancel_time" label:"订单取消时间"` // 时间区间数组形式下标0为开始时间下标1为结束时间
CreatedAt string `json:"created_at" form:"created_at" label:"订单创建时间"` // 时间区间数组形式下标0为开始时间下标1为结束时间
AnnualReviewHide *int `json:"-" form:"-"` // 用于内部传递隐藏条件
}
// OrderInquiryForAccountExportList 医生账户-关联订单-导出
@ -109,6 +118,7 @@ type OrderInquiryForAccountExportList struct {
IsWithdrawal *int `json:"is_withdrawal" form:"is_withdrawal" label:"是否提现"` // 0:否 1:是 2:提现中
CancelTime string `json:"cancel_time" form:"cancel_time" label:"订单取消时间"` // 时间区间数组形式下标0为开始时间下标1为结束时间
CreatedAt string `json:"created_at" form:"created_at" label:"订单创建时间"` // 时间区间数组形式下标0为开始时间下标1为结束时间
AnnualReviewHide *int `json:"-" form:"-"` // 用于内部传递隐藏条件
}
// OrderInquiryExportList 问诊订单列表-导出
@ -133,4 +143,5 @@ type OrderInquiryExportList struct {
CreatedAt string `json:"created_at" form:"created_at" label:"订单创建时间"` // 时间区间数组形式下标0为开始时间下标1为结束时间
PatientName string `json:"patient_name" form:"patient_name" label:"患者姓名-就诊人"`
Mobile string `json:"mobile" form:"mobile" label:"手机号-医生/患者"`
AnnualReviewHide *int `json:"-" form:"-"` // 用于内部传递隐藏条件
}

View File

@ -441,6 +441,9 @@ func privateRouter(r *gin.Engine, api controller.Api) {
// 获取问诊订单im内容列表-分页
inquiryGroup.GET("/im", api.OrderInquiry.GetOrderInquiryImPage)
// 修改问诊订单年度审查隐藏状态
inquiryGroup.PUT("/hide/:order_inquiry_id", api.OrderInquiry.PutAnnualReviewHide)
}
// 药品订单

View File

@ -456,3 +456,23 @@ func (r *OrderInquiryService) GetOrderInquiryDoctorAmount(inquiryStatus int, amo
return doctorAmount
}
// PutAnnualReviewHide 修改问诊订单年度审查隐藏状态
func (r *OrderInquiryService) PutAnnualReviewHide(orderInquiryId int64, annualReviewHide int) error {
// 获取问诊订单数据
orderInquiryDao := dao.OrderInquiryDao{}
orderInquiry, err := orderInquiryDao.GetOrderInquiryById(orderInquiryId)
if err != nil || orderInquiry == nil {
return errors.New("订单数据错误")
}
// 修改问诊订单
orderInquiryData := make(map[string]interface{})
orderInquiryData["annual_review_hide"] = annualReviewHide
err = orderInquiryDao.EditOrderInquiryById(global.Db, orderInquiryId, orderInquiryData)
if err != nil {
return errors.New("修改隐藏状态失败")
}
return nil
}