diff --git a/src/api/signup/commonStudent.js b/src/api/signup/commonStudent.js new file mode 100644 index 00000000..0c0dad66 --- /dev/null +++ b/src/api/signup/commonStudent.js @@ -0,0 +1,33 @@ +import ajax2 from "../unionAjax.js"; + +export const STUDENT_LIST = "/manageApi/admin/student/getStudent"; +export const USER_LIST_PAGE = "/manageApi/admin/thirdApi/user/list"; +export const ORG_LIST = "/manageApi/admin/thirdApi/org/list"; +export const ORG_CHILD_LIST = "/manageApi/admin/thirdApi/org/info"; +export const AUDIENCE_LIST = "/manageApi/admin/thirdApi/audience/userAudiences"; + +// 保存学员信息(走 manageApi,POST) +export const saveStu = (data) => + ajax2.postJson("/manageApi", "/admin/student/addStudent", data); + +// 获取项目学员列表(走 manageApi,GET) +export const fetchProjectStudents = (params = {}) => { + return ajax2.get1(STUDENT_LIST, params); +}; + +// 快速学员搜索(走 manageApi,POST) +export const fetchQuickStudents = (params) => + ajax2.get1(USER_LIST_PAGE, params); + +// 组织列表(走 manageApi,POST) +export const fetchOrgList = (params) => + ajax2.get1(ORG_LIST, params); + +// 子组织列表(走 manageApi,POST) +export const fetchOrgChildren = (params) => + ajax2.get1(ORG_CHILD_LIST, params); + +// 受众列表(走 manageApi,POST) +export const fetchAudienceList = (params) => + ajax2.get1(AUDIENCE_LIST, params); + diff --git a/src/api/unionAjax.js b/src/api/unionAjax.js index 424c237a..63510c31 100644 --- a/src/api/unionAjax.js +++ b/src/api/unionAjax.js @@ -106,6 +106,15 @@ const get = function (baseURL, url) { }) } +const get1= function (baseURL, params) { + return request({ + baseURL, + method: 'get', + params: params, + headers: {'Content-Type': 'application/x-www-form-urlencoded'} + }) +} + /** * post请求 * @param {Object} url @@ -199,6 +208,7 @@ export default { tokenName: TokenName, request, get, + get1, post, postJson, postJsonToFile, diff --git a/src/assets/images/basicinfo/add.png b/src/assets/images/basicinfo/add.png new file mode 100644 index 00000000..4a173bdd Binary files /dev/null and b/src/assets/images/basicinfo/add.png differ diff --git a/src/assets/images/basicinfo/asterisk.png b/src/assets/images/basicinfo/asterisk.png new file mode 100644 index 00000000..49c7ac99 Binary files /dev/null and b/src/assets/images/basicinfo/asterisk.png differ diff --git a/src/assets/images/basicinfo/call.png b/src/assets/images/basicinfo/call.png new file mode 100644 index 00000000..5b2e4051 Binary files /dev/null and b/src/assets/images/basicinfo/call.png differ diff --git a/src/assets/images/basicinfo/ch.png b/src/assets/images/basicinfo/ch.png new file mode 100644 index 00000000..a36538bf Binary files /dev/null and b/src/assets/images/basicinfo/ch.png differ diff --git a/src/assets/images/basicinfo/check.png b/src/assets/images/basicinfo/check.png new file mode 100644 index 00000000..cc8fce54 Binary files /dev/null and b/src/assets/images/basicinfo/check.png differ diff --git a/src/assets/images/basicinfo/close.png b/src/assets/images/basicinfo/close.png new file mode 100644 index 00000000..26992042 Binary files /dev/null and b/src/assets/images/basicinfo/close.png differ diff --git a/src/assets/images/basicinfo/close22.png b/src/assets/images/basicinfo/close22.png new file mode 100644 index 00000000..897eb67b Binary files /dev/null and b/src/assets/images/basicinfo/close22.png differ diff --git a/src/assets/images/basicinfo/cloud.png b/src/assets/images/basicinfo/cloud.png new file mode 100644 index 00000000..06e258c7 Binary files /dev/null and b/src/assets/images/basicinfo/cloud.png differ diff --git a/src/assets/images/basicinfo/download.png b/src/assets/images/basicinfo/download.png new file mode 100644 index 00000000..2efba862 Binary files /dev/null and b/src/assets/images/basicinfo/download.png differ diff --git a/src/assets/images/basicinfo/edit.png b/src/assets/images/basicinfo/edit.png new file mode 100644 index 00000000..1bbecc7f Binary files /dev/null and b/src/assets/images/basicinfo/edit.png differ diff --git a/src/assets/images/basicinfo/exl.png b/src/assets/images/basicinfo/exl.png new file mode 100644 index 00000000..bd777bcb Binary files /dev/null and b/src/assets/images/basicinfo/exl.png differ diff --git a/src/assets/images/basicinfo/in.png b/src/assets/images/basicinfo/in.png new file mode 100644 index 00000000..413c902b Binary files /dev/null and b/src/assets/images/basicinfo/in.png differ diff --git a/src/assets/images/basicinfo/in2.png b/src/assets/images/basicinfo/in2.png new file mode 100644 index 00000000..71de74bf Binary files /dev/null and b/src/assets/images/basicinfo/in2.png differ diff --git a/src/assets/images/basicinfo/see.png b/src/assets/images/basicinfo/see.png new file mode 100644 index 00000000..9dd65373 Binary files /dev/null and b/src/assets/images/basicinfo/see.png differ diff --git a/src/components/signup/SignupModal.vue b/src/components/signup/SignupModal.vue new file mode 100644 index 00000000..177cd6d5 --- /dev/null +++ b/src/components/signup/SignupModal.vue @@ -0,0 +1,735 @@ + + + + + diff --git a/src/views/course/CourseManage.vue b/src/views/course/CourseManage.vue index 9ea1b149..5b953dc0 100644 --- a/src/views/course/CourseManage.vue +++ b/src/views/course/CourseManage.vue @@ -46,6 +46,20 @@
+ + + 添加报名 + + + 未设置受众 + 设置受众 + + 导出报名记录
@@ -71,6 +85,21 @@ + + +
@@ -226,6 +255,12 @@
+
@@ -448,10 +483,17 @@ import apiStudy from "@/api/modules/courseStudy.js"; import { getToken } from "@/utils/token"; import axios from "axios"; import NameFilterSelect from "@/components/NameFilterSelect/index.vue"; +import SignupModal from "@/components/signup/SignupModal.vue"; NameFilterSelect; export default { - components: { NameFilterSelect }, + components: { NameFilterSelect, SignupModal }, + props: { + showSignupActions: { + type: Boolean, + default: false, + }, + }, computed: { ...mapGetters(["resOwnerMap", "sysTypeMap"]), }, @@ -527,6 +569,8 @@ export default { signType: "", aid: [], }, + addSignupVisible: false, + addSignupMode: "plain", courseType: courseType, value: "", input: "", @@ -632,6 +676,33 @@ export default { loadSysTypes: "sysType/loadSysTypes", }), + openAddSignup(command) { + this.addSignupMode = command === "audience" ? "audience" : "plain"; + this.addSignupVisible = true; + }, + handleSignupCreate(payload) { + console.log("signup payload", payload); + this.$message.success("已记录添加报名操作(待接入后端接口)"); + }, + handleDeleteSignup(row) { + this.$confirm("确定删除该报名记录吗?", "提示", { + confirmButtonText: "确定", + cancelButtonText: "取消", + type: "warning", + }) + .then(() => { + return apicourseStudy.deleteSignUp(row.id, this.courseDetail.id); + }) + .then((res) => { + if (res && res.status === 200) { + this.$message.success("删除成功"); + this.getSignupList(); + } else if (res) { + this.$message.error(res.message || "删除失败"); + } + }) + .catch(() => {}); + }, resetCommonResourceQuery() { this.commonResourceStudyPeopleQuery = { diff --git a/src/views/course/CourseManageRemote.vue b/src/views/course/CourseManageRemote.vue index 5026c967..9d144d91 100644 --- a/src/views/course/CourseManageRemote.vue +++ b/src/views/course/CourseManageRemote.vue @@ -1,7 +1,7 @@ diff --git a/src/views/course/ManageListRemote.vue b/src/views/course/ManageListRemote.vue index 150f2c44..fdc66fc1 100644 --- a/src/views/course/ManageListRemote.vue +++ b/src/views/course/ManageListRemote.vue @@ -50,7 +50,7 @@
- + @@ -58,7 +58,7 @@
- + @@ -81,7 +81,7 @@
- + @@ -96,7 +96,7 @@
- +