63 lines
1.8 KiB
Go
63 lines
1.8 KiB
Go
// Package controller 科室管理
|
|
package controller
|
|
|
|
import (
|
|
"github.com/gin-gonic/gin"
|
|
"hospital-admin-api/api/dao"
|
|
"hospital-admin-api/api/requests"
|
|
"hospital-admin-api/api/responses"
|
|
"hospital-admin-api/api/responses/hosDepCustomResponse"
|
|
"hospital-admin-api/global"
|
|
"hospital-admin-api/utils"
|
|
)
|
|
|
|
type Department struct{}
|
|
|
|
// GetDepartmentCustomList 获取自定义科室列表
|
|
func (b *Department) GetDepartmentCustomList(c *gin.Context) {
|
|
departmentRequest := requests.DepartmentRequest{}
|
|
if err := c.ShouldBind(&departmentRequest.GetDepartmentCustomList); err != nil {
|
|
responses.FailWithMessage(err.Error(), c)
|
|
return
|
|
}
|
|
|
|
// 参数验证
|
|
if err := global.Validate.Struct(departmentRequest.GetDepartmentCustomList); err != nil {
|
|
responses.FailWithMessage(utils.Translate(err), c)
|
|
return
|
|
}
|
|
|
|
hospitalDepartmentCustomDao := dao.HospitalDepartmentCustom{}
|
|
|
|
maps := make(map[string]interface{})
|
|
if departmentRequest.DepartmentId != "" {
|
|
maps["department_id"] = departmentRequest.DepartmentId
|
|
}
|
|
|
|
if departmentRequest.DepartmentCustomName != "" {
|
|
maps["department_custom_name"] = departmentRequest.DepartmentCustomName
|
|
}
|
|
|
|
if departmentRequest.DepartmentName != "" {
|
|
maps["department_name"] = departmentRequest.DepartmentName
|
|
}
|
|
|
|
if departmentRequest.DepartmentCode != "" {
|
|
maps["department_code"] = departmentRequest.DepartmentCode
|
|
}
|
|
|
|
if departmentRequest.DepartmentStatus != 0 {
|
|
maps["department_status"] = departmentRequest.DepartmentStatus
|
|
}
|
|
|
|
hospitalDepartmentCustom, err := hospitalDepartmentCustomDao.GetHospitalDepartmentCustomList(maps)
|
|
if err != nil {
|
|
responses.Ok(c)
|
|
return
|
|
}
|
|
|
|
// 处理返回值
|
|
getDepartmentListResponse := hosDepCustomResponse.GetHospitalDepartmentCustomListResponse(hospitalDepartmentCustom)
|
|
responses.OkWithData(getDepartmentListResponse, c)
|
|
}
|