From 10a8094a3c380dd6f97858d58b333ac25c31288b Mon Sep 17 00:00:00 2001
From: Esacpe <1113279529@qq.com>
Date: Wed, 24 Sep 2025 20:30:47 +0800
Subject: [PATCH 1/3] =?UTF-8?q?=E6=9B=B4=E6=96=B0?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/assets/css/element-plus.scss | 2 +-
src/assets/css/layout.scss | 2 +
.../components/detailForm.vue | 90 +++++++++----------
.../components/detailForm.vue | 2 +-
4 files changed, 48 insertions(+), 48 deletions(-)
diff --git a/src/assets/css/element-plus.scss b/src/assets/css/element-plus.scss
index 3438eae..eaf1d1d 100644
--- a/src/assets/css/element-plus.scss
+++ b/src/assets/css/element-plus.scss
@@ -240,7 +240,7 @@
}
::v-deep .el-date-editor .el-range-separator {
- color: #fcfcfc;
+ color: #333;
}
::v-deep .el-input.is-disabled .el-input__inner {
diff --git a/src/assets/css/layout.scss b/src/assets/css/layout.scss
index ff6f68d..295a4ef 100644
--- a/src/assets/css/layout.scss
+++ b/src/assets/css/layout.scss
@@ -263,6 +263,8 @@
right: 0px;
left: 0px;
background: #fff;
+ padding: 0 10px 10px;
+ box-sizing: border-box;
}
}
}
diff --git a/src/views/Training/AnnualInspectionTraining/components/detailForm.vue b/src/views/Training/AnnualInspectionTraining/components/detailForm.vue
index f9d26db..c386c52 100644
--- a/src/views/Training/AnnualInspectionTraining/components/detailForm.vue
+++ b/src/views/Training/AnnualInspectionTraining/components/detailForm.vue
@@ -7,9 +7,43 @@
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
培训保安人员
import MyTable from "@/components/aboutTable/MyTable.vue";
import { qcckPost , qcckGet} from "@/api/qcckApi.js";
-import FormMessage from "@/components/aboutTable/FormMessage.vue";
import { ref, reactive,defineEmits,getCurrentInstance } from 'vue';
const emit = defineEmits(["refresh"]);
const dialogForm = ref(false);
-const FormRef = ref();
-const listQuery = ref({});
-const formList = reactive([
- [
- { label: "培训日期", prop: "pxrq", type: "input" },
- { label: "培训时间", prop: "pxsj", type: "input" },
- { label: "课程名称", prop: "kcmc", type: "input" },
- ],
- [
- { label: "组织单位", prop: "zzdw", type: "input" },
- { label: "授课教员", prop: "skfcy", type: "input" },
- { label: "培训内容", prop: "pxnr", type: "input" },
- ],
- { label: "分割线", prop: "diver", type: "slot" },
- [
- { label: "培训日期", prop: "pxrq", type: "input" },
- { label: "培训时间", prop: "pxsj", type: "input" },
- { label: "课程名称", prop: "kcmc", type: "input" },
- ],
- [
- { label: "组织单位", prop: "zzdw", type: "input" },
- { label: "授课教员", prop: "skfcy", type: "input" },
- { label: "培训内容", prop: "pxnr", type: "input" },
- ],
- { label: "分割线", prop: "diver", type: "slot" },
- [
- { label: "培训日期", prop: "pxrq", type: "input" },
- { label: "培训时间", prop: "pxsj", type: "input" },
- { label: "课程名称", prop: "kcmc", type: "input" },
- ],
- [
- { label: "组织单位", prop: "zzdw", type: "input" },
- { label: "授课教员", prop: "skfcy", type: "input" },
- { label: "培训内容", prop: "pxnr", type: "input" },
- ],
-
-])
-
+const listQuery = ref({pxkcList:[]});
const pageData = reactive({
tableData: [],
keyCount: 0,
@@ -84,17 +80,19 @@ const pageData = reactive({
]
});
-
// 初始化数据
const init = async (type, id) => {
dialogForm.value = true;
- const res = await qcckGet({ url: `/mosty-base/baxx/njpx/getInfo/${id}`})
- listQuery.value = res || {}
+ const res = await qcckGet({},`/mosty-base/baxx/njpx/getInfo/${id}`)
+ console.log(res,'=========');
+ listQuery.value.pxkcList = res.pxkcList || []
+ pageData.tableData = res.pxryList || []
};
const close = () => {
dialogForm.value = false;
- FormRef.value.reset()
+ listQuery.value.pxkcList = []
+ pageData.tableData = []
};;
defineExpose({init})
diff --git a/src/views/Training/SecurityTrainingSyllabus/components/detailForm.vue b/src/views/Training/SecurityTrainingSyllabus/components/detailForm.vue
index 5804e1e..755e493 100644
--- a/src/views/Training/SecurityTrainingSyllabus/components/detailForm.vue
+++ b/src/views/Training/SecurityTrainingSyllabus/components/detailForm.vue
@@ -46,7 +46,7 @@ const formList = reactive([
{ label: "教学目标", prop: "jxmb", type: "input" },
],
[
- { label: "学时安排", prop: "gksc", type: "number" },
+ { label: "学时安排", prop: "gksc", type: "input" },
],
[
{ label: "上传附件", prop: "fj", type: "upload" },
From 6fe683e97ea05984383027f0d4d203ad2310990e Mon Sep 17 00:00:00 2001
From: esacpe <12345678>
Date: Wed, 24 Sep 2025 20:32:05 +0800
Subject: [PATCH 2/3] =?UTF-8?q?'=E8=80=83=E8=AF=95=E7=AE=A1=E7=90=86?=
=?UTF-8?q?=E4=BA=BA=E5=91=98=E7=AE=A1=E7=90=86'?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/assets/css/element-plus.scss | 10 +++++-----
src/styles/index.scss | 16 ++++++++--------
src/utils/dict.js | 10 +++++-----
.../components/detailForm.vue | 4 ++--
.../Training/SecurityQuestionBank/index.vue | 3 +--
.../components/detailForm.vue | 3 +--
.../components/viewExamDetalis.vue | 15 ++++++++-------
.../components/addTrainerDialog.vue | 9 +++++----
.../components/selectTtaningDialog.vue | 16 +++++++++-------
.../components/addPractitionerDialog.vue | 4 ++--
.../trainer/components/addTrainerDialog.vue | 4 ++--
11 files changed, 48 insertions(+), 46 deletions(-)
diff --git a/src/assets/css/element-plus.scss b/src/assets/css/element-plus.scss
index eaf1d1d..c428d04 100644
--- a/src/assets/css/element-plus.scss
+++ b/src/assets/css/element-plus.scss
@@ -13,16 +13,16 @@
}
::v-deep .el-input__inner {
- background-color: #fff;
- border: 1px solid #e9e9e9 !important;
+ // background-color: #fff;
+ // border: 1px solid #e9e9e9 !important;
&:hover {
- border: 1px solid #0065d8;
+ // border: 1px solid #0065d8;
}
&:focus {
- border: 1px solid #1c84fa;
- box-shadow: 0px 0px 8px #0a6bfc;
+ // border: 1px solid #1c84fa;
+ // box-shadow: 0px 0px 8px #0a6bfc;
}
}
diff --git a/src/styles/index.scss b/src/styles/index.scss
index 8ee4c59..26a57cc 100644
--- a/src/styles/index.scss
+++ b/src/styles/index.scss
@@ -97,14 +97,6 @@ div:focus {
border-color: rgb(8, 85, 170);
}
-::v-deep {
- .el-input__inner, .el-input__inner:hover, .el-input__inner:focus {
- border: none !important;
- box-shadow: none;
- background-color: transparent;
- }
-}
-
.new-btn-class-bj {
color: #409eff;
margin-right: 10px;
@@ -117,4 +109,12 @@ div:focus {
}
.new-btn-class-sc:hover {
border-bottom: 1px solid #f56c6c;
+}
+
+::v-deep {
+ .el-input__inner, .el-input__inner:hover, .el-input__inner:focus {
+ border: none !important;
+ box-shadow: none;
+ background-color: transparent;
+ }
}
\ No newline at end of file
diff --git a/src/utils/dict.js b/src/utils/dict.js
index 68e8d34..4c89708 100644
--- a/src/utils/dict.js
+++ b/src/utils/dict.js
@@ -17,7 +17,7 @@ export function getDict(...args) {
getSysDictByCode({
dictCode: d
}).then(result => {
- result.itemList.forEach(p => {
+ result?.itemList?.forEach(p => {
p.label = p.zdmc
p.value = p.dm
p.id = p.dm
@@ -27,7 +27,7 @@ export function getDict(...args) {
}
p.children = p.itemList
})
- res.value[d] = result.itemList
+ res.value[d] = result?.itemList
})
})
return toRefs(res.value);
@@ -66,9 +66,9 @@ export function setCascader(id, array, childDeptList = 'childDeptList', fun) {
}
/**
* 当type=1时获取出生日期,type=2时获取性别,type=3时获取年龄 all
- * @param {*} IdCard
- * @param {*} type
- * @returns
+ * @param {*} IdCard
+ * @param {*} type
+ * @returns
*/
export function IdCard(IdCard, type) {
let user = {
diff --git a/src/views/Training/SecurityQuestionBank/components/detailForm.vue b/src/views/Training/SecurityQuestionBank/components/detailForm.vue
index 7bbf148..5be5d6d 100644
--- a/src/views/Training/SecurityQuestionBank/components/detailForm.vue
+++ b/src/views/Training/SecurityQuestionBank/components/detailForm.vue
@@ -22,7 +22,7 @@ import { ref, reactive,defineEmits,getCurrentInstance } from 'vue';
const emit = defineEmits(["refresh"]);
const { proxy } = getCurrentInstance();
-const { D_BAXX_KTLX } = proxy.dict("D_BAXX_KTLX");
+const { D_BAXX_KTLX } = proxy.$dict("D_BAXX_KTLX");
const dialogForm = ref(false);
const title = ref('');
@@ -45,7 +45,7 @@ const rules = reactive({
const formList = reactive([
[
- { label: "题型", prop: "type", type: "select", options: D_BAXX_KTLX },
+ { label: "题型", prop: "type", type: "select", options: D_BAXX_KTLX, },
{ label: "题目", prop: "tm", type: "input" },
],
[
diff --git a/src/views/Training/SecurityQuestionBank/index.vue b/src/views/Training/SecurityQuestionBank/index.vue
index b11770f..aee65fa 100644
--- a/src/views/Training/SecurityQuestionBank/index.vue
+++ b/src/views/Training/SecurityQuestionBank/index.vue
@@ -35,7 +35,7 @@
}">
-
+
@@ -49,7 +49,6 @@ import { qcckGet, qcckPost, qcckDelete } from "@/api/qcckApi.js";
import { reactive, ref, onMounted, getCurrentInstance, nextTick } from "vue";
const { proxy } = getCurrentInstance();
-const { D_BAXX_KTLX } = proxy.$dict("D_BAXX_KTLX")
const detailDiloag = ref();
const searchBox = ref(); //搜索框
const baseUrl = 'data:image/jpeg;base64,'
diff --git a/src/views/Training/SecurityTrainingVideo/components/detailForm.vue b/src/views/Training/SecurityTrainingVideo/components/detailForm.vue
index 0f0e9b5..e235ab2 100644
--- a/src/views/Training/SecurityTrainingVideo/components/detailForm.vue
+++ b/src/views/Training/SecurityTrainingVideo/components/detailForm.vue
@@ -8,8 +8,7 @@
-
-
+
diff --git a/src/views/securityManagement/examManagement/components/viewExamDetalis.vue b/src/views/securityManagement/examManagement/components/viewExamDetalis.vue
index a3cd8b0..1e9f8ba 100644
--- a/src/views/securityManagement/examManagement/components/viewExamDetalis.vue
+++ b/src/views/securityManagement/examManagement/components/viewExamDetalis.vue
@@ -27,8 +27,8 @@
>
- 申请证件
-
+ 申请证件
+
上传成绩
查看成绩
@@ -96,9 +96,9 @@ const pageData = reactive({
{ label: "姓名", prop: "xm" },
{ label: "证件号码", prop: "sfzh" },
{ label: "联系方式", prop: "lxdh" },
- { label: "线上培训时间", prop: "sfzh" },
- { label: "线下培训课程", prop: "lxdh" },
- { label: "考试成绩", prop: "lxdh" },
+ { label: "线上培训时间", prop: "" },
+ { label: "线下培训课程", prop: "" },
+ { label: "考试成绩", prop: "ksfs" },
]
});
@@ -109,7 +109,7 @@ const close = () => {
}
// 根据项目id获取培训人员
-const getList = async ({ id = "" }) => {
+const getList = async ({ id = "" }, type = '') => {
const res = await qcckPost({
...pageData.pageConfiger,
// sfcjpx: 1,
@@ -118,11 +118,12 @@ const getList = async ({ id = "" }) => {
if (res) {
pageData.tableData = res.records || [];
pageData.total = res.total;
+ if (!type) emits("refresh");
}
}
const open = (row = {}, type = 'add') => {
- getList(row)
+ getList(row, type)
disabled.value = false
dialogVisible.value = true
formData.value = { ...row }
diff --git a/src/views/securityManagement/personnelManagement/applicantPersonnel/components/addTrainerDialog.vue b/src/views/securityManagement/personnelManagement/applicantPersonnel/components/addTrainerDialog.vue
index 55b5696..4b156fe 100644
--- a/src/views/securityManagement/personnelManagement/applicantPersonnel/components/addTrainerDialog.vue
+++ b/src/views/securityManagement/personnelManagement/applicantPersonnel/components/addTrainerDialog.vue
@@ -39,7 +39,7 @@ const props = defineProps({
}
})
-const emits = defineEmits(['update:modelValue'])
+const emits = defineEmits(['update:modelValue', 'refresh'])
const dialogVisible = computed({
get() {
@@ -66,7 +66,8 @@ const formList = reactive([
{ label: "身份证反面", prop: "ryzpfm", type: "upload", limit: 1 },
],
[
- { label: "体检报告", prop: "", type: "upload", limit: 1 },
+ { label: "体检报告", prop: "tjbg", type: "upload", limit: 3 },
+ { label: "上传资料", prop: "zl", type: "upload", limit: 3, },
],
[
{ label: "无犯罪记录证明", prop: "wfzzmjl", type: "upload", limit: 1 },
@@ -76,7 +77,7 @@ const formList = reactive([
const rules = {
ryzpzm: [{ required: true, message: "请上传身份证正面", trigger: "change" }],
ryzpfm: [{ required: true, message: "请上传身份证反面", trigger: "change" }],
- // tjbj: [{ required: true, message: "请上传体检报告", trigger: "change" }],
+ tjbg: [{ required: true, message: "请上传体检报告", trigger: "change" }],
wfzzmjl: [{ required: true, message: "请上传无犯罪记录证明", trigger: "change" }],
xm: [{ required: true, message: "请输入姓名", trigger: "change" }],
zjhm: [
@@ -122,11 +123,11 @@ const rules = {
const formData = ref({})
const close = () => {
+ FormRef.value?.reset()
dialogVisible.value = false
}
const open = (row = {}, type = 'add') => {
- FormRef.value?.reset()
disabled.value = false
dialogVisible.value = true
formData.value = { ...row }
diff --git a/src/views/securityManagement/personnelManagement/applicantPersonnel/components/selectTtaningDialog.vue b/src/views/securityManagement/personnelManagement/applicantPersonnel/components/selectTtaningDialog.vue
index c6843b3..1ff7add 100644
--- a/src/views/securityManagement/personnelManagement/applicantPersonnel/components/selectTtaningDialog.vue
+++ b/src/views/securityManagement/personnelManagement/applicantPersonnel/components/selectTtaningDialog.vue
@@ -10,9 +10,12 @@
diff --git a/src/views/securityManagement/personnelManagement/applicantPersonnel/index.vue b/src/views/securityManagement/personnelManagement/applicantPersonnel/index.vue
index 14b853e..fcc830a 100644
--- a/src/views/securityManagement/personnelManagement/applicantPersonnel/index.vue
+++ b/src/views/securityManagement/personnelManagement/applicantPersonnel/index.vue
@@ -12,12 +12,15 @@
+
+ {{ row?.pxgs === '01' ? `是` : `否` }}
+
{{ row?.sfpx === '01' ? `否` : `是` }}
- 上传资料
+ 上传资料
删除
详情
提交培训公司
@@ -31,7 +34,8 @@
-
+
+
@@ -43,13 +47,16 @@ import Search from '@/components/aboutTable/Search.vue';
import { qcckGet, qcckPost, qcckDelete } from "@/api/qcckApi.js";
import PageTitle from "@/components/aboutTable/PageTitle.vue";
import AddTrainerDialog from "./components/addTrainerDialog.vue";
+import UploadDataDialog from "./components/uploadDataDialog.vue";
import selectTtaningDialog from "./components/selectTtaningDialog.vue";
const { proxy } = getCurrentInstance();
const trainerRef = ref(null);
const selectTtaningRef = ref(null);
+const uploadDataRef = ref(null);
const queryFrom = ref({});
const isVisible = ref(false);
+const uploadVisible = ref(false);
const dialogVisible = ref(false);
const searchBox = ref(null);
const searchConfiger = ref([
@@ -93,7 +100,7 @@ const pageData = reactive({
{ label: "联系方式", prop: "lxdh" },
{ label: "岗位", prop: "gw" },
{ label: "申请时间", prop: "xtCjsj" },
- { label: "是否上传资料", prop: "pxgs" },
+ { label: "是否上传资料", prop: "pxgs", showSolt: true },
{ label: "是否线上培训", prop: "sfpx", showSolt: true },
]
});
@@ -110,10 +117,11 @@ const tabHeightFn = () => {
const addEdit = (type, row) => {
if (type === 'select') {
selectTtaningRef.value.open(row, type);
- return
+ } else if (type === 'upload') {
+ uploadDataRef.value.open(row, type);
+ } else {
+ trainerRef.value.open(row, type);
}
-
- trainerRef.value.open(row, type);
};
const onSearch = (value) => {
@@ -143,11 +151,9 @@ const handleDelete = async (ids) => {
await proxy.$modal.confirm("是否确认删除该培训人员?")
try {
- const res = await qcckDelete({ ids }, `/mosty-base/baxx/basq/delete`)
- if (res) {
- proxy.$modal.msgSuccess("删除成功");
- await getList();
- }
+ await qcckPost({ ids }, `/mosty-base/baxx/basq/remove`)
+ proxy.$modal.msgSuccess("删除成功");
+ await getList();
} catch (error) {
proxy.$modal.msgError("删除失败");
}
diff --git a/src/views/securityManagement/trainingManagement/personnelTraining/components/viewInfoDialog.vue b/src/views/securityManagement/trainingManagement/personnelTraining/components/viewInfoDialog.vue
index 11f94a5..221623d 100644
--- a/src/views/securityManagement/trainingManagement/personnelTraining/components/viewInfoDialog.vue
+++ b/src/views/securityManagement/trainingManagement/personnelTraining/components/viewInfoDialog.vue
@@ -12,9 +12,9 @@
{{ formData.xm }}
{{ formData.sfzh }}
{{ formData.lxdh }}
-
+ {{ formData.ssbags }}
{{ formData.pxsc }}
-
+ {{ formData.tjrq }}
diff --git a/src/views/securityManagement/trainingManagement/personnelTraining/index.vue b/src/views/securityManagement/trainingManagement/personnelTraining/index.vue
index 95d69aa..51672a6 100644
--- a/src/views/securityManagement/trainingManagement/personnelTraining/index.vue
+++ b/src/views/securityManagement/trainingManagement/personnelTraining/index.vue
@@ -35,7 +35,7 @@