2023-11-14 14:43:39 +08:00

188 lines
4.7 KiB
Go

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/service"
"hospital-admin-api/global"
"hospital-admin-api/utils"
)
// Export 导出
type Export struct{}
// DoctorWithdrawal 提现记录
func (r *Export) DoctorWithdrawal(c *gin.Context) {
doctorWithdrawalRequest := requests.DoctorWithdrawalRequest{}
req := doctorWithdrawalRequest.DoctorWithdrawalExportList
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
}
// 获取数据
doctorWithdrawalDao := dao.DoctorWithdrawalDao{}
doctorWithdrawals, err := doctorWithdrawalDao.GetDoctorWithdrawalExportListSearch(req)
if err != nil {
responses.FailWithMessage(err.Error(), c)
return
}
// 业务处理
exportService := service.ExportService{}
ossAddress, err := exportService.DoctorWithdrawal(doctorWithdrawals)
if err != nil {
responses.FailWithMessage(err.Error(), c)
return
}
responses.OkWithData(ossAddress, c)
}
// DoctorWithdrawalOrder 提现记录-关联订单
func (r *Export) DoctorWithdrawalOrder(c *gin.Context) {
doctorWithdrawalRequest := requests.DoctorWithdrawalRequest{}
req := doctorWithdrawalRequest.DoctorWithdrawalOrderExportList
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
}
// 获取数据
doctorWithdrawalOrderDao := dao.DoctorWithdrawalOrderDao{}
doctorWithdrawalOrders, err := doctorWithdrawalOrderDao.GetDoctorWithdrawalOrderExportListSearch(req)
if err != nil {
responses.FailWithMessage(err.Error(), c)
return
}
// 业务处理
exportService := service.ExportService{}
ossAddress, err := exportService.DoctorWithdrawalOrder(doctorWithdrawalOrders)
if err != nil {
responses.FailWithMessage(err.Error(), c)
return
}
responses.OkWithData(ossAddress, c)
}
// UserDoctor 医生列表
func (r *Export) UserDoctor(c *gin.Context) {
userDoctorRequest := requests.UserDoctorRequest{}
req := userDoctorRequest.UserDoctorExportList
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
}
// 获取数据
userDoctorDao := dao.UserDoctorDao{}
userDoctors, err := userDoctorDao.GetUserDoctorExportListSearch(req)
if err != nil {
responses.FailWithMessage(err.Error(), c)
return
}
// 业务处理
exportService := service.ExportService{}
ossAddress, err := exportService.UserDoctor(userDoctors)
if err != nil {
responses.FailWithMessage(err.Error(), c)
return
}
responses.OkWithData(ossAddress, c)
}
// UserDoctorBankCard 医生银行卡列表
func (r *Export) UserDoctorBankCard(c *gin.Context) {
userDoctorRequest := requests.UserDoctorRequest{}
req := userDoctorRequest.UserDoctorBankCardExportList
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
}
// 获取数据
doctorBankCardDao := dao.DoctorBankCardDao{}
doctorBankCards, err := doctorBankCardDao.GetDoctorBankCardExportListSearch(req)
if err != nil {
responses.FailWithMessage(err.Error(), c)
return
}
// 业务处理
exportService := service.ExportService{}
ossAddress, err := exportService.UserDoctorBankCard(doctorBankCards)
if err != nil {
responses.FailWithMessage(err.Error(), c)
return
}
responses.OkWithData(ossAddress, c)
}
// DoctorAccount 医生账户
func (r *Export) DoctorAccount(c *gin.Context) {
doctorAccountRequest := requests.DoctorAccountRequest{}
req := doctorAccountRequest.DoctorAccountExportList
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
}
// 获取数据
doctorAccountDao := dao.DoctorAccountDao{}
doctorAccounts, err := doctorAccountDao.GetDoctorAccountExportListSearch(req)
if err != nil {
responses.FailWithMessage(err.Error(), c)
return
}
// 业务处理
exportService := service.ExportService{}
ossAddress, err := exportService.DoctorAccount(doctorAccounts)
if err != nil {
responses.FailWithMessage(err.Error(), c)
return
}
responses.OkWithData(ossAddress, c)
}