diff --git a/src/api/daikin/base.ts b/src/api/daikin/base.ts index a5022ba..6b2ee1d 100755 --- a/src/api/daikin/base.ts +++ b/src/api/daikin/base.ts @@ -1050,6 +1050,19 @@ export async function marketPreADD(data: any) { export async function badartAdd(data: any) { return http.post(`/quality/badartAdd`, data) } +/**不良情报-添加--用户权限 + * + * http://127.0.0.1:8811/openApi/quality/badartAdd + */ +export async function badartAddUser(data: any) { + return http.post(`/quality/addUser`, data) +} +/**不良情报-获取用户权限 + * http://127.0.0.1:8811/openApi/quality/badartDel?id=3 + */ +export async function badartGetUser(params: { indexId: any }) { + return http.get(`/quality/getUser`, { params }) +} /**不良情报-删除 * http://127.0.0.1:8811/openApi/quality/badartDel?id=3 */ diff --git a/src/views/home/bcp/BCP.vue b/src/views/home/bcp/BCP.vue index 46fd35f..2aec64f 100755 --- a/src/views/home/bcp/BCP.vue +++ b/src/views/home/bcp/BCP.vue @@ -13,9 +13,7 @@ import { Swiper, SwiperSlide } from 'swiper/vue' import { Autoplay, Navigation, Pagination, A11y } from 'swiper' const modules = [Autoplay, Pagination, Navigation, A11y] const store = useUserStore() -const userCode = ['admin', 'bcp_dandnag', 'tech_service'].includes( - store.user.roleCode -) +const userCode = ['admin', 'bcp_dandnag', 'tech_service'].includes(store.user.roleCode) // import { da } from 'element-plus/es/locale/index.js' const { day, week } = useDate() @@ -30,217 +28,202 @@ const dataC = ref([]) const dataE = ref([]) const SCMData = ref([]) onMounted(async () => { - getData() + getData() }) const scrollNewHandler = function (ev) { - let target = ev.target - document.getElementById('summaryContent').scrollTop = target.scrollTop - console.log(ev) + let target = ev.target + document.getElementById('summaryContent').scrollTop = target.scrollTop + console.log(ev) } const scrollSummaryHandler = function (ev) { - let target = ev.target - document.getElementById('newContent').scrollTop = target.scrollTop - console.log(ev) + let target = ev.target + document.getElementById('newContent').scrollTop = target.scrollTop + console.log(ev) } function getFileName(url) { - let lastSplashIndex = url.lastIndexOf('/') - let lastDotIndex = url.lastIndexOf('.') - return url.slice(lastSplashIndex + 1, lastDotIndex) + let lastSplashIndex = url.lastIndexOf('/') + let lastDotIndex = url.lastIndexOf('.') + return url.slice(lastSplashIndex + 1, lastDotIndex) } function computedTreeNode(item: any) { - console.log(item, '一级数据1111111') - let oldFileList = JSON.parse(JSON.stringify(item.fileList)) - item.childList = item.childList || [] - item.childList = item.childList.map(computedTreeNode) - item.fileList = [] - oldFileList.map((item2: any) => { - if (item2.isSelect == item.id) { - item.fileList.push({ - ...item2, - isShow: false, - fileName: getFileName(item2.filePath) - }) - } - }) - return item + console.log(item, '一级数据1111111') + let oldFileList = JSON.parse(JSON.stringify(item.fileList)) + item.childList = item.childList || [] + item.childList = item.childList.map(computedTreeNode) + item.fileList = [] + oldFileList.map((item2: any) => { + if (item2.isSelect == item.id) { + item.fileList.push({ + ...item2, + isShow: false, + fileName: getFileName(item2.filePath) + }) + } + }) + return item } async function getData() { - const { rows: datacArr } = await getBPCActList({ moduleId: 2 }) - const { rows: dataArr } = await getBPCActList({ moduleId: 1 }) - const { rows: dataBrr } = await getBPCActList({ moduleId: 4 }) - // const { rows: dataCrr } = await getBPCActList({ moduleId: 3 }); - const { data: dataDrr } = await getCateTreeList({ moduleId: 4 }) - const { rows: dataErr } = await getBPCActList({ moduleId: 5 }) + const { rows: datacArr } = await getBPCActList({ moduleId: 2 }) + const { rows: dataArr } = await getBPCActList({ moduleId: 1 }) + const { rows: dataBrr } = await getBPCActList({ moduleId: 4 }) + // const { rows: dataCrr } = await getBPCActList({ moduleId: 3 }); + const { data: dataDrr } = await getCateTreeList({ moduleId: 4 }) + const { rows: dataErr } = await getBPCActList({ moduleId: 5 }) - dataC.value = datacArr + dataC.value = datacArr - dataA.value = dataArr.map((item) => { - return { - ...item, - fileName: getFileName(item.filePath), - breifName: getFileName(item.briefingPath) - } - }) - dataB.value = dataBrr - // dataC.value = dataCrr; + dataA.value = dataArr.map((item) => { + return { + ...item, + fileName: getFileName(item.filePath), + breifName: getFileName(item.briefingPath) + } + }) + dataB.value = dataBrr + // dataC.value = dataCrr; - dataDrr.forEach((item) => { - return addIsShow(item) - }) + dataDrr.forEach((item) => { + return addIsShow(item) + }) - dataD.value = dataDrr - console.log(dataDrr) - // dataD.value = dataDrr.map(item => { - // return { - // ...item, - // childList: item.childList || [] - // } - // }); - dataE.value = dataErr - dataE.value = [ - { title: '社区在库', content: '高风险地区社数疫情的确' }, - { title: '在送数量', content: '高风险地区社数疫情的确' }, - { title: '风险指数', content: '高风险地区社数疫情的确' }, - { title: '风险指数', content: '高风险地区社数疫情的确' }, - { title: '风险指数', content: '高风险地区社数疫情的确' }, - { title: '风险指数', content: '高风险地区社数疫情的确' }, - { title: '社区在库', content: '高风险地区社数疫情的确' }, - { title: '社区在库', content: '高风险地区社数疫情的确' } - ] + dataD.value = dataDrr + console.log(dataDrr) + // dataD.value = dataDrr.map(item => { + // return { + // ...item, + // childList: item.childList || [] + // } + // }); + dataE.value = dataErr + dataE.value = [ + { title: '社区在库', content: '高风险地区社数疫情的确' }, + { title: '在送数量', content: '高风险地区社数疫情的确' }, + { title: '风险指数', content: '高风险地区社数疫情的确' }, + { title: '风险指数', content: '高风险地区社数疫情的确' }, + { title: '风险指数', content: '高风险地区社数疫情的确' }, + { title: '风险指数', content: '高风险地区社数疫情的确' }, + { title: '社区在库', content: '高风险地区社数疫情的确' }, + { title: '社区在库', content: '高风险地区社数疫情的确' } + ] } function getFile(arr: any[]): any[] { - let file: any = [] - arr.forEach((item) => { - item.fileList && file.push(...item.fileList) - if (item.childList?.length) { - file.push(...getFile(item.childList)) - } - }) - return file + let file: any = [] + arr.forEach((item) => { + item.fileList && file.push(...item.fileList) + if (item.childList?.length) { + file.push(...getFile(item.childList)) + } + }) + return file } function addIsShow(obj) { - if (obj) { - obj.isShow = true // 在当前对象上添加 isShow 属性 - obj.fileList ? (obj.fileLists = [...obj.fileList]) : (obj.fileLists = []) - if (obj.childList && obj.childList.length > 0) { - obj.fileLists.push(...getFile(obj.childList)) - // 如果有子对象,则递归调用 addIsShow 函数 - // obj.childList.forEach((child) => { - // addIsShow(child) - // }) - } - } + if (obj) { + obj.isShow = true // 在当前对象上添加 isShow 属性 + obj.fileList ? (obj.fileLists = [...obj.fileList]) : (obj.fileLists = []) + if (obj.childList && obj.childList.length > 0) { + obj.fileLists.push(...getFile(obj.childList)) + // 如果有子对象,则递归调用 addIsShow 函数 + // obj.childList.forEach((child) => { + // addIsShow(child) + // }) + } + } } const src = ref('') const srcType = ref() const showModalRef2 = ref(false) const clickFileHandler = async (row) => { - console.log(row, 'xiaolu9999') - download(row) + console.log(row, 'xiaolu9999') + download(row) } const clickMoreHandler = async (row) => { - push({ name: 'bpcTreeDetail', query: { id: row.id } }) - console.log(row, '111111') + push({ name: 'bpcTreeDetail', query: { id: row.id } }) + console.log(row, '111111') } const changeIsShowFn = async (index: number) => { - dataD.value[index].isShow = !dataD.value[index].isShow - console.log(dataD.value, 'xiaolu11') + dataD.value[index].isShow = !dataD.value[index].isShow + console.log(dataD.value, 'xiaolu11') } const jumpListHandler = (title, type) => { - push({ name: 'bpclist', query: { title, type } }) + push({ name: 'bpclist', query: { title, type } }) } const jumpContentHandler = (title, type) => { - push({ name: 'contentList', query: { title, type } }) + push({ name: 'contentList', query: { title, type } }) } const download = async (row) => { - if (!row) return - if (row.isSelect === 2) { - message.error('没有访问权限') - return - } - let { briefingPath, filePath } = row - console.log( - '🚀 ~ file: BCP.vue:169 ~ briefingPath ,filePath:', - briefingPath, - filePath - ) + if (!row) return + if (row.isSelect === 2) { + message.error('没有访问权限') + return + } + let { briefingPath, filePath } = row + console.log('🚀 ~ file: BCP.vue:169 ~ briefingPath ,filePath:', briefingPath, filePath) - if (!briefingPath && !filePath) { - message.info('没有可预览文件!') - return - } - srcType.value = getLastSubstring(briefingPath || filePath) - if ( - ['doc', 'docx', 'ppt', 'pptx', 'xls', 'xlsx', 'pdf'].includes(srcType.value) - ) { - // src.value = filePath - // pdfShow.value = true - let url = 'https://view.xdocin.com/view?src=' + (briefingPath || filePath) - const screenWidth = window.screen.width - const screenHeight = window.screen.height - window.open( - url, - '', - 'width=' + - screenWidth + - ',height=' + - screenHeight + - ',top=' + - 0 + - ',left=' + - 0 - ) - // window.open( - // briefingPath, - // '', - // 'width=' + - // screenWidth + - // ',height=' + - // screenHeight + - // ',top=' + - // 0 + - // ',left=' + - // 0 - // ) - } else { - message.error( - "文件格式不是 'doc', 'docx', 'ppt', 'pptx', 'xls', 'xlsx','pdf'!" - ) - } + if (!briefingPath && !filePath) { + message.info('没有可预览文件!') + return + } + srcType.value = getLastSubstring(briefingPath || filePath) + if (['doc', 'docx', 'ppt', 'pptx', 'xls', 'xlsx', 'pdf'].includes(srcType.value)) { + // src.value = filePath + // pdfShow.value = true + let url = 'https://view.xdocin.com/view?src=' + (briefingPath || filePath) + const screenWidth = window.screen.width + const screenHeight = window.screen.height + window.open( + url, + '', + 'width=' + screenWidth + ',height=' + screenHeight + ',top=' + 0 + ',left=' + 0 + ) + // window.open( + // briefingPath, + // '', + // 'width=' + + // screenWidth + + // ',height=' + + // screenHeight + + // ',top=' + + // 0 + + // ',left=' + + // 0 + // ) + } else { + message.error("文件格式不是 'doc', 'docx', 'ppt', 'pptx', 'xls', 'xlsx','pdf'!") + } } const toggleHandler = function (ev) { - ev.target.parentNode.parentNode.classList.toggle('expand') + ev.target.parentNode.parentNode.classList.toggle('expand') } function unescapeHTML(html: string) { - if (!html) return '' - const doc = new DOMParser().parseFromString(html, 'text/html') - return doc.documentElement.textContent + if (!html) return '' + const doc = new DOMParser().parseFromString(html, 'text/html') + return doc.documentElement.textContent } const showDetail = function (row, id) { - // console.log(row, id); - sessionStorage.setItem('title', row.title) - console.log(row.content) - sessionStorage.setItem('content', row.content) - push({ name: 'bcpDetail' }) + // console.log(row, id); + sessionStorage.setItem('title', row.title) + console.log(row.content) + sessionStorage.setItem('content', row.content) + push({ name: 'bcpDetail' }) } function getLastSubstring(str: string): string { - const lastIndex = str.lastIndexOf('.') - if (lastIndex !== -1) { - return str.substring(lastIndex + 1) - } else { - return '' - } + const lastIndex = str.lastIndexOf('.') + if (lastIndex !== -1) { + return str.substring(lastIndex + 1) + } else { + return '' + } } // async function download(row, moduleId) { @@ -265,55 +248,51 @@ function getLastSubstring(str: string): string { // } const isChart = (content) => { - return unescapeHTML(content).replace(/[^\u0000-\u00ff]/g, 'aa').length >= 27 + return unescapeHTML(content).replace(/[^\u0000-\u00ff]/g, 'aa').length >= 27 } + +
+ 内容管理 +
+ BCP:SCM系统(智能供应链)数据联动+BI化呈现 +
+
+ - -
-
-
- BCP News -
-
- 更多 - - -
+ +
+
+
+ BCP News +
+
+ 更多 + + +
-
- - - - - - - -
-
时间
-
情报内容
-
风险评估
-
-
- - -
-
- {{ i.createTime.substring(5, 10) }} -
-
- {{ unescapeHTML(i.content) }} -
-
- {{ unescapeHTML(i.riskEstimation) }} -
-
-
-
-
- - - - - - - - - - - -
-
-
- -
- -
- BCP简报 -
-
- 更多 - - -
-
- - +
+ BCP简报 +
+
+ 更多 + + +
+
+ + - -
-
- {{ i.title }} -
-
-
-
-
-
-
+ +
+
+ {{ i.title }} +
+
+
+ +
+
+
-
-
-
- 运营守则 -
-
-
- - -
- {{ it.title }} -
-
-
-
-
-
+
+
+
+ 运营守则 +
+
+
+ + +
+ {{ it.title }} +
+
+
+
+
+
-
-
-
供方SCM
-
- - -
-
-
-
-
+ +
+ +
+
【做成中,敬请期待】
+
+
+
+
+
+
-
-
-
- BCP情报 -
-
- - -
-
-
+
+
+
-
-
+
+
-
- -
- - - - -
- -
-
+
+ +
+ + + + +
+ +
+
diff --git a/src/views/home/diffspace/fack.vue b/src/views/home/diffspace/fack.vue index 59c09e3..af19feb 100755 --- a/src/views/home/diffspace/fack.vue +++ b/src/views/home/diffspace/fack.vue @@ -1,365 +1,307 @@ diff --git a/src/views/home/intelligence/process/UserPages.vue b/src/views/home/intelligence/process/UserPages.vue index 30311c0..1e7a6a2 100755 --- a/src/views/home/intelligence/process/UserPages.vue +++ b/src/views/home/intelligence/process/UserPages.vue @@ -17,7 +17,6 @@ async function getTree() { if (data && data != 'null' && data.length > 0) { treeData.value = data } - console.log(data) } const props = defineProps({ @@ -67,11 +66,13 @@ async function getUserPage() { }, 150) } -function selection(list = props.userDataList) { +function selection(list = uniqBy(props.userDataList, 'userId')) { + console.log('🚀 ~ file: UserPages.vue:79 ~ list:', toRaw(list)) if (userData.value && list) { const commonItems = userData.value.filter((item1: { userId: any }) => list.some((item2) => item2.userId === item1.userId) ) + toggleSelection(commonItems) } } @@ -108,7 +109,7 @@ const multipleSelection = ref<[]>([]) const multipleSelectionObj: any = {} const handleSelectionChange = (val) => { - console.log(val) + // console.log(val, 'val-') multipleSelectionObj[da.deptId] = val multipleSelection.value = uniqBy(Object.values(multipleSelectionObj).flat(), 'userId') } @@ -210,7 +211,7 @@ const addGroupList = () => { showModal2.value = true } const deleteGroupp = (i: any) => { - console.log(i) + // console.log(i) deleteGroups(i.id) } async function deleteGroups(id) { diff --git a/src/views/home/quality/Quality.vue b/src/views/home/quality/Quality.vue index 5f121b3..555bf7c 100755 --- a/src/views/home/quality/Quality.vue +++ b/src/views/home/quality/Quality.vue @@ -7,19 +7,11 @@ import { useChart21 } from './Quality' import { useUserStore } from '@/stores/modules/user' import { NModal, useMessage } from 'naive-ui' import Amtion from '@/components/amtion.vue' -import { - topList, - actList, - highList, - badartList, - topStat -} from '@/api/daikin/base' +import { topList, actList, highList, badartList, topStat } from '@/api/daikin/base' import { isNotOneWeekAgo } from '@/utils' // import { it } from "element-plus/es/locale/index.js"; const store = useUserStore() -const userCode = ['admin', 'quality_dangdan', 'tech_service'].includes( - store.user.roleCode -) +const userCode = ['admin', 'quality_dangdan', 'tech_service'].includes(store.user.roleCode) const message = useMessage() // console.log(userCode); const dataA = ref([]) @@ -31,132 +23,132 @@ const { chartRef, option } = useChart21() // const options = reactive(option); async function getData() { - const { rows: _rowA } = await topList() - const { rows: _rowB } = await actList() - const { rows: _rowC } = await highList() - const { rows: _rowD } = await badartList() + const { rows: _rowA } = await topList() + const { rows: _rowB } = await actList() + const { rows: _rowC } = await highList() + const { rows: _rowD } = await badartList() - dataA.value = _rowA - dataB.value = _rowB - dataC.value = _rowC - dataD.value = _rowD - // dataE.value = _rowE; + dataA.value = _rowA + dataB.value = _rowB + dataC.value = _rowC + dataD.value = _rowD + // dataE.value = _rowE; - // options.series = _rowE - // _rowE.topItem.map((item, idx) => { - // if (idx < 10) { - // options.series[0].data[idx] = item.badSum; - // } - // }); - // options.yAxis.data = _rowE.topItem.slice(0, 10).map(item => item.indexId) + // options.series = _rowE + // _rowE.topItem.map((item, idx) => { + // if (idx < 10) { + // options.series[0].data[idx] = item.badSum; + // } + // }); + // options.yAxis.data = _rowE.topItem.slice(0, 10).map(item => item.indexId) } getData() const { day, week } = useDate() const { push } = useRouter() const tableData = [ - { - date: '2016-05-03', - name: 'xxx类别', - address: '卧龙电机XX批 次运输不良' - }, - { - date: '2016-05-02', - name: 'xxx类别', - address: '卧龙电机XX批 次运输不良' - }, - { - date: '2016-05-04', - name: 'xxx类别', - address: '卧龙电机XX批 次运输不良' - }, - { - date: '2016-05-01', - name: 'xxx类别', - address: '卧龙电机XX批 次运输不良' - }, - { - date: '2016-05-01', - name: 'xxx类别', - address: '卧龙电机XX批 次运输不良' - }, - { - date: '2016-05-01', - name: 'xxx类别', - address: '卧龙电机XX批 次运输不良' - }, - { - date: '2016-05-01', - name: 'xxx类别', - address: '卧龙电机XX批 次运输不良' - }, - { - date: '2016-05-01', - name: 'xxx类别', - address: '卧龙电机XX批 次运输不良' - }, - { - date: '2016-05-01', - name: 'xxx类别', - address: '卧龙电机XX批 次运输不良' - }, - { - date: '2016-05-01', - name: 'xxx类别', - address: '卧龙电机XX批 次运输不良' - }, - { - date: '2016-05-01', - name: 'xxx类别', - address: '卧龙电机XX批 次运输不良' - }, - { - date: '2016-05-01', - name: 'xxx类别', - address: '卧龙电机XX批 次运输不良' - }, - { - date: '2016-05-01', - name: 'xxx类别', - address: '卧龙电机XX批 次运输不良' - }, - { - date: '2016-05-01', - name: 'xxx类别', - address: '卧龙电机XX批 次运输不良' - }, - { - date: '2016-05-01', - name: 'xxx类别', - address: '卧龙电机XX批 次运输不良' - }, - { - date: '2016-05-01', - name: 'xxx类别', - address: '卧龙电机XX批 次运输不良' - }, - { - date: '2016-05-01', - name: 'xxx类别', - address: '卧龙电机XX批 次运输不良' - }, - { - date: '2016-05-01', - name: 'xxx类别', - address: '卧龙电机XX批 次运输不良' - } + { + date: '2016-05-03', + name: 'xxx类别', + address: '卧龙电机XX批 次运输不良' + }, + { + date: '2016-05-02', + name: 'xxx类别', + address: '卧龙电机XX批 次运输不良' + }, + { + date: '2016-05-04', + name: 'xxx类别', + address: '卧龙电机XX批 次运输不良' + }, + { + date: '2016-05-01', + name: 'xxx类别', + address: '卧龙电机XX批 次运输不良' + }, + { + date: '2016-05-01', + name: 'xxx类别', + address: '卧龙电机XX批 次运输不良' + }, + { + date: '2016-05-01', + name: 'xxx类别', + address: '卧龙电机XX批 次运输不良' + }, + { + date: '2016-05-01', + name: 'xxx类别', + address: '卧龙电机XX批 次运输不良' + }, + { + date: '2016-05-01', + name: 'xxx类别', + address: '卧龙电机XX批 次运输不良' + }, + { + date: '2016-05-01', + name: 'xxx类别', + address: '卧龙电机XX批 次运输不良' + }, + { + date: '2016-05-01', + name: 'xxx类别', + address: '卧龙电机XX批 次运输不良' + }, + { + date: '2016-05-01', + name: 'xxx类别', + address: '卧龙电机XX批 次运输不良' + }, + { + date: '2016-05-01', + name: 'xxx类别', + address: '卧龙电机XX批 次运输不良' + }, + { + date: '2016-05-01', + name: 'xxx类别', + address: '卧龙电机XX批 次运输不良' + }, + { + date: '2016-05-01', + name: 'xxx类别', + address: '卧龙电机XX批 次运输不良' + }, + { + date: '2016-05-01', + name: 'xxx类别', + address: '卧龙电机XX批 次运输不良' + }, + { + date: '2016-05-01', + name: 'xxx类别', + address: '卧龙电机XX批 次运输不良' + }, + { + date: '2016-05-01', + name: 'xxx类别', + address: '卧龙电机XX批 次运输不良' + }, + { + date: '2016-05-01', + name: 'xxx类别', + address: '卧龙电机XX批 次运输不良' + } ] // 解析参数 const commandVal = (type, command) => { - return { - type: type, - command: command - } + return { + type: type, + command: command + } } const handleCommand = (item) => { - console.log(item) - const { type, command } = item - // window.open(command.url, "_blank"); + console.log(item) + const { type, command } = item + // window.open(command.url, "_blank"); } // const openUrl = (url) => { // console.log(url,111); @@ -167,150 +159,141 @@ const value1 = ref(null) const src = ref('') const srcType = ref() const showModalRef2 = ref(false) -const openUrl = async (url) => { - console.log(url) +const openUrl = async (row: any) => { + if (row.isSelect === 2) { + return message.info('您没有权限查看!') + } + let url = row.filePath || row.filePathList[0].url + console.log(url) - if (!url) { - message.info('没有可预览文件!') - return - } - srcType.value = getLastSubstring(url) - if ( - ['doc', 'docx', 'ppt', 'pptx', 'xls', 'xlsx', 'pdf'].includes(srcType.value) - ) { - // src.value = filePath - // pdfShow.value = true - url = 'https://view.xdocin.com/view?src=' + url - const screenWidth = window.screen.width - const screenHeight = window.screen.height - window.open( - url, - '', - 'width=' + - screenWidth + - ',height=' + - screenHeight + - ',top=' + - 0 + - ',left=' + - 0 - ) - } else { - message.error( - "文件格式不是 'doc', 'docx', 'ppt', 'pptx', 'xls', 'xlsx','pdf'!" - ) - } + if (!url) { + message.info('没有可预览文件!') + return + } + srcType.value = getLastSubstring(url) + if (['doc', 'docx', 'ppt', 'pptx', 'xls', 'xlsx', 'pdf'].includes(srcType.value)) { + // src.value = filePath + // pdfShow.value = true + const _url = 'https://view.xdocin.com/view?src=' + url + const screenWidth = window.screen.width + const screenHeight = window.screen.height + window.open( + _url, + '', + 'width=' + screenWidth + ',height=' + screenHeight + ',top=' + 0 + ',left=' + 0 + ) + } else { + message.error("文件格式不是 'doc', 'docx', 'ppt', 'pptx', 'xls', 'xlsx','pdf'!") + } } function getLastSubstring(str: string): string { - const lastIndex = str.lastIndexOf('.') - if (lastIndex !== -1) { - return str.substring(lastIndex + 1) - } else { - return '' - } + const lastIndex = str.lastIndexOf('.') + if (lastIndex !== -1) { + return str.substring(lastIndex + 1) + } else { + return '' + } } diff --git a/src/views/home/quality/modify.vue b/src/views/home/quality/modify.vue index a423b01..1954836 100755 --- a/src/views/home/quality/modify.vue +++ b/src/views/home/quality/modify.vue @@ -1,11 +1,28 @@ - @@ -411,9 +496,19 @@ const cateValue = ref('新品')
不良统计新增 - + 查看范围 + @@ -442,16 +544,25 @@ const cateValue = ref('新品')
品质情报新增 - + 查看范围 + @@ -461,12 +572,18 @@ const cateValue = ref('新品') {{ it.name }}
-
@@ -481,11 +598,19 @@ const cateValue = ref('新品')
活动进展新增 - - - + 查看范围 + @@ -494,56 +619,69 @@ const cateValue = ref('新品') {{ it.name }}
-
- - + - - - - - -
- - + + -
+
-
+
-
+
- + -
-
+
+
-
+
-
+
确认
@@ -564,20 +702,24 @@ const cateValue = ref('新品') -
+
-
+
- + 选择文件 - -
+
确认 @@ -585,26 +727,28 @@ const cateValue = ref('新品')
- -
+
-
+
- + 选择文件 -
-
+
确认
@@ -615,25 +759,31 @@ const cateValue = ref('新品') - -
+
- + 选择文件 - -
+
确认
+ + + \ No newline at end of file +