diff --git a/src/api/measure/measureDept.ts b/src/api/measure/measureDept.ts
index 9a30ce3..3d34a2b 100644
--- a/src/api/measure/measureDept.ts
+++ b/src/api/measure/measureDept.ts
@@ -43,3 +43,11 @@
data,
})
}
+// 获取父级组织
+export function getpDeptApi(data: object) {
+ return request({
+ url: '/meter/organize/deptInfo',
+ method: 'post',
+ data,
+ })
+}
diff --git a/src/api/measure/measureDept.ts b/src/api/measure/measureDept.ts
index 9a30ce3..3d34a2b 100644
--- a/src/api/measure/measureDept.ts
+++ b/src/api/measure/measureDept.ts
@@ -43,3 +43,11 @@
data,
})
}
+// 获取父级组织
+export function getpDeptApi(data: object) {
+ return request({
+ url: '/meter/organize/deptInfo',
+ method: 'post',
+ data,
+ })
+}
diff --git a/src/api/system/notice.ts b/src/api/system/notice.ts
index 9f38397..90ae2a7 100644
--- a/src/api/system/notice.ts
+++ b/src/api/system/notice.ts
@@ -8,8 +8,10 @@
export interface listParamsType {
noticeNo: string // 编号
noticePublisher: string // 发布人
- noticeTime: string // 发布时间
+ noticeTime?: string // 发布时间
noticeTitle: string // 标题
+ noticeStartTime: string // 标题
+ noticeEndTime: string // 标题
limit: number
offset: number
}
@@ -43,4 +45,29 @@
data,
})
}
+// 通知公告删除
+export function removeNoticeApi(data: object) {
+ return request({
+ url: `${prefix}/notice/delete`,
+ method: 'post',
+ data,
+ })
+}
+// 通知公告编辑
+export function updateNoticeApi(data: object) {
+ return request({
+ url: `${prefix}/notice/update`,
+ method: 'post',
+ data,
+ })
+}
+// 导出通知公告
+export function exportNoticeApi(data: object) {
+ return request({
+ url: `${prefix}/notice/update`,
+ method: 'post',
+ data,
+ responseType: 'blob',
+ })
+}
diff --git a/src/api/measure/measureDept.ts b/src/api/measure/measureDept.ts
index 9a30ce3..3d34a2b 100644
--- a/src/api/measure/measureDept.ts
+++ b/src/api/measure/measureDept.ts
@@ -43,3 +43,11 @@
data,
})
}
+// 获取父级组织
+export function getpDeptApi(data: object) {
+ return request({
+ url: '/meter/organize/deptInfo',
+ method: 'post',
+ data,
+ })
+}
diff --git a/src/api/system/notice.ts b/src/api/system/notice.ts
index 9f38397..90ae2a7 100644
--- a/src/api/system/notice.ts
+++ b/src/api/system/notice.ts
@@ -8,8 +8,10 @@
export interface listParamsType {
noticeNo: string // 编号
noticePublisher: string // 发布人
- noticeTime: string // 发布时间
+ noticeTime?: string // 发布时间
noticeTitle: string // 标题
+ noticeStartTime: string // 标题
+ noticeEndTime: string // 标题
limit: number
offset: number
}
@@ -43,4 +45,29 @@
data,
})
}
+// 通知公告删除
+export function removeNoticeApi(data: object) {
+ return request({
+ url: `${prefix}/notice/delete`,
+ method: 'post',
+ data,
+ })
+}
+// 通知公告编辑
+export function updateNoticeApi(data: object) {
+ return request({
+ url: `${prefix}/notice/update`,
+ method: 'post',
+ data,
+ })
+}
+// 导出通知公告
+export function exportNoticeApi(data: object) {
+ return request({
+ url: `${prefix}/notice/update`,
+ method: 'post',
+ data,
+ responseType: 'blob',
+ })
+}
diff --git a/src/api/system/tool.ts b/src/api/system/tool.ts
index 1798ce5..7b61c3f 100644
--- a/src/api/system/tool.ts
+++ b/src/api/system/tool.ts
@@ -72,7 +72,7 @@
templateNo: string // 编号
templateName: string // 名称
templateCreator: string // 负责人
- createTime: string // 创建时间
+ // createTime: string // 创建时间
limit: number
offset: number
templateType: string
diff --git a/src/api/measure/measureDept.ts b/src/api/measure/measureDept.ts
index 9a30ce3..3d34a2b 100644
--- a/src/api/measure/measureDept.ts
+++ b/src/api/measure/measureDept.ts
@@ -43,3 +43,11 @@
data,
})
}
+// 获取父级组织
+export function getpDeptApi(data: object) {
+ return request({
+ url: '/meter/organize/deptInfo',
+ method: 'post',
+ data,
+ })
+}
diff --git a/src/api/system/notice.ts b/src/api/system/notice.ts
index 9f38397..90ae2a7 100644
--- a/src/api/system/notice.ts
+++ b/src/api/system/notice.ts
@@ -8,8 +8,10 @@
export interface listParamsType {
noticeNo: string // 编号
noticePublisher: string // 发布人
- noticeTime: string // 发布时间
+ noticeTime?: string // 发布时间
noticeTitle: string // 标题
+ noticeStartTime: string // 标题
+ noticeEndTime: string // 标题
limit: number
offset: number
}
@@ -43,4 +45,29 @@
data,
})
}
+// 通知公告删除
+export function removeNoticeApi(data: object) {
+ return request({
+ url: `${prefix}/notice/delete`,
+ method: 'post',
+ data,
+ })
+}
+// 通知公告编辑
+export function updateNoticeApi(data: object) {
+ return request({
+ url: `${prefix}/notice/update`,
+ method: 'post',
+ data,
+ })
+}
+// 导出通知公告
+export function exportNoticeApi(data: object) {
+ return request({
+ url: `${prefix}/notice/update`,
+ method: 'post',
+ data,
+ responseType: 'blob',
+ })
+}
diff --git a/src/api/system/tool.ts b/src/api/system/tool.ts
index 1798ce5..7b61c3f 100644
--- a/src/api/system/tool.ts
+++ b/src/api/system/tool.ts
@@ -72,7 +72,7 @@
templateNo: string // 编号
templateName: string // 名称
templateCreator: string // 负责人
- createTime: string // 创建时间
+ // createTime: string // 创建时间
limit: number
offset: number
templateType: string
diff --git a/src/views/device/borrow/borrow-interface.ts b/src/views/device/borrow/borrow-interface.ts
index 66dd307..7f8f5ce 100644
--- a/src/views/device/borrow/borrow-interface.ts
+++ b/src/views/device/borrow/borrow-interface.ts
@@ -10,6 +10,7 @@
time: string // 申请日期
limit?: number
offset?: number
+ ids?: string[]
}
// 借用设备类型
export interface borrowDeviceType {
diff --git a/src/api/measure/measureDept.ts b/src/api/measure/measureDept.ts
index 9a30ce3..3d34a2b 100644
--- a/src/api/measure/measureDept.ts
+++ b/src/api/measure/measureDept.ts
@@ -43,3 +43,11 @@
data,
})
}
+// 获取父级组织
+export function getpDeptApi(data: object) {
+ return request({
+ url: '/meter/organize/deptInfo',
+ method: 'post',
+ data,
+ })
+}
diff --git a/src/api/system/notice.ts b/src/api/system/notice.ts
index 9f38397..90ae2a7 100644
--- a/src/api/system/notice.ts
+++ b/src/api/system/notice.ts
@@ -8,8 +8,10 @@
export interface listParamsType {
noticeNo: string // 编号
noticePublisher: string // 发布人
- noticeTime: string // 发布时间
+ noticeTime?: string // 发布时间
noticeTitle: string // 标题
+ noticeStartTime: string // 标题
+ noticeEndTime: string // 标题
limit: number
offset: number
}
@@ -43,4 +45,29 @@
data,
})
}
+// 通知公告删除
+export function removeNoticeApi(data: object) {
+ return request({
+ url: `${prefix}/notice/delete`,
+ method: 'post',
+ data,
+ })
+}
+// 通知公告编辑
+export function updateNoticeApi(data: object) {
+ return request({
+ url: `${prefix}/notice/update`,
+ method: 'post',
+ data,
+ })
+}
+// 导出通知公告
+export function exportNoticeApi(data: object) {
+ return request({
+ url: `${prefix}/notice/update`,
+ method: 'post',
+ data,
+ responseType: 'blob',
+ })
+}
diff --git a/src/api/system/tool.ts b/src/api/system/tool.ts
index 1798ce5..7b61c3f 100644
--- a/src/api/system/tool.ts
+++ b/src/api/system/tool.ts
@@ -72,7 +72,7 @@
templateNo: string // 编号
templateName: string // 名称
templateCreator: string // 负责人
- createTime: string // 创建时间
+ // createTime: string // 创建时间
limit: number
offset: number
templateType: string
diff --git a/src/views/device/borrow/borrow-interface.ts b/src/views/device/borrow/borrow-interface.ts
index 66dd307..7f8f5ce 100644
--- a/src/views/device/borrow/borrow-interface.ts
+++ b/src/views/device/borrow/borrow-interface.ts
@@ -10,6 +10,7 @@
time: string // 申请日期
limit?: number
offset?: number
+ ids?: string[]
}
// 借用设备类型
export interface borrowDeviceType {
diff --git a/src/views/device/borrow/borrowHandle.vue b/src/views/device/borrow/borrowHandle.vue
index bca0958..470bad1 100644
--- a/src/views/device/borrow/borrowHandle.vue
+++ b/src/views/device/borrow/borrowHandle.vue
@@ -15,6 +15,13 @@
watch(current, (newValue) => {
currentComp.value = menu.value.filter(item => item.name === newValue)[0].comp
})
+onUnmounted(() => {
+ sessionStorage.setItem('deviceBorrowHandler', current.value)
+})
+onMounted(() => {
+ current.value = sessionStorage.getItem('deviceBorrowHandler') || '待借用'
+ sessionStorage.getItem('deviceBorrowHandler') ? sessionStorage.removeItem('deviceBorrowHandler') : ''
+})
@@ -28,7 +35,7 @@
-
+
diff --git a/src/api/measure/measureDept.ts b/src/api/measure/measureDept.ts
index 9a30ce3..3d34a2b 100644
--- a/src/api/measure/measureDept.ts
+++ b/src/api/measure/measureDept.ts
@@ -43,3 +43,11 @@
data,
})
}
+// 获取父级组织
+export function getpDeptApi(data: object) {
+ return request({
+ url: '/meter/organize/deptInfo',
+ method: 'post',
+ data,
+ })
+}
diff --git a/src/api/system/notice.ts b/src/api/system/notice.ts
index 9f38397..90ae2a7 100644
--- a/src/api/system/notice.ts
+++ b/src/api/system/notice.ts
@@ -8,8 +8,10 @@
export interface listParamsType {
noticeNo: string // 编号
noticePublisher: string // 发布人
- noticeTime: string // 发布时间
+ noticeTime?: string // 发布时间
noticeTitle: string // 标题
+ noticeStartTime: string // 标题
+ noticeEndTime: string // 标题
limit: number
offset: number
}
@@ -43,4 +45,29 @@
data,
})
}
+// 通知公告删除
+export function removeNoticeApi(data: object) {
+ return request({
+ url: `${prefix}/notice/delete`,
+ method: 'post',
+ data,
+ })
+}
+// 通知公告编辑
+export function updateNoticeApi(data: object) {
+ return request({
+ url: `${prefix}/notice/update`,
+ method: 'post',
+ data,
+ })
+}
+// 导出通知公告
+export function exportNoticeApi(data: object) {
+ return request({
+ url: `${prefix}/notice/update`,
+ method: 'post',
+ data,
+ responseType: 'blob',
+ })
+}
diff --git a/src/api/system/tool.ts b/src/api/system/tool.ts
index 1798ce5..7b61c3f 100644
--- a/src/api/system/tool.ts
+++ b/src/api/system/tool.ts
@@ -72,7 +72,7 @@
templateNo: string // 编号
templateName: string // 名称
templateCreator: string // 负责人
- createTime: string // 创建时间
+ // createTime: string // 创建时间
limit: number
offset: number
templateType: string
diff --git a/src/views/device/borrow/borrow-interface.ts b/src/views/device/borrow/borrow-interface.ts
index 66dd307..7f8f5ce 100644
--- a/src/views/device/borrow/borrow-interface.ts
+++ b/src/views/device/borrow/borrow-interface.ts
@@ -10,6 +10,7 @@
time: string // 申请日期
limit?: number
offset?: number
+ ids?: string[]
}
// 借用设备类型
export interface borrowDeviceType {
diff --git a/src/views/device/borrow/borrowHandle.vue b/src/views/device/borrow/borrowHandle.vue
index bca0958..470bad1 100644
--- a/src/views/device/borrow/borrowHandle.vue
+++ b/src/views/device/borrow/borrowHandle.vue
@@ -15,6 +15,13 @@
watch(current, (newValue) => {
currentComp.value = menu.value.filter(item => item.name === newValue)[0].comp
})
+onUnmounted(() => {
+ sessionStorage.setItem('deviceBorrowHandler', current.value)
+})
+onMounted(() => {
+ current.value = sessionStorage.getItem('deviceBorrowHandler') || '待借用'
+ sessionStorage.getItem('deviceBorrowHandler') ? sessionStorage.removeItem('deviceBorrowHandler') : ''
+})
@@ -28,7 +35,7 @@
-
+
diff --git a/src/views/device/borrow/components/applyList.vue b/src/views/device/borrow/components/applyList.vue
index 240fffa..ec43b86 100644
--- a/src/views/device/borrow/components/applyList.vue
+++ b/src/views/device/borrow/components/applyList.vue
@@ -14,6 +14,7 @@
})
const { proxy } = getCurrentInstance() as any
const $router = useRouter()
+const time = ref()
const searchQuery = reactive({
applyName: '', // 申请名称
applyNo: '', // 申请编号
@@ -23,9 +24,20 @@
createUser: '', // 创建人
processResult: '', // 处置结果
time: '', // 申请日期
+ ids: [] as string[],
limit: 20,
offset: 1,
}) // 查询参数
+watch(() => time.value, (newVal) => {
+ if (newVal) {
+ // searchQuery.noticeStartTime = newVal[0]
+ // searchQuery.noticeEndTime = newVal[1]
+ }
+ else {
+ // searchQuery.noticeStartTime = ''
+ // searchQuery.noticeEndTime = ''
+ }
+})
const loadingTable = ref(false) // 表格loading
const total = ref(0) // 数据总条数
// 全部状态的表格数据
@@ -217,6 +229,7 @@
searchQuery.applyPerson = ''
searchQuery.applyUnit = ''
searchQuery.time = ''
+ time.value = ''
getList()
}
// 新增
@@ -232,6 +245,12 @@
},
})
}
+// 表格被选中的行
+const selectList = ref([])
+// 表格多选
+const multiSelect = (row) => {
+ selectList.value = row
+}
// 导出
const exportExcelBtn = () => {
const loading = ElLoading.service({
@@ -239,10 +258,15 @@
text: 'Loading',
background: 'rgba(255, 255, 255, 0.8)',
})
-
+ // if (selectList.value.length) {
+ // selectList.value.forEach((item) => {
+ // searchQuery.ids?.push(item.id as string)
+ // })
+ // }
exportApply({ ...searchQuery, limit: undefined, offset: undefined }).then((res) => {
exportFile(res.data, '设备借用申请')
loading.close()
+ // searchQuery.ids = []
}).catch((_) => {
loading.close()
})
@@ -352,11 +376,20 @@
- -->
+
@@ -374,7 +407,9 @@
:is-showmulti-select="true"
:query="{ limit: searchQuery.limit, offset: searchQuery.offset }"
:list-loading="loadingTable"
+ :is-multi="true"
@change="changePage"
+ @multi-select="multiSelect"
>
@@ -425,7 +460,7 @@
-
+
查看
diff --git a/src/api/measure/measureDept.ts b/src/api/measure/measureDept.ts
index 9a30ce3..3d34a2b 100644
--- a/src/api/measure/measureDept.ts
+++ b/src/api/measure/measureDept.ts
@@ -43,3 +43,11 @@
data,
})
}
+// 获取父级组织
+export function getpDeptApi(data: object) {
+ return request({
+ url: '/meter/organize/deptInfo',
+ method: 'post',
+ data,
+ })
+}
diff --git a/src/api/system/notice.ts b/src/api/system/notice.ts
index 9f38397..90ae2a7 100644
--- a/src/api/system/notice.ts
+++ b/src/api/system/notice.ts
@@ -8,8 +8,10 @@
export interface listParamsType {
noticeNo: string // 编号
noticePublisher: string // 发布人
- noticeTime: string // 发布时间
+ noticeTime?: string // 发布时间
noticeTitle: string // 标题
+ noticeStartTime: string // 标题
+ noticeEndTime: string // 标题
limit: number
offset: number
}
@@ -43,4 +45,29 @@
data,
})
}
+// 通知公告删除
+export function removeNoticeApi(data: object) {
+ return request({
+ url: `${prefix}/notice/delete`,
+ method: 'post',
+ data,
+ })
+}
+// 通知公告编辑
+export function updateNoticeApi(data: object) {
+ return request({
+ url: `${prefix}/notice/update`,
+ method: 'post',
+ data,
+ })
+}
+// 导出通知公告
+export function exportNoticeApi(data: object) {
+ return request({
+ url: `${prefix}/notice/update`,
+ method: 'post',
+ data,
+ responseType: 'blob',
+ })
+}
diff --git a/src/api/system/tool.ts b/src/api/system/tool.ts
index 1798ce5..7b61c3f 100644
--- a/src/api/system/tool.ts
+++ b/src/api/system/tool.ts
@@ -72,7 +72,7 @@
templateNo: string // 编号
templateName: string // 名称
templateCreator: string // 负责人
- createTime: string // 创建时间
+ // createTime: string // 创建时间
limit: number
offset: number
templateType: string
diff --git a/src/views/device/borrow/borrow-interface.ts b/src/views/device/borrow/borrow-interface.ts
index 66dd307..7f8f5ce 100644
--- a/src/views/device/borrow/borrow-interface.ts
+++ b/src/views/device/borrow/borrow-interface.ts
@@ -10,6 +10,7 @@
time: string // 申请日期
limit?: number
offset?: number
+ ids?: string[]
}
// 借用设备类型
export interface borrowDeviceType {
diff --git a/src/views/device/borrow/borrowHandle.vue b/src/views/device/borrow/borrowHandle.vue
index bca0958..470bad1 100644
--- a/src/views/device/borrow/borrowHandle.vue
+++ b/src/views/device/borrow/borrowHandle.vue
@@ -15,6 +15,13 @@
watch(current, (newValue) => {
currentComp.value = menu.value.filter(item => item.name === newValue)[0].comp
})
+onUnmounted(() => {
+ sessionStorage.setItem('deviceBorrowHandler', current.value)
+})
+onMounted(() => {
+ current.value = sessionStorage.getItem('deviceBorrowHandler') || '待借用'
+ sessionStorage.getItem('deviceBorrowHandler') ? sessionStorage.removeItem('deviceBorrowHandler') : ''
+})
@@ -28,7 +35,7 @@
-
+
diff --git a/src/views/device/borrow/components/applyList.vue b/src/views/device/borrow/components/applyList.vue
index 240fffa..ec43b86 100644
--- a/src/views/device/borrow/components/applyList.vue
+++ b/src/views/device/borrow/components/applyList.vue
@@ -14,6 +14,7 @@
})
const { proxy } = getCurrentInstance() as any
const $router = useRouter()
+const time = ref()
const searchQuery = reactive({
applyName: '', // 申请名称
applyNo: '', // 申请编号
@@ -23,9 +24,20 @@
createUser: '', // 创建人
processResult: '', // 处置结果
time: '', // 申请日期
+ ids: [] as string[],
limit: 20,
offset: 1,
}) // 查询参数
+watch(() => time.value, (newVal) => {
+ if (newVal) {
+ // searchQuery.noticeStartTime = newVal[0]
+ // searchQuery.noticeEndTime = newVal[1]
+ }
+ else {
+ // searchQuery.noticeStartTime = ''
+ // searchQuery.noticeEndTime = ''
+ }
+})
const loadingTable = ref(false) // 表格loading
const total = ref(0) // 数据总条数
// 全部状态的表格数据
@@ -217,6 +229,7 @@
searchQuery.applyPerson = ''
searchQuery.applyUnit = ''
searchQuery.time = ''
+ time.value = ''
getList()
}
// 新增
@@ -232,6 +245,12 @@
},
})
}
+// 表格被选中的行
+const selectList = ref([])
+// 表格多选
+const multiSelect = (row) => {
+ selectList.value = row
+}
// 导出
const exportExcelBtn = () => {
const loading = ElLoading.service({
@@ -239,10 +258,15 @@
text: 'Loading',
background: 'rgba(255, 255, 255, 0.8)',
})
-
+ // if (selectList.value.length) {
+ // selectList.value.forEach((item) => {
+ // searchQuery.ids?.push(item.id as string)
+ // })
+ // }
exportApply({ ...searchQuery, limit: undefined, offset: undefined }).then((res) => {
exportFile(res.data, '设备借用申请')
loading.close()
+ // searchQuery.ids = []
}).catch((_) => {
loading.close()
})
@@ -352,11 +376,20 @@
- -->
+
@@ -374,7 +407,9 @@
:is-showmulti-select="true"
:query="{ limit: searchQuery.limit, offset: searchQuery.offset }"
:list-loading="loadingTable"
+ :is-multi="true"
@change="changePage"
+ @multi-select="multiSelect"
>
@@ -425,7 +460,7 @@
-
+
查看
diff --git a/src/views/device/borrow/components/handleList.vue b/src/views/device/borrow/components/handleList.vue
index ff89b3a..7f74981 100644
--- a/src/views/device/borrow/components/handleList.vue
+++ b/src/views/device/borrow/components/handleList.vue
@@ -1,48 +1,65 @@
@@ -28,7 +35,7 @@
-
+
diff --git a/src/views/device/borrow/components/applyList.vue b/src/views/device/borrow/components/applyList.vue
index 240fffa..ec43b86 100644
--- a/src/views/device/borrow/components/applyList.vue
+++ b/src/views/device/borrow/components/applyList.vue
@@ -14,6 +14,7 @@
})
const { proxy } = getCurrentInstance() as any
const $router = useRouter()
+const time = ref()
const searchQuery = reactive({
applyName: '', // 申请名称
applyNo: '', // 申请编号
@@ -23,9 +24,20 @@
createUser: '', // 创建人
processResult: '', // 处置结果
time: '', // 申请日期
+ ids: [] as string[],
limit: 20,
offset: 1,
}) // 查询参数
+watch(() => time.value, (newVal) => {
+ if (newVal) {
+ // searchQuery.noticeStartTime = newVal[0]
+ // searchQuery.noticeEndTime = newVal[1]
+ }
+ else {
+ // searchQuery.noticeStartTime = ''
+ // searchQuery.noticeEndTime = ''
+ }
+})
const loadingTable = ref(false) // 表格loading
const total = ref(0) // 数据总条数
// 全部状态的表格数据
@@ -217,6 +229,7 @@
searchQuery.applyPerson = ''
searchQuery.applyUnit = ''
searchQuery.time = ''
+ time.value = ''
getList()
}
// 新增
@@ -232,6 +245,12 @@
},
})
}
+// 表格被选中的行
+const selectList = ref([])
+// 表格多选
+const multiSelect = (row) => {
+ selectList.value = row
+}
// 导出
const exportExcelBtn = () => {
const loading = ElLoading.service({
@@ -239,10 +258,15 @@
text: 'Loading',
background: 'rgba(255, 255, 255, 0.8)',
})
-
+ // if (selectList.value.length) {
+ // selectList.value.forEach((item) => {
+ // searchQuery.ids?.push(item.id as string)
+ // })
+ // }
exportApply({ ...searchQuery, limit: undefined, offset: undefined }).then((res) => {
exportFile(res.data, '设备借用申请')
loading.close()
+ // searchQuery.ids = []
}).catch((_) => {
loading.close()
})
@@ -352,11 +376,20 @@
- -->
+
@@ -374,7 +407,9 @@
:is-showmulti-select="true"
:query="{ limit: searchQuery.limit, offset: searchQuery.offset }"
:list-loading="loadingTable"
+ :is-multi="true"
@change="changePage"
+ @multi-select="multiSelect"
>
@@ -425,7 +460,7 @@
-
+
查看
diff --git a/src/views/device/borrow/components/handleList.vue b/src/views/device/borrow/components/handleList.vue
index ff89b3a..7f74981 100644
--- a/src/views/device/borrow/components/handleList.vue
+++ b/src/views/device/borrow/components/handleList.vue
@@ -1,48 +1,65 @@
@@ -28,7 +35,7 @@
-
+
diff --git a/src/views/device/borrow/components/applyList.vue b/src/views/device/borrow/components/applyList.vue
index 240fffa..ec43b86 100644
--- a/src/views/device/borrow/components/applyList.vue
+++ b/src/views/device/borrow/components/applyList.vue
@@ -14,6 +14,7 @@
})
const { proxy } = getCurrentInstance() as any
const $router = useRouter()
+const time = ref()
const searchQuery = reactive({
applyName: '', // 申请名称
applyNo: '', // 申请编号
@@ -23,9 +24,20 @@
createUser: '', // 创建人
processResult: '', // 处置结果
time: '', // 申请日期
+ ids: [] as string[],
limit: 20,
offset: 1,
}) // 查询参数
+watch(() => time.value, (newVal) => {
+ if (newVal) {
+ // searchQuery.noticeStartTime = newVal[0]
+ // searchQuery.noticeEndTime = newVal[1]
+ }
+ else {
+ // searchQuery.noticeStartTime = ''
+ // searchQuery.noticeEndTime = ''
+ }
+})
const loadingTable = ref(false) // 表格loading
const total = ref(0) // 数据总条数
// 全部状态的表格数据
@@ -217,6 +229,7 @@
searchQuery.applyPerson = ''
searchQuery.applyUnit = ''
searchQuery.time = ''
+ time.value = ''
getList()
}
// 新增
@@ -232,6 +245,12 @@
},
})
}
+// 表格被选中的行
+const selectList = ref([])
+// 表格多选
+const multiSelect = (row) => {
+ selectList.value = row
+}
// 导出
const exportExcelBtn = () => {
const loading = ElLoading.service({
@@ -239,10 +258,15 @@
text: 'Loading',
background: 'rgba(255, 255, 255, 0.8)',
})
-
+ // if (selectList.value.length) {
+ // selectList.value.forEach((item) => {
+ // searchQuery.ids?.push(item.id as string)
+ // })
+ // }
exportApply({ ...searchQuery, limit: undefined, offset: undefined }).then((res) => {
exportFile(res.data, '设备借用申请')
loading.close()
+ // searchQuery.ids = []
}).catch((_) => {
loading.close()
})
@@ -352,11 +376,20 @@
- -->
+
@@ -374,7 +407,9 @@
:is-showmulti-select="true"
:query="{ limit: searchQuery.limit, offset: searchQuery.offset }"
:list-loading="loadingTable"
+ :is-multi="true"
@change="changePage"
+ @multi-select="multiSelect"
>
@@ -425,7 +460,7 @@
-
+
查看
diff --git a/src/views/device/borrow/components/handleList.vue b/src/views/device/borrow/components/handleList.vue
index ff89b3a..7f74981 100644
--- a/src/views/device/borrow/components/handleList.vue
+++ b/src/views/device/borrow/components/handleList.vue
@@ -1,48 +1,65 @@
@@ -28,7 +35,7 @@
-
+
diff --git a/src/views/device/borrow/components/applyList.vue b/src/views/device/borrow/components/applyList.vue
index 240fffa..ec43b86 100644
--- a/src/views/device/borrow/components/applyList.vue
+++ b/src/views/device/borrow/components/applyList.vue
@@ -14,6 +14,7 @@
})
const { proxy } = getCurrentInstance() as any
const $router = useRouter()
+const time = ref()
const searchQuery = reactive({
applyName: '', // 申请名称
applyNo: '', // 申请编号
@@ -23,9 +24,20 @@
createUser: '', // 创建人
processResult: '', // 处置结果
time: '', // 申请日期
+ ids: [] as string[],
limit: 20,
offset: 1,
}) // 查询参数
+watch(() => time.value, (newVal) => {
+ if (newVal) {
+ // searchQuery.noticeStartTime = newVal[0]
+ // searchQuery.noticeEndTime = newVal[1]
+ }
+ else {
+ // searchQuery.noticeStartTime = ''
+ // searchQuery.noticeEndTime = ''
+ }
+})
const loadingTable = ref(false) // 表格loading
const total = ref(0) // 数据总条数
// 全部状态的表格数据
@@ -217,6 +229,7 @@
searchQuery.applyPerson = ''
searchQuery.applyUnit = ''
searchQuery.time = ''
+ time.value = ''
getList()
}
// 新增
@@ -232,6 +245,12 @@
},
})
}
+// 表格被选中的行
+const selectList = ref([])
+// 表格多选
+const multiSelect = (row) => {
+ selectList.value = row
+}
// 导出
const exportExcelBtn = () => {
const loading = ElLoading.service({
@@ -239,10 +258,15 @@
text: 'Loading',
background: 'rgba(255, 255, 255, 0.8)',
})
-
+ // if (selectList.value.length) {
+ // selectList.value.forEach((item) => {
+ // searchQuery.ids?.push(item.id as string)
+ // })
+ // }
exportApply({ ...searchQuery, limit: undefined, offset: undefined }).then((res) => {
exportFile(res.data, '设备借用申请')
loading.close()
+ // searchQuery.ids = []
}).catch((_) => {
loading.close()
})
@@ -352,11 +376,20 @@
- -->
+
@@ -374,7 +407,9 @@
:is-showmulti-select="true"
:query="{ limit: searchQuery.limit, offset: searchQuery.offset }"
:list-loading="loadingTable"
+ :is-multi="true"
@change="changePage"
+ @multi-select="multiSelect"
>
@@ -425,7 +460,7 @@
-
+
查看
diff --git a/src/views/device/borrow/components/handleList.vue b/src/views/device/borrow/components/handleList.vue
index ff89b3a..7f74981 100644
--- a/src/views/device/borrow/components/handleList.vue
+++ b/src/views/device/borrow/components/handleList.vue
@@ -1,48 +1,65 @@
@@ -28,7 +35,7 @@
-
+
diff --git a/src/views/device/borrow/components/applyList.vue b/src/views/device/borrow/components/applyList.vue
index 240fffa..ec43b86 100644
--- a/src/views/device/borrow/components/applyList.vue
+++ b/src/views/device/borrow/components/applyList.vue
@@ -14,6 +14,7 @@
})
const { proxy } = getCurrentInstance() as any
const $router = useRouter()
+const time = ref()
const searchQuery = reactive({
applyName: '', // 申请名称
applyNo: '', // 申请编号
@@ -23,9 +24,20 @@
createUser: '', // 创建人
processResult: '', // 处置结果
time: '', // 申请日期
+ ids: [] as string[],
limit: 20,
offset: 1,
}) // 查询参数
+watch(() => time.value, (newVal) => {
+ if (newVal) {
+ // searchQuery.noticeStartTime = newVal[0]
+ // searchQuery.noticeEndTime = newVal[1]
+ }
+ else {
+ // searchQuery.noticeStartTime = ''
+ // searchQuery.noticeEndTime = ''
+ }
+})
const loadingTable = ref(false) // 表格loading
const total = ref(0) // 数据总条数
// 全部状态的表格数据
@@ -217,6 +229,7 @@
searchQuery.applyPerson = ''
searchQuery.applyUnit = ''
searchQuery.time = ''
+ time.value = ''
getList()
}
// 新增
@@ -232,6 +245,12 @@
},
})
}
+// 表格被选中的行
+const selectList = ref([])
+// 表格多选
+const multiSelect = (row) => {
+ selectList.value = row
+}
// 导出
const exportExcelBtn = () => {
const loading = ElLoading.service({
@@ -239,10 +258,15 @@
text: 'Loading',
background: 'rgba(255, 255, 255, 0.8)',
})
-
+ // if (selectList.value.length) {
+ // selectList.value.forEach((item) => {
+ // searchQuery.ids?.push(item.id as string)
+ // })
+ // }
exportApply({ ...searchQuery, limit: undefined, offset: undefined }).then((res) => {
exportFile(res.data, '设备借用申请')
loading.close()
+ // searchQuery.ids = []
}).catch((_) => {
loading.close()
})
@@ -352,11 +376,20 @@
- -->
+
@@ -374,7 +407,9 @@
:is-showmulti-select="true"
:query="{ limit: searchQuery.limit, offset: searchQuery.offset }"
:list-loading="loadingTable"
+ :is-multi="true"
@change="changePage"
+ @multi-select="multiSelect"
>
@@ -425,7 +460,7 @@
-
+
查看
diff --git a/src/views/device/borrow/components/handleList.vue b/src/views/device/borrow/components/handleList.vue
index ff89b3a..7f74981 100644
--- a/src/views/device/borrow/components/handleList.vue
+++ b/src/views/device/borrow/components/handleList.vue
@@ -1,48 +1,65 @@
@@ -28,7 +35,7 @@
-
+
diff --git a/src/views/device/borrow/components/applyList.vue b/src/views/device/borrow/components/applyList.vue
index 240fffa..ec43b86 100644
--- a/src/views/device/borrow/components/applyList.vue
+++ b/src/views/device/borrow/components/applyList.vue
@@ -14,6 +14,7 @@
})
const { proxy } = getCurrentInstance() as any
const $router = useRouter()
+const time = ref()
const searchQuery = reactive({
applyName: '', // 申请名称
applyNo: '', // 申请编号
@@ -23,9 +24,20 @@
createUser: '', // 创建人
processResult: '', // 处置结果
time: '', // 申请日期
+ ids: [] as string[],
limit: 20,
offset: 1,
}) // 查询参数
+watch(() => time.value, (newVal) => {
+ if (newVal) {
+ // searchQuery.noticeStartTime = newVal[0]
+ // searchQuery.noticeEndTime = newVal[1]
+ }
+ else {
+ // searchQuery.noticeStartTime = ''
+ // searchQuery.noticeEndTime = ''
+ }
+})
const loadingTable = ref(false) // 表格loading
const total = ref(0) // 数据总条数
// 全部状态的表格数据
@@ -217,6 +229,7 @@
searchQuery.applyPerson = ''
searchQuery.applyUnit = ''
searchQuery.time = ''
+ time.value = ''
getList()
}
// 新增
@@ -232,6 +245,12 @@
},
})
}
+// 表格被选中的行
+const selectList = ref([])
+// 表格多选
+const multiSelect = (row) => {
+ selectList.value = row
+}
// 导出
const exportExcelBtn = () => {
const loading = ElLoading.service({
@@ -239,10 +258,15 @@
text: 'Loading',
background: 'rgba(255, 255, 255, 0.8)',
})
-
+ // if (selectList.value.length) {
+ // selectList.value.forEach((item) => {
+ // searchQuery.ids?.push(item.id as string)
+ // })
+ // }
exportApply({ ...searchQuery, limit: undefined, offset: undefined }).then((res) => {
exportFile(res.data, '设备借用申请')
loading.close()
+ // searchQuery.ids = []
}).catch((_) => {
loading.close()
})
@@ -352,11 +376,20 @@
- -->
+
@@ -374,7 +407,9 @@
:is-showmulti-select="true"
:query="{ limit: searchQuery.limit, offset: searchQuery.offset }"
:list-loading="loadingTable"
+ :is-multi="true"
@change="changePage"
+ @multi-select="multiSelect"
>
@@ -425,7 +460,7 @@
-
+
查看
diff --git a/src/views/device/borrow/components/handleList.vue b/src/views/device/borrow/components/handleList.vue
index ff89b3a..7f74981 100644
--- a/src/views/device/borrow/components/handleList.vue
+++ b/src/views/device/borrow/components/handleList.vue
@@ -1,48 +1,65 @@
@@ -28,7 +35,7 @@
-
+
diff --git a/src/views/device/borrow/components/applyList.vue b/src/views/device/borrow/components/applyList.vue
index 240fffa..ec43b86 100644
--- a/src/views/device/borrow/components/applyList.vue
+++ b/src/views/device/borrow/components/applyList.vue
@@ -14,6 +14,7 @@
})
const { proxy } = getCurrentInstance() as any
const $router = useRouter()
+const time = ref()
const searchQuery = reactive({
applyName: '', // 申请名称
applyNo: '', // 申请编号
@@ -23,9 +24,20 @@
createUser: '', // 创建人
processResult: '', // 处置结果
time: '', // 申请日期
+ ids: [] as string[],
limit: 20,
offset: 1,
}) // 查询参数
+watch(() => time.value, (newVal) => {
+ if (newVal) {
+ // searchQuery.noticeStartTime = newVal[0]
+ // searchQuery.noticeEndTime = newVal[1]
+ }
+ else {
+ // searchQuery.noticeStartTime = ''
+ // searchQuery.noticeEndTime = ''
+ }
+})
const loadingTable = ref(false) // 表格loading
const total = ref(0) // 数据总条数
// 全部状态的表格数据
@@ -217,6 +229,7 @@
searchQuery.applyPerson = ''
searchQuery.applyUnit = ''
searchQuery.time = ''
+ time.value = ''
getList()
}
// 新增
@@ -232,6 +245,12 @@
},
})
}
+// 表格被选中的行
+const selectList = ref([])
+// 表格多选
+const multiSelect = (row) => {
+ selectList.value = row
+}
// 导出
const exportExcelBtn = () => {
const loading = ElLoading.service({
@@ -239,10 +258,15 @@
text: 'Loading',
background: 'rgba(255, 255, 255, 0.8)',
})
-
+ // if (selectList.value.length) {
+ // selectList.value.forEach((item) => {
+ // searchQuery.ids?.push(item.id as string)
+ // })
+ // }
exportApply({ ...searchQuery, limit: undefined, offset: undefined }).then((res) => {
exportFile(res.data, '设备借用申请')
loading.close()
+ // searchQuery.ids = []
}).catch((_) => {
loading.close()
})
@@ -352,11 +376,20 @@
- -->
+
@@ -374,7 +407,9 @@
:is-showmulti-select="true"
:query="{ limit: searchQuery.limit, offset: searchQuery.offset }"
:list-loading="loadingTable"
+ :is-multi="true"
@change="changePage"
+ @multi-select="multiSelect"
>
@@ -425,7 +460,7 @@
-
+
查看
diff --git a/src/views/device/borrow/components/handleList.vue b/src/views/device/borrow/components/handleList.vue
index ff89b3a..7f74981 100644
--- a/src/views/device/borrow/components/handleList.vue
+++ b/src/views/device/borrow/components/handleList.vue
@@ -1,48 +1,65 @@
@@ -28,7 +35,7 @@
-
+
diff --git a/src/views/device/borrow/components/applyList.vue b/src/views/device/borrow/components/applyList.vue
index 240fffa..ec43b86 100644
--- a/src/views/device/borrow/components/applyList.vue
+++ b/src/views/device/borrow/components/applyList.vue
@@ -14,6 +14,7 @@
})
const { proxy } = getCurrentInstance() as any
const $router = useRouter()
+const time = ref()
const searchQuery = reactive({
applyName: '', // 申请名称
applyNo: '', // 申请编号
@@ -23,9 +24,20 @@
createUser: '', // 创建人
processResult: '', // 处置结果
time: '', // 申请日期
+ ids: [] as string[],
limit: 20,
offset: 1,
}) // 查询参数
+watch(() => time.value, (newVal) => {
+ if (newVal) {
+ // searchQuery.noticeStartTime = newVal[0]
+ // searchQuery.noticeEndTime = newVal[1]
+ }
+ else {
+ // searchQuery.noticeStartTime = ''
+ // searchQuery.noticeEndTime = ''
+ }
+})
const loadingTable = ref(false) // 表格loading
const total = ref(0) // 数据总条数
// 全部状态的表格数据
@@ -217,6 +229,7 @@
searchQuery.applyPerson = ''
searchQuery.applyUnit = ''
searchQuery.time = ''
+ time.value = ''
getList()
}
// 新增
@@ -232,6 +245,12 @@
},
})
}
+// 表格被选中的行
+const selectList = ref([])
+// 表格多选
+const multiSelect = (row) => {
+ selectList.value = row
+}
// 导出
const exportExcelBtn = () => {
const loading = ElLoading.service({
@@ -239,10 +258,15 @@
text: 'Loading',
background: 'rgba(255, 255, 255, 0.8)',
})
-
+ // if (selectList.value.length) {
+ // selectList.value.forEach((item) => {
+ // searchQuery.ids?.push(item.id as string)
+ // })
+ // }
exportApply({ ...searchQuery, limit: undefined, offset: undefined }).then((res) => {
exportFile(res.data, '设备借用申请')
loading.close()
+ // searchQuery.ids = []
}).catch((_) => {
loading.close()
})
@@ -352,11 +376,20 @@
- -->
+
@@ -374,7 +407,9 @@
:is-showmulti-select="true"
:query="{ limit: searchQuery.limit, offset: searchQuery.offset }"
:list-loading="loadingTable"
+ :is-multi="true"
@change="changePage"
+ @multi-select="multiSelect"
>
@@ -425,7 +460,7 @@
-
+
查看
diff --git a/src/views/device/borrow/components/handleList.vue b/src/views/device/borrow/components/handleList.vue
index ff89b3a..7f74981 100644
--- a/src/views/device/borrow/components/handleList.vue
+++ b/src/views/device/borrow/components/handleList.vue
@@ -1,48 +1,65 @@
@@ -28,7 +35,7 @@
-
+
diff --git a/src/views/device/borrow/components/applyList.vue b/src/views/device/borrow/components/applyList.vue
index 240fffa..ec43b86 100644
--- a/src/views/device/borrow/components/applyList.vue
+++ b/src/views/device/borrow/components/applyList.vue
@@ -14,6 +14,7 @@
})
const { proxy } = getCurrentInstance() as any
const $router = useRouter()
+const time = ref()
const searchQuery = reactive({
applyName: '', // 申请名称
applyNo: '', // 申请编号
@@ -23,9 +24,20 @@
createUser: '', // 创建人
processResult: '', // 处置结果
time: '', // 申请日期
+ ids: [] as string[],
limit: 20,
offset: 1,
}) // 查询参数
+watch(() => time.value, (newVal) => {
+ if (newVal) {
+ // searchQuery.noticeStartTime = newVal[0]
+ // searchQuery.noticeEndTime = newVal[1]
+ }
+ else {
+ // searchQuery.noticeStartTime = ''
+ // searchQuery.noticeEndTime = ''
+ }
+})
const loadingTable = ref(false) // 表格loading
const total = ref(0) // 数据总条数
// 全部状态的表格数据
@@ -217,6 +229,7 @@
searchQuery.applyPerson = ''
searchQuery.applyUnit = ''
searchQuery.time = ''
+ time.value = ''
getList()
}
// 新增
@@ -232,6 +245,12 @@
},
})
}
+// 表格被选中的行
+const selectList = ref([])
+// 表格多选
+const multiSelect = (row) => {
+ selectList.value = row
+}
// 导出
const exportExcelBtn = () => {
const loading = ElLoading.service({
@@ -239,10 +258,15 @@
text: 'Loading',
background: 'rgba(255, 255, 255, 0.8)',
})
-
+ // if (selectList.value.length) {
+ // selectList.value.forEach((item) => {
+ // searchQuery.ids?.push(item.id as string)
+ // })
+ // }
exportApply({ ...searchQuery, limit: undefined, offset: undefined }).then((res) => {
exportFile(res.data, '设备借用申请')
loading.close()
+ // searchQuery.ids = []
}).catch((_) => {
loading.close()
})
@@ -352,11 +376,20 @@
- -->
+
@@ -374,7 +407,9 @@
:is-showmulti-select="true"
:query="{ limit: searchQuery.limit, offset: searchQuery.offset }"
:list-loading="loadingTable"
+ :is-multi="true"
@change="changePage"
+ @multi-select="multiSelect"
>
@@ -425,7 +460,7 @@
-
+
查看
diff --git a/src/views/device/borrow/components/handleList.vue b/src/views/device/borrow/components/handleList.vue
index ff89b3a..7f74981 100644
--- a/src/views/device/borrow/components/handleList.vue
+++ b/src/views/device/borrow/components/handleList.vue
@@ -1,48 +1,65 @@
@@ -28,7 +35,7 @@
-
+
diff --git a/src/views/device/borrow/components/applyList.vue b/src/views/device/borrow/components/applyList.vue
index 240fffa..ec43b86 100644
--- a/src/views/device/borrow/components/applyList.vue
+++ b/src/views/device/borrow/components/applyList.vue
@@ -14,6 +14,7 @@
})
const { proxy } = getCurrentInstance() as any
const $router = useRouter()
+const time = ref()
const searchQuery = reactive({
applyName: '', // 申请名称
applyNo: '', // 申请编号
@@ -23,9 +24,20 @@
createUser: '', // 创建人
processResult: '', // 处置结果
time: '', // 申请日期
+ ids: [] as string[],
limit: 20,
offset: 1,
}) // 查询参数
+watch(() => time.value, (newVal) => {
+ if (newVal) {
+ // searchQuery.noticeStartTime = newVal[0]
+ // searchQuery.noticeEndTime = newVal[1]
+ }
+ else {
+ // searchQuery.noticeStartTime = ''
+ // searchQuery.noticeEndTime = ''
+ }
+})
const loadingTable = ref(false) // 表格loading
const total = ref(0) // 数据总条数
// 全部状态的表格数据
@@ -217,6 +229,7 @@
searchQuery.applyPerson = ''
searchQuery.applyUnit = ''
searchQuery.time = ''
+ time.value = ''
getList()
}
// 新增
@@ -232,6 +245,12 @@
},
})
}
+// 表格被选中的行
+const selectList = ref([])
+// 表格多选
+const multiSelect = (row) => {
+ selectList.value = row
+}
// 导出
const exportExcelBtn = () => {
const loading = ElLoading.service({
@@ -239,10 +258,15 @@
text: 'Loading',
background: 'rgba(255, 255, 255, 0.8)',
})
-
+ // if (selectList.value.length) {
+ // selectList.value.forEach((item) => {
+ // searchQuery.ids?.push(item.id as string)
+ // })
+ // }
exportApply({ ...searchQuery, limit: undefined, offset: undefined }).then((res) => {
exportFile(res.data, '设备借用申请')
loading.close()
+ // searchQuery.ids = []
}).catch((_) => {
loading.close()
})
@@ -352,11 +376,20 @@
- -->
+
@@ -374,7 +407,9 @@
:is-showmulti-select="true"
:query="{ limit: searchQuery.limit, offset: searchQuery.offset }"
:list-loading="loadingTable"
+ :is-multi="true"
@change="changePage"
+ @multi-select="multiSelect"
>
@@ -425,7 +460,7 @@
-
+
查看
diff --git a/src/views/device/borrow/components/handleList.vue b/src/views/device/borrow/components/handleList.vue
index ff89b3a..7f74981 100644
--- a/src/views/device/borrow/components/handleList.vue
+++ b/src/views/device/borrow/components/handleList.vue
@@ -1,48 +1,65 @@
@@ -28,7 +35,7 @@
-
+
diff --git a/src/views/device/borrow/components/applyList.vue b/src/views/device/borrow/components/applyList.vue
index 240fffa..ec43b86 100644
--- a/src/views/device/borrow/components/applyList.vue
+++ b/src/views/device/borrow/components/applyList.vue
@@ -14,6 +14,7 @@
})
const { proxy } = getCurrentInstance() as any
const $router = useRouter()
+const time = ref()
const searchQuery = reactive({
applyName: '', // 申请名称
applyNo: '', // 申请编号
@@ -23,9 +24,20 @@
createUser: '', // 创建人
processResult: '', // 处置结果
time: '', // 申请日期
+ ids: [] as string[],
limit: 20,
offset: 1,
}) // 查询参数
+watch(() => time.value, (newVal) => {
+ if (newVal) {
+ // searchQuery.noticeStartTime = newVal[0]
+ // searchQuery.noticeEndTime = newVal[1]
+ }
+ else {
+ // searchQuery.noticeStartTime = ''
+ // searchQuery.noticeEndTime = ''
+ }
+})
const loadingTable = ref(false) // 表格loading
const total = ref(0) // 数据总条数
// 全部状态的表格数据
@@ -217,6 +229,7 @@
searchQuery.applyPerson = ''
searchQuery.applyUnit = ''
searchQuery.time = ''
+ time.value = ''
getList()
}
// 新增
@@ -232,6 +245,12 @@
},
})
}
+// 表格被选中的行
+const selectList = ref([])
+// 表格多选
+const multiSelect = (row) => {
+ selectList.value = row
+}
// 导出
const exportExcelBtn = () => {
const loading = ElLoading.service({
@@ -239,10 +258,15 @@
text: 'Loading',
background: 'rgba(255, 255, 255, 0.8)',
})
-
+ // if (selectList.value.length) {
+ // selectList.value.forEach((item) => {
+ // searchQuery.ids?.push(item.id as string)
+ // })
+ // }
exportApply({ ...searchQuery, limit: undefined, offset: undefined }).then((res) => {
exportFile(res.data, '设备借用申请')
loading.close()
+ // searchQuery.ids = []
}).catch((_) => {
loading.close()
})
@@ -352,11 +376,20 @@
- -->
+
@@ -374,7 +407,9 @@
:is-showmulti-select="true"
:query="{ limit: searchQuery.limit, offset: searchQuery.offset }"
:list-loading="loadingTable"
+ :is-multi="true"
@change="changePage"
+ @multi-select="multiSelect"
>
@@ -425,7 +460,7 @@
-
+
查看
diff --git a/src/views/device/borrow/components/handleList.vue b/src/views/device/borrow/components/handleList.vue
index ff89b3a..7f74981 100644
--- a/src/views/device/borrow/components/handleList.vue
+++ b/src/views/device/borrow/components/handleList.vue
@@ -1,48 +1,65 @@
@@ -28,7 +35,7 @@
-
+
diff --git a/src/views/device/borrow/components/applyList.vue b/src/views/device/borrow/components/applyList.vue
index 240fffa..ec43b86 100644
--- a/src/views/device/borrow/components/applyList.vue
+++ b/src/views/device/borrow/components/applyList.vue
@@ -14,6 +14,7 @@
})
const { proxy } = getCurrentInstance() as any
const $router = useRouter()
+const time = ref()
const searchQuery = reactive({
applyName: '', // 申请名称
applyNo: '', // 申请编号
@@ -23,9 +24,20 @@
createUser: '', // 创建人
processResult: '', // 处置结果
time: '', // 申请日期
+ ids: [] as string[],
limit: 20,
offset: 1,
}) // 查询参数
+watch(() => time.value, (newVal) => {
+ if (newVal) {
+ // searchQuery.noticeStartTime = newVal[0]
+ // searchQuery.noticeEndTime = newVal[1]
+ }
+ else {
+ // searchQuery.noticeStartTime = ''
+ // searchQuery.noticeEndTime = ''
+ }
+})
const loadingTable = ref(false) // 表格loading
const total = ref(0) // 数据总条数
// 全部状态的表格数据
@@ -217,6 +229,7 @@
searchQuery.applyPerson = ''
searchQuery.applyUnit = ''
searchQuery.time = ''
+ time.value = ''
getList()
}
// 新增
@@ -232,6 +245,12 @@
},
})
}
+// 表格被选中的行
+const selectList = ref([])
+// 表格多选
+const multiSelect = (row) => {
+ selectList.value = row
+}
// 导出
const exportExcelBtn = () => {
const loading = ElLoading.service({
@@ -239,10 +258,15 @@
text: 'Loading',
background: 'rgba(255, 255, 255, 0.8)',
})
-
+ // if (selectList.value.length) {
+ // selectList.value.forEach((item) => {
+ // searchQuery.ids?.push(item.id as string)
+ // })
+ // }
exportApply({ ...searchQuery, limit: undefined, offset: undefined }).then((res) => {
exportFile(res.data, '设备借用申请')
loading.close()
+ // searchQuery.ids = []
}).catch((_) => {
loading.close()
})
@@ -352,11 +376,20 @@
- -->
+
@@ -374,7 +407,9 @@
:is-showmulti-select="true"
:query="{ limit: searchQuery.limit, offset: searchQuery.offset }"
:list-loading="loadingTable"
+ :is-multi="true"
@change="changePage"
+ @multi-select="multiSelect"
>
@@ -425,7 +460,7 @@
-
+
查看
diff --git a/src/views/device/borrow/components/handleList.vue b/src/views/device/borrow/components/handleList.vue
index ff89b3a..7f74981 100644
--- a/src/views/device/borrow/components/handleList.vue
+++ b/src/views/device/borrow/components/handleList.vue
@@ -1,48 +1,65 @@
@@ -28,7 +35,7 @@
-
+
diff --git a/src/views/device/borrow/components/applyList.vue b/src/views/device/borrow/components/applyList.vue
index 240fffa..ec43b86 100644
--- a/src/views/device/borrow/components/applyList.vue
+++ b/src/views/device/borrow/components/applyList.vue
@@ -14,6 +14,7 @@
})
const { proxy } = getCurrentInstance() as any
const $router = useRouter()
+const time = ref()
const searchQuery = reactive({
applyName: '', // 申请名称
applyNo: '', // 申请编号
@@ -23,9 +24,20 @@
createUser: '', // 创建人
processResult: '', // 处置结果
time: '', // 申请日期
+ ids: [] as string[],
limit: 20,
offset: 1,
}) // 查询参数
+watch(() => time.value, (newVal) => {
+ if (newVal) {
+ // searchQuery.noticeStartTime = newVal[0]
+ // searchQuery.noticeEndTime = newVal[1]
+ }
+ else {
+ // searchQuery.noticeStartTime = ''
+ // searchQuery.noticeEndTime = ''
+ }
+})
const loadingTable = ref(false) // 表格loading
const total = ref(0) // 数据总条数
// 全部状态的表格数据
@@ -217,6 +229,7 @@
searchQuery.applyPerson = ''
searchQuery.applyUnit = ''
searchQuery.time = ''
+ time.value = ''
getList()
}
// 新增
@@ -232,6 +245,12 @@
},
})
}
+// 表格被选中的行
+const selectList = ref([])
+// 表格多选
+const multiSelect = (row) => {
+ selectList.value = row
+}
// 导出
const exportExcelBtn = () => {
const loading = ElLoading.service({
@@ -239,10 +258,15 @@
text: 'Loading',
background: 'rgba(255, 255, 255, 0.8)',
})
-
+ // if (selectList.value.length) {
+ // selectList.value.forEach((item) => {
+ // searchQuery.ids?.push(item.id as string)
+ // })
+ // }
exportApply({ ...searchQuery, limit: undefined, offset: undefined }).then((res) => {
exportFile(res.data, '设备借用申请')
loading.close()
+ // searchQuery.ids = []
}).catch((_) => {
loading.close()
})
@@ -352,11 +376,20 @@
- -->
+
@@ -374,7 +407,9 @@
:is-showmulti-select="true"
:query="{ limit: searchQuery.limit, offset: searchQuery.offset }"
:list-loading="loadingTable"
+ :is-multi="true"
@change="changePage"
+ @multi-select="multiSelect"
>
@@ -425,7 +460,7 @@
-
+
查看
diff --git a/src/views/device/borrow/components/handleList.vue b/src/views/device/borrow/components/handleList.vue
index ff89b3a..7f74981 100644
--- a/src/views/device/borrow/components/handleList.vue
+++ b/src/views/device/borrow/components/handleList.vue
@@ -1,48 +1,65 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/api/measure/measureDept.ts b/src/api/measure/measureDept.ts
index 9a30ce3..3d34a2b 100644
--- a/src/api/measure/measureDept.ts
+++ b/src/api/measure/measureDept.ts
@@ -43,3 +43,11 @@
data,
})
}
+// 获取父级组织
+export function getpDeptApi(data: object) {
+ return request({
+ url: '/meter/organize/deptInfo',
+ method: 'post',
+ data,
+ })
+}
diff --git a/src/api/system/notice.ts b/src/api/system/notice.ts
index 9f38397..90ae2a7 100644
--- a/src/api/system/notice.ts
+++ b/src/api/system/notice.ts
@@ -8,8 +8,10 @@
export interface listParamsType {
noticeNo: string // 编号
noticePublisher: string // 发布人
- noticeTime: string // 发布时间
+ noticeTime?: string // 发布时间
noticeTitle: string // 标题
+ noticeStartTime: string // 标题
+ noticeEndTime: string // 标题
limit: number
offset: number
}
@@ -43,4 +45,29 @@
data,
})
}
+// 通知公告删除
+export function removeNoticeApi(data: object) {
+ return request({
+ url: `${prefix}/notice/delete`,
+ method: 'post',
+ data,
+ })
+}
+// 通知公告编辑
+export function updateNoticeApi(data: object) {
+ return request({
+ url: `${prefix}/notice/update`,
+ method: 'post',
+ data,
+ })
+}
+// 导出通知公告
+export function exportNoticeApi(data: object) {
+ return request({
+ url: `${prefix}/notice/update`,
+ method: 'post',
+ data,
+ responseType: 'blob',
+ })
+}
diff --git a/src/api/system/tool.ts b/src/api/system/tool.ts
index 1798ce5..7b61c3f 100644
--- a/src/api/system/tool.ts
+++ b/src/api/system/tool.ts
@@ -72,7 +72,7 @@
templateNo: string // 编号
templateName: string // 名称
templateCreator: string // 负责人
- createTime: string // 创建时间
+ // createTime: string // 创建时间
limit: number
offset: number
templateType: string
diff --git a/src/views/device/borrow/borrow-interface.ts b/src/views/device/borrow/borrow-interface.ts
index 66dd307..7f8f5ce 100644
--- a/src/views/device/borrow/borrow-interface.ts
+++ b/src/views/device/borrow/borrow-interface.ts
@@ -10,6 +10,7 @@
time: string // 申请日期
limit?: number
offset?: number
+ ids?: string[]
}
// 借用设备类型
export interface borrowDeviceType {
diff --git a/src/views/device/borrow/borrowHandle.vue b/src/views/device/borrow/borrowHandle.vue
index bca0958..470bad1 100644
--- a/src/views/device/borrow/borrowHandle.vue
+++ b/src/views/device/borrow/borrowHandle.vue
@@ -15,6 +15,13 @@
watch(current, (newValue) => {
currentComp.value = menu.value.filter(item => item.name === newValue)[0].comp
})
+onUnmounted(() => {
+ sessionStorage.setItem('deviceBorrowHandler', current.value)
+})
+onMounted(() => {
+ current.value = sessionStorage.getItem('deviceBorrowHandler') || '待借用'
+ sessionStorage.getItem('deviceBorrowHandler') ? sessionStorage.removeItem('deviceBorrowHandler') : ''
+})
@@ -28,7 +35,7 @@
-
+
diff --git a/src/views/device/borrow/components/applyList.vue b/src/views/device/borrow/components/applyList.vue
index 240fffa..ec43b86 100644
--- a/src/views/device/borrow/components/applyList.vue
+++ b/src/views/device/borrow/components/applyList.vue
@@ -14,6 +14,7 @@
})
const { proxy } = getCurrentInstance() as any
const $router = useRouter()
+const time = ref()
const searchQuery = reactive({
applyName: '', // 申请名称
applyNo: '', // 申请编号
@@ -23,9 +24,20 @@
createUser: '', // 创建人
processResult: '', // 处置结果
time: '', // 申请日期
+ ids: [] as string[],
limit: 20,
offset: 1,
}) // 查询参数
+watch(() => time.value, (newVal) => {
+ if (newVal) {
+ // searchQuery.noticeStartTime = newVal[0]
+ // searchQuery.noticeEndTime = newVal[1]
+ }
+ else {
+ // searchQuery.noticeStartTime = ''
+ // searchQuery.noticeEndTime = ''
+ }
+})
const loadingTable = ref(false) // 表格loading
const total = ref(0) // 数据总条数
// 全部状态的表格数据
@@ -217,6 +229,7 @@
searchQuery.applyPerson = ''
searchQuery.applyUnit = ''
searchQuery.time = ''
+ time.value = ''
getList()
}
// 新增
@@ -232,6 +245,12 @@
},
})
}
+// 表格被选中的行
+const selectList = ref([])
+// 表格多选
+const multiSelect = (row) => {
+ selectList.value = row
+}
// 导出
const exportExcelBtn = () => {
const loading = ElLoading.service({
@@ -239,10 +258,15 @@
text: 'Loading',
background: 'rgba(255, 255, 255, 0.8)',
})
-
+ // if (selectList.value.length) {
+ // selectList.value.forEach((item) => {
+ // searchQuery.ids?.push(item.id as string)
+ // })
+ // }
exportApply({ ...searchQuery, limit: undefined, offset: undefined }).then((res) => {
exportFile(res.data, '设备借用申请')
loading.close()
+ // searchQuery.ids = []
}).catch((_) => {
loading.close()
})
@@ -352,11 +376,20 @@
- -->
+
@@ -374,7 +407,9 @@
:is-showmulti-select="true"
:query="{ limit: searchQuery.limit, offset: searchQuery.offset }"
:list-loading="loadingTable"
+ :is-multi="true"
@change="changePage"
+ @multi-select="multiSelect"
>
@@ -425,7 +460,7 @@
-
+
查看
diff --git a/src/views/device/borrow/components/handleList.vue b/src/views/device/borrow/components/handleList.vue
index ff89b3a..7f74981 100644
--- a/src/views/device/borrow/components/handleList.vue
+++ b/src/views/device/borrow/components/handleList.vue
@@ -1,48 +1,65 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/views/measure/measureDept/components/templatePage.vue b/src/views/measure/measureDept/components/templatePage.vue
index 50918a0..0403c93 100644
--- a/src/views/measure/measureDept/components/templatePage.vue
+++ b/src/views/measure/measureDept/components/templatePage.vue
@@ -3,7 +3,7 @@
import { ElLoading } from 'element-plus'
import type { rowType, searchQueryType } from '../measureDept-interface'
import type { fileResType } from '@/views/measure/file/file-interface'
-import { exportApi, listPageApi } from '@/api/measure/measureDept'
+import { exportApi, getpDeptApi, listPageApi } from '@/api/measure/measureDept'
import { getDictByCode } from '@/api/system/dict'
import { exportFile } from '@/utils/exportUtils'
import type { TableColumn } from '@/components/NormalTable/table_interface'
@@ -20,17 +20,30 @@
const $router = useRouter()
const $route = useRoute()
const { proxy } = getCurrentInstance() as any
+const createTime = ref()
const searchQuery = reactive({
organizeNo: '', // 组织编号
organizeName: '', // 名称
limit: 20,
offset: 1,
organizeType: '', // 类型
- createTime: '', // 创建时间
+ createEndTime: '',
+ createStartTime: '',
director: '', // 负责人
meterMajor: '', // 专业
pDeptId: '', // 所属科室
+ ids: [] as string[],
}) // 查询参数
+watch(() => createTime.value, (newVal) => {
+ if (newVal) {
+ searchQuery.createStartTime = newVal[0]
+ searchQuery.createEndTime = newVal[1]
+ }
+ else {
+ searchQuery.createStartTime = ''
+ searchQuery.createEndTime = ''
+ }
+})
const loadingTable = ref(false) // 表格loading
const total = ref(0) // 数据总条数
// 表格数据根据不同组织筛选
@@ -91,7 +104,7 @@
standard: '',
extarCss: '',
})
-const list = ref([]) // 表格数据
+const list = ref([]) // 表格数据
// 获取类型
const getType = async () => {
const res = await getDictByCode('deptType')
@@ -106,7 +119,9 @@
limit: 99999,
offset: 1,
organizeType: '3',
- createTime: '', // 创建时间
+ // createTime: '', // 创建时间
+ createEndTime: '',
+ createStartTime: '',
director: '', // 负责人
meterMajor: '', // 专业
pDeptId: '', // 所属科室
@@ -117,13 +132,16 @@
// 获取数据列表
const getList = () => {
loadingTable.value = true
- if (!searchQuery.createTime) {
- searchQuery.createTime = ''
- }
listPageApi(searchQuery).then((res) => {
if (res.code === 200) {
- list.value = res.data.rows.map(item => ({ ...item, createTime: item.createTime.split(' ')[0] }))
+ list.value = (res.data.rows as rowType[]).map(item => ({ ...item, createTime: item.createTime.split(' ')[0] }))
total.value = res.data.total
+ if (props.authority === 'gcz') {
+ list.value.forEach(async (item) => {
+ const res = await getpDeptApi({ deptId: item.deptId })
+ item.pDeptName = res.data.pDeptName
+ })
+ }
}
loadingTable.value = false
}).catch((_) => {
@@ -175,15 +193,22 @@
}
// 重置
const reset = () => {
+ createTime.value = ''
searchQuery.organizeNo = '' // 组织编号
searchQuery.organizeName = '' // 名称
+ searchQuery.pDeptId = ''
searchQuery.limit = 10
searchQuery.offset = 1
- searchQuery.createTime = '' // 创建时间
searchQuery.director = '' // 负责人
searchQuery.meterMajor = '' // 专业
getList()
}
+// 表格被选中的行
+const selectList = ref([])
+// 表格多选
+const multiSelect = (row: rowType[]) => {
+ selectList.value = row
+}
// 导出
const exportExcelBtn = () => {
const loading = ElLoading.service({
@@ -191,9 +216,15 @@
text: 'Loading',
background: 'rgba(255, 255, 255, 0.8)',
})
+ if (selectList.value.length) {
+ selectList.value.forEach((item) => {
+ searchQuery.ids?.push(item.id as string)
+ })
+ }
exportApi(searchQuery).then((res) => {
exportFile(res.data, props.name)
loading.close()
+ searchQuery.ids = []
}).catch((_) => {
loading.close()
})
@@ -229,16 +260,26 @@
-
+
+
@@ -260,7 +301,8 @@
:is-showmulti-select="true"
:query="{ limit: searchQuery.limit, offset: searchQuery.offset }"
:list-loading="loadingTable"
- @change="changePage"
+ :is-multi="true"
+ @change="changePage" @multi-select="multiSelect"
>
diff --git a/src/api/measure/measureDept.ts b/src/api/measure/measureDept.ts
index 9a30ce3..3d34a2b 100644
--- a/src/api/measure/measureDept.ts
+++ b/src/api/measure/measureDept.ts
@@ -43,3 +43,11 @@
data,
})
}
+// 获取父级组织
+export function getpDeptApi(data: object) {
+ return request({
+ url: '/meter/organize/deptInfo',
+ method: 'post',
+ data,
+ })
+}
diff --git a/src/api/system/notice.ts b/src/api/system/notice.ts
index 9f38397..90ae2a7 100644
--- a/src/api/system/notice.ts
+++ b/src/api/system/notice.ts
@@ -8,8 +8,10 @@
export interface listParamsType {
noticeNo: string // 编号
noticePublisher: string // 发布人
- noticeTime: string // 发布时间
+ noticeTime?: string // 发布时间
noticeTitle: string // 标题
+ noticeStartTime: string // 标题
+ noticeEndTime: string // 标题
limit: number
offset: number
}
@@ -43,4 +45,29 @@
data,
})
}
+// 通知公告删除
+export function removeNoticeApi(data: object) {
+ return request({
+ url: `${prefix}/notice/delete`,
+ method: 'post',
+ data,
+ })
+}
+// 通知公告编辑
+export function updateNoticeApi(data: object) {
+ return request({
+ url: `${prefix}/notice/update`,
+ method: 'post',
+ data,
+ })
+}
+// 导出通知公告
+export function exportNoticeApi(data: object) {
+ return request({
+ url: `${prefix}/notice/update`,
+ method: 'post',
+ data,
+ responseType: 'blob',
+ })
+}
diff --git a/src/api/system/tool.ts b/src/api/system/tool.ts
index 1798ce5..7b61c3f 100644
--- a/src/api/system/tool.ts
+++ b/src/api/system/tool.ts
@@ -72,7 +72,7 @@
templateNo: string // 编号
templateName: string // 名称
templateCreator: string // 负责人
- createTime: string // 创建时间
+ // createTime: string // 创建时间
limit: number
offset: number
templateType: string
diff --git a/src/views/device/borrow/borrow-interface.ts b/src/views/device/borrow/borrow-interface.ts
index 66dd307..7f8f5ce 100644
--- a/src/views/device/borrow/borrow-interface.ts
+++ b/src/views/device/borrow/borrow-interface.ts
@@ -10,6 +10,7 @@
time: string // 申请日期
limit?: number
offset?: number
+ ids?: string[]
}
// 借用设备类型
export interface borrowDeviceType {
diff --git a/src/views/device/borrow/borrowHandle.vue b/src/views/device/borrow/borrowHandle.vue
index bca0958..470bad1 100644
--- a/src/views/device/borrow/borrowHandle.vue
+++ b/src/views/device/borrow/borrowHandle.vue
@@ -15,6 +15,13 @@
watch(current, (newValue) => {
currentComp.value = menu.value.filter(item => item.name === newValue)[0].comp
})
+onUnmounted(() => {
+ sessionStorage.setItem('deviceBorrowHandler', current.value)
+})
+onMounted(() => {
+ current.value = sessionStorage.getItem('deviceBorrowHandler') || '待借用'
+ sessionStorage.getItem('deviceBorrowHandler') ? sessionStorage.removeItem('deviceBorrowHandler') : ''
+})
@@ -28,7 +35,7 @@
-
+
diff --git a/src/views/device/borrow/components/applyList.vue b/src/views/device/borrow/components/applyList.vue
index 240fffa..ec43b86 100644
--- a/src/views/device/borrow/components/applyList.vue
+++ b/src/views/device/borrow/components/applyList.vue
@@ -14,6 +14,7 @@
})
const { proxy } = getCurrentInstance() as any
const $router = useRouter()
+const time = ref()
const searchQuery = reactive({
applyName: '', // 申请名称
applyNo: '', // 申请编号
@@ -23,9 +24,20 @@
createUser: '', // 创建人
processResult: '', // 处置结果
time: '', // 申请日期
+ ids: [] as string[],
limit: 20,
offset: 1,
}) // 查询参数
+watch(() => time.value, (newVal) => {
+ if (newVal) {
+ // searchQuery.noticeStartTime = newVal[0]
+ // searchQuery.noticeEndTime = newVal[1]
+ }
+ else {
+ // searchQuery.noticeStartTime = ''
+ // searchQuery.noticeEndTime = ''
+ }
+})
const loadingTable = ref(false) // 表格loading
const total = ref(0) // 数据总条数
// 全部状态的表格数据
@@ -217,6 +229,7 @@
searchQuery.applyPerson = ''
searchQuery.applyUnit = ''
searchQuery.time = ''
+ time.value = ''
getList()
}
// 新增
@@ -232,6 +245,12 @@
},
})
}
+// 表格被选中的行
+const selectList = ref([])
+// 表格多选
+const multiSelect = (row) => {
+ selectList.value = row
+}
// 导出
const exportExcelBtn = () => {
const loading = ElLoading.service({
@@ -239,10 +258,15 @@
text: 'Loading',
background: 'rgba(255, 255, 255, 0.8)',
})
-
+ // if (selectList.value.length) {
+ // selectList.value.forEach((item) => {
+ // searchQuery.ids?.push(item.id as string)
+ // })
+ // }
exportApply({ ...searchQuery, limit: undefined, offset: undefined }).then((res) => {
exportFile(res.data, '设备借用申请')
loading.close()
+ // searchQuery.ids = []
}).catch((_) => {
loading.close()
})
@@ -352,11 +376,20 @@
- -->
+
@@ -374,7 +407,9 @@
:is-showmulti-select="true"
:query="{ limit: searchQuery.limit, offset: searchQuery.offset }"
:list-loading="loadingTable"
+ :is-multi="true"
@change="changePage"
+ @multi-select="multiSelect"
>
@@ -425,7 +460,7 @@
-
+
查看
diff --git a/src/views/device/borrow/components/handleList.vue b/src/views/device/borrow/components/handleList.vue
index ff89b3a..7f74981 100644
--- a/src/views/device/borrow/components/handleList.vue
+++ b/src/views/device/borrow/components/handleList.vue
@@ -1,48 +1,65 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/views/measure/measureDept/components/templatePage.vue b/src/views/measure/measureDept/components/templatePage.vue
index 50918a0..0403c93 100644
--- a/src/views/measure/measureDept/components/templatePage.vue
+++ b/src/views/measure/measureDept/components/templatePage.vue
@@ -3,7 +3,7 @@
import { ElLoading } from 'element-plus'
import type { rowType, searchQueryType } from '../measureDept-interface'
import type { fileResType } from '@/views/measure/file/file-interface'
-import { exportApi, listPageApi } from '@/api/measure/measureDept'
+import { exportApi, getpDeptApi, listPageApi } from '@/api/measure/measureDept'
import { getDictByCode } from '@/api/system/dict'
import { exportFile } from '@/utils/exportUtils'
import type { TableColumn } from '@/components/NormalTable/table_interface'
@@ -20,17 +20,30 @@
const $router = useRouter()
const $route = useRoute()
const { proxy } = getCurrentInstance() as any
+const createTime = ref()
const searchQuery = reactive({
organizeNo: '', // 组织编号
organizeName: '', // 名称
limit: 20,
offset: 1,
organizeType: '', // 类型
- createTime: '', // 创建时间
+ createEndTime: '',
+ createStartTime: '',
director: '', // 负责人
meterMajor: '', // 专业
pDeptId: '', // 所属科室
+ ids: [] as string[],
}) // 查询参数
+watch(() => createTime.value, (newVal) => {
+ if (newVal) {
+ searchQuery.createStartTime = newVal[0]
+ searchQuery.createEndTime = newVal[1]
+ }
+ else {
+ searchQuery.createStartTime = ''
+ searchQuery.createEndTime = ''
+ }
+})
const loadingTable = ref(false) // 表格loading
const total = ref(0) // 数据总条数
// 表格数据根据不同组织筛选
@@ -91,7 +104,7 @@
standard: '',
extarCss: '',
})
-const list = ref([]) // 表格数据
+const list = ref([]) // 表格数据
// 获取类型
const getType = async () => {
const res = await getDictByCode('deptType')
@@ -106,7 +119,9 @@
limit: 99999,
offset: 1,
organizeType: '3',
- createTime: '', // 创建时间
+ // createTime: '', // 创建时间
+ createEndTime: '',
+ createStartTime: '',
director: '', // 负责人
meterMajor: '', // 专业
pDeptId: '', // 所属科室
@@ -117,13 +132,16 @@
// 获取数据列表
const getList = () => {
loadingTable.value = true
- if (!searchQuery.createTime) {
- searchQuery.createTime = ''
- }
listPageApi(searchQuery).then((res) => {
if (res.code === 200) {
- list.value = res.data.rows.map(item => ({ ...item, createTime: item.createTime.split(' ')[0] }))
+ list.value = (res.data.rows as rowType[]).map(item => ({ ...item, createTime: item.createTime.split(' ')[0] }))
total.value = res.data.total
+ if (props.authority === 'gcz') {
+ list.value.forEach(async (item) => {
+ const res = await getpDeptApi({ deptId: item.deptId })
+ item.pDeptName = res.data.pDeptName
+ })
+ }
}
loadingTable.value = false
}).catch((_) => {
@@ -175,15 +193,22 @@
}
// 重置
const reset = () => {
+ createTime.value = ''
searchQuery.organizeNo = '' // 组织编号
searchQuery.organizeName = '' // 名称
+ searchQuery.pDeptId = ''
searchQuery.limit = 10
searchQuery.offset = 1
- searchQuery.createTime = '' // 创建时间
searchQuery.director = '' // 负责人
searchQuery.meterMajor = '' // 专业
getList()
}
+// 表格被选中的行
+const selectList = ref([])
+// 表格多选
+const multiSelect = (row: rowType[]) => {
+ selectList.value = row
+}
// 导出
const exportExcelBtn = () => {
const loading = ElLoading.service({
@@ -191,9 +216,15 @@
text: 'Loading',
background: 'rgba(255, 255, 255, 0.8)',
})
+ if (selectList.value.length) {
+ selectList.value.forEach((item) => {
+ searchQuery.ids?.push(item.id as string)
+ })
+ }
exportApi(searchQuery).then((res) => {
exportFile(res.data, props.name)
loading.close()
+ searchQuery.ids = []
}).catch((_) => {
loading.close()
})
@@ -229,16 +260,26 @@
-
+
+
@@ -260,7 +301,8 @@
:is-showmulti-select="true"
:query="{ limit: searchQuery.limit, offset: searchQuery.offset }"
:list-loading="loadingTable"
- @change="changePage"
+ :is-multi="true"
+ @change="changePage" @multi-select="multiSelect"
>
diff --git a/src/views/measure/measureDept/measureDept-interface.ts b/src/views/measure/measureDept/measureDept-interface.ts
index 5f7f5e7..f7911fa 100644
--- a/src/views/measure/measureDept/measureDept-interface.ts
+++ b/src/views/measure/measureDept/measureDept-interface.ts
@@ -9,6 +9,9 @@
director?: string // 负责人
meterMajor?: string // 专业
pDeptId?: string // 所属科室
+ createEndTime?: string
+ createStartTime?: string
+ ids?: string[]
}
export interface columnType {
@@ -35,6 +38,7 @@
organizeNo: string
organizeType: string
pDeptId: string
+ pDeptName: string
phone: string
remark: string
technologyJob: string
diff --git a/src/api/measure/measureDept.ts b/src/api/measure/measureDept.ts
index 9a30ce3..3d34a2b 100644
--- a/src/api/measure/measureDept.ts
+++ b/src/api/measure/measureDept.ts
@@ -43,3 +43,11 @@
data,
})
}
+// 获取父级组织
+export function getpDeptApi(data: object) {
+ return request({
+ url: '/meter/organize/deptInfo',
+ method: 'post',
+ data,
+ })
+}
diff --git a/src/api/system/notice.ts b/src/api/system/notice.ts
index 9f38397..90ae2a7 100644
--- a/src/api/system/notice.ts
+++ b/src/api/system/notice.ts
@@ -8,8 +8,10 @@
export interface listParamsType {
noticeNo: string // 编号
noticePublisher: string // 发布人
- noticeTime: string // 发布时间
+ noticeTime?: string // 发布时间
noticeTitle: string // 标题
+ noticeStartTime: string // 标题
+ noticeEndTime: string // 标题
limit: number
offset: number
}
@@ -43,4 +45,29 @@
data,
})
}
+// 通知公告删除
+export function removeNoticeApi(data: object) {
+ return request({
+ url: `${prefix}/notice/delete`,
+ method: 'post',
+ data,
+ })
+}
+// 通知公告编辑
+export function updateNoticeApi(data: object) {
+ return request({
+ url: `${prefix}/notice/update`,
+ method: 'post',
+ data,
+ })
+}
+// 导出通知公告
+export function exportNoticeApi(data: object) {
+ return request({
+ url: `${prefix}/notice/update`,
+ method: 'post',
+ data,
+ responseType: 'blob',
+ })
+}
diff --git a/src/api/system/tool.ts b/src/api/system/tool.ts
index 1798ce5..7b61c3f 100644
--- a/src/api/system/tool.ts
+++ b/src/api/system/tool.ts
@@ -72,7 +72,7 @@
templateNo: string // 编号
templateName: string // 名称
templateCreator: string // 负责人
- createTime: string // 创建时间
+ // createTime: string // 创建时间
limit: number
offset: number
templateType: string
diff --git a/src/views/device/borrow/borrow-interface.ts b/src/views/device/borrow/borrow-interface.ts
index 66dd307..7f8f5ce 100644
--- a/src/views/device/borrow/borrow-interface.ts
+++ b/src/views/device/borrow/borrow-interface.ts
@@ -10,6 +10,7 @@
time: string // 申请日期
limit?: number
offset?: number
+ ids?: string[]
}
// 借用设备类型
export interface borrowDeviceType {
diff --git a/src/views/device/borrow/borrowHandle.vue b/src/views/device/borrow/borrowHandle.vue
index bca0958..470bad1 100644
--- a/src/views/device/borrow/borrowHandle.vue
+++ b/src/views/device/borrow/borrowHandle.vue
@@ -15,6 +15,13 @@
watch(current, (newValue) => {
currentComp.value = menu.value.filter(item => item.name === newValue)[0].comp
})
+onUnmounted(() => {
+ sessionStorage.setItem('deviceBorrowHandler', current.value)
+})
+onMounted(() => {
+ current.value = sessionStorage.getItem('deviceBorrowHandler') || '待借用'
+ sessionStorage.getItem('deviceBorrowHandler') ? sessionStorage.removeItem('deviceBorrowHandler') : ''
+})
@@ -28,7 +35,7 @@
-
+
diff --git a/src/views/device/borrow/components/applyList.vue b/src/views/device/borrow/components/applyList.vue
index 240fffa..ec43b86 100644
--- a/src/views/device/borrow/components/applyList.vue
+++ b/src/views/device/borrow/components/applyList.vue
@@ -14,6 +14,7 @@
})
const { proxy } = getCurrentInstance() as any
const $router = useRouter()
+const time = ref()
const searchQuery = reactive({
applyName: '', // 申请名称
applyNo: '', // 申请编号
@@ -23,9 +24,20 @@
createUser: '', // 创建人
processResult: '', // 处置结果
time: '', // 申请日期
+ ids: [] as string[],
limit: 20,
offset: 1,
}) // 查询参数
+watch(() => time.value, (newVal) => {
+ if (newVal) {
+ // searchQuery.noticeStartTime = newVal[0]
+ // searchQuery.noticeEndTime = newVal[1]
+ }
+ else {
+ // searchQuery.noticeStartTime = ''
+ // searchQuery.noticeEndTime = ''
+ }
+})
const loadingTable = ref(false) // 表格loading
const total = ref(0) // 数据总条数
// 全部状态的表格数据
@@ -217,6 +229,7 @@
searchQuery.applyPerson = ''
searchQuery.applyUnit = ''
searchQuery.time = ''
+ time.value = ''
getList()
}
// 新增
@@ -232,6 +245,12 @@
},
})
}
+// 表格被选中的行
+const selectList = ref([])
+// 表格多选
+const multiSelect = (row) => {
+ selectList.value = row
+}
// 导出
const exportExcelBtn = () => {
const loading = ElLoading.service({
@@ -239,10 +258,15 @@
text: 'Loading',
background: 'rgba(255, 255, 255, 0.8)',
})
-
+ // if (selectList.value.length) {
+ // selectList.value.forEach((item) => {
+ // searchQuery.ids?.push(item.id as string)
+ // })
+ // }
exportApply({ ...searchQuery, limit: undefined, offset: undefined }).then((res) => {
exportFile(res.data, '设备借用申请')
loading.close()
+ // searchQuery.ids = []
}).catch((_) => {
loading.close()
})
@@ -352,11 +376,20 @@
- -->
+
@@ -374,7 +407,9 @@
:is-showmulti-select="true"
:query="{ limit: searchQuery.limit, offset: searchQuery.offset }"
:list-loading="loadingTable"
+ :is-multi="true"
@change="changePage"
+ @multi-select="multiSelect"
>
@@ -425,7 +460,7 @@
-
+
查看
diff --git a/src/views/device/borrow/components/handleList.vue b/src/views/device/borrow/components/handleList.vue
index ff89b3a..7f74981 100644
--- a/src/views/device/borrow/components/handleList.vue
+++ b/src/views/device/borrow/components/handleList.vue
@@ -1,48 +1,65 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/views/measure/measureDept/components/templatePage.vue b/src/views/measure/measureDept/components/templatePage.vue
index 50918a0..0403c93 100644
--- a/src/views/measure/measureDept/components/templatePage.vue
+++ b/src/views/measure/measureDept/components/templatePage.vue
@@ -3,7 +3,7 @@
import { ElLoading } from 'element-plus'
import type { rowType, searchQueryType } from '../measureDept-interface'
import type { fileResType } from '@/views/measure/file/file-interface'
-import { exportApi, listPageApi } from '@/api/measure/measureDept'
+import { exportApi, getpDeptApi, listPageApi } from '@/api/measure/measureDept'
import { getDictByCode } from '@/api/system/dict'
import { exportFile } from '@/utils/exportUtils'
import type { TableColumn } from '@/components/NormalTable/table_interface'
@@ -20,17 +20,30 @@
const $router = useRouter()
const $route = useRoute()
const { proxy } = getCurrentInstance() as any
+const createTime = ref()
const searchQuery = reactive({
organizeNo: '', // 组织编号
organizeName: '', // 名称
limit: 20,
offset: 1,
organizeType: '', // 类型
- createTime: '', // 创建时间
+ createEndTime: '',
+ createStartTime: '',
director: '', // 负责人
meterMajor: '', // 专业
pDeptId: '', // 所属科室
+ ids: [] as string[],
}) // 查询参数
+watch(() => createTime.value, (newVal) => {
+ if (newVal) {
+ searchQuery.createStartTime = newVal[0]
+ searchQuery.createEndTime = newVal[1]
+ }
+ else {
+ searchQuery.createStartTime = ''
+ searchQuery.createEndTime = ''
+ }
+})
const loadingTable = ref(false) // 表格loading
const total = ref(0) // 数据总条数
// 表格数据根据不同组织筛选
@@ -91,7 +104,7 @@
standard: '',
extarCss: '',
})
-const list = ref([]) // 表格数据
+const list = ref([]) // 表格数据
// 获取类型
const getType = async () => {
const res = await getDictByCode('deptType')
@@ -106,7 +119,9 @@
limit: 99999,
offset: 1,
organizeType: '3',
- createTime: '', // 创建时间
+ // createTime: '', // 创建时间
+ createEndTime: '',
+ createStartTime: '',
director: '', // 负责人
meterMajor: '', // 专业
pDeptId: '', // 所属科室
@@ -117,13 +132,16 @@
// 获取数据列表
const getList = () => {
loadingTable.value = true
- if (!searchQuery.createTime) {
- searchQuery.createTime = ''
- }
listPageApi(searchQuery).then((res) => {
if (res.code === 200) {
- list.value = res.data.rows.map(item => ({ ...item, createTime: item.createTime.split(' ')[0] }))
+ list.value = (res.data.rows as rowType[]).map(item => ({ ...item, createTime: item.createTime.split(' ')[0] }))
total.value = res.data.total
+ if (props.authority === 'gcz') {
+ list.value.forEach(async (item) => {
+ const res = await getpDeptApi({ deptId: item.deptId })
+ item.pDeptName = res.data.pDeptName
+ })
+ }
}
loadingTable.value = false
}).catch((_) => {
@@ -175,15 +193,22 @@
}
// 重置
const reset = () => {
+ createTime.value = ''
searchQuery.organizeNo = '' // 组织编号
searchQuery.organizeName = '' // 名称
+ searchQuery.pDeptId = ''
searchQuery.limit = 10
searchQuery.offset = 1
- searchQuery.createTime = '' // 创建时间
searchQuery.director = '' // 负责人
searchQuery.meterMajor = '' // 专业
getList()
}
+// 表格被选中的行
+const selectList = ref([])
+// 表格多选
+const multiSelect = (row: rowType[]) => {
+ selectList.value = row
+}
// 导出
const exportExcelBtn = () => {
const loading = ElLoading.service({
@@ -191,9 +216,15 @@
text: 'Loading',
background: 'rgba(255, 255, 255, 0.8)',
})
+ if (selectList.value.length) {
+ selectList.value.forEach((item) => {
+ searchQuery.ids?.push(item.id as string)
+ })
+ }
exportApi(searchQuery).then((res) => {
exportFile(res.data, props.name)
loading.close()
+ searchQuery.ids = []
}).catch((_) => {
loading.close()
})
@@ -229,16 +260,26 @@
-
+
+
@@ -260,7 +301,8 @@
:is-showmulti-select="true"
:query="{ limit: searchQuery.limit, offset: searchQuery.offset }"
:list-loading="loadingTable"
- @change="changePage"
+ :is-multi="true"
+ @change="changePage" @multi-select="multiSelect"
>
diff --git a/src/views/measure/measureDept/measureDept-interface.ts b/src/views/measure/measureDept/measureDept-interface.ts
index 5f7f5e7..f7911fa 100644
--- a/src/views/measure/measureDept/measureDept-interface.ts
+++ b/src/views/measure/measureDept/measureDept-interface.ts
@@ -9,6 +9,9 @@
director?: string // 负责人
meterMajor?: string // 专业
pDeptId?: string // 所属科室
+ createEndTime?: string
+ createStartTime?: string
+ ids?: string[]
}
export interface columnType {
@@ -35,6 +38,7 @@
organizeNo: string
organizeType: string
pDeptId: string
+ pDeptName: string
phone: string
remark: string
technologyJob: string
diff --git a/src/views/measure/person/certificateLog.vue b/src/views/measure/person/certificateLog.vue
index a566b78..01c5266 100644
--- a/src/views/measure/person/certificateLog.vue
+++ b/src/views/measure/person/certificateLog.vue
@@ -31,6 +31,7 @@
remindType: '',
limit: 20,
offset: 1,
+ ids: [] as string[],
}) // 查询参数
const loadingTable = ref(false) // 表格loading
const total = ref(0) // 数据总条数
@@ -237,6 +238,12 @@
// name: props.isRemind ? '证书状况' : '证书记录',
// })
}
+// 表格被选中的行
+const selectList = ref([])
+// 表格多选
+const multiSelect = (row: StaffType[]) => {
+ selectList.value = row
+}
// 导出
const exportExcelBtn = () => {
const loading = ElLoading.service({
@@ -244,9 +251,15 @@
text: 'Loading',
background: 'rgba(255, 255, 255, 0.8)',
})
+ if (selectList.value.length) {
+ selectList.value.forEach((item) => {
+ searchQuery.ids?.push(item.id as string)
+ })
+ }
CertificateListList({ ...searchQuery }).then((res) => {
exportFile(res.data, '证书记录列表')
loading.close()
+ searchQuery.ids = []
}).catch((_) => {
loading.close()
})
@@ -278,11 +291,6 @@
const batchImport = () => {
fileRef.value.click()
}
-// 传给子组件的刷新事件
-const refreshDta = () => {
- getList()
- dialogVisible.value = false
-}
onMounted(() => {
getDeptList()
getList()
@@ -347,7 +355,9 @@
:is-showmulti-select="true"
:query="{ limit: searchQuery.limit, offset: searchQuery.offset }"
:list-loading="loadingTable"
+ :is-multi="true"
@change="changePage"
+ @multi-select="multiSelect"
>
diff --git a/src/api/measure/measureDept.ts b/src/api/measure/measureDept.ts
index 9a30ce3..3d34a2b 100644
--- a/src/api/measure/measureDept.ts
+++ b/src/api/measure/measureDept.ts
@@ -43,3 +43,11 @@
data,
})
}
+// 获取父级组织
+export function getpDeptApi(data: object) {
+ return request({
+ url: '/meter/organize/deptInfo',
+ method: 'post',
+ data,
+ })
+}
diff --git a/src/api/system/notice.ts b/src/api/system/notice.ts
index 9f38397..90ae2a7 100644
--- a/src/api/system/notice.ts
+++ b/src/api/system/notice.ts
@@ -8,8 +8,10 @@
export interface listParamsType {
noticeNo: string // 编号
noticePublisher: string // 发布人
- noticeTime: string // 发布时间
+ noticeTime?: string // 发布时间
noticeTitle: string // 标题
+ noticeStartTime: string // 标题
+ noticeEndTime: string // 标题
limit: number
offset: number
}
@@ -43,4 +45,29 @@
data,
})
}
+// 通知公告删除
+export function removeNoticeApi(data: object) {
+ return request({
+ url: `${prefix}/notice/delete`,
+ method: 'post',
+ data,
+ })
+}
+// 通知公告编辑
+export function updateNoticeApi(data: object) {
+ return request({
+ url: `${prefix}/notice/update`,
+ method: 'post',
+ data,
+ })
+}
+// 导出通知公告
+export function exportNoticeApi(data: object) {
+ return request({
+ url: `${prefix}/notice/update`,
+ method: 'post',
+ data,
+ responseType: 'blob',
+ })
+}
diff --git a/src/api/system/tool.ts b/src/api/system/tool.ts
index 1798ce5..7b61c3f 100644
--- a/src/api/system/tool.ts
+++ b/src/api/system/tool.ts
@@ -72,7 +72,7 @@
templateNo: string // 编号
templateName: string // 名称
templateCreator: string // 负责人
- createTime: string // 创建时间
+ // createTime: string // 创建时间
limit: number
offset: number
templateType: string
diff --git a/src/views/device/borrow/borrow-interface.ts b/src/views/device/borrow/borrow-interface.ts
index 66dd307..7f8f5ce 100644
--- a/src/views/device/borrow/borrow-interface.ts
+++ b/src/views/device/borrow/borrow-interface.ts
@@ -10,6 +10,7 @@
time: string // 申请日期
limit?: number
offset?: number
+ ids?: string[]
}
// 借用设备类型
export interface borrowDeviceType {
diff --git a/src/views/device/borrow/borrowHandle.vue b/src/views/device/borrow/borrowHandle.vue
index bca0958..470bad1 100644
--- a/src/views/device/borrow/borrowHandle.vue
+++ b/src/views/device/borrow/borrowHandle.vue
@@ -15,6 +15,13 @@
watch(current, (newValue) => {
currentComp.value = menu.value.filter(item => item.name === newValue)[0].comp
})
+onUnmounted(() => {
+ sessionStorage.setItem('deviceBorrowHandler', current.value)
+})
+onMounted(() => {
+ current.value = sessionStorage.getItem('deviceBorrowHandler') || '待借用'
+ sessionStorage.getItem('deviceBorrowHandler') ? sessionStorage.removeItem('deviceBorrowHandler') : ''
+})
@@ -28,7 +35,7 @@
-
+
diff --git a/src/views/device/borrow/components/applyList.vue b/src/views/device/borrow/components/applyList.vue
index 240fffa..ec43b86 100644
--- a/src/views/device/borrow/components/applyList.vue
+++ b/src/views/device/borrow/components/applyList.vue
@@ -14,6 +14,7 @@
})
const { proxy } = getCurrentInstance() as any
const $router = useRouter()
+const time = ref()
const searchQuery = reactive({
applyName: '', // 申请名称
applyNo: '', // 申请编号
@@ -23,9 +24,20 @@
createUser: '', // 创建人
processResult: '', // 处置结果
time: '', // 申请日期
+ ids: [] as string[],
limit: 20,
offset: 1,
}) // 查询参数
+watch(() => time.value, (newVal) => {
+ if (newVal) {
+ // searchQuery.noticeStartTime = newVal[0]
+ // searchQuery.noticeEndTime = newVal[1]
+ }
+ else {
+ // searchQuery.noticeStartTime = ''
+ // searchQuery.noticeEndTime = ''
+ }
+})
const loadingTable = ref(false) // 表格loading
const total = ref(0) // 数据总条数
// 全部状态的表格数据
@@ -217,6 +229,7 @@
searchQuery.applyPerson = ''
searchQuery.applyUnit = ''
searchQuery.time = ''
+ time.value = ''
getList()
}
// 新增
@@ -232,6 +245,12 @@
},
})
}
+// 表格被选中的行
+const selectList = ref([])
+// 表格多选
+const multiSelect = (row) => {
+ selectList.value = row
+}
// 导出
const exportExcelBtn = () => {
const loading = ElLoading.service({
@@ -239,10 +258,15 @@
text: 'Loading',
background: 'rgba(255, 255, 255, 0.8)',
})
-
+ // if (selectList.value.length) {
+ // selectList.value.forEach((item) => {
+ // searchQuery.ids?.push(item.id as string)
+ // })
+ // }
exportApply({ ...searchQuery, limit: undefined, offset: undefined }).then((res) => {
exportFile(res.data, '设备借用申请')
loading.close()
+ // searchQuery.ids = []
}).catch((_) => {
loading.close()
})
@@ -352,11 +376,20 @@
- -->
+
@@ -374,7 +407,9 @@
:is-showmulti-select="true"
:query="{ limit: searchQuery.limit, offset: searchQuery.offset }"
:list-loading="loadingTable"
+ :is-multi="true"
@change="changePage"
+ @multi-select="multiSelect"
>
@@ -425,7 +460,7 @@
-
+
查看
diff --git a/src/views/device/borrow/components/handleList.vue b/src/views/device/borrow/components/handleList.vue
index ff89b3a..7f74981 100644
--- a/src/views/device/borrow/components/handleList.vue
+++ b/src/views/device/borrow/components/handleList.vue
@@ -1,48 +1,65 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/views/measure/measureDept/components/templatePage.vue b/src/views/measure/measureDept/components/templatePage.vue
index 50918a0..0403c93 100644
--- a/src/views/measure/measureDept/components/templatePage.vue
+++ b/src/views/measure/measureDept/components/templatePage.vue
@@ -3,7 +3,7 @@
import { ElLoading } from 'element-plus'
import type { rowType, searchQueryType } from '../measureDept-interface'
import type { fileResType } from '@/views/measure/file/file-interface'
-import { exportApi, listPageApi } from '@/api/measure/measureDept'
+import { exportApi, getpDeptApi, listPageApi } from '@/api/measure/measureDept'
import { getDictByCode } from '@/api/system/dict'
import { exportFile } from '@/utils/exportUtils'
import type { TableColumn } from '@/components/NormalTable/table_interface'
@@ -20,17 +20,30 @@
const $router = useRouter()
const $route = useRoute()
const { proxy } = getCurrentInstance() as any
+const createTime = ref()
const searchQuery = reactive({
organizeNo: '', // 组织编号
organizeName: '', // 名称
limit: 20,
offset: 1,
organizeType: '', // 类型
- createTime: '', // 创建时间
+ createEndTime: '',
+ createStartTime: '',
director: '', // 负责人
meterMajor: '', // 专业
pDeptId: '', // 所属科室
+ ids: [] as string[],
}) // 查询参数
+watch(() => createTime.value, (newVal) => {
+ if (newVal) {
+ searchQuery.createStartTime = newVal[0]
+ searchQuery.createEndTime = newVal[1]
+ }
+ else {
+ searchQuery.createStartTime = ''
+ searchQuery.createEndTime = ''
+ }
+})
const loadingTable = ref(false) // 表格loading
const total = ref(0) // 数据总条数
// 表格数据根据不同组织筛选
@@ -91,7 +104,7 @@
standard: '',
extarCss: '',
})
-const list = ref([]) // 表格数据
+const list = ref([]) // 表格数据
// 获取类型
const getType = async () => {
const res = await getDictByCode('deptType')
@@ -106,7 +119,9 @@
limit: 99999,
offset: 1,
organizeType: '3',
- createTime: '', // 创建时间
+ // createTime: '', // 创建时间
+ createEndTime: '',
+ createStartTime: '',
director: '', // 负责人
meterMajor: '', // 专业
pDeptId: '', // 所属科室
@@ -117,13 +132,16 @@
// 获取数据列表
const getList = () => {
loadingTable.value = true
- if (!searchQuery.createTime) {
- searchQuery.createTime = ''
- }
listPageApi(searchQuery).then((res) => {
if (res.code === 200) {
- list.value = res.data.rows.map(item => ({ ...item, createTime: item.createTime.split(' ')[0] }))
+ list.value = (res.data.rows as rowType[]).map(item => ({ ...item, createTime: item.createTime.split(' ')[0] }))
total.value = res.data.total
+ if (props.authority === 'gcz') {
+ list.value.forEach(async (item) => {
+ const res = await getpDeptApi({ deptId: item.deptId })
+ item.pDeptName = res.data.pDeptName
+ })
+ }
}
loadingTable.value = false
}).catch((_) => {
@@ -175,15 +193,22 @@
}
// 重置
const reset = () => {
+ createTime.value = ''
searchQuery.organizeNo = '' // 组织编号
searchQuery.organizeName = '' // 名称
+ searchQuery.pDeptId = ''
searchQuery.limit = 10
searchQuery.offset = 1
- searchQuery.createTime = '' // 创建时间
searchQuery.director = '' // 负责人
searchQuery.meterMajor = '' // 专业
getList()
}
+// 表格被选中的行
+const selectList = ref([])
+// 表格多选
+const multiSelect = (row: rowType[]) => {
+ selectList.value = row
+}
// 导出
const exportExcelBtn = () => {
const loading = ElLoading.service({
@@ -191,9 +216,15 @@
text: 'Loading',
background: 'rgba(255, 255, 255, 0.8)',
})
+ if (selectList.value.length) {
+ selectList.value.forEach((item) => {
+ searchQuery.ids?.push(item.id as string)
+ })
+ }
exportApi(searchQuery).then((res) => {
exportFile(res.data, props.name)
loading.close()
+ searchQuery.ids = []
}).catch((_) => {
loading.close()
})
@@ -229,16 +260,26 @@
-
+
+
@@ -260,7 +301,8 @@
:is-showmulti-select="true"
:query="{ limit: searchQuery.limit, offset: searchQuery.offset }"
:list-loading="loadingTable"
- @change="changePage"
+ :is-multi="true"
+ @change="changePage" @multi-select="multiSelect"
>
diff --git a/src/views/measure/measureDept/measureDept-interface.ts b/src/views/measure/measureDept/measureDept-interface.ts
index 5f7f5e7..f7911fa 100644
--- a/src/views/measure/measureDept/measureDept-interface.ts
+++ b/src/views/measure/measureDept/measureDept-interface.ts
@@ -9,6 +9,9 @@
director?: string // 负责人
meterMajor?: string // 专业
pDeptId?: string // 所属科室
+ createEndTime?: string
+ createStartTime?: string
+ ids?: string[]
}
export interface columnType {
@@ -35,6 +38,7 @@
organizeNo: string
organizeType: string
pDeptId: string
+ pDeptName: string
phone: string
remark: string
technologyJob: string
diff --git a/src/views/measure/person/certificateLog.vue b/src/views/measure/person/certificateLog.vue
index a566b78..01c5266 100644
--- a/src/views/measure/person/certificateLog.vue
+++ b/src/views/measure/person/certificateLog.vue
@@ -31,6 +31,7 @@
remindType: '',
limit: 20,
offset: 1,
+ ids: [] as string[],
}) // 查询参数
const loadingTable = ref(false) // 表格loading
const total = ref(0) // 数据总条数
@@ -237,6 +238,12 @@
// name: props.isRemind ? '证书状况' : '证书记录',
// })
}
+// 表格被选中的行
+const selectList = ref([])
+// 表格多选
+const multiSelect = (row: StaffType[]) => {
+ selectList.value = row
+}
// 导出
const exportExcelBtn = () => {
const loading = ElLoading.service({
@@ -244,9 +251,15 @@
text: 'Loading',
background: 'rgba(255, 255, 255, 0.8)',
})
+ if (selectList.value.length) {
+ selectList.value.forEach((item) => {
+ searchQuery.ids?.push(item.id as string)
+ })
+ }
CertificateListList({ ...searchQuery }).then((res) => {
exportFile(res.data, '证书记录列表')
loading.close()
+ searchQuery.ids = []
}).catch((_) => {
loading.close()
})
@@ -278,11 +291,6 @@
const batchImport = () => {
fileRef.value.click()
}
-// 传给子组件的刷新事件
-const refreshDta = () => {
- getList()
- dialogVisible.value = false
-}
onMounted(() => {
getDeptList()
getList()
@@ -347,7 +355,9 @@
:is-showmulti-select="true"
:query="{ limit: searchQuery.limit, offset: searchQuery.offset }"
:list-loading="loadingTable"
+ :is-multi="true"
@change="changePage"
+ @multi-select="multiSelect"
>
diff --git a/src/views/measure/person/list.vue b/src/views/measure/person/list.vue
index d3a1ea9..7a90e93 100644
--- a/src/views/measure/person/list.vue
+++ b/src/views/measure/person/list.vue
@@ -20,6 +20,7 @@
certificateStatus: '', // 证书状态
limit: 20,
offset: 1,
+ ids: [] as string[],
}) // 查询参数
const loadingTable = ref(false) // 表格loading
const total = ref(0) // 数据总条数
@@ -166,6 +167,12 @@
path: '/person/detail',
})
}
+// 表格被选中的行
+const selectList = ref([])
+// 表格多选
+const multiSelect = (row: StaffType[]) => {
+ selectList.value = row
+}
// 导出
const exportExcelBtn = () => {
const loading = ElLoading.service({
@@ -173,9 +180,15 @@
text: 'Loading',
background: 'rgba(255, 255, 255, 0.8)',
})
+ if (selectList.value.length) {
+ selectList.value.forEach((item) => {
+ searchQuery.ids?.push(item.id as string)
+ })
+ }
exportList({ ...searchQuery, limit: 9999999, offset: 1 }).then((res) => {
exportFile(res.data, '计量人员列表')
loading.close()
+ searchQuery.ids = []
}).catch((_) => {
loading.close()
})
@@ -210,11 +223,6 @@
const batchImport = () => {
fileRef.value.click()
}
-// 传给子组件的刷新事件
-const refreshDta = () => {
- getList()
- dialogVisible.value = false
-}
onMounted(() => {
getDeptList()
getList()
@@ -272,7 +280,9 @@
:is-showmulti-select="true"
:query="{ limit: searchQuery.limit, offset: searchQuery.offset }"
:list-loading="loadingTable"
+ :is-multi="true"
@change="changePage"
+ @multi-select="multiSelect"
>
diff --git a/src/api/measure/measureDept.ts b/src/api/measure/measureDept.ts
index 9a30ce3..3d34a2b 100644
--- a/src/api/measure/measureDept.ts
+++ b/src/api/measure/measureDept.ts
@@ -43,3 +43,11 @@
data,
})
}
+// 获取父级组织
+export function getpDeptApi(data: object) {
+ return request({
+ url: '/meter/organize/deptInfo',
+ method: 'post',
+ data,
+ })
+}
diff --git a/src/api/system/notice.ts b/src/api/system/notice.ts
index 9f38397..90ae2a7 100644
--- a/src/api/system/notice.ts
+++ b/src/api/system/notice.ts
@@ -8,8 +8,10 @@
export interface listParamsType {
noticeNo: string // 编号
noticePublisher: string // 发布人
- noticeTime: string // 发布时间
+ noticeTime?: string // 发布时间
noticeTitle: string // 标题
+ noticeStartTime: string // 标题
+ noticeEndTime: string // 标题
limit: number
offset: number
}
@@ -43,4 +45,29 @@
data,
})
}
+// 通知公告删除
+export function removeNoticeApi(data: object) {
+ return request({
+ url: `${prefix}/notice/delete`,
+ method: 'post',
+ data,
+ })
+}
+// 通知公告编辑
+export function updateNoticeApi(data: object) {
+ return request({
+ url: `${prefix}/notice/update`,
+ method: 'post',
+ data,
+ })
+}
+// 导出通知公告
+export function exportNoticeApi(data: object) {
+ return request({
+ url: `${prefix}/notice/update`,
+ method: 'post',
+ data,
+ responseType: 'blob',
+ })
+}
diff --git a/src/api/system/tool.ts b/src/api/system/tool.ts
index 1798ce5..7b61c3f 100644
--- a/src/api/system/tool.ts
+++ b/src/api/system/tool.ts
@@ -72,7 +72,7 @@
templateNo: string // 编号
templateName: string // 名称
templateCreator: string // 负责人
- createTime: string // 创建时间
+ // createTime: string // 创建时间
limit: number
offset: number
templateType: string
diff --git a/src/views/device/borrow/borrow-interface.ts b/src/views/device/borrow/borrow-interface.ts
index 66dd307..7f8f5ce 100644
--- a/src/views/device/borrow/borrow-interface.ts
+++ b/src/views/device/borrow/borrow-interface.ts
@@ -10,6 +10,7 @@
time: string // 申请日期
limit?: number
offset?: number
+ ids?: string[]
}
// 借用设备类型
export interface borrowDeviceType {
diff --git a/src/views/device/borrow/borrowHandle.vue b/src/views/device/borrow/borrowHandle.vue
index bca0958..470bad1 100644
--- a/src/views/device/borrow/borrowHandle.vue
+++ b/src/views/device/borrow/borrowHandle.vue
@@ -15,6 +15,13 @@
watch(current, (newValue) => {
currentComp.value = menu.value.filter(item => item.name === newValue)[0].comp
})
+onUnmounted(() => {
+ sessionStorage.setItem('deviceBorrowHandler', current.value)
+})
+onMounted(() => {
+ current.value = sessionStorage.getItem('deviceBorrowHandler') || '待借用'
+ sessionStorage.getItem('deviceBorrowHandler') ? sessionStorage.removeItem('deviceBorrowHandler') : ''
+})
@@ -28,7 +35,7 @@
-
+
diff --git a/src/views/device/borrow/components/applyList.vue b/src/views/device/borrow/components/applyList.vue
index 240fffa..ec43b86 100644
--- a/src/views/device/borrow/components/applyList.vue
+++ b/src/views/device/borrow/components/applyList.vue
@@ -14,6 +14,7 @@
})
const { proxy } = getCurrentInstance() as any
const $router = useRouter()
+const time = ref()
const searchQuery = reactive({
applyName: '', // 申请名称
applyNo: '', // 申请编号
@@ -23,9 +24,20 @@
createUser: '', // 创建人
processResult: '', // 处置结果
time: '', // 申请日期
+ ids: [] as string[],
limit: 20,
offset: 1,
}) // 查询参数
+watch(() => time.value, (newVal) => {
+ if (newVal) {
+ // searchQuery.noticeStartTime = newVal[0]
+ // searchQuery.noticeEndTime = newVal[1]
+ }
+ else {
+ // searchQuery.noticeStartTime = ''
+ // searchQuery.noticeEndTime = ''
+ }
+})
const loadingTable = ref(false) // 表格loading
const total = ref(0) // 数据总条数
// 全部状态的表格数据
@@ -217,6 +229,7 @@
searchQuery.applyPerson = ''
searchQuery.applyUnit = ''
searchQuery.time = ''
+ time.value = ''
getList()
}
// 新增
@@ -232,6 +245,12 @@
},
})
}
+// 表格被选中的行
+const selectList = ref([])
+// 表格多选
+const multiSelect = (row) => {
+ selectList.value = row
+}
// 导出
const exportExcelBtn = () => {
const loading = ElLoading.service({
@@ -239,10 +258,15 @@
text: 'Loading',
background: 'rgba(255, 255, 255, 0.8)',
})
-
+ // if (selectList.value.length) {
+ // selectList.value.forEach((item) => {
+ // searchQuery.ids?.push(item.id as string)
+ // })
+ // }
exportApply({ ...searchQuery, limit: undefined, offset: undefined }).then((res) => {
exportFile(res.data, '设备借用申请')
loading.close()
+ // searchQuery.ids = []
}).catch((_) => {
loading.close()
})
@@ -352,11 +376,20 @@
- -->
+
@@ -374,7 +407,9 @@
:is-showmulti-select="true"
:query="{ limit: searchQuery.limit, offset: searchQuery.offset }"
:list-loading="loadingTable"
+ :is-multi="true"
@change="changePage"
+ @multi-select="multiSelect"
>
@@ -425,7 +460,7 @@
-
+
查看
diff --git a/src/views/device/borrow/components/handleList.vue b/src/views/device/borrow/components/handleList.vue
index ff89b3a..7f74981 100644
--- a/src/views/device/borrow/components/handleList.vue
+++ b/src/views/device/borrow/components/handleList.vue
@@ -1,48 +1,65 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/views/measure/measureDept/components/templatePage.vue b/src/views/measure/measureDept/components/templatePage.vue
index 50918a0..0403c93 100644
--- a/src/views/measure/measureDept/components/templatePage.vue
+++ b/src/views/measure/measureDept/components/templatePage.vue
@@ -3,7 +3,7 @@
import { ElLoading } from 'element-plus'
import type { rowType, searchQueryType } from '../measureDept-interface'
import type { fileResType } from '@/views/measure/file/file-interface'
-import { exportApi, listPageApi } from '@/api/measure/measureDept'
+import { exportApi, getpDeptApi, listPageApi } from '@/api/measure/measureDept'
import { getDictByCode } from '@/api/system/dict'
import { exportFile } from '@/utils/exportUtils'
import type { TableColumn } from '@/components/NormalTable/table_interface'
@@ -20,17 +20,30 @@
const $router = useRouter()
const $route = useRoute()
const { proxy } = getCurrentInstance() as any
+const createTime = ref()
const searchQuery = reactive({
organizeNo: '', // 组织编号
organizeName: '', // 名称
limit: 20,
offset: 1,
organizeType: '', // 类型
- createTime: '', // 创建时间
+ createEndTime: '',
+ createStartTime: '',
director: '', // 负责人
meterMajor: '', // 专业
pDeptId: '', // 所属科室
+ ids: [] as string[],
}) // 查询参数
+watch(() => createTime.value, (newVal) => {
+ if (newVal) {
+ searchQuery.createStartTime = newVal[0]
+ searchQuery.createEndTime = newVal[1]
+ }
+ else {
+ searchQuery.createStartTime = ''
+ searchQuery.createEndTime = ''
+ }
+})
const loadingTable = ref(false) // 表格loading
const total = ref(0) // 数据总条数
// 表格数据根据不同组织筛选
@@ -91,7 +104,7 @@
standard: '',
extarCss: '',
})
-const list = ref([]) // 表格数据
+const list = ref([]) // 表格数据
// 获取类型
const getType = async () => {
const res = await getDictByCode('deptType')
@@ -106,7 +119,9 @@
limit: 99999,
offset: 1,
organizeType: '3',
- createTime: '', // 创建时间
+ // createTime: '', // 创建时间
+ createEndTime: '',
+ createStartTime: '',
director: '', // 负责人
meterMajor: '', // 专业
pDeptId: '', // 所属科室
@@ -117,13 +132,16 @@
// 获取数据列表
const getList = () => {
loadingTable.value = true
- if (!searchQuery.createTime) {
- searchQuery.createTime = ''
- }
listPageApi(searchQuery).then((res) => {
if (res.code === 200) {
- list.value = res.data.rows.map(item => ({ ...item, createTime: item.createTime.split(' ')[0] }))
+ list.value = (res.data.rows as rowType[]).map(item => ({ ...item, createTime: item.createTime.split(' ')[0] }))
total.value = res.data.total
+ if (props.authority === 'gcz') {
+ list.value.forEach(async (item) => {
+ const res = await getpDeptApi({ deptId: item.deptId })
+ item.pDeptName = res.data.pDeptName
+ })
+ }
}
loadingTable.value = false
}).catch((_) => {
@@ -175,15 +193,22 @@
}
// 重置
const reset = () => {
+ createTime.value = ''
searchQuery.organizeNo = '' // 组织编号
searchQuery.organizeName = '' // 名称
+ searchQuery.pDeptId = ''
searchQuery.limit = 10
searchQuery.offset = 1
- searchQuery.createTime = '' // 创建时间
searchQuery.director = '' // 负责人
searchQuery.meterMajor = '' // 专业
getList()
}
+// 表格被选中的行
+const selectList = ref([])
+// 表格多选
+const multiSelect = (row: rowType[]) => {
+ selectList.value = row
+}
// 导出
const exportExcelBtn = () => {
const loading = ElLoading.service({
@@ -191,9 +216,15 @@
text: 'Loading',
background: 'rgba(255, 255, 255, 0.8)',
})
+ if (selectList.value.length) {
+ selectList.value.forEach((item) => {
+ searchQuery.ids?.push(item.id as string)
+ })
+ }
exportApi(searchQuery).then((res) => {
exportFile(res.data, props.name)
loading.close()
+ searchQuery.ids = []
}).catch((_) => {
loading.close()
})
@@ -229,16 +260,26 @@
-
+
+
@@ -260,7 +301,8 @@
:is-showmulti-select="true"
:query="{ limit: searchQuery.limit, offset: searchQuery.offset }"
:list-loading="loadingTable"
- @change="changePage"
+ :is-multi="true"
+ @change="changePage" @multi-select="multiSelect"
>
diff --git a/src/views/measure/measureDept/measureDept-interface.ts b/src/views/measure/measureDept/measureDept-interface.ts
index 5f7f5e7..f7911fa 100644
--- a/src/views/measure/measureDept/measureDept-interface.ts
+++ b/src/views/measure/measureDept/measureDept-interface.ts
@@ -9,6 +9,9 @@
director?: string // 负责人
meterMajor?: string // 专业
pDeptId?: string // 所属科室
+ createEndTime?: string
+ createStartTime?: string
+ ids?: string[]
}
export interface columnType {
@@ -35,6 +38,7 @@
organizeNo: string
organizeType: string
pDeptId: string
+ pDeptName: string
phone: string
remark: string
technologyJob: string
diff --git a/src/views/measure/person/certificateLog.vue b/src/views/measure/person/certificateLog.vue
index a566b78..01c5266 100644
--- a/src/views/measure/person/certificateLog.vue
+++ b/src/views/measure/person/certificateLog.vue
@@ -31,6 +31,7 @@
remindType: '',
limit: 20,
offset: 1,
+ ids: [] as string[],
}) // 查询参数
const loadingTable = ref(false) // 表格loading
const total = ref(0) // 数据总条数
@@ -237,6 +238,12 @@
// name: props.isRemind ? '证书状况' : '证书记录',
// })
}
+// 表格被选中的行
+const selectList = ref([])
+// 表格多选
+const multiSelect = (row: StaffType[]) => {
+ selectList.value = row
+}
// 导出
const exportExcelBtn = () => {
const loading = ElLoading.service({
@@ -244,9 +251,15 @@
text: 'Loading',
background: 'rgba(255, 255, 255, 0.8)',
})
+ if (selectList.value.length) {
+ selectList.value.forEach((item) => {
+ searchQuery.ids?.push(item.id as string)
+ })
+ }
CertificateListList({ ...searchQuery }).then((res) => {
exportFile(res.data, '证书记录列表')
loading.close()
+ searchQuery.ids = []
}).catch((_) => {
loading.close()
})
@@ -278,11 +291,6 @@
const batchImport = () => {
fileRef.value.click()
}
-// 传给子组件的刷新事件
-const refreshDta = () => {
- getList()
- dialogVisible.value = false
-}
onMounted(() => {
getDeptList()
getList()
@@ -347,7 +355,9 @@
:is-showmulti-select="true"
:query="{ limit: searchQuery.limit, offset: searchQuery.offset }"
:list-loading="loadingTable"
+ :is-multi="true"
@change="changePage"
+ @multi-select="multiSelect"
>
diff --git a/src/views/measure/person/list.vue b/src/views/measure/person/list.vue
index d3a1ea9..7a90e93 100644
--- a/src/views/measure/person/list.vue
+++ b/src/views/measure/person/list.vue
@@ -20,6 +20,7 @@
certificateStatus: '', // 证书状态
limit: 20,
offset: 1,
+ ids: [] as string[],
}) // 查询参数
const loadingTable = ref(false) // 表格loading
const total = ref(0) // 数据总条数
@@ -166,6 +167,12 @@
path: '/person/detail',
})
}
+// 表格被选中的行
+const selectList = ref([])
+// 表格多选
+const multiSelect = (row: StaffType[]) => {
+ selectList.value = row
+}
// 导出
const exportExcelBtn = () => {
const loading = ElLoading.service({
@@ -173,9 +180,15 @@
text: 'Loading',
background: 'rgba(255, 255, 255, 0.8)',
})
+ if (selectList.value.length) {
+ selectList.value.forEach((item) => {
+ searchQuery.ids?.push(item.id as string)
+ })
+ }
exportList({ ...searchQuery, limit: 9999999, offset: 1 }).then((res) => {
exportFile(res.data, '计量人员列表')
loading.close()
+ searchQuery.ids = []
}).catch((_) => {
loading.close()
})
@@ -210,11 +223,6 @@
const batchImport = () => {
fileRef.value.click()
}
-// 传给子组件的刷新事件
-const refreshDta = () => {
- getList()
- dialogVisible.value = false
-}
onMounted(() => {
getDeptList()
getList()
@@ -272,7 +280,9 @@
:is-showmulti-select="true"
:query="{ limit: searchQuery.limit, offset: searchQuery.offset }"
:list-loading="loadingTable"
+ :is-multi="true"
@change="changePage"
+ @multi-select="multiSelect"
>
diff --git a/src/views/measure/person/person-interface.ts b/src/views/measure/person/person-interface.ts
index d116841..e510a2c 100644
--- a/src/views/measure/person/person-interface.ts
+++ b/src/views/measure/person/person-interface.ts
@@ -9,6 +9,7 @@
remindType?: string
limit: number
offset: number
+ ids?: string[]
}
// 计量人员类型
export interface StaffType {
diff --git a/src/api/measure/measureDept.ts b/src/api/measure/measureDept.ts
index 9a30ce3..3d34a2b 100644
--- a/src/api/measure/measureDept.ts
+++ b/src/api/measure/measureDept.ts
@@ -43,3 +43,11 @@
data,
})
}
+// 获取父级组织
+export function getpDeptApi(data: object) {
+ return request({
+ url: '/meter/organize/deptInfo',
+ method: 'post',
+ data,
+ })
+}
diff --git a/src/api/system/notice.ts b/src/api/system/notice.ts
index 9f38397..90ae2a7 100644
--- a/src/api/system/notice.ts
+++ b/src/api/system/notice.ts
@@ -8,8 +8,10 @@
export interface listParamsType {
noticeNo: string // 编号
noticePublisher: string // 发布人
- noticeTime: string // 发布时间
+ noticeTime?: string // 发布时间
noticeTitle: string // 标题
+ noticeStartTime: string // 标题
+ noticeEndTime: string // 标题
limit: number
offset: number
}
@@ -43,4 +45,29 @@
data,
})
}
+// 通知公告删除
+export function removeNoticeApi(data: object) {
+ return request({
+ url: `${prefix}/notice/delete`,
+ method: 'post',
+ data,
+ })
+}
+// 通知公告编辑
+export function updateNoticeApi(data: object) {
+ return request({
+ url: `${prefix}/notice/update`,
+ method: 'post',
+ data,
+ })
+}
+// 导出通知公告
+export function exportNoticeApi(data: object) {
+ return request({
+ url: `${prefix}/notice/update`,
+ method: 'post',
+ data,
+ responseType: 'blob',
+ })
+}
diff --git a/src/api/system/tool.ts b/src/api/system/tool.ts
index 1798ce5..7b61c3f 100644
--- a/src/api/system/tool.ts
+++ b/src/api/system/tool.ts
@@ -72,7 +72,7 @@
templateNo: string // 编号
templateName: string // 名称
templateCreator: string // 负责人
- createTime: string // 创建时间
+ // createTime: string // 创建时间
limit: number
offset: number
templateType: string
diff --git a/src/views/device/borrow/borrow-interface.ts b/src/views/device/borrow/borrow-interface.ts
index 66dd307..7f8f5ce 100644
--- a/src/views/device/borrow/borrow-interface.ts
+++ b/src/views/device/borrow/borrow-interface.ts
@@ -10,6 +10,7 @@
time: string // 申请日期
limit?: number
offset?: number
+ ids?: string[]
}
// 借用设备类型
export interface borrowDeviceType {
diff --git a/src/views/device/borrow/borrowHandle.vue b/src/views/device/borrow/borrowHandle.vue
index bca0958..470bad1 100644
--- a/src/views/device/borrow/borrowHandle.vue
+++ b/src/views/device/borrow/borrowHandle.vue
@@ -15,6 +15,13 @@
watch(current, (newValue) => {
currentComp.value = menu.value.filter(item => item.name === newValue)[0].comp
})
+onUnmounted(() => {
+ sessionStorage.setItem('deviceBorrowHandler', current.value)
+})
+onMounted(() => {
+ current.value = sessionStorage.getItem('deviceBorrowHandler') || '待借用'
+ sessionStorage.getItem('deviceBorrowHandler') ? sessionStorage.removeItem('deviceBorrowHandler') : ''
+})
@@ -28,7 +35,7 @@
-
+
diff --git a/src/views/device/borrow/components/applyList.vue b/src/views/device/borrow/components/applyList.vue
index 240fffa..ec43b86 100644
--- a/src/views/device/borrow/components/applyList.vue
+++ b/src/views/device/borrow/components/applyList.vue
@@ -14,6 +14,7 @@
})
const { proxy } = getCurrentInstance() as any
const $router = useRouter()
+const time = ref()
const searchQuery = reactive({
applyName: '', // 申请名称
applyNo: '', // 申请编号
@@ -23,9 +24,20 @@
createUser: '', // 创建人
processResult: '', // 处置结果
time: '', // 申请日期
+ ids: [] as string[],
limit: 20,
offset: 1,
}) // 查询参数
+watch(() => time.value, (newVal) => {
+ if (newVal) {
+ // searchQuery.noticeStartTime = newVal[0]
+ // searchQuery.noticeEndTime = newVal[1]
+ }
+ else {
+ // searchQuery.noticeStartTime = ''
+ // searchQuery.noticeEndTime = ''
+ }
+})
const loadingTable = ref(false) // 表格loading
const total = ref(0) // 数据总条数
// 全部状态的表格数据
@@ -217,6 +229,7 @@
searchQuery.applyPerson = ''
searchQuery.applyUnit = ''
searchQuery.time = ''
+ time.value = ''
getList()
}
// 新增
@@ -232,6 +245,12 @@
},
})
}
+// 表格被选中的行
+const selectList = ref([])
+// 表格多选
+const multiSelect = (row) => {
+ selectList.value = row
+}
// 导出
const exportExcelBtn = () => {
const loading = ElLoading.service({
@@ -239,10 +258,15 @@
text: 'Loading',
background: 'rgba(255, 255, 255, 0.8)',
})
-
+ // if (selectList.value.length) {
+ // selectList.value.forEach((item) => {
+ // searchQuery.ids?.push(item.id as string)
+ // })
+ // }
exportApply({ ...searchQuery, limit: undefined, offset: undefined }).then((res) => {
exportFile(res.data, '设备借用申请')
loading.close()
+ // searchQuery.ids = []
}).catch((_) => {
loading.close()
})
@@ -352,11 +376,20 @@
- -->
+
@@ -374,7 +407,9 @@
:is-showmulti-select="true"
:query="{ limit: searchQuery.limit, offset: searchQuery.offset }"
:list-loading="loadingTable"
+ :is-multi="true"
@change="changePage"
+ @multi-select="multiSelect"
>
@@ -425,7 +460,7 @@
-
+
查看
diff --git a/src/views/device/borrow/components/handleList.vue b/src/views/device/borrow/components/handleList.vue
index ff89b3a..7f74981 100644
--- a/src/views/device/borrow/components/handleList.vue
+++ b/src/views/device/borrow/components/handleList.vue
@@ -1,48 +1,65 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/views/measure/measureDept/components/templatePage.vue b/src/views/measure/measureDept/components/templatePage.vue
index 50918a0..0403c93 100644
--- a/src/views/measure/measureDept/components/templatePage.vue
+++ b/src/views/measure/measureDept/components/templatePage.vue
@@ -3,7 +3,7 @@
import { ElLoading } from 'element-plus'
import type { rowType, searchQueryType } from '../measureDept-interface'
import type { fileResType } from '@/views/measure/file/file-interface'
-import { exportApi, listPageApi } from '@/api/measure/measureDept'
+import { exportApi, getpDeptApi, listPageApi } from '@/api/measure/measureDept'
import { getDictByCode } from '@/api/system/dict'
import { exportFile } from '@/utils/exportUtils'
import type { TableColumn } from '@/components/NormalTable/table_interface'
@@ -20,17 +20,30 @@
const $router = useRouter()
const $route = useRoute()
const { proxy } = getCurrentInstance() as any
+const createTime = ref()
const searchQuery = reactive({
organizeNo: '', // 组织编号
organizeName: '', // 名称
limit: 20,
offset: 1,
organizeType: '', // 类型
- createTime: '', // 创建时间
+ createEndTime: '',
+ createStartTime: '',
director: '', // 负责人
meterMajor: '', // 专业
pDeptId: '', // 所属科室
+ ids: [] as string[],
}) // 查询参数
+watch(() => createTime.value, (newVal) => {
+ if (newVal) {
+ searchQuery.createStartTime = newVal[0]
+ searchQuery.createEndTime = newVal[1]
+ }
+ else {
+ searchQuery.createStartTime = ''
+ searchQuery.createEndTime = ''
+ }
+})
const loadingTable = ref(false) // 表格loading
const total = ref(0) // 数据总条数
// 表格数据根据不同组织筛选
@@ -91,7 +104,7 @@
standard: '',
extarCss: '',
})
-const list = ref([]) // 表格数据
+const list = ref([]) // 表格数据
// 获取类型
const getType = async () => {
const res = await getDictByCode('deptType')
@@ -106,7 +119,9 @@
limit: 99999,
offset: 1,
organizeType: '3',
- createTime: '', // 创建时间
+ // createTime: '', // 创建时间
+ createEndTime: '',
+ createStartTime: '',
director: '', // 负责人
meterMajor: '', // 专业
pDeptId: '', // 所属科室
@@ -117,13 +132,16 @@
// 获取数据列表
const getList = () => {
loadingTable.value = true
- if (!searchQuery.createTime) {
- searchQuery.createTime = ''
- }
listPageApi(searchQuery).then((res) => {
if (res.code === 200) {
- list.value = res.data.rows.map(item => ({ ...item, createTime: item.createTime.split(' ')[0] }))
+ list.value = (res.data.rows as rowType[]).map(item => ({ ...item, createTime: item.createTime.split(' ')[0] }))
total.value = res.data.total
+ if (props.authority === 'gcz') {
+ list.value.forEach(async (item) => {
+ const res = await getpDeptApi({ deptId: item.deptId })
+ item.pDeptName = res.data.pDeptName
+ })
+ }
}
loadingTable.value = false
}).catch((_) => {
@@ -175,15 +193,22 @@
}
// 重置
const reset = () => {
+ createTime.value = ''
searchQuery.organizeNo = '' // 组织编号
searchQuery.organizeName = '' // 名称
+ searchQuery.pDeptId = ''
searchQuery.limit = 10
searchQuery.offset = 1
- searchQuery.createTime = '' // 创建时间
searchQuery.director = '' // 负责人
searchQuery.meterMajor = '' // 专业
getList()
}
+// 表格被选中的行
+const selectList = ref([])
+// 表格多选
+const multiSelect = (row: rowType[]) => {
+ selectList.value = row
+}
// 导出
const exportExcelBtn = () => {
const loading = ElLoading.service({
@@ -191,9 +216,15 @@
text: 'Loading',
background: 'rgba(255, 255, 255, 0.8)',
})
+ if (selectList.value.length) {
+ selectList.value.forEach((item) => {
+ searchQuery.ids?.push(item.id as string)
+ })
+ }
exportApi(searchQuery).then((res) => {
exportFile(res.data, props.name)
loading.close()
+ searchQuery.ids = []
}).catch((_) => {
loading.close()
})
@@ -229,16 +260,26 @@
-
+
+
@@ -260,7 +301,8 @@
:is-showmulti-select="true"
:query="{ limit: searchQuery.limit, offset: searchQuery.offset }"
:list-loading="loadingTable"
- @change="changePage"
+ :is-multi="true"
+ @change="changePage" @multi-select="multiSelect"
>
diff --git a/src/views/measure/measureDept/measureDept-interface.ts b/src/views/measure/measureDept/measureDept-interface.ts
index 5f7f5e7..f7911fa 100644
--- a/src/views/measure/measureDept/measureDept-interface.ts
+++ b/src/views/measure/measureDept/measureDept-interface.ts
@@ -9,6 +9,9 @@
director?: string // 负责人
meterMajor?: string // 专业
pDeptId?: string // 所属科室
+ createEndTime?: string
+ createStartTime?: string
+ ids?: string[]
}
export interface columnType {
@@ -35,6 +38,7 @@
organizeNo: string
organizeType: string
pDeptId: string
+ pDeptName: string
phone: string
remark: string
technologyJob: string
diff --git a/src/views/measure/person/certificateLog.vue b/src/views/measure/person/certificateLog.vue
index a566b78..01c5266 100644
--- a/src/views/measure/person/certificateLog.vue
+++ b/src/views/measure/person/certificateLog.vue
@@ -31,6 +31,7 @@
remindType: '',
limit: 20,
offset: 1,
+ ids: [] as string[],
}) // 查询参数
const loadingTable = ref(false) // 表格loading
const total = ref(0) // 数据总条数
@@ -237,6 +238,12 @@
// name: props.isRemind ? '证书状况' : '证书记录',
// })
}
+// 表格被选中的行
+const selectList = ref([])
+// 表格多选
+const multiSelect = (row: StaffType[]) => {
+ selectList.value = row
+}
// 导出
const exportExcelBtn = () => {
const loading = ElLoading.service({
@@ -244,9 +251,15 @@
text: 'Loading',
background: 'rgba(255, 255, 255, 0.8)',
})
+ if (selectList.value.length) {
+ selectList.value.forEach((item) => {
+ searchQuery.ids?.push(item.id as string)
+ })
+ }
CertificateListList({ ...searchQuery }).then((res) => {
exportFile(res.data, '证书记录列表')
loading.close()
+ searchQuery.ids = []
}).catch((_) => {
loading.close()
})
@@ -278,11 +291,6 @@
const batchImport = () => {
fileRef.value.click()
}
-// 传给子组件的刷新事件
-const refreshDta = () => {
- getList()
- dialogVisible.value = false
-}
onMounted(() => {
getDeptList()
getList()
@@ -347,7 +355,9 @@
:is-showmulti-select="true"
:query="{ limit: searchQuery.limit, offset: searchQuery.offset }"
:list-loading="loadingTable"
+ :is-multi="true"
@change="changePage"
+ @multi-select="multiSelect"
>
diff --git a/src/views/measure/person/list.vue b/src/views/measure/person/list.vue
index d3a1ea9..7a90e93 100644
--- a/src/views/measure/person/list.vue
+++ b/src/views/measure/person/list.vue
@@ -20,6 +20,7 @@
certificateStatus: '', // 证书状态
limit: 20,
offset: 1,
+ ids: [] as string[],
}) // 查询参数
const loadingTable = ref(false) // 表格loading
const total = ref(0) // 数据总条数
@@ -166,6 +167,12 @@
path: '/person/detail',
})
}
+// 表格被选中的行
+const selectList = ref([])
+// 表格多选
+const multiSelect = (row: StaffType[]) => {
+ selectList.value = row
+}
// 导出
const exportExcelBtn = () => {
const loading = ElLoading.service({
@@ -173,9 +180,15 @@
text: 'Loading',
background: 'rgba(255, 255, 255, 0.8)',
})
+ if (selectList.value.length) {
+ selectList.value.forEach((item) => {
+ searchQuery.ids?.push(item.id as string)
+ })
+ }
exportList({ ...searchQuery, limit: 9999999, offset: 1 }).then((res) => {
exportFile(res.data, '计量人员列表')
loading.close()
+ searchQuery.ids = []
}).catch((_) => {
loading.close()
})
@@ -210,11 +223,6 @@
const batchImport = () => {
fileRef.value.click()
}
-// 传给子组件的刷新事件
-const refreshDta = () => {
- getList()
- dialogVisible.value = false
-}
onMounted(() => {
getDeptList()
getList()
@@ -272,7 +280,9 @@
:is-showmulti-select="true"
:query="{ limit: searchQuery.limit, offset: searchQuery.offset }"
:list-loading="loadingTable"
+ :is-multi="true"
@change="changePage"
+ @multi-select="multiSelect"
>
diff --git a/src/views/measure/person/person-interface.ts b/src/views/measure/person/person-interface.ts
index d116841..e510a2c 100644
--- a/src/views/measure/person/person-interface.ts
+++ b/src/views/measure/person/person-interface.ts
@@ -9,6 +9,7 @@
remindType?: string
limit: number
offset: number
+ ids?: string[]
}
// 计量人员类型
export interface StaffType {
diff --git a/src/views/system/notice/noteAdd.vue b/src/views/system/notice/noteAdd.vue
index 600eda1..acfa5e0 100644
--- a/src/views/system/notice/noteAdd.vue
+++ b/src/views/system/notice/noteAdd.vue
@@ -4,12 +4,13 @@
import { ElMessage } from 'element-plus'
import dayjs from 'dayjs'
import { Editor, Toolbar } from '@wangeditor/editor-for-vue'
-import { addNoticeApi, uploadApi } from '@/api/system/notice'
+import { addNoticeApi, getNoticeDetail, updateNoticeApi, uploadApi } from '@/api/system/notice'
import { getPhotoUrl } from '@/api/system/tool'
import useUserStore from '@/store/modules/user'
import '@wangeditor/editor/dist/css/style.css' // 引入 css
const emits = defineEmits(['resetData'])
const userInfo = useUserStore()
+const title = ref('')
const ruleFormRef = ref() // from组件
const ruleForm = reactive({
noticeNo: '', // 通知公告编号
@@ -20,6 +21,7 @@
noticeContent: '', // 发布内容
minioFileName: '', // 上传文件名
noticeTitle: '', // 标题
+ id: '',
}) // 表单
const rules = ref({
noticeTitle: [{ required: true, message: '标题不能为空', trigger: 'blur' }],
@@ -28,11 +30,36 @@
}) // 表单验证规则
const dialogVisible = ref(false) // 弹窗显示
// 弹窗初始化
-const initDialog = () => {
+const initDialog = (row: any) => {
dialogVisible.value = true
- ruleForm.noticePublisher = userInfo.$state.name
- ruleForm.noticeCompany = userInfo.$state.deptName
- ruleForm.noticeTime = dayjs().format('YYYY-MM-DD HH:mm:ss')
+ title.value = row.title
+ if (row.title === '新建') {
+ ruleForm.noticePublisher = userInfo.$state.name
+ ruleForm.noticeCompany = userInfo.$state.deptName
+ ruleForm.noticeTime = dayjs().format('YYYY-MM-DD HH:mm:ss')
+ }
+ else {
+ // 获取详情信息
+ getNoticeDetail({
+ noticeNo: row.noticeNo,
+ noticePublisher: row.noticePublisher,
+ noticeTitle: row.noticeTitle,
+ noticeEndTime: '',
+ noticeStartTime: '',
+ }).then((res) => {
+ if (res.code === 200 && res.data.rows.length) {
+ ruleForm.noticeNo = res.data.rows[0].noticeNo
+ ruleForm.noticePublisher = res.data.rows[0].noticePublisher
+ ruleForm.noticeCompany = res.data.rows[0].noticeCompany
+ ruleForm.noticeTime = res.data.rows[0].noticeTime
+ ruleForm.noticeSketch = res.data.rows[0].noticeSketch
+ ruleForm.noticeContent = res.data.rows[0].noticeContent
+ ruleForm.minioFileName = res.data.rows[0].minioFileName
+ ruleForm.noticeTitle = res.data.rows[0].noticeTitle
+ ruleForm.id = res.data.rows[0].id
+ }
+ })
+ }
}
defineExpose({ initDialog })
// 重置
@@ -56,15 +83,17 @@
await formEl.validate((valid, fields) => {
if (valid) {
ruleForm.noticeTime = dayjs().format('YYYY-MM-DD HH:mm:ss')
- addNoticeApi(ruleForm).then((res) => {
- if (res.code === 200) {
- close()
- ElMessage.success('发布成功')
- }
- else {
- ElMessage.error(res.message)
- }
- })
+ title.value === '新建'
+ ? addNoticeApi
+ : updateNoticeApi(ruleForm).then((res) => {
+ if (res.code === 200) {
+ close()
+ ElMessage.success('操作成功')
+ }
+ else {
+ ElMessage.error(res.message)
+ }
+ })
}
})
}
@@ -243,7 +272,7 @@
-
+
diff --git a/src/api/measure/measureDept.ts b/src/api/measure/measureDept.ts
index 9a30ce3..3d34a2b 100644
--- a/src/api/measure/measureDept.ts
+++ b/src/api/measure/measureDept.ts
@@ -43,3 +43,11 @@
data,
})
}
+// 获取父级组织
+export function getpDeptApi(data: object) {
+ return request({
+ url: '/meter/organize/deptInfo',
+ method: 'post',
+ data,
+ })
+}
diff --git a/src/api/system/notice.ts b/src/api/system/notice.ts
index 9f38397..90ae2a7 100644
--- a/src/api/system/notice.ts
+++ b/src/api/system/notice.ts
@@ -8,8 +8,10 @@
export interface listParamsType {
noticeNo: string // 编号
noticePublisher: string // 发布人
- noticeTime: string // 发布时间
+ noticeTime?: string // 发布时间
noticeTitle: string // 标题
+ noticeStartTime: string // 标题
+ noticeEndTime: string // 标题
limit: number
offset: number
}
@@ -43,4 +45,29 @@
data,
})
}
+// 通知公告删除
+export function removeNoticeApi(data: object) {
+ return request({
+ url: `${prefix}/notice/delete`,
+ method: 'post',
+ data,
+ })
+}
+// 通知公告编辑
+export function updateNoticeApi(data: object) {
+ return request({
+ url: `${prefix}/notice/update`,
+ method: 'post',
+ data,
+ })
+}
+// 导出通知公告
+export function exportNoticeApi(data: object) {
+ return request({
+ url: `${prefix}/notice/update`,
+ method: 'post',
+ data,
+ responseType: 'blob',
+ })
+}
diff --git a/src/api/system/tool.ts b/src/api/system/tool.ts
index 1798ce5..7b61c3f 100644
--- a/src/api/system/tool.ts
+++ b/src/api/system/tool.ts
@@ -72,7 +72,7 @@
templateNo: string // 编号
templateName: string // 名称
templateCreator: string // 负责人
- createTime: string // 创建时间
+ // createTime: string // 创建时间
limit: number
offset: number
templateType: string
diff --git a/src/views/device/borrow/borrow-interface.ts b/src/views/device/borrow/borrow-interface.ts
index 66dd307..7f8f5ce 100644
--- a/src/views/device/borrow/borrow-interface.ts
+++ b/src/views/device/borrow/borrow-interface.ts
@@ -10,6 +10,7 @@
time: string // 申请日期
limit?: number
offset?: number
+ ids?: string[]
}
// 借用设备类型
export interface borrowDeviceType {
diff --git a/src/views/device/borrow/borrowHandle.vue b/src/views/device/borrow/borrowHandle.vue
index bca0958..470bad1 100644
--- a/src/views/device/borrow/borrowHandle.vue
+++ b/src/views/device/borrow/borrowHandle.vue
@@ -15,6 +15,13 @@
watch(current, (newValue) => {
currentComp.value = menu.value.filter(item => item.name === newValue)[0].comp
})
+onUnmounted(() => {
+ sessionStorage.setItem('deviceBorrowHandler', current.value)
+})
+onMounted(() => {
+ current.value = sessionStorage.getItem('deviceBorrowHandler') || '待借用'
+ sessionStorage.getItem('deviceBorrowHandler') ? sessionStorage.removeItem('deviceBorrowHandler') : ''
+})
@@ -28,7 +35,7 @@
-
+
diff --git a/src/views/device/borrow/components/applyList.vue b/src/views/device/borrow/components/applyList.vue
index 240fffa..ec43b86 100644
--- a/src/views/device/borrow/components/applyList.vue
+++ b/src/views/device/borrow/components/applyList.vue
@@ -14,6 +14,7 @@
})
const { proxy } = getCurrentInstance() as any
const $router = useRouter()
+const time = ref()
const searchQuery = reactive({
applyName: '', // 申请名称
applyNo: '', // 申请编号
@@ -23,9 +24,20 @@
createUser: '', // 创建人
processResult: '', // 处置结果
time: '', // 申请日期
+ ids: [] as string[],
limit: 20,
offset: 1,
}) // 查询参数
+watch(() => time.value, (newVal) => {
+ if (newVal) {
+ // searchQuery.noticeStartTime = newVal[0]
+ // searchQuery.noticeEndTime = newVal[1]
+ }
+ else {
+ // searchQuery.noticeStartTime = ''
+ // searchQuery.noticeEndTime = ''
+ }
+})
const loadingTable = ref(false) // 表格loading
const total = ref(0) // 数据总条数
// 全部状态的表格数据
@@ -217,6 +229,7 @@
searchQuery.applyPerson = ''
searchQuery.applyUnit = ''
searchQuery.time = ''
+ time.value = ''
getList()
}
// 新增
@@ -232,6 +245,12 @@
},
})
}
+// 表格被选中的行
+const selectList = ref([])
+// 表格多选
+const multiSelect = (row) => {
+ selectList.value = row
+}
// 导出
const exportExcelBtn = () => {
const loading = ElLoading.service({
@@ -239,10 +258,15 @@
text: 'Loading',
background: 'rgba(255, 255, 255, 0.8)',
})
-
+ // if (selectList.value.length) {
+ // selectList.value.forEach((item) => {
+ // searchQuery.ids?.push(item.id as string)
+ // })
+ // }
exportApply({ ...searchQuery, limit: undefined, offset: undefined }).then((res) => {
exportFile(res.data, '设备借用申请')
loading.close()
+ // searchQuery.ids = []
}).catch((_) => {
loading.close()
})
@@ -352,11 +376,20 @@
- -->
+
@@ -374,7 +407,9 @@
:is-showmulti-select="true"
:query="{ limit: searchQuery.limit, offset: searchQuery.offset }"
:list-loading="loadingTable"
+ :is-multi="true"
@change="changePage"
+ @multi-select="multiSelect"
>
@@ -425,7 +460,7 @@
-
+
查看
diff --git a/src/views/device/borrow/components/handleList.vue b/src/views/device/borrow/components/handleList.vue
index ff89b3a..7f74981 100644
--- a/src/views/device/borrow/components/handleList.vue
+++ b/src/views/device/borrow/components/handleList.vue
@@ -1,48 +1,65 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/views/measure/measureDept/components/templatePage.vue b/src/views/measure/measureDept/components/templatePage.vue
index 50918a0..0403c93 100644
--- a/src/views/measure/measureDept/components/templatePage.vue
+++ b/src/views/measure/measureDept/components/templatePage.vue
@@ -3,7 +3,7 @@
import { ElLoading } from 'element-plus'
import type { rowType, searchQueryType } from '../measureDept-interface'
import type { fileResType } from '@/views/measure/file/file-interface'
-import { exportApi, listPageApi } from '@/api/measure/measureDept'
+import { exportApi, getpDeptApi, listPageApi } from '@/api/measure/measureDept'
import { getDictByCode } from '@/api/system/dict'
import { exportFile } from '@/utils/exportUtils'
import type { TableColumn } from '@/components/NormalTable/table_interface'
@@ -20,17 +20,30 @@
const $router = useRouter()
const $route = useRoute()
const { proxy } = getCurrentInstance() as any
+const createTime = ref()
const searchQuery = reactive({
organizeNo: '', // 组织编号
organizeName: '', // 名称
limit: 20,
offset: 1,
organizeType: '', // 类型
- createTime: '', // 创建时间
+ createEndTime: '',
+ createStartTime: '',
director: '', // 负责人
meterMajor: '', // 专业
pDeptId: '', // 所属科室
+ ids: [] as string[],
}) // 查询参数
+watch(() => createTime.value, (newVal) => {
+ if (newVal) {
+ searchQuery.createStartTime = newVal[0]
+ searchQuery.createEndTime = newVal[1]
+ }
+ else {
+ searchQuery.createStartTime = ''
+ searchQuery.createEndTime = ''
+ }
+})
const loadingTable = ref(false) // 表格loading
const total = ref(0) // 数据总条数
// 表格数据根据不同组织筛选
@@ -91,7 +104,7 @@
standard: '',
extarCss: '',
})
-const list = ref([]) // 表格数据
+const list = ref([]) // 表格数据
// 获取类型
const getType = async () => {
const res = await getDictByCode('deptType')
@@ -106,7 +119,9 @@
limit: 99999,
offset: 1,
organizeType: '3',
- createTime: '', // 创建时间
+ // createTime: '', // 创建时间
+ createEndTime: '',
+ createStartTime: '',
director: '', // 负责人
meterMajor: '', // 专业
pDeptId: '', // 所属科室
@@ -117,13 +132,16 @@
// 获取数据列表
const getList = () => {
loadingTable.value = true
- if (!searchQuery.createTime) {
- searchQuery.createTime = ''
- }
listPageApi(searchQuery).then((res) => {
if (res.code === 200) {
- list.value = res.data.rows.map(item => ({ ...item, createTime: item.createTime.split(' ')[0] }))
+ list.value = (res.data.rows as rowType[]).map(item => ({ ...item, createTime: item.createTime.split(' ')[0] }))
total.value = res.data.total
+ if (props.authority === 'gcz') {
+ list.value.forEach(async (item) => {
+ const res = await getpDeptApi({ deptId: item.deptId })
+ item.pDeptName = res.data.pDeptName
+ })
+ }
}
loadingTable.value = false
}).catch((_) => {
@@ -175,15 +193,22 @@
}
// 重置
const reset = () => {
+ createTime.value = ''
searchQuery.organizeNo = '' // 组织编号
searchQuery.organizeName = '' // 名称
+ searchQuery.pDeptId = ''
searchQuery.limit = 10
searchQuery.offset = 1
- searchQuery.createTime = '' // 创建时间
searchQuery.director = '' // 负责人
searchQuery.meterMajor = '' // 专业
getList()
}
+// 表格被选中的行
+const selectList = ref([])
+// 表格多选
+const multiSelect = (row: rowType[]) => {
+ selectList.value = row
+}
// 导出
const exportExcelBtn = () => {
const loading = ElLoading.service({
@@ -191,9 +216,15 @@
text: 'Loading',
background: 'rgba(255, 255, 255, 0.8)',
})
+ if (selectList.value.length) {
+ selectList.value.forEach((item) => {
+ searchQuery.ids?.push(item.id as string)
+ })
+ }
exportApi(searchQuery).then((res) => {
exportFile(res.data, props.name)
loading.close()
+ searchQuery.ids = []
}).catch((_) => {
loading.close()
})
@@ -229,16 +260,26 @@
-
+
+
@@ -260,7 +301,8 @@
:is-showmulti-select="true"
:query="{ limit: searchQuery.limit, offset: searchQuery.offset }"
:list-loading="loadingTable"
- @change="changePage"
+ :is-multi="true"
+ @change="changePage" @multi-select="multiSelect"
>
diff --git a/src/views/measure/measureDept/measureDept-interface.ts b/src/views/measure/measureDept/measureDept-interface.ts
index 5f7f5e7..f7911fa 100644
--- a/src/views/measure/measureDept/measureDept-interface.ts
+++ b/src/views/measure/measureDept/measureDept-interface.ts
@@ -9,6 +9,9 @@
director?: string // 负责人
meterMajor?: string // 专业
pDeptId?: string // 所属科室
+ createEndTime?: string
+ createStartTime?: string
+ ids?: string[]
}
export interface columnType {
@@ -35,6 +38,7 @@
organizeNo: string
organizeType: string
pDeptId: string
+ pDeptName: string
phone: string
remark: string
technologyJob: string
diff --git a/src/views/measure/person/certificateLog.vue b/src/views/measure/person/certificateLog.vue
index a566b78..01c5266 100644
--- a/src/views/measure/person/certificateLog.vue
+++ b/src/views/measure/person/certificateLog.vue
@@ -31,6 +31,7 @@
remindType: '',
limit: 20,
offset: 1,
+ ids: [] as string[],
}) // 查询参数
const loadingTable = ref(false) // 表格loading
const total = ref(0) // 数据总条数
@@ -237,6 +238,12 @@
// name: props.isRemind ? '证书状况' : '证书记录',
// })
}
+// 表格被选中的行
+const selectList = ref([])
+// 表格多选
+const multiSelect = (row: StaffType[]) => {
+ selectList.value = row
+}
// 导出
const exportExcelBtn = () => {
const loading = ElLoading.service({
@@ -244,9 +251,15 @@
text: 'Loading',
background: 'rgba(255, 255, 255, 0.8)',
})
+ if (selectList.value.length) {
+ selectList.value.forEach((item) => {
+ searchQuery.ids?.push(item.id as string)
+ })
+ }
CertificateListList({ ...searchQuery }).then((res) => {
exportFile(res.data, '证书记录列表')
loading.close()
+ searchQuery.ids = []
}).catch((_) => {
loading.close()
})
@@ -278,11 +291,6 @@
const batchImport = () => {
fileRef.value.click()
}
-// 传给子组件的刷新事件
-const refreshDta = () => {
- getList()
- dialogVisible.value = false
-}
onMounted(() => {
getDeptList()
getList()
@@ -347,7 +355,9 @@
:is-showmulti-select="true"
:query="{ limit: searchQuery.limit, offset: searchQuery.offset }"
:list-loading="loadingTable"
+ :is-multi="true"
@change="changePage"
+ @multi-select="multiSelect"
>
diff --git a/src/views/measure/person/list.vue b/src/views/measure/person/list.vue
index d3a1ea9..7a90e93 100644
--- a/src/views/measure/person/list.vue
+++ b/src/views/measure/person/list.vue
@@ -20,6 +20,7 @@
certificateStatus: '', // 证书状态
limit: 20,
offset: 1,
+ ids: [] as string[],
}) // 查询参数
const loadingTable = ref(false) // 表格loading
const total = ref(0) // 数据总条数
@@ -166,6 +167,12 @@
path: '/person/detail',
})
}
+// 表格被选中的行
+const selectList = ref([])
+// 表格多选
+const multiSelect = (row: StaffType[]) => {
+ selectList.value = row
+}
// 导出
const exportExcelBtn = () => {
const loading = ElLoading.service({
@@ -173,9 +180,15 @@
text: 'Loading',
background: 'rgba(255, 255, 255, 0.8)',
})
+ if (selectList.value.length) {
+ selectList.value.forEach((item) => {
+ searchQuery.ids?.push(item.id as string)
+ })
+ }
exportList({ ...searchQuery, limit: 9999999, offset: 1 }).then((res) => {
exportFile(res.data, '计量人员列表')
loading.close()
+ searchQuery.ids = []
}).catch((_) => {
loading.close()
})
@@ -210,11 +223,6 @@
const batchImport = () => {
fileRef.value.click()
}
-// 传给子组件的刷新事件
-const refreshDta = () => {
- getList()
- dialogVisible.value = false
-}
onMounted(() => {
getDeptList()
getList()
@@ -272,7 +280,9 @@
:is-showmulti-select="true"
:query="{ limit: searchQuery.limit, offset: searchQuery.offset }"
:list-loading="loadingTable"
+ :is-multi="true"
@change="changePage"
+ @multi-select="multiSelect"
>
diff --git a/src/views/measure/person/person-interface.ts b/src/views/measure/person/person-interface.ts
index d116841..e510a2c 100644
--- a/src/views/measure/person/person-interface.ts
+++ b/src/views/measure/person/person-interface.ts
@@ -9,6 +9,7 @@
remindType?: string
limit: number
offset: number
+ ids?: string[]
}
// 计量人员类型
export interface StaffType {
diff --git a/src/views/system/notice/noteAdd.vue b/src/views/system/notice/noteAdd.vue
index 600eda1..acfa5e0 100644
--- a/src/views/system/notice/noteAdd.vue
+++ b/src/views/system/notice/noteAdd.vue
@@ -4,12 +4,13 @@
import { ElMessage } from 'element-plus'
import dayjs from 'dayjs'
import { Editor, Toolbar } from '@wangeditor/editor-for-vue'
-import { addNoticeApi, uploadApi } from '@/api/system/notice'
+import { addNoticeApi, getNoticeDetail, updateNoticeApi, uploadApi } from '@/api/system/notice'
import { getPhotoUrl } from '@/api/system/tool'
import useUserStore from '@/store/modules/user'
import '@wangeditor/editor/dist/css/style.css' // 引入 css
const emits = defineEmits(['resetData'])
const userInfo = useUserStore()
+const title = ref('')
const ruleFormRef = ref() // from组件
const ruleForm = reactive({
noticeNo: '', // 通知公告编号
@@ -20,6 +21,7 @@
noticeContent: '', // 发布内容
minioFileName: '', // 上传文件名
noticeTitle: '', // 标题
+ id: '',
}) // 表单
const rules = ref({
noticeTitle: [{ required: true, message: '标题不能为空', trigger: 'blur' }],
@@ -28,11 +30,36 @@
}) // 表单验证规则
const dialogVisible = ref(false) // 弹窗显示
// 弹窗初始化
-const initDialog = () => {
+const initDialog = (row: any) => {
dialogVisible.value = true
- ruleForm.noticePublisher = userInfo.$state.name
- ruleForm.noticeCompany = userInfo.$state.deptName
- ruleForm.noticeTime = dayjs().format('YYYY-MM-DD HH:mm:ss')
+ title.value = row.title
+ if (row.title === '新建') {
+ ruleForm.noticePublisher = userInfo.$state.name
+ ruleForm.noticeCompany = userInfo.$state.deptName
+ ruleForm.noticeTime = dayjs().format('YYYY-MM-DD HH:mm:ss')
+ }
+ else {
+ // 获取详情信息
+ getNoticeDetail({
+ noticeNo: row.noticeNo,
+ noticePublisher: row.noticePublisher,
+ noticeTitle: row.noticeTitle,
+ noticeEndTime: '',
+ noticeStartTime: '',
+ }).then((res) => {
+ if (res.code === 200 && res.data.rows.length) {
+ ruleForm.noticeNo = res.data.rows[0].noticeNo
+ ruleForm.noticePublisher = res.data.rows[0].noticePublisher
+ ruleForm.noticeCompany = res.data.rows[0].noticeCompany
+ ruleForm.noticeTime = res.data.rows[0].noticeTime
+ ruleForm.noticeSketch = res.data.rows[0].noticeSketch
+ ruleForm.noticeContent = res.data.rows[0].noticeContent
+ ruleForm.minioFileName = res.data.rows[0].minioFileName
+ ruleForm.noticeTitle = res.data.rows[0].noticeTitle
+ ruleForm.id = res.data.rows[0].id
+ }
+ })
+ }
}
defineExpose({ initDialog })
// 重置
@@ -56,15 +83,17 @@
await formEl.validate((valid, fields) => {
if (valid) {
ruleForm.noticeTime = dayjs().format('YYYY-MM-DD HH:mm:ss')
- addNoticeApi(ruleForm).then((res) => {
- if (res.code === 200) {
- close()
- ElMessage.success('发布成功')
- }
- else {
- ElMessage.error(res.message)
- }
- })
+ title.value === '新建'
+ ? addNoticeApi
+ : updateNoticeApi(ruleForm).then((res) => {
+ if (res.code === 200) {
+ close()
+ ElMessage.success('操作成功')
+ }
+ else {
+ ElMessage.error(res.message)
+ }
+ })
}
})
}
@@ -243,7 +272,7 @@
-
+
diff --git a/src/views/system/notice/noteList.vue b/src/views/system/notice/noteList.vue
index eaa60ae..3001057 100644
--- a/src/views/system/notice/noteList.vue
+++ b/src/views/system/notice/noteList.vue
@@ -1,24 +1,38 @@
@@ -28,7 +35,7 @@
-
+
diff --git a/src/views/device/borrow/components/applyList.vue b/src/views/device/borrow/components/applyList.vue
index 240fffa..ec43b86 100644
--- a/src/views/device/borrow/components/applyList.vue
+++ b/src/views/device/borrow/components/applyList.vue
@@ -14,6 +14,7 @@
})
const { proxy } = getCurrentInstance() as any
const $router = useRouter()
+const time = ref()
const searchQuery = reactive({
applyName: '', // 申请名称
applyNo: '', // 申请编号
@@ -23,9 +24,20 @@
createUser: '', // 创建人
processResult: '', // 处置结果
time: '', // 申请日期
+ ids: [] as string[],
limit: 20,
offset: 1,
}) // 查询参数
+watch(() => time.value, (newVal) => {
+ if (newVal) {
+ // searchQuery.noticeStartTime = newVal[0]
+ // searchQuery.noticeEndTime = newVal[1]
+ }
+ else {
+ // searchQuery.noticeStartTime = ''
+ // searchQuery.noticeEndTime = ''
+ }
+})
const loadingTable = ref(false) // 表格loading
const total = ref(0) // 数据总条数
// 全部状态的表格数据
@@ -217,6 +229,7 @@
searchQuery.applyPerson = ''
searchQuery.applyUnit = ''
searchQuery.time = ''
+ time.value = ''
getList()
}
// 新增
@@ -232,6 +245,12 @@
},
})
}
+// 表格被选中的行
+const selectList = ref([])
+// 表格多选
+const multiSelect = (row) => {
+ selectList.value = row
+}
// 导出
const exportExcelBtn = () => {
const loading = ElLoading.service({
@@ -239,10 +258,15 @@
text: 'Loading',
background: 'rgba(255, 255, 255, 0.8)',
})
-
+ // if (selectList.value.length) {
+ // selectList.value.forEach((item) => {
+ // searchQuery.ids?.push(item.id as string)
+ // })
+ // }
exportApply({ ...searchQuery, limit: undefined, offset: undefined }).then((res) => {
exportFile(res.data, '设备借用申请')
loading.close()
+ // searchQuery.ids = []
}).catch((_) => {
loading.close()
})
@@ -352,11 +376,20 @@
- -->
+
@@ -374,7 +407,9 @@
:is-showmulti-select="true"
:query="{ limit: searchQuery.limit, offset: searchQuery.offset }"
:list-loading="loadingTable"
+ :is-multi="true"
@change="changePage"
+ @multi-select="multiSelect"
>
@@ -425,7 +460,7 @@
-
+
查看
diff --git a/src/views/device/borrow/components/handleList.vue b/src/views/device/borrow/components/handleList.vue
index ff89b3a..7f74981 100644
--- a/src/views/device/borrow/components/handleList.vue
+++ b/src/views/device/borrow/components/handleList.vue
@@ -1,48 +1,65 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/views/measure/measureDept/components/templatePage.vue b/src/views/measure/measureDept/components/templatePage.vue
index 50918a0..0403c93 100644
--- a/src/views/measure/measureDept/components/templatePage.vue
+++ b/src/views/measure/measureDept/components/templatePage.vue
@@ -3,7 +3,7 @@
import { ElLoading } from 'element-plus'
import type { rowType, searchQueryType } from '../measureDept-interface'
import type { fileResType } from '@/views/measure/file/file-interface'
-import { exportApi, listPageApi } from '@/api/measure/measureDept'
+import { exportApi, getpDeptApi, listPageApi } from '@/api/measure/measureDept'
import { getDictByCode } from '@/api/system/dict'
import { exportFile } from '@/utils/exportUtils'
import type { TableColumn } from '@/components/NormalTable/table_interface'
@@ -20,17 +20,30 @@
const $router = useRouter()
const $route = useRoute()
const { proxy } = getCurrentInstance() as any
+const createTime = ref()
const searchQuery = reactive({
organizeNo: '', // 组织编号
organizeName: '', // 名称
limit: 20,
offset: 1,
organizeType: '', // 类型
- createTime: '', // 创建时间
+ createEndTime: '',
+ createStartTime: '',
director: '', // 负责人
meterMajor: '', // 专业
pDeptId: '', // 所属科室
+ ids: [] as string[],
}) // 查询参数
+watch(() => createTime.value, (newVal) => {
+ if (newVal) {
+ searchQuery.createStartTime = newVal[0]
+ searchQuery.createEndTime = newVal[1]
+ }
+ else {
+ searchQuery.createStartTime = ''
+ searchQuery.createEndTime = ''
+ }
+})
const loadingTable = ref(false) // 表格loading
const total = ref(0) // 数据总条数
// 表格数据根据不同组织筛选
@@ -91,7 +104,7 @@
standard: '',
extarCss: '',
})
-const list = ref([]) // 表格数据
+const list = ref([]) // 表格数据
// 获取类型
const getType = async () => {
const res = await getDictByCode('deptType')
@@ -106,7 +119,9 @@
limit: 99999,
offset: 1,
organizeType: '3',
- createTime: '', // 创建时间
+ // createTime: '', // 创建时间
+ createEndTime: '',
+ createStartTime: '',
director: '', // 负责人
meterMajor: '', // 专业
pDeptId: '', // 所属科室
@@ -117,13 +132,16 @@
// 获取数据列表
const getList = () => {
loadingTable.value = true
- if (!searchQuery.createTime) {
- searchQuery.createTime = ''
- }
listPageApi(searchQuery).then((res) => {
if (res.code === 200) {
- list.value = res.data.rows.map(item => ({ ...item, createTime: item.createTime.split(' ')[0] }))
+ list.value = (res.data.rows as rowType[]).map(item => ({ ...item, createTime: item.createTime.split(' ')[0] }))
total.value = res.data.total
+ if (props.authority === 'gcz') {
+ list.value.forEach(async (item) => {
+ const res = await getpDeptApi({ deptId: item.deptId })
+ item.pDeptName = res.data.pDeptName
+ })
+ }
}
loadingTable.value = false
}).catch((_) => {
@@ -175,15 +193,22 @@
}
// 重置
const reset = () => {
+ createTime.value = ''
searchQuery.organizeNo = '' // 组织编号
searchQuery.organizeName = '' // 名称
+ searchQuery.pDeptId = ''
searchQuery.limit = 10
searchQuery.offset = 1
- searchQuery.createTime = '' // 创建时间
searchQuery.director = '' // 负责人
searchQuery.meterMajor = '' // 专业
getList()
}
+// 表格被选中的行
+const selectList = ref([])
+// 表格多选
+const multiSelect = (row: rowType[]) => {
+ selectList.value = row
+}
// 导出
const exportExcelBtn = () => {
const loading = ElLoading.service({
@@ -191,9 +216,15 @@
text: 'Loading',
background: 'rgba(255, 255, 255, 0.8)',
})
+ if (selectList.value.length) {
+ selectList.value.forEach((item) => {
+ searchQuery.ids?.push(item.id as string)
+ })
+ }
exportApi(searchQuery).then((res) => {
exportFile(res.data, props.name)
loading.close()
+ searchQuery.ids = []
}).catch((_) => {
loading.close()
})
@@ -229,16 +260,26 @@
-
+
+
@@ -260,7 +301,8 @@
:is-showmulti-select="true"
:query="{ limit: searchQuery.limit, offset: searchQuery.offset }"
:list-loading="loadingTable"
- @change="changePage"
+ :is-multi="true"
+ @change="changePage" @multi-select="multiSelect"
>
diff --git a/src/views/measure/measureDept/measureDept-interface.ts b/src/views/measure/measureDept/measureDept-interface.ts
index 5f7f5e7..f7911fa 100644
--- a/src/views/measure/measureDept/measureDept-interface.ts
+++ b/src/views/measure/measureDept/measureDept-interface.ts
@@ -9,6 +9,9 @@
director?: string // 负责人
meterMajor?: string // 专业
pDeptId?: string // 所属科室
+ createEndTime?: string
+ createStartTime?: string
+ ids?: string[]
}
export interface columnType {
@@ -35,6 +38,7 @@
organizeNo: string
organizeType: string
pDeptId: string
+ pDeptName: string
phone: string
remark: string
technologyJob: string
diff --git a/src/views/measure/person/certificateLog.vue b/src/views/measure/person/certificateLog.vue
index a566b78..01c5266 100644
--- a/src/views/measure/person/certificateLog.vue
+++ b/src/views/measure/person/certificateLog.vue
@@ -31,6 +31,7 @@
remindType: '',
limit: 20,
offset: 1,
+ ids: [] as string[],
}) // 查询参数
const loadingTable = ref(false) // 表格loading
const total = ref(0) // 数据总条数
@@ -237,6 +238,12 @@
// name: props.isRemind ? '证书状况' : '证书记录',
// })
}
+// 表格被选中的行
+const selectList = ref([])
+// 表格多选
+const multiSelect = (row: StaffType[]) => {
+ selectList.value = row
+}
// 导出
const exportExcelBtn = () => {
const loading = ElLoading.service({
@@ -244,9 +251,15 @@
text: 'Loading',
background: 'rgba(255, 255, 255, 0.8)',
})
+ if (selectList.value.length) {
+ selectList.value.forEach((item) => {
+ searchQuery.ids?.push(item.id as string)
+ })
+ }
CertificateListList({ ...searchQuery }).then((res) => {
exportFile(res.data, '证书记录列表')
loading.close()
+ searchQuery.ids = []
}).catch((_) => {
loading.close()
})
@@ -278,11 +291,6 @@
const batchImport = () => {
fileRef.value.click()
}
-// 传给子组件的刷新事件
-const refreshDta = () => {
- getList()
- dialogVisible.value = false
-}
onMounted(() => {
getDeptList()
getList()
@@ -347,7 +355,9 @@
:is-showmulti-select="true"
:query="{ limit: searchQuery.limit, offset: searchQuery.offset }"
:list-loading="loadingTable"
+ :is-multi="true"
@change="changePage"
+ @multi-select="multiSelect"
>
diff --git a/src/views/measure/person/list.vue b/src/views/measure/person/list.vue
index d3a1ea9..7a90e93 100644
--- a/src/views/measure/person/list.vue
+++ b/src/views/measure/person/list.vue
@@ -20,6 +20,7 @@
certificateStatus: '', // 证书状态
limit: 20,
offset: 1,
+ ids: [] as string[],
}) // 查询参数
const loadingTable = ref(false) // 表格loading
const total = ref(0) // 数据总条数
@@ -166,6 +167,12 @@
path: '/person/detail',
})
}
+// 表格被选中的行
+const selectList = ref([])
+// 表格多选
+const multiSelect = (row: StaffType[]) => {
+ selectList.value = row
+}
// 导出
const exportExcelBtn = () => {
const loading = ElLoading.service({
@@ -173,9 +180,15 @@
text: 'Loading',
background: 'rgba(255, 255, 255, 0.8)',
})
+ if (selectList.value.length) {
+ selectList.value.forEach((item) => {
+ searchQuery.ids?.push(item.id as string)
+ })
+ }
exportList({ ...searchQuery, limit: 9999999, offset: 1 }).then((res) => {
exportFile(res.data, '计量人员列表')
loading.close()
+ searchQuery.ids = []
}).catch((_) => {
loading.close()
})
@@ -210,11 +223,6 @@
const batchImport = () => {
fileRef.value.click()
}
-// 传给子组件的刷新事件
-const refreshDta = () => {
- getList()
- dialogVisible.value = false
-}
onMounted(() => {
getDeptList()
getList()
@@ -272,7 +280,9 @@
:is-showmulti-select="true"
:query="{ limit: searchQuery.limit, offset: searchQuery.offset }"
:list-loading="loadingTable"
+ :is-multi="true"
@change="changePage"
+ @multi-select="multiSelect"
>
diff --git a/src/views/measure/person/person-interface.ts b/src/views/measure/person/person-interface.ts
index d116841..e510a2c 100644
--- a/src/views/measure/person/person-interface.ts
+++ b/src/views/measure/person/person-interface.ts
@@ -9,6 +9,7 @@
remindType?: string
limit: number
offset: number
+ ids?: string[]
}
// 计量人员类型
export interface StaffType {
diff --git a/src/views/system/notice/noteAdd.vue b/src/views/system/notice/noteAdd.vue
index 600eda1..acfa5e0 100644
--- a/src/views/system/notice/noteAdd.vue
+++ b/src/views/system/notice/noteAdd.vue
@@ -4,12 +4,13 @@
import { ElMessage } from 'element-plus'
import dayjs from 'dayjs'
import { Editor, Toolbar } from '@wangeditor/editor-for-vue'
-import { addNoticeApi, uploadApi } from '@/api/system/notice'
+import { addNoticeApi, getNoticeDetail, updateNoticeApi, uploadApi } from '@/api/system/notice'
import { getPhotoUrl } from '@/api/system/tool'
import useUserStore from '@/store/modules/user'
import '@wangeditor/editor/dist/css/style.css' // 引入 css
const emits = defineEmits(['resetData'])
const userInfo = useUserStore()
+const title = ref('')
const ruleFormRef = ref() // from组件
const ruleForm = reactive({
noticeNo: '', // 通知公告编号
@@ -20,6 +21,7 @@
noticeContent: '', // 发布内容
minioFileName: '', // 上传文件名
noticeTitle: '', // 标题
+ id: '',
}) // 表单
const rules = ref({
noticeTitle: [{ required: true, message: '标题不能为空', trigger: 'blur' }],
@@ -28,11 +30,36 @@
}) // 表单验证规则
const dialogVisible = ref(false) // 弹窗显示
// 弹窗初始化
-const initDialog = () => {
+const initDialog = (row: any) => {
dialogVisible.value = true
- ruleForm.noticePublisher = userInfo.$state.name
- ruleForm.noticeCompany = userInfo.$state.deptName
- ruleForm.noticeTime = dayjs().format('YYYY-MM-DD HH:mm:ss')
+ title.value = row.title
+ if (row.title === '新建') {
+ ruleForm.noticePublisher = userInfo.$state.name
+ ruleForm.noticeCompany = userInfo.$state.deptName
+ ruleForm.noticeTime = dayjs().format('YYYY-MM-DD HH:mm:ss')
+ }
+ else {
+ // 获取详情信息
+ getNoticeDetail({
+ noticeNo: row.noticeNo,
+ noticePublisher: row.noticePublisher,
+ noticeTitle: row.noticeTitle,
+ noticeEndTime: '',
+ noticeStartTime: '',
+ }).then((res) => {
+ if (res.code === 200 && res.data.rows.length) {
+ ruleForm.noticeNo = res.data.rows[0].noticeNo
+ ruleForm.noticePublisher = res.data.rows[0].noticePublisher
+ ruleForm.noticeCompany = res.data.rows[0].noticeCompany
+ ruleForm.noticeTime = res.data.rows[0].noticeTime
+ ruleForm.noticeSketch = res.data.rows[0].noticeSketch
+ ruleForm.noticeContent = res.data.rows[0].noticeContent
+ ruleForm.minioFileName = res.data.rows[0].minioFileName
+ ruleForm.noticeTitle = res.data.rows[0].noticeTitle
+ ruleForm.id = res.data.rows[0].id
+ }
+ })
+ }
}
defineExpose({ initDialog })
// 重置
@@ -56,15 +83,17 @@
await formEl.validate((valid, fields) => {
if (valid) {
ruleForm.noticeTime = dayjs().format('YYYY-MM-DD HH:mm:ss')
- addNoticeApi(ruleForm).then((res) => {
- if (res.code === 200) {
- close()
- ElMessage.success('发布成功')
- }
- else {
- ElMessage.error(res.message)
- }
- })
+ title.value === '新建'
+ ? addNoticeApi
+ : updateNoticeApi(ruleForm).then((res) => {
+ if (res.code === 200) {
+ close()
+ ElMessage.success('操作成功')
+ }
+ else {
+ ElMessage.error(res.message)
+ }
+ })
}
})
}
@@ -243,7 +272,7 @@
-
+
diff --git a/src/views/system/notice/noteList.vue b/src/views/system/notice/noteList.vue
index eaa60ae..3001057 100644
--- a/src/views/system/notice/noteList.vue
+++ b/src/views/system/notice/noteList.vue
@@ -1,24 +1,38 @@
@@ -28,7 +35,7 @@
-
+
diff --git a/src/views/device/borrow/components/applyList.vue b/src/views/device/borrow/components/applyList.vue
index 240fffa..ec43b86 100644
--- a/src/views/device/borrow/components/applyList.vue
+++ b/src/views/device/borrow/components/applyList.vue
@@ -14,6 +14,7 @@
})
const { proxy } = getCurrentInstance() as any
const $router = useRouter()
+const time = ref()
const searchQuery = reactive({
applyName: '', // 申请名称
applyNo: '', // 申请编号
@@ -23,9 +24,20 @@
createUser: '', // 创建人
processResult: '', // 处置结果
time: '', // 申请日期
+ ids: [] as string[],
limit: 20,
offset: 1,
}) // 查询参数
+watch(() => time.value, (newVal) => {
+ if (newVal) {
+ // searchQuery.noticeStartTime = newVal[0]
+ // searchQuery.noticeEndTime = newVal[1]
+ }
+ else {
+ // searchQuery.noticeStartTime = ''
+ // searchQuery.noticeEndTime = ''
+ }
+})
const loadingTable = ref(false) // 表格loading
const total = ref(0) // 数据总条数
// 全部状态的表格数据
@@ -217,6 +229,7 @@
searchQuery.applyPerson = ''
searchQuery.applyUnit = ''
searchQuery.time = ''
+ time.value = ''
getList()
}
// 新增
@@ -232,6 +245,12 @@
},
})
}
+// 表格被选中的行
+const selectList = ref([])
+// 表格多选
+const multiSelect = (row) => {
+ selectList.value = row
+}
// 导出
const exportExcelBtn = () => {
const loading = ElLoading.service({
@@ -239,10 +258,15 @@
text: 'Loading',
background: 'rgba(255, 255, 255, 0.8)',
})
-
+ // if (selectList.value.length) {
+ // selectList.value.forEach((item) => {
+ // searchQuery.ids?.push(item.id as string)
+ // })
+ // }
exportApply({ ...searchQuery, limit: undefined, offset: undefined }).then((res) => {
exportFile(res.data, '设备借用申请')
loading.close()
+ // searchQuery.ids = []
}).catch((_) => {
loading.close()
})
@@ -352,11 +376,20 @@
- -->
+
@@ -374,7 +407,9 @@
:is-showmulti-select="true"
:query="{ limit: searchQuery.limit, offset: searchQuery.offset }"
:list-loading="loadingTable"
+ :is-multi="true"
@change="changePage"
+ @multi-select="multiSelect"
>
@@ -425,7 +460,7 @@
-
+
查看
diff --git a/src/views/device/borrow/components/handleList.vue b/src/views/device/borrow/components/handleList.vue
index ff89b3a..7f74981 100644
--- a/src/views/device/borrow/components/handleList.vue
+++ b/src/views/device/borrow/components/handleList.vue
@@ -1,48 +1,65 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/views/measure/measureDept/components/templatePage.vue b/src/views/measure/measureDept/components/templatePage.vue
index 50918a0..0403c93 100644
--- a/src/views/measure/measureDept/components/templatePage.vue
+++ b/src/views/measure/measureDept/components/templatePage.vue
@@ -3,7 +3,7 @@
import { ElLoading } from 'element-plus'
import type { rowType, searchQueryType } from '../measureDept-interface'
import type { fileResType } from '@/views/measure/file/file-interface'
-import { exportApi, listPageApi } from '@/api/measure/measureDept'
+import { exportApi, getpDeptApi, listPageApi } from '@/api/measure/measureDept'
import { getDictByCode } from '@/api/system/dict'
import { exportFile } from '@/utils/exportUtils'
import type { TableColumn } from '@/components/NormalTable/table_interface'
@@ -20,17 +20,30 @@
const $router = useRouter()
const $route = useRoute()
const { proxy } = getCurrentInstance() as any
+const createTime = ref()
const searchQuery = reactive({
organizeNo: '', // 组织编号
organizeName: '', // 名称
limit: 20,
offset: 1,
organizeType: '', // 类型
- createTime: '', // 创建时间
+ createEndTime: '',
+ createStartTime: '',
director: '', // 负责人
meterMajor: '', // 专业
pDeptId: '', // 所属科室
+ ids: [] as string[],
}) // 查询参数
+watch(() => createTime.value, (newVal) => {
+ if (newVal) {
+ searchQuery.createStartTime = newVal[0]
+ searchQuery.createEndTime = newVal[1]
+ }
+ else {
+ searchQuery.createStartTime = ''
+ searchQuery.createEndTime = ''
+ }
+})
const loadingTable = ref(false) // 表格loading
const total = ref(0) // 数据总条数
// 表格数据根据不同组织筛选
@@ -91,7 +104,7 @@
standard: '',
extarCss: '',
})
-const list = ref([]) // 表格数据
+const list = ref([]) // 表格数据
// 获取类型
const getType = async () => {
const res = await getDictByCode('deptType')
@@ -106,7 +119,9 @@
limit: 99999,
offset: 1,
organizeType: '3',
- createTime: '', // 创建时间
+ // createTime: '', // 创建时间
+ createEndTime: '',
+ createStartTime: '',
director: '', // 负责人
meterMajor: '', // 专业
pDeptId: '', // 所属科室
@@ -117,13 +132,16 @@
// 获取数据列表
const getList = () => {
loadingTable.value = true
- if (!searchQuery.createTime) {
- searchQuery.createTime = ''
- }
listPageApi(searchQuery).then((res) => {
if (res.code === 200) {
- list.value = res.data.rows.map(item => ({ ...item, createTime: item.createTime.split(' ')[0] }))
+ list.value = (res.data.rows as rowType[]).map(item => ({ ...item, createTime: item.createTime.split(' ')[0] }))
total.value = res.data.total
+ if (props.authority === 'gcz') {
+ list.value.forEach(async (item) => {
+ const res = await getpDeptApi({ deptId: item.deptId })
+ item.pDeptName = res.data.pDeptName
+ })
+ }
}
loadingTable.value = false
}).catch((_) => {
@@ -175,15 +193,22 @@
}
// 重置
const reset = () => {
+ createTime.value = ''
searchQuery.organizeNo = '' // 组织编号
searchQuery.organizeName = '' // 名称
+ searchQuery.pDeptId = ''
searchQuery.limit = 10
searchQuery.offset = 1
- searchQuery.createTime = '' // 创建时间
searchQuery.director = '' // 负责人
searchQuery.meterMajor = '' // 专业
getList()
}
+// 表格被选中的行
+const selectList = ref([])
+// 表格多选
+const multiSelect = (row: rowType[]) => {
+ selectList.value = row
+}
// 导出
const exportExcelBtn = () => {
const loading = ElLoading.service({
@@ -191,9 +216,15 @@
text: 'Loading',
background: 'rgba(255, 255, 255, 0.8)',
})
+ if (selectList.value.length) {
+ selectList.value.forEach((item) => {
+ searchQuery.ids?.push(item.id as string)
+ })
+ }
exportApi(searchQuery).then((res) => {
exportFile(res.data, props.name)
loading.close()
+ searchQuery.ids = []
}).catch((_) => {
loading.close()
})
@@ -229,16 +260,26 @@
-
+
+
@@ -260,7 +301,8 @@
:is-showmulti-select="true"
:query="{ limit: searchQuery.limit, offset: searchQuery.offset }"
:list-loading="loadingTable"
- @change="changePage"
+ :is-multi="true"
+ @change="changePage" @multi-select="multiSelect"
>
diff --git a/src/views/measure/measureDept/measureDept-interface.ts b/src/views/measure/measureDept/measureDept-interface.ts
index 5f7f5e7..f7911fa 100644
--- a/src/views/measure/measureDept/measureDept-interface.ts
+++ b/src/views/measure/measureDept/measureDept-interface.ts
@@ -9,6 +9,9 @@
director?: string // 负责人
meterMajor?: string // 专业
pDeptId?: string // 所属科室
+ createEndTime?: string
+ createStartTime?: string
+ ids?: string[]
}
export interface columnType {
@@ -35,6 +38,7 @@
organizeNo: string
organizeType: string
pDeptId: string
+ pDeptName: string
phone: string
remark: string
technologyJob: string
diff --git a/src/views/measure/person/certificateLog.vue b/src/views/measure/person/certificateLog.vue
index a566b78..01c5266 100644
--- a/src/views/measure/person/certificateLog.vue
+++ b/src/views/measure/person/certificateLog.vue
@@ -31,6 +31,7 @@
remindType: '',
limit: 20,
offset: 1,
+ ids: [] as string[],
}) // 查询参数
const loadingTable = ref(false) // 表格loading
const total = ref(0) // 数据总条数
@@ -237,6 +238,12 @@
// name: props.isRemind ? '证书状况' : '证书记录',
// })
}
+// 表格被选中的行
+const selectList = ref([])
+// 表格多选
+const multiSelect = (row: StaffType[]) => {
+ selectList.value = row
+}
// 导出
const exportExcelBtn = () => {
const loading = ElLoading.service({
@@ -244,9 +251,15 @@
text: 'Loading',
background: 'rgba(255, 255, 255, 0.8)',
})
+ if (selectList.value.length) {
+ selectList.value.forEach((item) => {
+ searchQuery.ids?.push(item.id as string)
+ })
+ }
CertificateListList({ ...searchQuery }).then((res) => {
exportFile(res.data, '证书记录列表')
loading.close()
+ searchQuery.ids = []
}).catch((_) => {
loading.close()
})
@@ -278,11 +291,6 @@
const batchImport = () => {
fileRef.value.click()
}
-// 传给子组件的刷新事件
-const refreshDta = () => {
- getList()
- dialogVisible.value = false
-}
onMounted(() => {
getDeptList()
getList()
@@ -347,7 +355,9 @@
:is-showmulti-select="true"
:query="{ limit: searchQuery.limit, offset: searchQuery.offset }"
:list-loading="loadingTable"
+ :is-multi="true"
@change="changePage"
+ @multi-select="multiSelect"
>
diff --git a/src/views/measure/person/list.vue b/src/views/measure/person/list.vue
index d3a1ea9..7a90e93 100644
--- a/src/views/measure/person/list.vue
+++ b/src/views/measure/person/list.vue
@@ -20,6 +20,7 @@
certificateStatus: '', // 证书状态
limit: 20,
offset: 1,
+ ids: [] as string[],
}) // 查询参数
const loadingTable = ref(false) // 表格loading
const total = ref(0) // 数据总条数
@@ -166,6 +167,12 @@
path: '/person/detail',
})
}
+// 表格被选中的行
+const selectList = ref([])
+// 表格多选
+const multiSelect = (row: StaffType[]) => {
+ selectList.value = row
+}
// 导出
const exportExcelBtn = () => {
const loading = ElLoading.service({
@@ -173,9 +180,15 @@
text: 'Loading',
background: 'rgba(255, 255, 255, 0.8)',
})
+ if (selectList.value.length) {
+ selectList.value.forEach((item) => {
+ searchQuery.ids?.push(item.id as string)
+ })
+ }
exportList({ ...searchQuery, limit: 9999999, offset: 1 }).then((res) => {
exportFile(res.data, '计量人员列表')
loading.close()
+ searchQuery.ids = []
}).catch((_) => {
loading.close()
})
@@ -210,11 +223,6 @@
const batchImport = () => {
fileRef.value.click()
}
-// 传给子组件的刷新事件
-const refreshDta = () => {
- getList()
- dialogVisible.value = false
-}
onMounted(() => {
getDeptList()
getList()
@@ -272,7 +280,9 @@
:is-showmulti-select="true"
:query="{ limit: searchQuery.limit, offset: searchQuery.offset }"
:list-loading="loadingTable"
+ :is-multi="true"
@change="changePage"
+ @multi-select="multiSelect"
>
diff --git a/src/views/measure/person/person-interface.ts b/src/views/measure/person/person-interface.ts
index d116841..e510a2c 100644
--- a/src/views/measure/person/person-interface.ts
+++ b/src/views/measure/person/person-interface.ts
@@ -9,6 +9,7 @@
remindType?: string
limit: number
offset: number
+ ids?: string[]
}
// 计量人员类型
export interface StaffType {
diff --git a/src/views/system/notice/noteAdd.vue b/src/views/system/notice/noteAdd.vue
index 600eda1..acfa5e0 100644
--- a/src/views/system/notice/noteAdd.vue
+++ b/src/views/system/notice/noteAdd.vue
@@ -4,12 +4,13 @@
import { ElMessage } from 'element-plus'
import dayjs from 'dayjs'
import { Editor, Toolbar } from '@wangeditor/editor-for-vue'
-import { addNoticeApi, uploadApi } from '@/api/system/notice'
+import { addNoticeApi, getNoticeDetail, updateNoticeApi, uploadApi } from '@/api/system/notice'
import { getPhotoUrl } from '@/api/system/tool'
import useUserStore from '@/store/modules/user'
import '@wangeditor/editor/dist/css/style.css' // 引入 css
const emits = defineEmits(['resetData'])
const userInfo = useUserStore()
+const title = ref('')
const ruleFormRef = ref() // from组件
const ruleForm = reactive({
noticeNo: '', // 通知公告编号
@@ -20,6 +21,7 @@
noticeContent: '', // 发布内容
minioFileName: '', // 上传文件名
noticeTitle: '', // 标题
+ id: '',
}) // 表单
const rules = ref({
noticeTitle: [{ required: true, message: '标题不能为空', trigger: 'blur' }],
@@ -28,11 +30,36 @@
}) // 表单验证规则
const dialogVisible = ref(false) // 弹窗显示
// 弹窗初始化
-const initDialog = () => {
+const initDialog = (row: any) => {
dialogVisible.value = true
- ruleForm.noticePublisher = userInfo.$state.name
- ruleForm.noticeCompany = userInfo.$state.deptName
- ruleForm.noticeTime = dayjs().format('YYYY-MM-DD HH:mm:ss')
+ title.value = row.title
+ if (row.title === '新建') {
+ ruleForm.noticePublisher = userInfo.$state.name
+ ruleForm.noticeCompany = userInfo.$state.deptName
+ ruleForm.noticeTime = dayjs().format('YYYY-MM-DD HH:mm:ss')
+ }
+ else {
+ // 获取详情信息
+ getNoticeDetail({
+ noticeNo: row.noticeNo,
+ noticePublisher: row.noticePublisher,
+ noticeTitle: row.noticeTitle,
+ noticeEndTime: '',
+ noticeStartTime: '',
+ }).then((res) => {
+ if (res.code === 200 && res.data.rows.length) {
+ ruleForm.noticeNo = res.data.rows[0].noticeNo
+ ruleForm.noticePublisher = res.data.rows[0].noticePublisher
+ ruleForm.noticeCompany = res.data.rows[0].noticeCompany
+ ruleForm.noticeTime = res.data.rows[0].noticeTime
+ ruleForm.noticeSketch = res.data.rows[0].noticeSketch
+ ruleForm.noticeContent = res.data.rows[0].noticeContent
+ ruleForm.minioFileName = res.data.rows[0].minioFileName
+ ruleForm.noticeTitle = res.data.rows[0].noticeTitle
+ ruleForm.id = res.data.rows[0].id
+ }
+ })
+ }
}
defineExpose({ initDialog })
// 重置
@@ -56,15 +83,17 @@
await formEl.validate((valid, fields) => {
if (valid) {
ruleForm.noticeTime = dayjs().format('YYYY-MM-DD HH:mm:ss')
- addNoticeApi(ruleForm).then((res) => {
- if (res.code === 200) {
- close()
- ElMessage.success('发布成功')
- }
- else {
- ElMessage.error(res.message)
- }
- })
+ title.value === '新建'
+ ? addNoticeApi
+ : updateNoticeApi(ruleForm).then((res) => {
+ if (res.code === 200) {
+ close()
+ ElMessage.success('操作成功')
+ }
+ else {
+ ElMessage.error(res.message)
+ }
+ })
}
})
}
@@ -243,7 +272,7 @@
-
+
diff --git a/src/views/system/notice/noteList.vue b/src/views/system/notice/noteList.vue
index eaa60ae..3001057 100644
--- a/src/views/system/notice/noteList.vue
+++ b/src/views/system/notice/noteList.vue
@@ -1,24 +1,38 @@
@@ -28,7 +35,7 @@
-
+
diff --git a/src/views/device/borrow/components/applyList.vue b/src/views/device/borrow/components/applyList.vue
index 240fffa..ec43b86 100644
--- a/src/views/device/borrow/components/applyList.vue
+++ b/src/views/device/borrow/components/applyList.vue
@@ -14,6 +14,7 @@
})
const { proxy } = getCurrentInstance() as any
const $router = useRouter()
+const time = ref()
const searchQuery = reactive({
applyName: '', // 申请名称
applyNo: '', // 申请编号
@@ -23,9 +24,20 @@
createUser: '', // 创建人
processResult: '', // 处置结果
time: '', // 申请日期
+ ids: [] as string[],
limit: 20,
offset: 1,
}) // 查询参数
+watch(() => time.value, (newVal) => {
+ if (newVal) {
+ // searchQuery.noticeStartTime = newVal[0]
+ // searchQuery.noticeEndTime = newVal[1]
+ }
+ else {
+ // searchQuery.noticeStartTime = ''
+ // searchQuery.noticeEndTime = ''
+ }
+})
const loadingTable = ref(false) // 表格loading
const total = ref(0) // 数据总条数
// 全部状态的表格数据
@@ -217,6 +229,7 @@
searchQuery.applyPerson = ''
searchQuery.applyUnit = ''
searchQuery.time = ''
+ time.value = ''
getList()
}
// 新增
@@ -232,6 +245,12 @@
},
})
}
+// 表格被选中的行
+const selectList = ref([])
+// 表格多选
+const multiSelect = (row) => {
+ selectList.value = row
+}
// 导出
const exportExcelBtn = () => {
const loading = ElLoading.service({
@@ -239,10 +258,15 @@
text: 'Loading',
background: 'rgba(255, 255, 255, 0.8)',
})
-
+ // if (selectList.value.length) {
+ // selectList.value.forEach((item) => {
+ // searchQuery.ids?.push(item.id as string)
+ // })
+ // }
exportApply({ ...searchQuery, limit: undefined, offset: undefined }).then((res) => {
exportFile(res.data, '设备借用申请')
loading.close()
+ // searchQuery.ids = []
}).catch((_) => {
loading.close()
})
@@ -352,11 +376,20 @@
- -->
+
@@ -374,7 +407,9 @@
:is-showmulti-select="true"
:query="{ limit: searchQuery.limit, offset: searchQuery.offset }"
:list-loading="loadingTable"
+ :is-multi="true"
@change="changePage"
+ @multi-select="multiSelect"
>
@@ -425,7 +460,7 @@
-
+
查看
diff --git a/src/views/device/borrow/components/handleList.vue b/src/views/device/borrow/components/handleList.vue
index ff89b3a..7f74981 100644
--- a/src/views/device/borrow/components/handleList.vue
+++ b/src/views/device/borrow/components/handleList.vue
@@ -1,48 +1,65 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/views/measure/measureDept/components/templatePage.vue b/src/views/measure/measureDept/components/templatePage.vue
index 50918a0..0403c93 100644
--- a/src/views/measure/measureDept/components/templatePage.vue
+++ b/src/views/measure/measureDept/components/templatePage.vue
@@ -3,7 +3,7 @@
import { ElLoading } from 'element-plus'
import type { rowType, searchQueryType } from '../measureDept-interface'
import type { fileResType } from '@/views/measure/file/file-interface'
-import { exportApi, listPageApi } from '@/api/measure/measureDept'
+import { exportApi, getpDeptApi, listPageApi } from '@/api/measure/measureDept'
import { getDictByCode } from '@/api/system/dict'
import { exportFile } from '@/utils/exportUtils'
import type { TableColumn } from '@/components/NormalTable/table_interface'
@@ -20,17 +20,30 @@
const $router = useRouter()
const $route = useRoute()
const { proxy } = getCurrentInstance() as any
+const createTime = ref()
const searchQuery = reactive({
organizeNo: '', // 组织编号
organizeName: '', // 名称
limit: 20,
offset: 1,
organizeType: '', // 类型
- createTime: '', // 创建时间
+ createEndTime: '',
+ createStartTime: '',
director: '', // 负责人
meterMajor: '', // 专业
pDeptId: '', // 所属科室
+ ids: [] as string[],
}) // 查询参数
+watch(() => createTime.value, (newVal) => {
+ if (newVal) {
+ searchQuery.createStartTime = newVal[0]
+ searchQuery.createEndTime = newVal[1]
+ }
+ else {
+ searchQuery.createStartTime = ''
+ searchQuery.createEndTime = ''
+ }
+})
const loadingTable = ref(false) // 表格loading
const total = ref(0) // 数据总条数
// 表格数据根据不同组织筛选
@@ -91,7 +104,7 @@
standard: '',
extarCss: '',
})
-const list = ref([]) // 表格数据
+const list = ref([]) // 表格数据
// 获取类型
const getType = async () => {
const res = await getDictByCode('deptType')
@@ -106,7 +119,9 @@
limit: 99999,
offset: 1,
organizeType: '3',
- createTime: '', // 创建时间
+ // createTime: '', // 创建时间
+ createEndTime: '',
+ createStartTime: '',
director: '', // 负责人
meterMajor: '', // 专业
pDeptId: '', // 所属科室
@@ -117,13 +132,16 @@
// 获取数据列表
const getList = () => {
loadingTable.value = true
- if (!searchQuery.createTime) {
- searchQuery.createTime = ''
- }
listPageApi(searchQuery).then((res) => {
if (res.code === 200) {
- list.value = res.data.rows.map(item => ({ ...item, createTime: item.createTime.split(' ')[0] }))
+ list.value = (res.data.rows as rowType[]).map(item => ({ ...item, createTime: item.createTime.split(' ')[0] }))
total.value = res.data.total
+ if (props.authority === 'gcz') {
+ list.value.forEach(async (item) => {
+ const res = await getpDeptApi({ deptId: item.deptId })
+ item.pDeptName = res.data.pDeptName
+ })
+ }
}
loadingTable.value = false
}).catch((_) => {
@@ -175,15 +193,22 @@
}
// 重置
const reset = () => {
+ createTime.value = ''
searchQuery.organizeNo = '' // 组织编号
searchQuery.organizeName = '' // 名称
+ searchQuery.pDeptId = ''
searchQuery.limit = 10
searchQuery.offset = 1
- searchQuery.createTime = '' // 创建时间
searchQuery.director = '' // 负责人
searchQuery.meterMajor = '' // 专业
getList()
}
+// 表格被选中的行
+const selectList = ref([])
+// 表格多选
+const multiSelect = (row: rowType[]) => {
+ selectList.value = row
+}
// 导出
const exportExcelBtn = () => {
const loading = ElLoading.service({
@@ -191,9 +216,15 @@
text: 'Loading',
background: 'rgba(255, 255, 255, 0.8)',
})
+ if (selectList.value.length) {
+ selectList.value.forEach((item) => {
+ searchQuery.ids?.push(item.id as string)
+ })
+ }
exportApi(searchQuery).then((res) => {
exportFile(res.data, props.name)
loading.close()
+ searchQuery.ids = []
}).catch((_) => {
loading.close()
})
@@ -229,16 +260,26 @@
-
+
+
@@ -260,7 +301,8 @@
:is-showmulti-select="true"
:query="{ limit: searchQuery.limit, offset: searchQuery.offset }"
:list-loading="loadingTable"
- @change="changePage"
+ :is-multi="true"
+ @change="changePage" @multi-select="multiSelect"
>
diff --git a/src/views/measure/measureDept/measureDept-interface.ts b/src/views/measure/measureDept/measureDept-interface.ts
index 5f7f5e7..f7911fa 100644
--- a/src/views/measure/measureDept/measureDept-interface.ts
+++ b/src/views/measure/measureDept/measureDept-interface.ts
@@ -9,6 +9,9 @@
director?: string // 负责人
meterMajor?: string // 专业
pDeptId?: string // 所属科室
+ createEndTime?: string
+ createStartTime?: string
+ ids?: string[]
}
export interface columnType {
@@ -35,6 +38,7 @@
organizeNo: string
organizeType: string
pDeptId: string
+ pDeptName: string
phone: string
remark: string
technologyJob: string
diff --git a/src/views/measure/person/certificateLog.vue b/src/views/measure/person/certificateLog.vue
index a566b78..01c5266 100644
--- a/src/views/measure/person/certificateLog.vue
+++ b/src/views/measure/person/certificateLog.vue
@@ -31,6 +31,7 @@
remindType: '',
limit: 20,
offset: 1,
+ ids: [] as string[],
}) // 查询参数
const loadingTable = ref(false) // 表格loading
const total = ref(0) // 数据总条数
@@ -237,6 +238,12 @@
// name: props.isRemind ? '证书状况' : '证书记录',
// })
}
+// 表格被选中的行
+const selectList = ref([])
+// 表格多选
+const multiSelect = (row: StaffType[]) => {
+ selectList.value = row
+}
// 导出
const exportExcelBtn = () => {
const loading = ElLoading.service({
@@ -244,9 +251,15 @@
text: 'Loading',
background: 'rgba(255, 255, 255, 0.8)',
})
+ if (selectList.value.length) {
+ selectList.value.forEach((item) => {
+ searchQuery.ids?.push(item.id as string)
+ })
+ }
CertificateListList({ ...searchQuery }).then((res) => {
exportFile(res.data, '证书记录列表')
loading.close()
+ searchQuery.ids = []
}).catch((_) => {
loading.close()
})
@@ -278,11 +291,6 @@
const batchImport = () => {
fileRef.value.click()
}
-// 传给子组件的刷新事件
-const refreshDta = () => {
- getList()
- dialogVisible.value = false
-}
onMounted(() => {
getDeptList()
getList()
@@ -347,7 +355,9 @@
:is-showmulti-select="true"
:query="{ limit: searchQuery.limit, offset: searchQuery.offset }"
:list-loading="loadingTable"
+ :is-multi="true"
@change="changePage"
+ @multi-select="multiSelect"
>
diff --git a/src/views/measure/person/list.vue b/src/views/measure/person/list.vue
index d3a1ea9..7a90e93 100644
--- a/src/views/measure/person/list.vue
+++ b/src/views/measure/person/list.vue
@@ -20,6 +20,7 @@
certificateStatus: '', // 证书状态
limit: 20,
offset: 1,
+ ids: [] as string[],
}) // 查询参数
const loadingTable = ref(false) // 表格loading
const total = ref(0) // 数据总条数
@@ -166,6 +167,12 @@
path: '/person/detail',
})
}
+// 表格被选中的行
+const selectList = ref([])
+// 表格多选
+const multiSelect = (row: StaffType[]) => {
+ selectList.value = row
+}
// 导出
const exportExcelBtn = () => {
const loading = ElLoading.service({
@@ -173,9 +180,15 @@
text: 'Loading',
background: 'rgba(255, 255, 255, 0.8)',
})
+ if (selectList.value.length) {
+ selectList.value.forEach((item) => {
+ searchQuery.ids?.push(item.id as string)
+ })
+ }
exportList({ ...searchQuery, limit: 9999999, offset: 1 }).then((res) => {
exportFile(res.data, '计量人员列表')
loading.close()
+ searchQuery.ids = []
}).catch((_) => {
loading.close()
})
@@ -210,11 +223,6 @@
const batchImport = () => {
fileRef.value.click()
}
-// 传给子组件的刷新事件
-const refreshDta = () => {
- getList()
- dialogVisible.value = false
-}
onMounted(() => {
getDeptList()
getList()
@@ -272,7 +280,9 @@
:is-showmulti-select="true"
:query="{ limit: searchQuery.limit, offset: searchQuery.offset }"
:list-loading="loadingTable"
+ :is-multi="true"
@change="changePage"
+ @multi-select="multiSelect"
>
diff --git a/src/views/measure/person/person-interface.ts b/src/views/measure/person/person-interface.ts
index d116841..e510a2c 100644
--- a/src/views/measure/person/person-interface.ts
+++ b/src/views/measure/person/person-interface.ts
@@ -9,6 +9,7 @@
remindType?: string
limit: number
offset: number
+ ids?: string[]
}
// 计量人员类型
export interface StaffType {
diff --git a/src/views/system/notice/noteAdd.vue b/src/views/system/notice/noteAdd.vue
index 600eda1..acfa5e0 100644
--- a/src/views/system/notice/noteAdd.vue
+++ b/src/views/system/notice/noteAdd.vue
@@ -4,12 +4,13 @@
import { ElMessage } from 'element-plus'
import dayjs from 'dayjs'
import { Editor, Toolbar } from '@wangeditor/editor-for-vue'
-import { addNoticeApi, uploadApi } from '@/api/system/notice'
+import { addNoticeApi, getNoticeDetail, updateNoticeApi, uploadApi } from '@/api/system/notice'
import { getPhotoUrl } from '@/api/system/tool'
import useUserStore from '@/store/modules/user'
import '@wangeditor/editor/dist/css/style.css' // 引入 css
const emits = defineEmits(['resetData'])
const userInfo = useUserStore()
+const title = ref('')
const ruleFormRef = ref() // from组件
const ruleForm = reactive({
noticeNo: '', // 通知公告编号
@@ -20,6 +21,7 @@
noticeContent: '', // 发布内容
minioFileName: '', // 上传文件名
noticeTitle: '', // 标题
+ id: '',
}) // 表单
const rules = ref({
noticeTitle: [{ required: true, message: '标题不能为空', trigger: 'blur' }],
@@ -28,11 +30,36 @@
}) // 表单验证规则
const dialogVisible = ref(false) // 弹窗显示
// 弹窗初始化
-const initDialog = () => {
+const initDialog = (row: any) => {
dialogVisible.value = true
- ruleForm.noticePublisher = userInfo.$state.name
- ruleForm.noticeCompany = userInfo.$state.deptName
- ruleForm.noticeTime = dayjs().format('YYYY-MM-DD HH:mm:ss')
+ title.value = row.title
+ if (row.title === '新建') {
+ ruleForm.noticePublisher = userInfo.$state.name
+ ruleForm.noticeCompany = userInfo.$state.deptName
+ ruleForm.noticeTime = dayjs().format('YYYY-MM-DD HH:mm:ss')
+ }
+ else {
+ // 获取详情信息
+ getNoticeDetail({
+ noticeNo: row.noticeNo,
+ noticePublisher: row.noticePublisher,
+ noticeTitle: row.noticeTitle,
+ noticeEndTime: '',
+ noticeStartTime: '',
+ }).then((res) => {
+ if (res.code === 200 && res.data.rows.length) {
+ ruleForm.noticeNo = res.data.rows[0].noticeNo
+ ruleForm.noticePublisher = res.data.rows[0].noticePublisher
+ ruleForm.noticeCompany = res.data.rows[0].noticeCompany
+ ruleForm.noticeTime = res.data.rows[0].noticeTime
+ ruleForm.noticeSketch = res.data.rows[0].noticeSketch
+ ruleForm.noticeContent = res.data.rows[0].noticeContent
+ ruleForm.minioFileName = res.data.rows[0].minioFileName
+ ruleForm.noticeTitle = res.data.rows[0].noticeTitle
+ ruleForm.id = res.data.rows[0].id
+ }
+ })
+ }
}
defineExpose({ initDialog })
// 重置
@@ -56,15 +83,17 @@
await formEl.validate((valid, fields) => {
if (valid) {
ruleForm.noticeTime = dayjs().format('YYYY-MM-DD HH:mm:ss')
- addNoticeApi(ruleForm).then((res) => {
- if (res.code === 200) {
- close()
- ElMessage.success('发布成功')
- }
- else {
- ElMessage.error(res.message)
- }
- })
+ title.value === '新建'
+ ? addNoticeApi
+ : updateNoticeApi(ruleForm).then((res) => {
+ if (res.code === 200) {
+ close()
+ ElMessage.success('操作成功')
+ }
+ else {
+ ElMessage.error(res.message)
+ }
+ })
}
})
}
@@ -243,7 +272,7 @@
-
+
diff --git a/src/views/system/notice/noteList.vue b/src/views/system/notice/noteList.vue
index eaa60ae..3001057 100644
--- a/src/views/system/notice/noteList.vue
+++ b/src/views/system/notice/noteList.vue
@@ -1,24 +1,38 @@
@@ -28,7 +35,7 @@
-
+
diff --git a/src/views/device/borrow/components/applyList.vue b/src/views/device/borrow/components/applyList.vue
index 240fffa..ec43b86 100644
--- a/src/views/device/borrow/components/applyList.vue
+++ b/src/views/device/borrow/components/applyList.vue
@@ -14,6 +14,7 @@
})
const { proxy } = getCurrentInstance() as any
const $router = useRouter()
+const time = ref()
const searchQuery = reactive({
applyName: '', // 申请名称
applyNo: '', // 申请编号
@@ -23,9 +24,20 @@
createUser: '', // 创建人
processResult: '', // 处置结果
time: '', // 申请日期
+ ids: [] as string[],
limit: 20,
offset: 1,
}) // 查询参数
+watch(() => time.value, (newVal) => {
+ if (newVal) {
+ // searchQuery.noticeStartTime = newVal[0]
+ // searchQuery.noticeEndTime = newVal[1]
+ }
+ else {
+ // searchQuery.noticeStartTime = ''
+ // searchQuery.noticeEndTime = ''
+ }
+})
const loadingTable = ref(false) // 表格loading
const total = ref(0) // 数据总条数
// 全部状态的表格数据
@@ -217,6 +229,7 @@
searchQuery.applyPerson = ''
searchQuery.applyUnit = ''
searchQuery.time = ''
+ time.value = ''
getList()
}
// 新增
@@ -232,6 +245,12 @@
},
})
}
+// 表格被选中的行
+const selectList = ref([])
+// 表格多选
+const multiSelect = (row) => {
+ selectList.value = row
+}
// 导出
const exportExcelBtn = () => {
const loading = ElLoading.service({
@@ -239,10 +258,15 @@
text: 'Loading',
background: 'rgba(255, 255, 255, 0.8)',
})
-
+ // if (selectList.value.length) {
+ // selectList.value.forEach((item) => {
+ // searchQuery.ids?.push(item.id as string)
+ // })
+ // }
exportApply({ ...searchQuery, limit: undefined, offset: undefined }).then((res) => {
exportFile(res.data, '设备借用申请')
loading.close()
+ // searchQuery.ids = []
}).catch((_) => {
loading.close()
})
@@ -352,11 +376,20 @@
- -->
+
@@ -374,7 +407,9 @@
:is-showmulti-select="true"
:query="{ limit: searchQuery.limit, offset: searchQuery.offset }"
:list-loading="loadingTable"
+ :is-multi="true"
@change="changePage"
+ @multi-select="multiSelect"
>
@@ -425,7 +460,7 @@
-
+
查看
diff --git a/src/views/device/borrow/components/handleList.vue b/src/views/device/borrow/components/handleList.vue
index ff89b3a..7f74981 100644
--- a/src/views/device/borrow/components/handleList.vue
+++ b/src/views/device/borrow/components/handleList.vue
@@ -1,48 +1,65 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/views/measure/measureDept/components/templatePage.vue b/src/views/measure/measureDept/components/templatePage.vue
index 50918a0..0403c93 100644
--- a/src/views/measure/measureDept/components/templatePage.vue
+++ b/src/views/measure/measureDept/components/templatePage.vue
@@ -3,7 +3,7 @@
import { ElLoading } from 'element-plus'
import type { rowType, searchQueryType } from '../measureDept-interface'
import type { fileResType } from '@/views/measure/file/file-interface'
-import { exportApi, listPageApi } from '@/api/measure/measureDept'
+import { exportApi, getpDeptApi, listPageApi } from '@/api/measure/measureDept'
import { getDictByCode } from '@/api/system/dict'
import { exportFile } from '@/utils/exportUtils'
import type { TableColumn } from '@/components/NormalTable/table_interface'
@@ -20,17 +20,30 @@
const $router = useRouter()
const $route = useRoute()
const { proxy } = getCurrentInstance() as any
+const createTime = ref()
const searchQuery = reactive({
organizeNo: '', // 组织编号
organizeName: '', // 名称
limit: 20,
offset: 1,
organizeType: '', // 类型
- createTime: '', // 创建时间
+ createEndTime: '',
+ createStartTime: '',
director: '', // 负责人
meterMajor: '', // 专业
pDeptId: '', // 所属科室
+ ids: [] as string[],
}) // 查询参数
+watch(() => createTime.value, (newVal) => {
+ if (newVal) {
+ searchQuery.createStartTime = newVal[0]
+ searchQuery.createEndTime = newVal[1]
+ }
+ else {
+ searchQuery.createStartTime = ''
+ searchQuery.createEndTime = ''
+ }
+})
const loadingTable = ref(false) // 表格loading
const total = ref(0) // 数据总条数
// 表格数据根据不同组织筛选
@@ -91,7 +104,7 @@
standard: '',
extarCss: '',
})
-const list = ref([]) // 表格数据
+const list = ref([]) // 表格数据
// 获取类型
const getType = async () => {
const res = await getDictByCode('deptType')
@@ -106,7 +119,9 @@
limit: 99999,
offset: 1,
organizeType: '3',
- createTime: '', // 创建时间
+ // createTime: '', // 创建时间
+ createEndTime: '',
+ createStartTime: '',
director: '', // 负责人
meterMajor: '', // 专业
pDeptId: '', // 所属科室
@@ -117,13 +132,16 @@
// 获取数据列表
const getList = () => {
loadingTable.value = true
- if (!searchQuery.createTime) {
- searchQuery.createTime = ''
- }
listPageApi(searchQuery).then((res) => {
if (res.code === 200) {
- list.value = res.data.rows.map(item => ({ ...item, createTime: item.createTime.split(' ')[0] }))
+ list.value = (res.data.rows as rowType[]).map(item => ({ ...item, createTime: item.createTime.split(' ')[0] }))
total.value = res.data.total
+ if (props.authority === 'gcz') {
+ list.value.forEach(async (item) => {
+ const res = await getpDeptApi({ deptId: item.deptId })
+ item.pDeptName = res.data.pDeptName
+ })
+ }
}
loadingTable.value = false
}).catch((_) => {
@@ -175,15 +193,22 @@
}
// 重置
const reset = () => {
+ createTime.value = ''
searchQuery.organizeNo = '' // 组织编号
searchQuery.organizeName = '' // 名称
+ searchQuery.pDeptId = ''
searchQuery.limit = 10
searchQuery.offset = 1
- searchQuery.createTime = '' // 创建时间
searchQuery.director = '' // 负责人
searchQuery.meterMajor = '' // 专业
getList()
}
+// 表格被选中的行
+const selectList = ref([])
+// 表格多选
+const multiSelect = (row: rowType[]) => {
+ selectList.value = row
+}
// 导出
const exportExcelBtn = () => {
const loading = ElLoading.service({
@@ -191,9 +216,15 @@
text: 'Loading',
background: 'rgba(255, 255, 255, 0.8)',
})
+ if (selectList.value.length) {
+ selectList.value.forEach((item) => {
+ searchQuery.ids?.push(item.id as string)
+ })
+ }
exportApi(searchQuery).then((res) => {
exportFile(res.data, props.name)
loading.close()
+ searchQuery.ids = []
}).catch((_) => {
loading.close()
})
@@ -229,16 +260,26 @@
-
+
+
@@ -260,7 +301,8 @@
:is-showmulti-select="true"
:query="{ limit: searchQuery.limit, offset: searchQuery.offset }"
:list-loading="loadingTable"
- @change="changePage"
+ :is-multi="true"
+ @change="changePage" @multi-select="multiSelect"
>
diff --git a/src/views/measure/measureDept/measureDept-interface.ts b/src/views/measure/measureDept/measureDept-interface.ts
index 5f7f5e7..f7911fa 100644
--- a/src/views/measure/measureDept/measureDept-interface.ts
+++ b/src/views/measure/measureDept/measureDept-interface.ts
@@ -9,6 +9,9 @@
director?: string // 负责人
meterMajor?: string // 专业
pDeptId?: string // 所属科室
+ createEndTime?: string
+ createStartTime?: string
+ ids?: string[]
}
export interface columnType {
@@ -35,6 +38,7 @@
organizeNo: string
organizeType: string
pDeptId: string
+ pDeptName: string
phone: string
remark: string
technologyJob: string
diff --git a/src/views/measure/person/certificateLog.vue b/src/views/measure/person/certificateLog.vue
index a566b78..01c5266 100644
--- a/src/views/measure/person/certificateLog.vue
+++ b/src/views/measure/person/certificateLog.vue
@@ -31,6 +31,7 @@
remindType: '',
limit: 20,
offset: 1,
+ ids: [] as string[],
}) // 查询参数
const loadingTable = ref(false) // 表格loading
const total = ref(0) // 数据总条数
@@ -237,6 +238,12 @@
// name: props.isRemind ? '证书状况' : '证书记录',
// })
}
+// 表格被选中的行
+const selectList = ref([])
+// 表格多选
+const multiSelect = (row: StaffType[]) => {
+ selectList.value = row
+}
// 导出
const exportExcelBtn = () => {
const loading = ElLoading.service({
@@ -244,9 +251,15 @@
text: 'Loading',
background: 'rgba(255, 255, 255, 0.8)',
})
+ if (selectList.value.length) {
+ selectList.value.forEach((item) => {
+ searchQuery.ids?.push(item.id as string)
+ })
+ }
CertificateListList({ ...searchQuery }).then((res) => {
exportFile(res.data, '证书记录列表')
loading.close()
+ searchQuery.ids = []
}).catch((_) => {
loading.close()
})
@@ -278,11 +291,6 @@
const batchImport = () => {
fileRef.value.click()
}
-// 传给子组件的刷新事件
-const refreshDta = () => {
- getList()
- dialogVisible.value = false
-}
onMounted(() => {
getDeptList()
getList()
@@ -347,7 +355,9 @@
:is-showmulti-select="true"
:query="{ limit: searchQuery.limit, offset: searchQuery.offset }"
:list-loading="loadingTable"
+ :is-multi="true"
@change="changePage"
+ @multi-select="multiSelect"
>
diff --git a/src/views/measure/person/list.vue b/src/views/measure/person/list.vue
index d3a1ea9..7a90e93 100644
--- a/src/views/measure/person/list.vue
+++ b/src/views/measure/person/list.vue
@@ -20,6 +20,7 @@
certificateStatus: '', // 证书状态
limit: 20,
offset: 1,
+ ids: [] as string[],
}) // 查询参数
const loadingTable = ref(false) // 表格loading
const total = ref(0) // 数据总条数
@@ -166,6 +167,12 @@
path: '/person/detail',
})
}
+// 表格被选中的行
+const selectList = ref([])
+// 表格多选
+const multiSelect = (row: StaffType[]) => {
+ selectList.value = row
+}
// 导出
const exportExcelBtn = () => {
const loading = ElLoading.service({
@@ -173,9 +180,15 @@
text: 'Loading',
background: 'rgba(255, 255, 255, 0.8)',
})
+ if (selectList.value.length) {
+ selectList.value.forEach((item) => {
+ searchQuery.ids?.push(item.id as string)
+ })
+ }
exportList({ ...searchQuery, limit: 9999999, offset: 1 }).then((res) => {
exportFile(res.data, '计量人员列表')
loading.close()
+ searchQuery.ids = []
}).catch((_) => {
loading.close()
})
@@ -210,11 +223,6 @@
const batchImport = () => {
fileRef.value.click()
}
-// 传给子组件的刷新事件
-const refreshDta = () => {
- getList()
- dialogVisible.value = false
-}
onMounted(() => {
getDeptList()
getList()
@@ -272,7 +280,9 @@
:is-showmulti-select="true"
:query="{ limit: searchQuery.limit, offset: searchQuery.offset }"
:list-loading="loadingTable"
+ :is-multi="true"
@change="changePage"
+ @multi-select="multiSelect"
>
diff --git a/src/views/measure/person/person-interface.ts b/src/views/measure/person/person-interface.ts
index d116841..e510a2c 100644
--- a/src/views/measure/person/person-interface.ts
+++ b/src/views/measure/person/person-interface.ts
@@ -9,6 +9,7 @@
remindType?: string
limit: number
offset: number
+ ids?: string[]
}
// 计量人员类型
export interface StaffType {
diff --git a/src/views/system/notice/noteAdd.vue b/src/views/system/notice/noteAdd.vue
index 600eda1..acfa5e0 100644
--- a/src/views/system/notice/noteAdd.vue
+++ b/src/views/system/notice/noteAdd.vue
@@ -4,12 +4,13 @@
import { ElMessage } from 'element-plus'
import dayjs from 'dayjs'
import { Editor, Toolbar } from '@wangeditor/editor-for-vue'
-import { addNoticeApi, uploadApi } from '@/api/system/notice'
+import { addNoticeApi, getNoticeDetail, updateNoticeApi, uploadApi } from '@/api/system/notice'
import { getPhotoUrl } from '@/api/system/tool'
import useUserStore from '@/store/modules/user'
import '@wangeditor/editor/dist/css/style.css' // 引入 css
const emits = defineEmits(['resetData'])
const userInfo = useUserStore()
+const title = ref('')
const ruleFormRef = ref() // from组件
const ruleForm = reactive({
noticeNo: '', // 通知公告编号
@@ -20,6 +21,7 @@
noticeContent: '', // 发布内容
minioFileName: '', // 上传文件名
noticeTitle: '', // 标题
+ id: '',
}) // 表单
const rules = ref({
noticeTitle: [{ required: true, message: '标题不能为空', trigger: 'blur' }],
@@ -28,11 +30,36 @@
}) // 表单验证规则
const dialogVisible = ref(false) // 弹窗显示
// 弹窗初始化
-const initDialog = () => {
+const initDialog = (row: any) => {
dialogVisible.value = true
- ruleForm.noticePublisher = userInfo.$state.name
- ruleForm.noticeCompany = userInfo.$state.deptName
- ruleForm.noticeTime = dayjs().format('YYYY-MM-DD HH:mm:ss')
+ title.value = row.title
+ if (row.title === '新建') {
+ ruleForm.noticePublisher = userInfo.$state.name
+ ruleForm.noticeCompany = userInfo.$state.deptName
+ ruleForm.noticeTime = dayjs().format('YYYY-MM-DD HH:mm:ss')
+ }
+ else {
+ // 获取详情信息
+ getNoticeDetail({
+ noticeNo: row.noticeNo,
+ noticePublisher: row.noticePublisher,
+ noticeTitle: row.noticeTitle,
+ noticeEndTime: '',
+ noticeStartTime: '',
+ }).then((res) => {
+ if (res.code === 200 && res.data.rows.length) {
+ ruleForm.noticeNo = res.data.rows[0].noticeNo
+ ruleForm.noticePublisher = res.data.rows[0].noticePublisher
+ ruleForm.noticeCompany = res.data.rows[0].noticeCompany
+ ruleForm.noticeTime = res.data.rows[0].noticeTime
+ ruleForm.noticeSketch = res.data.rows[0].noticeSketch
+ ruleForm.noticeContent = res.data.rows[0].noticeContent
+ ruleForm.minioFileName = res.data.rows[0].minioFileName
+ ruleForm.noticeTitle = res.data.rows[0].noticeTitle
+ ruleForm.id = res.data.rows[0].id
+ }
+ })
+ }
}
defineExpose({ initDialog })
// 重置
@@ -56,15 +83,17 @@
await formEl.validate((valid, fields) => {
if (valid) {
ruleForm.noticeTime = dayjs().format('YYYY-MM-DD HH:mm:ss')
- addNoticeApi(ruleForm).then((res) => {
- if (res.code === 200) {
- close()
- ElMessage.success('发布成功')
- }
- else {
- ElMessage.error(res.message)
- }
- })
+ title.value === '新建'
+ ? addNoticeApi
+ : updateNoticeApi(ruleForm).then((res) => {
+ if (res.code === 200) {
+ close()
+ ElMessage.success('操作成功')
+ }
+ else {
+ ElMessage.error(res.message)
+ }
+ })
}
})
}
@@ -243,7 +272,7 @@
-
+
diff --git a/src/views/system/notice/noteList.vue b/src/views/system/notice/noteList.vue
index eaa60ae..3001057 100644
--- a/src/views/system/notice/noteList.vue
+++ b/src/views/system/notice/noteList.vue
@@ -1,24 +1,38 @@
@@ -28,7 +35,7 @@
-
+
diff --git a/src/views/device/borrow/components/applyList.vue b/src/views/device/borrow/components/applyList.vue
index 240fffa..ec43b86 100644
--- a/src/views/device/borrow/components/applyList.vue
+++ b/src/views/device/borrow/components/applyList.vue
@@ -14,6 +14,7 @@
})
const { proxy } = getCurrentInstance() as any
const $router = useRouter()
+const time = ref()
const searchQuery = reactive({
applyName: '', // 申请名称
applyNo: '', // 申请编号
@@ -23,9 +24,20 @@
createUser: '', // 创建人
processResult: '', // 处置结果
time: '', // 申请日期
+ ids: [] as string[],
limit: 20,
offset: 1,
}) // 查询参数
+watch(() => time.value, (newVal) => {
+ if (newVal) {
+ // searchQuery.noticeStartTime = newVal[0]
+ // searchQuery.noticeEndTime = newVal[1]
+ }
+ else {
+ // searchQuery.noticeStartTime = ''
+ // searchQuery.noticeEndTime = ''
+ }
+})
const loadingTable = ref(false) // 表格loading
const total = ref(0) // 数据总条数
// 全部状态的表格数据
@@ -217,6 +229,7 @@
searchQuery.applyPerson = ''
searchQuery.applyUnit = ''
searchQuery.time = ''
+ time.value = ''
getList()
}
// 新增
@@ -232,6 +245,12 @@
},
})
}
+// 表格被选中的行
+const selectList = ref([])
+// 表格多选
+const multiSelect = (row) => {
+ selectList.value = row
+}
// 导出
const exportExcelBtn = () => {
const loading = ElLoading.service({
@@ -239,10 +258,15 @@
text: 'Loading',
background: 'rgba(255, 255, 255, 0.8)',
})
-
+ // if (selectList.value.length) {
+ // selectList.value.forEach((item) => {
+ // searchQuery.ids?.push(item.id as string)
+ // })
+ // }
exportApply({ ...searchQuery, limit: undefined, offset: undefined }).then((res) => {
exportFile(res.data, '设备借用申请')
loading.close()
+ // searchQuery.ids = []
}).catch((_) => {
loading.close()
})
@@ -352,11 +376,20 @@
- -->
+
@@ -374,7 +407,9 @@
:is-showmulti-select="true"
:query="{ limit: searchQuery.limit, offset: searchQuery.offset }"
:list-loading="loadingTable"
+ :is-multi="true"
@change="changePage"
+ @multi-select="multiSelect"
>
@@ -425,7 +460,7 @@
-
+
查看
diff --git a/src/views/device/borrow/components/handleList.vue b/src/views/device/borrow/components/handleList.vue
index ff89b3a..7f74981 100644
--- a/src/views/device/borrow/components/handleList.vue
+++ b/src/views/device/borrow/components/handleList.vue
@@ -1,48 +1,65 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/views/measure/measureDept/components/templatePage.vue b/src/views/measure/measureDept/components/templatePage.vue
index 50918a0..0403c93 100644
--- a/src/views/measure/measureDept/components/templatePage.vue
+++ b/src/views/measure/measureDept/components/templatePage.vue
@@ -3,7 +3,7 @@
import { ElLoading } from 'element-plus'
import type { rowType, searchQueryType } from '../measureDept-interface'
import type { fileResType } from '@/views/measure/file/file-interface'
-import { exportApi, listPageApi } from '@/api/measure/measureDept'
+import { exportApi, getpDeptApi, listPageApi } from '@/api/measure/measureDept'
import { getDictByCode } from '@/api/system/dict'
import { exportFile } from '@/utils/exportUtils'
import type { TableColumn } from '@/components/NormalTable/table_interface'
@@ -20,17 +20,30 @@
const $router = useRouter()
const $route = useRoute()
const { proxy } = getCurrentInstance() as any
+const createTime = ref()
const searchQuery = reactive({
organizeNo: '', // 组织编号
organizeName: '', // 名称
limit: 20,
offset: 1,
organizeType: '', // 类型
- createTime: '', // 创建时间
+ createEndTime: '',
+ createStartTime: '',
director: '', // 负责人
meterMajor: '', // 专业
pDeptId: '', // 所属科室
+ ids: [] as string[],
}) // 查询参数
+watch(() => createTime.value, (newVal) => {
+ if (newVal) {
+ searchQuery.createStartTime = newVal[0]
+ searchQuery.createEndTime = newVal[1]
+ }
+ else {
+ searchQuery.createStartTime = ''
+ searchQuery.createEndTime = ''
+ }
+})
const loadingTable = ref(false) // 表格loading
const total = ref(0) // 数据总条数
// 表格数据根据不同组织筛选
@@ -91,7 +104,7 @@
standard: '',
extarCss: '',
})
-const list = ref([]) // 表格数据
+const list = ref([]) // 表格数据
// 获取类型
const getType = async () => {
const res = await getDictByCode('deptType')
@@ -106,7 +119,9 @@
limit: 99999,
offset: 1,
organizeType: '3',
- createTime: '', // 创建时间
+ // createTime: '', // 创建时间
+ createEndTime: '',
+ createStartTime: '',
director: '', // 负责人
meterMajor: '', // 专业
pDeptId: '', // 所属科室
@@ -117,13 +132,16 @@
// 获取数据列表
const getList = () => {
loadingTable.value = true
- if (!searchQuery.createTime) {
- searchQuery.createTime = ''
- }
listPageApi(searchQuery).then((res) => {
if (res.code === 200) {
- list.value = res.data.rows.map(item => ({ ...item, createTime: item.createTime.split(' ')[0] }))
+ list.value = (res.data.rows as rowType[]).map(item => ({ ...item, createTime: item.createTime.split(' ')[0] }))
total.value = res.data.total
+ if (props.authority === 'gcz') {
+ list.value.forEach(async (item) => {
+ const res = await getpDeptApi({ deptId: item.deptId })
+ item.pDeptName = res.data.pDeptName
+ })
+ }
}
loadingTable.value = false
}).catch((_) => {
@@ -175,15 +193,22 @@
}
// 重置
const reset = () => {
+ createTime.value = ''
searchQuery.organizeNo = '' // 组织编号
searchQuery.organizeName = '' // 名称
+ searchQuery.pDeptId = ''
searchQuery.limit = 10
searchQuery.offset = 1
- searchQuery.createTime = '' // 创建时间
searchQuery.director = '' // 负责人
searchQuery.meterMajor = '' // 专业
getList()
}
+// 表格被选中的行
+const selectList = ref([])
+// 表格多选
+const multiSelect = (row: rowType[]) => {
+ selectList.value = row
+}
// 导出
const exportExcelBtn = () => {
const loading = ElLoading.service({
@@ -191,9 +216,15 @@
text: 'Loading',
background: 'rgba(255, 255, 255, 0.8)',
})
+ if (selectList.value.length) {
+ selectList.value.forEach((item) => {
+ searchQuery.ids?.push(item.id as string)
+ })
+ }
exportApi(searchQuery).then((res) => {
exportFile(res.data, props.name)
loading.close()
+ searchQuery.ids = []
}).catch((_) => {
loading.close()
})
@@ -229,16 +260,26 @@
-
+
+
@@ -260,7 +301,8 @@
:is-showmulti-select="true"
:query="{ limit: searchQuery.limit, offset: searchQuery.offset }"
:list-loading="loadingTable"
- @change="changePage"
+ :is-multi="true"
+ @change="changePage" @multi-select="multiSelect"
>
diff --git a/src/views/measure/measureDept/measureDept-interface.ts b/src/views/measure/measureDept/measureDept-interface.ts
index 5f7f5e7..f7911fa 100644
--- a/src/views/measure/measureDept/measureDept-interface.ts
+++ b/src/views/measure/measureDept/measureDept-interface.ts
@@ -9,6 +9,9 @@
director?: string // 负责人
meterMajor?: string // 专业
pDeptId?: string // 所属科室
+ createEndTime?: string
+ createStartTime?: string
+ ids?: string[]
}
export interface columnType {
@@ -35,6 +38,7 @@
organizeNo: string
organizeType: string
pDeptId: string
+ pDeptName: string
phone: string
remark: string
technologyJob: string
diff --git a/src/views/measure/person/certificateLog.vue b/src/views/measure/person/certificateLog.vue
index a566b78..01c5266 100644
--- a/src/views/measure/person/certificateLog.vue
+++ b/src/views/measure/person/certificateLog.vue
@@ -31,6 +31,7 @@
remindType: '',
limit: 20,
offset: 1,
+ ids: [] as string[],
}) // 查询参数
const loadingTable = ref(false) // 表格loading
const total = ref(0) // 数据总条数
@@ -237,6 +238,12 @@
// name: props.isRemind ? '证书状况' : '证书记录',
// })
}
+// 表格被选中的行
+const selectList = ref([])
+// 表格多选
+const multiSelect = (row: StaffType[]) => {
+ selectList.value = row
+}
// 导出
const exportExcelBtn = () => {
const loading = ElLoading.service({
@@ -244,9 +251,15 @@
text: 'Loading',
background: 'rgba(255, 255, 255, 0.8)',
})
+ if (selectList.value.length) {
+ selectList.value.forEach((item) => {
+ searchQuery.ids?.push(item.id as string)
+ })
+ }
CertificateListList({ ...searchQuery }).then((res) => {
exportFile(res.data, '证书记录列表')
loading.close()
+ searchQuery.ids = []
}).catch((_) => {
loading.close()
})
@@ -278,11 +291,6 @@
const batchImport = () => {
fileRef.value.click()
}
-// 传给子组件的刷新事件
-const refreshDta = () => {
- getList()
- dialogVisible.value = false
-}
onMounted(() => {
getDeptList()
getList()
@@ -347,7 +355,9 @@
:is-showmulti-select="true"
:query="{ limit: searchQuery.limit, offset: searchQuery.offset }"
:list-loading="loadingTable"
+ :is-multi="true"
@change="changePage"
+ @multi-select="multiSelect"
>
diff --git a/src/views/measure/person/list.vue b/src/views/measure/person/list.vue
index d3a1ea9..7a90e93 100644
--- a/src/views/measure/person/list.vue
+++ b/src/views/measure/person/list.vue
@@ -20,6 +20,7 @@
certificateStatus: '', // 证书状态
limit: 20,
offset: 1,
+ ids: [] as string[],
}) // 查询参数
const loadingTable = ref(false) // 表格loading
const total = ref(0) // 数据总条数
@@ -166,6 +167,12 @@
path: '/person/detail',
})
}
+// 表格被选中的行
+const selectList = ref([])
+// 表格多选
+const multiSelect = (row: StaffType[]) => {
+ selectList.value = row
+}
// 导出
const exportExcelBtn = () => {
const loading = ElLoading.service({
@@ -173,9 +180,15 @@
text: 'Loading',
background: 'rgba(255, 255, 255, 0.8)',
})
+ if (selectList.value.length) {
+ selectList.value.forEach((item) => {
+ searchQuery.ids?.push(item.id as string)
+ })
+ }
exportList({ ...searchQuery, limit: 9999999, offset: 1 }).then((res) => {
exportFile(res.data, '计量人员列表')
loading.close()
+ searchQuery.ids = []
}).catch((_) => {
loading.close()
})
@@ -210,11 +223,6 @@
const batchImport = () => {
fileRef.value.click()
}
-// 传给子组件的刷新事件
-const refreshDta = () => {
- getList()
- dialogVisible.value = false
-}
onMounted(() => {
getDeptList()
getList()
@@ -272,7 +280,9 @@
:is-showmulti-select="true"
:query="{ limit: searchQuery.limit, offset: searchQuery.offset }"
:list-loading="loadingTable"
+ :is-multi="true"
@change="changePage"
+ @multi-select="multiSelect"
>
diff --git a/src/views/measure/person/person-interface.ts b/src/views/measure/person/person-interface.ts
index d116841..e510a2c 100644
--- a/src/views/measure/person/person-interface.ts
+++ b/src/views/measure/person/person-interface.ts
@@ -9,6 +9,7 @@
remindType?: string
limit: number
offset: number
+ ids?: string[]
}
// 计量人员类型
export interface StaffType {
diff --git a/src/views/system/notice/noteAdd.vue b/src/views/system/notice/noteAdd.vue
index 600eda1..acfa5e0 100644
--- a/src/views/system/notice/noteAdd.vue
+++ b/src/views/system/notice/noteAdd.vue
@@ -4,12 +4,13 @@
import { ElMessage } from 'element-plus'
import dayjs from 'dayjs'
import { Editor, Toolbar } from '@wangeditor/editor-for-vue'
-import { addNoticeApi, uploadApi } from '@/api/system/notice'
+import { addNoticeApi, getNoticeDetail, updateNoticeApi, uploadApi } from '@/api/system/notice'
import { getPhotoUrl } from '@/api/system/tool'
import useUserStore from '@/store/modules/user'
import '@wangeditor/editor/dist/css/style.css' // 引入 css
const emits = defineEmits(['resetData'])
const userInfo = useUserStore()
+const title = ref('')
const ruleFormRef = ref() // from组件
const ruleForm = reactive({
noticeNo: '', // 通知公告编号
@@ -20,6 +21,7 @@
noticeContent: '', // 发布内容
minioFileName: '', // 上传文件名
noticeTitle: '', // 标题
+ id: '',
}) // 表单
const rules = ref({
noticeTitle: [{ required: true, message: '标题不能为空', trigger: 'blur' }],
@@ -28,11 +30,36 @@
}) // 表单验证规则
const dialogVisible = ref(false) // 弹窗显示
// 弹窗初始化
-const initDialog = () => {
+const initDialog = (row: any) => {
dialogVisible.value = true
- ruleForm.noticePublisher = userInfo.$state.name
- ruleForm.noticeCompany = userInfo.$state.deptName
- ruleForm.noticeTime = dayjs().format('YYYY-MM-DD HH:mm:ss')
+ title.value = row.title
+ if (row.title === '新建') {
+ ruleForm.noticePublisher = userInfo.$state.name
+ ruleForm.noticeCompany = userInfo.$state.deptName
+ ruleForm.noticeTime = dayjs().format('YYYY-MM-DD HH:mm:ss')
+ }
+ else {
+ // 获取详情信息
+ getNoticeDetail({
+ noticeNo: row.noticeNo,
+ noticePublisher: row.noticePublisher,
+ noticeTitle: row.noticeTitle,
+ noticeEndTime: '',
+ noticeStartTime: '',
+ }).then((res) => {
+ if (res.code === 200 && res.data.rows.length) {
+ ruleForm.noticeNo = res.data.rows[0].noticeNo
+ ruleForm.noticePublisher = res.data.rows[0].noticePublisher
+ ruleForm.noticeCompany = res.data.rows[0].noticeCompany
+ ruleForm.noticeTime = res.data.rows[0].noticeTime
+ ruleForm.noticeSketch = res.data.rows[0].noticeSketch
+ ruleForm.noticeContent = res.data.rows[0].noticeContent
+ ruleForm.minioFileName = res.data.rows[0].minioFileName
+ ruleForm.noticeTitle = res.data.rows[0].noticeTitle
+ ruleForm.id = res.data.rows[0].id
+ }
+ })
+ }
}
defineExpose({ initDialog })
// 重置
@@ -56,15 +83,17 @@
await formEl.validate((valid, fields) => {
if (valid) {
ruleForm.noticeTime = dayjs().format('YYYY-MM-DD HH:mm:ss')
- addNoticeApi(ruleForm).then((res) => {
- if (res.code === 200) {
- close()
- ElMessage.success('发布成功')
- }
- else {
- ElMessage.error(res.message)
- }
- })
+ title.value === '新建'
+ ? addNoticeApi
+ : updateNoticeApi(ruleForm).then((res) => {
+ if (res.code === 200) {
+ close()
+ ElMessage.success('操作成功')
+ }
+ else {
+ ElMessage.error(res.message)
+ }
+ })
}
})
}
@@ -243,7 +272,7 @@
-
+
diff --git a/src/views/system/notice/noteList.vue b/src/views/system/notice/noteList.vue
index eaa60ae..3001057 100644
--- a/src/views/system/notice/noteList.vue
+++ b/src/views/system/notice/noteList.vue
@@ -1,24 +1,38 @@