You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

799 lines
25 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

package BaseTeacherController
import (
"dsBaseWeb/Business/BaseTeacher/BaseTeacherService"
"dsBaseWeb/Model"
"dsBaseWeb/Utils/CommonUtil"
"fmt"
"github.com/bluesky335/IDCheck/IdNumber"
"github.com/gin-gonic/gin"
"net/http"
"net/url"
"os"
"strings"
)
//模块的路由配置
func Routers(r *gin.RouterGroup) {
rr := r.Group("/teacher")
rr.GET("/PageTeacherInfo", PageTeacherInfo)
rr.GET("/GetTeacherInfo", GetTeacherInfo)
rr.POST("/AddTeacherInfo", AddTeacherInfo)
rr.POST("/DeleteTeacherInfo", DeleteTeacherInfo)
rr.POST("/UpdateTeacherInfo", UpdateTeacherInfo)
rr.POST("/ReviseTeacherOrg", ReviseTeacherOrg)
rr.GET("/ExportTeacherAccountExcel", ExportTeacherAccountExcel)
rr.GET("/ExportTeacherExcel", ExportTeacherExcel)
rr.GET("/DownLoadTeacherTemplateExcel", DownLoadTeacherTemplateExcel)
rr.POST("/ImportTeacherExcel", ImportTeacherExcel)
rr.GET("/DownLoadErrorExcel", DownLoadErrorExcel)
rr.POST("/SettingTeacherMultipleBureauInfo", SettingTeacherMultipleBureauInfo)
rr.GET("/PageTeacherMultipleBureauInfo", PageTeacherMultipleBureauInfo)
rr.POST("/DeleteTeacherMultipleBureauInfo", DeleteTeacherMultipleBureauInfo)
rr.POST("/SettingMainOrgInfo", SettingMainOrgInfo)
rr.POST("/TeacherTransferInfo", TeacherTransferInfo)
return
}
// @Summary 获取教职工列表
// @Description 获取教职工列表
// @Tags 教师信息
// @Accept application/x-www-form-urlencoded
// @Produce json
// @Param page query int true "第几页"
// @Param limit query int true "一页显示多少条"
// @Param orgId query string true "部门ID"
// @Param xm query string false "教职工姓名"
// @Success 200 {object} Model.Res
// @Router /base/teacher/PageTeacherInfo [get]
// @X-EmptyLimit ["page","limit","orgId"]
// @X-LengthLimit [{"orgId":"36,36"},{"xm":"1,20"}]
// @X-IntRangeLimit [{"page":"1,1000"},{"limit":"1,1000"}]
// @X-RoleLimit ["1","2","3","4","5","6","7"]
// @X-InterfaceName ["PageBaseTeacher"]
// @X-ExtendSwaggerField [{"column_name":"xb_name","sample_data":"男","column_comment":"性别"},{"column_name":"org_name","sample_data":"办公室","column_comment":"所属部门"},{"column_name":"login_name","sample_data":"stu001","column_comment":"登录名"},{"column_name":"original_pwd","sample_data":"159357","column_comment":"初始密码"},{"column_name":"login_status","sample_data":"已启用","column_comment":"账号状态"},{"column_name":"stage_name","sample_data":"小学","column_comment":"学段名称"},{"column_name":"subject_name","sample_data":"数学","column_comment":"学科名称"}]
// @X-TableName ["t_base_teacher"]
// @X-RemoveSwaggerField ["identity_id","id_int","xmpy","cym","csrq","mzm","zzmmm","sfzjlxm","sfzjh","xlm","xwm","zcm","bzlbm","cjny","stage_id","subject_id","gwzym","lxdh","dzxx","b_use","state_id","last_updated_time","main_school_id","province_code","city_code","district_code"]
// @X-Sort [1]
func PageTeacherInfo(c *gin.Context) {
//第几页
page := CommonUtil.ConvertStringToInt32(c.Query("page"))
//一页显示多少条
limit := CommonUtil.ConvertStringToInt32(c.Query("limit"))
//部门ID
orgId := c.Query("orgId")
//教职工姓名
xm := c.Query("xm")
//操作人
actionPersonId, err := c.Cookie("person_id")
if err != nil {
c.JSON(http.StatusOK, Model.Res{
Success: false,
Message: "未获取到Cookie中的人员编码",
})
return
}
//操作IP
actionIpAddress := c.ClientIP()
r, err := BaseTeacherService.PageTeacherInfo(page, limit, orgId, xm, actionPersonId, actionIpAddress)
if err != nil {
c.JSON(http.StatusOK, Model.Res{
Success: false,
Message: "调用RPC服务失败",
})
return
}
c.JSON(http.StatusOK, Model.Res{
Success: r.Success,
Message: r.Message,
List: CommonUtil.ConvertJsonStringToMapArray(r.List),
Count: r.Count,
})
}
// @Summary 获取教职工信息
// @Description 获取教职工信息
// @Tags 教师信息
// @Accept application/x-www-form-urlencoded
// @Produce json
// @Param personId query string true "教职工ID"
// @Param bureauId query string true "单位ID"
// @Success 200 {object} Model.Res
// @Router /base/teacher/GetTeacherInfo [get]
// @X-EmptyLimit ["personId"]
// @X-LengthLimit [{"personId":"36,36"}]
// @X-RoleLimit ["1","2","3","4","5","6","7"]
// @X-InterfaceName ["GetBaseTeacher"]
// @X-TableName ["t_base_teacher"]
// @X-ExtendSwaggerField [{"column_name":"org_name","sample_data":"语文组","column_comment":"部门名称"}]
// @X-RemoveSwaggerField ["identity_id","id_int","xmpy","cym","gwzym","b_use","state_id","last_updated_time"]
// @X-Sort [2]
func GetTeacherInfo(c *gin.Context) {
//教职工ID
personId := c.Query("personId")
//单位ID
bureauId := c.Query("bureauId")
//操作人
actionPersonId, err := c.Cookie("person_id")
if err != nil {
c.JSON(http.StatusOK, Model.Res{
Success: false,
Message: "未获取到Cookie中的人员编码",
})
return
}
//操作IP
actionIpAddress := c.ClientIP()
r, err := BaseTeacherService.GetTeacherInfo(personId, bureauId, actionPersonId, actionIpAddress)
if err != nil {
c.JSON(http.StatusOK, Model.Res{
Success: false,
Message: "调用RPC服务失败",
})
return
}
c.JSON(http.StatusOK, Model.Res{
Success: r.Success,
Message: r.Message,
List: CommonUtil.ConvertJsonStringToMapArray(r.List),
Count: r.Count,
})
}
// @Summary 增加教职工信息
// @Description 增加教职工信息
// @Tags 教师信息
// @Accept application/x-www-form-urlencoded
// @Produce json
// @Param orgId formData string true "部门ID"
// @Param xm formData string true "教职工姓名"
// @Param sfzjlxm formData string false "身份证件类型字典sfzjlxm"
// @Param sfzjh formData string false "证件号"
// @Param xbm formData string true "性别字典xbm"
// @Param csrq formData string true "出生日期"
// @Param mzm formData string true "民族字典mzm"
// @Param zzmmm formData string true "政治面貌字典zzmmm"
// @Param zcm formData string true "职称字典zcm"
// @Param bzlbm formData string true "编制字典bzlbm"
// @Param xlm formData string true "学历字典xlm"
// @Param xwm formData string true "学位字典xwm"
// @Param stageId formData string true "任教学段"
// @Param subjectId formData string true "任教学科"
// @Param positionIds formData string false "职务ID,多个用逗号分隔"
// @Param cjny formData string false "从教年月"
// @Param lxdh formData string false "联系电话"
// @Param dzxx formData string false "电子信箱"
// @Param sortId formData int false "排序号"
// @Success 200 {object} Model.Res
// @Router /base/teacher/AddTeacherInfo [post]
// @X-EmptyLimit ["orgId","xm","mzm","zzmmm","zcm","bzlbm","xlm","xwm"]
// @X-IntRangeLimit [{"sortId":"1,9999"},{"sfzjlxm":"1,4"}]
// @X-LengthLimit [{"orgId":"36,36"},{"xm":"2,20"},{"xbm":"1,1"},{"sfzjh":"2,30"},{"mzm":"2,2"},{"zzmmm":"2,2"},{"zcm":"1,1"},{"bzlbm":"1,1"},{"xlm":"2,2"},{"xwm":"1,1"},{"stageId":"1,1"},{"subjectId":"2,2"},{"lxdh":"2,30"}]
// @X-RoleLimit ["1","2","3","4","5","6","7"]
// @X-InterfaceName ["AddBaseTeacher"]
// @X-Sort [3]
func AddTeacherInfo(c *gin.Context) {
//部门ID
orgId := c.PostForm("orgId")
//教职工姓名
xm := c.PostForm("xm")
//性别
xbm := c.PostForm("xbm")
//出生日期
csrq := c.PostForm("csrq")
//身份证件类型
sfzjlxm := c.PostForm("sfzjlxm")
//证件号
sfzjh := c.PostForm("sfzjh")
if sfzjlxm == "1" {
idCard := IdNumber.New(sfzjh)
if !idCard.IsValid() {
c.JSON(http.StatusOK, Model.Res{
Success: false,
Message: "不是合法身份证号!",
})
return
}
}
//民族
mzm := c.PostForm("mzm")
//政治面貌
zzmmm := c.PostForm("zzmmm")
//职称
zcm := c.PostForm("zcm")
//编制
bzlbm := c.PostForm("bzlbm")
//学历
xlm := c.PostForm("xlm")
//学位
xwm := c.PostForm("xwm")
//从教年月
cjny := c.PostForm("cjny")
//任教学段
stageId := c.PostForm("stageId")
//任教学科
subjectId := c.PostForm("subjectId")
//职务ID,多个用逗号分隔
positionIds := c.PostForm("positionIds")
//联系电话
lxdh := c.PostForm("lxdh")
//电子信箱
dzxx := c.PostForm("dzxx")
//排序号
sortId := CommonUtil.ConvertStringToInt32(c.PostForm("sortId"))
//操作人
actionPersonId, err := c.Cookie("person_id")
if err != nil {
c.JSON(http.StatusOK, Model.Res{
Success: false,
Message: "未获取到Cookie中的人员编码",
})
return
}
//操作IP
actionIpAddress := c.ClientIP()
r, err := BaseTeacherService.AddTeacherInfo(orgId, xm, xbm, csrq, sfzjlxm, sfzjh, mzm, zzmmm, zcm, bzlbm, xlm, xwm, cjny, stageId, subjectId, lxdh, dzxx, sortId, actionPersonId, actionIpAddress, positionIds)
if err != nil {
c.JSON(http.StatusOK, Model.Res{
Success: false,
Message: "调用RPC服务失败",
})
return
}
c.JSON(http.StatusOK, Model.Res{
Success: r.Success,
Message: r.Message,
})
}
// @Summary 删除教职工信息
// @Description 删除教职工信息
// @Tags 教师信息
// @Accept application/x-www-form-urlencoded
// @Produce json
// @Param personIds formData string true "教职工ID多个用逗号分隔"
// @Success 200 {object} Model.Res
// @Router /base/teacher/DeleteTeacherInfo [post]
// @X-EmptyLimit ["personIds"]
// @X-LengthLimit [{"personIds":"36,1800"}]
// @X-RoleLimit ["1","2","3","4","5","6","7"]
// @X-InterfaceName ["DeleteBaseTeacher"]
// @X-Sort [4]
func DeleteTeacherInfo(c *gin.Context) {
//教职工ID
personIds := c.PostForm("personIds")
//操作人
actionPersonId, err := c.Cookie("person_id")
if err != nil {
c.JSON(http.StatusOK, Model.Res{
Success: false,
Message: "未获取到Cookie中的人员编码",
})
return
}
//操作IP
actionIpAddress := c.ClientIP()
r, err := BaseTeacherService.DeleteTeacherInfo(personIds, actionPersonId, actionIpAddress)
if err != nil {
c.JSON(http.StatusOK, Model.Res{
Success: false,
Message: "调用RPC服务失败",
})
return
}
c.JSON(http.StatusOK, Model.Res{
Success: r.Success,
Message: r.Message,
})
}
// @Summary 修改教职工信息
// @Description 修改教职工信息
// @Tags 教师信息
// @Accept application/x-www-form-urlencoded
// @Produce json
// @Param bureauId formData string true "单位ID"
// @Param personId formData string true "教职工ID"
// @Param xm formData string true "教职工姓名"
// @Param sfzjlxm formData string false "身份证件类型字典sfzjlxm"
// @Param sfzjh formData string false "证件号"
// @Param xbm formData string true "性别字典xbm"
// @Param csrq formData string true "出生日期"
// @Param mzm formData string true "民族字典mzm"
// @Param zzmmm formData string true "政治面貌字典zzmmm"
// @Param zcm formData string true "职称字典zcm"
// @Param bzlbm formData string true "编制字典bzlbm"
// @Param xlm formData string true "学历字典xlm"
// @Param xwm formData string true "学位字典xwm"
// @Param stageId formData string true "任教学段"
// @Param subjectId formData string true "任教学科"
// @Param positionIds formData string false "职务ID,多个用逗号分隔"
// @Param cjny formData string false "从教年月"
// @Param lxdh formData string false "联系电话"
// @Param dzxx formData string false "电子信箱"
// @Param sortId formData int false "排序号"
// @Success 200 {object} Model.Res
// @Router /base/teacher/UpdateTeacherInfo [post]
// @X-EmptyLimit ["personId","xm","mzm","zzmmm","zcm","bzlbm","xlm","xwm"]
// @X-IntRangeLimit [{"sortId":"1,9999"},{"sfzjlxm":"1,4"}]
// @X-LengthLimit [{"personId":"36,36"},{"xm":"2,20"},{"xbm":"1,1"},{"sfzjh":"2,30"},{"mzm":"2,2"},{"zzmmm":"2,2"},{"zcm":"1,1"},{"bzlbm":"1,1"},{"xlm":"2,2"},{"xwm":"1,1"},{"stageId":"1,1"},{"subjectId":"2,2"},{"lxdh":"2,30"}]
// @X-RoleLimit ["1","2","3","4","5","6","7"]
// @X-InterfaceName ["UpdateBaseTeacher"]
// @X-Sort [5]
func UpdateTeacherInfo(c *gin.Context) {
//单位ID
bureauId := c.PostForm("bureauId")
//教职工ID
personId := c.PostForm("personId")
//教职工姓名
xm := c.PostForm("xm")
//性别
xbm := c.PostForm("xbm")
//出生日期
csrq := c.PostForm("csrq")
//身份证件类型
sfzjlxm := c.PostForm("sfzjlxm")
//证件号
sfzjh := c.PostForm("sfzjh")
if sfzjlxm == "1" {
idCard := IdNumber.New(sfzjh)
if !idCard.IsValid() {
c.JSON(http.StatusOK, Model.Res{
Success: false,
Message: "不是合法身份证号!",
})
return
}
}
//民族
mzm := c.PostForm("mzm")
//政治面貌
zzmmm := c.PostForm("zzmmm")
//职称
zcm := c.PostForm("zcm")
//编制
bzlbm := c.PostForm("bzlbm")
//学历
xlm := c.PostForm("xlm")
//学位
xwm := c.PostForm("xwm")
//从教年月
cjny := c.PostForm("cjny")
//任教学段
stageId := c.PostForm("stageId")
//任教学科
subjectId := c.PostForm("subjectId")
//职务ID,多个用逗号分隔
positionIds := c.PostForm("positionIds")
//联系电话
lxdh := c.PostForm("lxdh")
//电子信箱
dzxx := c.PostForm("dzxx")
//排序号
sortId := CommonUtil.ConvertStringToInt32(c.PostForm("sortId"))
//操作人
actionPersonId, err := c.Cookie("person_id")
if err != nil {
c.JSON(http.StatusOK, Model.Res{
Success: false,
Message: "未获取到Cookie中的人员编码",
})
return
}
//操作IP
actionIpAddress := c.ClientIP()
r, err := BaseTeacherService.UpdateTeacherInfo(bureauId, personId, xm, xbm, csrq, sfzjlxm, sfzjh, mzm, zzmmm, zcm, bzlbm, xlm, xwm, cjny, stageId, subjectId, lxdh, dzxx, sortId, actionPersonId, actionIpAddress, positionIds)
if err != nil {
c.JSON(http.StatusOK, Model.Res{
Success: false,
Message: "调用RPC服务失败",
})
return
}
c.JSON(http.StatusOK, Model.Res{
Success: r.Success,
Message: r.Message,
})
}
// @Summary 调整教职工部门
// @Description 调整教职工部门
// @Tags 教师信息
// @Accept application/x-www-form-urlencoded
// @Produce json
// @Param personIds formData string true "教职工ID多个用逗号分隔"
// @Param orgId formData string true "调整后的部门ID"
// @Success 200 {object} Model.Res
// @Router /base/teacher/ReviseTeacherOrg [post]
// @X-EmptyLimit ["personIds"]
// @X-LengthLimit [{"personIds":"36,1800"},{"sourceOrgId":"36,36"},{"targetOrgId":"36,36"}]
// @X-RoleLimit ["1","2","3","4","5","6","7"]
// @X-Sort [6]
func ReviseTeacherOrg(c *gin.Context) {
//教职工ID多个用逗号分隔
personIds := c.PostForm("personIds")
//调整后的部门ID
orgId := c.PostForm("orgId")
r, err := BaseTeacherService.ReviseTeacherOrg(personIds, orgId)
if err != nil {
c.JSON(http.StatusOK, Model.Res{
Success: false,
Message: "调用RPC服务失败",
})
return
}
c.JSON(http.StatusOK, Model.Res{
Success: r.Success,
Message: r.Message,
})
}
// @Summary 导出本单位教职工账号信息到EXCEL
// @Description 导出本单位教职工账号信息到EXCEL
// @Tags 教师信息
// @Accept application/x-www-form-urlencoded
// @Produce json
// @Param orgId query string true "单位ID"
// @Success 200 {object} Model.Res
// @Router /base/teacher/ExportTeacherAccountExcel [get]
// @X-EmptyLimit ["orgId"]
// @X-LengthLimit [{"orgId":"36,36"}]
// @X-RoleLimit ["1","2","3","4","5","6","7"]
// @X-Sort [7]
func ExportTeacherAccountExcel(c *gin.Context) {
//学校ID
bureauId := c.Query("orgId")
//操作人
actionPersonId, err := c.Cookie("person_id")
if err != nil {
c.JSON(http.StatusOK, Model.Res{
Success: false,
Message: "未获取到Cookie中的人员编码",
})
return
}
//操作IP
actionIpAddress := c.ClientIP()
r, err := BaseTeacherService.ExportTeacherAccountExcel(bureauId, actionPersonId, actionIpAddress)
if err != nil {
c.JSON(http.StatusOK, Model.Res{
Success: false,
Message: "调用RPC服务失败",
})
return
}
c.Writer.Header().Add("Content-Disposition", fmt.Sprintf("attachment; filename=%s", "教职工账号.xlsx"))
c.Writer.Header().Set("Content-Type", "application/octet-stream")
c.File(r.ExcelPath)
}
// @Summary 导出本单位教职工信息到EXCEL
// @Description 导出本单位教职工信息到EXCEL
// @Tags 教师信息
// @Accept application/x-www-form-urlencoded
// @Produce json
// @Param orgId query string true "单位ID"
// @Success 200 {object} Model.Res
// @Router /base/teacher/ExportTeacherExcel [get]
// @X-EmptyLimit ["orgId"]
// @X-LengthLimit [{"orgId":"36,36"}]
// @X-RoleLimit ["1","2","3","4","5","6","7"]
// @X-Sort [8]
func ExportTeacherExcel(c *gin.Context) {
//学校ID
bureauId := c.Query("orgId")
//操作人
actionPersonId, err := c.Cookie("person_id")
if err != nil {
c.JSON(http.StatusOK, Model.Res{
Success: false,
Message: "未获取到Cookie中的人员编码",
})
return
}
//操作IP
actionIpAddress := c.ClientIP()
r, err := BaseTeacherService.ExportTeacherExcel(bureauId, actionPersonId, actionIpAddress)
if err != nil {
c.JSON(http.StatusOK, Model.Res{
Success: false,
Message: "调用RPC服务失败",
})
return
}
c.Writer.Header().Add("Content-Disposition", fmt.Sprintf("attachment; filename=%s", "教职工信息.xlsx"))
c.Writer.Header().Set("Content-Type", "application/octet-stream")
c.File(r.ExcelPath)
}
// @Summary 下载教职工导入模板
// @Description 下载教职工导入模板
// @Tags 教师信息
// @Accept application/x-www-form-urlencoded
// @Produce json
// @Param orgId query string true "单位ID"
// @Success 200 {object} Model.Res
// @Router /base/teacher/DownLoadTeacherTemplateExcel [get]
// @X-EmptyLimit ["orgId"]
// @X-LengthLimit [{"orgId":"36,36"}]
// @X-RoleLimit ["1","2","3","4","5","6","7"]
// @X-Sort [9]
func DownLoadTeacherTemplateExcel(c *gin.Context) {
//学校ID
bureauId := c.Query("orgId")
//操作人
actionPersonId, err := c.Cookie("person_id")
if err != nil {
c.JSON(http.StatusOK, Model.Res{
Success: false,
Message: "未获取到Cookie中的人员编码",
})
return
}
//操作IP
actionIpAddress := c.ClientIP()
r, err := BaseTeacherService.DownLoadTeacherTemplateExcel(bureauId, actionPersonId, actionIpAddress)
if err != nil {
c.JSON(http.StatusOK, Model.Res{
Success: false,
Message: "调用RPC服务失败",
})
return
}
c.Writer.Header().Add("Content-Disposition", fmt.Sprintf("attachment; filename=%s", "教职工模板.xlsx"))
c.Writer.Header().Set("Content-Type", "application/octet-stream")
c.File(r.ExcelPath)
}
// @Summary 导入教职工EXCEL
// @Description 导入教职工EXCEL
// @Tags 教师信息
// @Accept application/x-www-form-urlencoded
// @Produce json
// @Param orgId formData string true "单位ID"
// @Param excelFile formData file true "EXCEL文件"
// @Success 200 {object} Model.Res
// @Router /base/teacher/ImportTeacherExcel [post]
// @X-EmptyLimit ["orgId"]
// @X-LengthLimit [{"orgId":"36,36"}]
// @X-RoleLimit ["1","2","3","4","5","6","7"]
// @X-Sort [10]
func ImportTeacherExcel(c *gin.Context) {
header, _ := c.FormFile("excelFile")
fileId := CommonUtil.GetUUID()
rootPath, _ := os.Getwd()
fileDir := rootPath + "/Html/ExcelTemp/"
filePath := fileDir + fileId + ".xlsx"
c.SaveUploadedFile(header, filePath)
//删除7天前无用的模板文件
BaseTeacherService.DeleteInvalidFile(fileDir)
//单位ID多个用逗号分隔
bureauId := c.PostForm("orgId")
//操作人
actionPersonId, err := c.Cookie("person_id")
if err != nil {
c.JSON(http.StatusOK, Model.Res{
Success: false,
Message: "未获取到Cookie中的人员编码",
})
return
}
//操作IP
actionIpAddress := c.ClientIP()
r, err := BaseTeacherService.ImportTeacherExcel(bureauId, filePath, actionPersonId, actionIpAddress)
if err != nil {
c.JSON(http.StatusOK, Model.Res{
Success: false,
Message: "调用RPC服务失败",
})
return
}
message := ""
errorCode := ""
if r.Message == "01" {
errorCode = r.Message
message = "上传的模板不是系统提供的,请重新下载系统提供的模板进行上传!"
} else if r.Message == "02" {
errorCode = r.Message
message = c.Request.Host + "/base/teacher/DownLoadErrorExcel?fileId=" + fileId + "&fileName=" + url.QueryEscape(strings.Split(header.Filename, ".xlsx")[0])
} else if r.Message == "03" {
errorCode = "03"
message = "上传文件未找到!"
} else {
message = r.Message
}
c.JSON(http.StatusOK, Model.Res{
Success: r.Success,
ErrorCode: errorCode,
Message: message,
})
}
/**
功能下载教师错误的EXCEL模板
作者:吴缤
日期2020-07-20
*/
func DownLoadErrorExcel(c *gin.Context) {
fileId := c.Query("fileId")
fileName := c.Query("fileName")
c.Writer.Header().Add("Content-Disposition", fmt.Sprintf("attachment; filename=%s", fileName+".xlsx"))
c.Writer.Header().Set("Content-Type", "application/octet-stream")
rootPath, _ := os.Getwd()
fileDir := rootPath + "/Html/ExcelTemp/" + fileId + ".xlsx"
c.File(fileDir)
}
// @Summary 设置教师多单位
// @Description 设置教师多单位
// @Tags 教师信息
// @Accept application/x-www-form-urlencoded
// @Produce json
// @Param orgId formData string true "部门ID"
// @Param personId formData string true "教职工ID"
// @Success 200 {object} Model.Res
// @Router /base/teacher/SettingTeacherMultipleBureauInfo [post]
// @X-EmptyLimit ["orgId","personId"]
// @X-LengthLimit [{"orgId":"36,36"},{"personId":"36,36"}]
// @X-RoleLimit ["1","3","4"]
// @X-Sort [11]
func SettingTeacherMultipleBureauInfo(c *gin.Context) {
//部门ID
orgId := c.PostForm("orgId")
//教职工ID
personId := c.PostForm("personId")
r, err := BaseTeacherService.SettingTeacherMultipleBureauInfo(orgId, personId)
if err != nil {
c.JSON(http.StatusOK, Model.Res{
Success: false,
Message: "调用RPC服务失败",
})
return
}
c.JSON(http.StatusOK, Model.Res{
Success: r.Success,
Message: r.Message,
})
}
// @Summary 根据教职工ID获取该教职工所在多单位列表
// @Description 根据教职工ID获取该教职工所在多单位列表
// @Tags 教师信息
// @Accept application/x-www-form-urlencoded
// @Produce json
// @Param personId query string true "教职工ID"
// @Success 200 {object} Model.Res
// @Router /base/teacher/PageTeacherMultipleBureauInfo [get]
// @X-EmptyLimit ["personId"]
// @X-LengthLimit [{"personId":"36,36"}]
// @X-RoleLimit ["1","3","4"]
// @X-RemoveSwaggerField ["identity_id","id_int","xmpy","cym","gwzym","b_use","state_id","last_updated_time"]
// @X-Sort [12]
func PageTeacherMultipleBureauInfo(c *gin.Context) {
//教职工ID
personId := c.Query("personId")
r, err := BaseTeacherService.PageTeacherMultipleBureauInfo(personId)
if err != nil {
c.JSON(http.StatusOK, Model.Res{
Success: false,
Message: "调用RPC服务失败",
})
return
}
c.JSON(http.StatusOK, Model.Res{
Success: r.Success,
Message: r.Message,
List: CommonUtil.ConvertJsonStringToMapArray(r.List),
Count: r.Count,
})
}
// @Summary 删除教职工所在多单位信息
// @Description 删除教职工所在多单位信息
// @Tags 教师信息
// @Accept application/x-www-form-urlencoded
// @Produce json
// @Param id formData string true "ID"
// @Success 200 {object} Model.Res
// @Router /base/teacher/DeleteTeacherMultipleBureauInfo [post]
// @X-EmptyLimit ["id"]
// @X-LengthLimit [{"id":"36,36"}]
// @X-RoleLimit ["1","3","4"]
// @X-Sort [13]
func DeleteTeacherMultipleBureauInfo(c *gin.Context) {
//ID
id := c.PostForm("id")
r, err := BaseTeacherService.DeleteTeacherMultipleBureauInfo(id)
if err != nil {
c.JSON(http.StatusOK, Model.Res{
Success: false,
Message: "调用RPC服务失败",
})
return
}
c.JSON(http.StatusOK, Model.Res{
Success: r.Success,
Message: r.Message,
})
}
// @Summary 设置主单位
// @Description 设置主单位
// @Tags 教师信息
// @Accept application/x-www-form-urlencoded
// @Produce json
// @Param id formData string true "ID"
// @Param personId formData string true "人员ID"
// @Success 200 {object} Model.Res
// @Router /base/teacher/SettingMainOrgInfo [post]
// @X-EmptyLimit ["id"]
// @X-LengthLimit [{"id":"36,36"}]
// @X-RoleLimit ["1","3","4"]
// @X-Sort [14]
func SettingMainOrgInfo(c *gin.Context) {
//ID
id := c.PostForm("id")
//人员ID
personId := c.PostForm("personId")
r, err := BaseTeacherService.SettingMainOrgInfo(id, personId)
if err != nil {
c.JSON(http.StatusOK, Model.Res{
Success: false,
Message: "调用RPC服务失败",
})
return
}
c.JSON(http.StatusOK, Model.Res{
Success: r.Success,
Message: r.Message,
})
}
// @Summary 教师调转单位
// @Description 教师调转单位
// @Tags 教师信息
// @Accept application/x-www-form-urlencoded
// @Produce json
// @Param orgId formData string true "部门ID"
// @Param personId formData string true "人员ID"
// @Success 200 {object} Model.Res
// @Router /base/teacher/TeacherTransferInfo [post]
// @X-EmptyLimit ["orgId","personId"]
// @X-LengthLimit [{"orgId":"36,36"},{"personId":"36,36"}]
// @X-RoleLimit ["1","3","4"]
// @X-Sort [15]
func TeacherTransferInfo(c *gin.Context) {
//部门ID
orgId := c.PostForm("orgId")
//人员ID
personId := c.PostForm("personId")
r, err := BaseTeacherService.TeacherTransferInfo(orgId, personId)
if err != nil {
c.JSON(http.StatusOK, Model.Res{
Success: false,
Message: "调用RPC服务失败",
})
return
}
c.JSON(http.StatusOK, Model.Res{
Success: r.Success,
Message: r.Message,
})
}