123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265 |
- package controllers
- import (
- "Medical_ERP/common/actions"
- "Medical_ERP/common/global"
- _ "Medical_ERP/common/response"
- "Medical_ERP/dto"
- "Medical_ERP/models"
- "Medical_ERP/services"
- "errors"
- "gogs.baozhida.cn/zoie/OAuth-core/pkg/jwtauth/beegouser"
- )
- type MedicineTemplateController struct {
- BaseController
- }
- // Initialize 初始化
- // @Summary 初始化
- // @Description 创建系统初始化的药品字段和药品表
- // @Tags 药品信息模板
- // @Param body body dto.MedicineTemplateInitializeReq true "body"
- // @Success 200 {object} response.Page{list=[]models.Product} "{"code": 200, "data": [...]}"
- // @Router /medicine-template/list [post]
- // @Security Bearer
- func (c MedicineTemplateController) Initialize() {
- s := services.MedicineTemplate{}
- reqData := dto.MedicineTemplateInitializeReq{}
- if err := c.ParseAndValidate(&c.Ctx.Input.RequestBody, &reqData); err != nil {
- err = errors.New("解析表单数据异常")
- c.Error(global.ParseFormErr, err, err.Error())
- return
- }
- userId := beegouser.GetUserId(c.Ctx)
- err := s.InitMedicineTemplate(reqData.DeptId, userId)
- if err != nil {
- c.Error(global.BadRequest, err, "初始化失败")
- return
- }
- c.OK(nil, "初始化成功")
- }
- // List 获取品名列表
- // @Summary 获取品名列表
- // @Description 获取品名列表
- // @Tags 药品信息模板
- // @Success 200 {object} response.Page{list=[]models.MedicineTemplate} "{"code": 200, "data": [...]}"
- // @Router /medicine-template/list [post]
- // @Security Bearer
- func (c MedicineTemplateController) List() {
- s := services.MedicineTemplate{}
- list := make([]models.MedicineTemplate, 0)
- var count int64
- //数据权限检查
- p := actions.GetPermissionFromContext(c.Ctx)
- err := s.GetPage(&list, &count, p)
- if err != nil {
- c.Error(global.BadRequest, err, err.Error())
- return
- }
- c.PageOK(list, int(count), 0, 0, "查询成功")
- }
- // Add 添加模版字段
- // @Summary 添加模版字段
- // @Description 添加模版字段
- // @Tags 药品信息模板
- // @Param data body dto.MedicineTemplateInsertReq true "data"
- // @Success 200 {object} response.Response "{"code": 200, "data": [...]}"
- // @Router /medicine-template/add [post]
- // @Security Bearer
- func (c MedicineTemplateController) Add() {
- s := services.MedicineTemplate{}
- reqData := dto.MedicineTemplateInsertReq{}
- if err := c.ParseAndValidate(&c.Ctx.Input.RequestBody, &reqData); err != nil {
- err = errors.New("解析表单数据异常")
- c.Error(global.ParseFormErr, err, err.Error())
- return
- }
- reqData.SetCreateBy(beegouser.GetUserId(c.Ctx))
- reqData.SetDeptId(beegouser.GetDeptId(c.Ctx))
- //if !utils.IsChineseOnly(reqData.Name) {
- // err := errors.New("标签名称不能包含非中文字符")
- // c.Error(500, err, err.Error())
- // return
- //}
- err := s.Insert(&reqData)
- if err != nil {
- c.Error(500, err, err.Error())
- return
- }
- c.OK(reqData.GetId(), "创建成功")
- }
- // Edit 修改模版字段
- // @Summary 修改模版字段
- // @Description 修改模版字段
- // @Tags 药品信息模板
- // @Param data body dto.MedicineTemplateUpdateReq true "body"
- // @Success 200 {object} response.Response "{"code": 200, "data": [...]}"
- // @Router /medicine-template/edit [post]
- // @Security Bearer
- func (c MedicineTemplateController) Edit() {
- s := services.MedicineTemplate{}
- reqData := dto.MedicineTemplateUpdateReq{}
- if err := c.ParseAndValidate(&c.Ctx.Input.RequestBody, &reqData); err != nil {
- err = errors.New("解析表单数据异常")
- c.Error(global.ParseFormErr, err, err.Error())
- return
- }
- reqData.SetUpdateBy(beegouser.GetUserId(c.Ctx))
- err := s.Update(&reqData)
- if err != nil {
- c.Error(500, err, err.Error())
- return
- }
- c.OK(reqData.GetId(), "更新成功")
- }
- // Delete 删除模版字段
- // @Summary 删除模版字段
- // @Description 删除模版字段
- // @Tags 药品信息模板
- // @Accept application/json
- // @Unit application/json
- // @Param data body dto.MedicineTemplateDeleteReq true "body"
- // @Success 200 {object} response.Response "{"code": 200, "data": [...]}"
- // @Router /medicine-template/delete [post]
- // @Security Bearer
- func (c MedicineTemplateController) Delete() {
- s := services.MedicineTemplate{}
- reqData := dto.MedicineTemplateDeleteReq{}
- if err := c.ParseAndValidate(&c.Ctx.Input.RequestBody, &reqData); err != nil {
- err = errors.New("解析表单数据异常")
- c.Error(global.ParseFormErr, err, err.Error())
- return
- }
- reqData.SetUpdateBy(beegouser.GetUserId(c.Ctx))
- err := s.Remove(&reqData)
- if err != nil {
- c.Error(500, err, err.Error())
- return
- }
- c.OK(reqData.GetId(), "删除成功")
- }
- // Columns 获取药品列名
- // @Summary 获取品名列表
- // @Description 获取品名列表
- // @Tags 药品信息模板
- // @Success 200 {object} response.Page{list=[]models.MedicineTemplate} "{"code": 200, "data": [...]}"
- // @Router /medicine-template/columns [post]
- // @Security Bearer
- func (c MedicineTemplateController) Columns() {
- s := services.MedicineTemplate{}
- list := make([]dto.MedicineColumnsRes, 0)
- //数据权限检查
- p := actions.GetPermissionFromContext(c.Ctx)
- err := s.GetColumns(&list, p)
- if err != nil {
- c.Error(global.BadRequest, err, err.Error())
- return
- }
- c.PageOK(list, 0, 0, 0, "查询成功")
- }
- // ListForStockIn 获取入库列表
- // @Summary 获取入库列表
- // @Description 获取入库列表
- // @Tags 药品信息模板
- // @Success 200 {object} response.Page{list=[]models.MedicineTemplate} "{"code": 200, "data": [...]}"
- // @Router /medicine-template/list-for-stock [post]
- // @Security Bearer
- func (c MedicineTemplateController) ListForStock() {
- s := services.MedicineTemplate{}
- list := make([]dto.MedicineTemplateForStockRes, 0)
- var count int64
- //数据权限检查
- p := actions.GetPermissionFromContext(c.Ctx)
- err := s.ListForStock(&list, &count, p)
- if err != nil {
- c.Error(global.BadRequest, err, err.Error())
- return
- }
- c.PageOK(list, int(count), 0, 0, "查询成功")
- }
- // ListForStockOut 获取出库品名、生产企业、规格
- // @Summary 获取出库品名、生产企业、规格
- // @Description 获取出库品名、生产企业、规格
- // @Tags 药品信息模板
- // @Success 200 {object} response.Page{list=[]models.MedicineTemplate} "{"code": 200, "data": [...]}"
- // @Router /medicine-template/list-for-stock [post]
- // @Security Bearer
- func (c MedicineTemplateController) ListForStockOut() {
- s := services.MedicineTemplate{}
- list := make([]dto.MedicineTemplateForStockRes, 0)
- var count int64
- //数据权限检查
- p := actions.GetPermissionFromContext(c.Ctx)
- err := s.ListForStockOut(&list, &count, p)
- if err != nil {
- c.Error(global.BadRequest, err, err.Error())
- return
- }
- c.PageOK(list, int(count), 0, 0, "查询成功")
- }
- // ListForStockInScanCode 获取扫码入库表单列表
- // @Summary 获取扫码入库表单列表
- // @Description 获取扫码入库表单列表
- // @Tags 药品信息模板
- // @Success 200 {object} response.Page{list=[]models.MedicineTemplate} "{"code": 200, "data": [...]}"
- // @Router /medicine-template/list-for-stock [post]
- // @Security Bearer
- func (c MedicineTemplateController) ListForStockInScanCode() {
- s := services.MedicineTemplate{}
- list := make([]dto.MedicineTemplateForStockRes, 0)
- var count int64
- //数据权限检查
- p := actions.GetPermissionFromContext(c.Ctx)
- err := s.ListForStockInScanCode(&list, &count, p)
- if err != nil {
- c.Error(global.BadRequest, err, err.Error())
- return
- }
- c.PageOK(list, int(count), 0, 0, "查询成功")
- }
- // ListForStockOutScanCode 获取扫码出库表单列表
- // @Summary 获取扫码出库表单列表
- // @Description 获取扫码出库表单列表
- // @Tags 药品信息模板
- // @Success 200 {object} response.Page{list=[]models.MedicineTemplate} "{"code": 200, "data": [...]}"
- // @Router /medicine-template/list-for-stock [post]
- // @Security Bearer
- func (c MedicineTemplateController) ListForStockOutScanCode() {
- s := services.MedicineTemplate{}
- list := make([]dto.MedicineTemplateForStockRes, 0)
- var count int64
- //数据权限检查
- p := actions.GetPermissionFromContext(c.Ctx)
- err := s.ListForStockOutScanCode(&list, &count, p)
- if err != nil {
- c.Error(global.BadRequest, err, err.Error())
- return
- }
- c.PageOK(list, int(count), 0, 0, "查询成功")
- }
|