pull/1/head
Dragon 1 year ago
parent 2140d48712
commit e0283cc58d

@ -33,3 +33,31 @@ export async function audit(params: ApprovalParam) {
headers: { 'Content-Type': ContentTypeEnum.FORM_DATA }, headers: { 'Content-Type': ContentTypeEnum.FORM_DATA },
}) })
} }
/**
*
* @returns
*/
export async function dubiousfileyd(params) {
const res = await http.request({
url: `/ocr/dubiousfile/dubiousfileyd`,
method: 'get',
params,
})
return res
}
/**
*
* @returns
*/
export async function dubiousfilelist(params) {
const res = await http.request({
url: `/ocr/dubiousfile/dubiousfilelist`,
method: 'get',
params,
})
return res
}

@ -147,3 +147,29 @@ export async function sort(id: string): Promise<any> {
params: { packageid: id }, params: { packageid: id },
}) })
} }
/**
*
* @param id
* @returns
*/
export async function toolsCount(id: string): Promise<any> {
return await http.request({
url: `/ocr/aitools/toolsCount`,
method: 'get',
params: { packageid: id },
})
}
/**
* ai
* @param id
* @returns
*/
export async function aiApprovaltools(params): Promise<any> {
return await http.request({
url: `/ocr/aitools/aiApprovaltools`,
method: 'get',
params,
})
}

@ -0,0 +1 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1711092604490" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5999" xmlns:xlink="http://www.w3.org/1999/xlink" width="48" height="48"><path d="M446.56 836.016a73.136 73.136 0 0 0 130.88 0h95.872c-14.88 73.776-79.088 129.68-156.736 131.792l-4.576 0.064c-79.68 0-146.144-56.64-161.312-131.84h95.872zM512 54.88c181.776 0 329.136 147.36 329.136 329.136v360.592h106.304c10.096 0 18.288 8.176 18.288 18.272v54.88c0 10.08-8.192 18.272-18.288 18.272H76.56a18.288 18.288 0 0 1-18.288-18.288V762.88c0-10.08 8.192-18.272 18.288-18.272h106.288V384c0-179.92 144.384-326.128 323.6-329.104L512 54.88z m0 91.424c-129.6 0-234.976 103.712-237.664 232.672l-0.048 5.04-0.016 360.576h475.44V384c0-131.28-106.432-237.712-237.712-237.712z" fill="#333333" p-id="6000"></path><path d="M796.448 170.672m-170.672 0a170.672 170.672 0 1 0 341.344 0 170.672 170.672 0 1 0-341.344 0Z" fill="#F7534F" p-id="6001"></path></svg>

After

Width:  |  Height:  |  Size: 1.1 KiB

@ -0,0 +1 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1711092612790" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="6149" xmlns:xlink="http://www.w3.org/1999/xlink" width="48" height="48"><path d="M446.56 836.016a73.136 73.136 0 0 0 130.88 0h95.872c-14.88 73.776-79.088 129.68-156.736 131.792l-4.576 0.064c-79.68 0-146.144-56.64-161.312-131.84h95.872zM512 54.88c181.776 0 329.136 147.36 329.136 329.136v360.592h106.304c10.096 0 18.288 8.176 18.288 18.272v54.88c0 10.08-8.192 18.272-18.288 18.272H76.56a18.288 18.288 0 0 1-18.288-18.288V762.88c0-10.08 8.192-18.272 18.288-18.272h106.288V384c0-179.92 144.384-326.128 323.6-329.104L512 54.88z m0 91.424c-129.6 0-234.976 103.712-237.664 232.672l-0.048 5.04-0.016 360.576h475.44V384c0-131.28-106.432-237.712-237.712-237.712z" p-id="6150"></path></svg>

After

Width:  |  Height:  |  Size: 930 B

@ -9,8 +9,8 @@ const quillEditor = ref()
const cardStyle = { const cardStyle = {
'width': '500px', 'width': '500px',
'--n-padding-bottom': '10px', '--n-padding-bottom': '17px',
'--n-padding-left': '10px', '--n-padding-left': '24px',
} }
const note = ref('<p>sss</p>') const note = ref('<p>sss</p>')
@ -23,7 +23,7 @@ const options = reactive({
], ],
}, },
theme: 'snow', theme: 'snow',
placeholder: 'placaholder', placeholder: '',
}) })
function initHandler() { function initHandler() {
@ -44,7 +44,7 @@ const saveHandler = debounce(() => {
<template> <template>
<div> <div>
<n-card :style="cardStyle" :bordered="false" class="mt-4 proCard"> <n-card :style="cardStyle" :bordered="false" class="mt-4 proCard">
<div style="font-weight: bold;font-size: 18px;margin-bottom: 24px;"> <div class="title">
备注信息 备注信息
</div> </div>
<QuillEditor <QuillEditor
@ -62,15 +62,25 @@ const saveHandler = debounce(() => {
</template> </template>
<style lang="less"> <style lang="less">
.title{
font-size: 18px;
font-family: PingFang SC, PingFang SC-Medium;
font-weight: Medium;
color: #333333;
margin-bottom: 24px;
}
.ql-toolbar.ql-snow { .ql-toolbar.ql-snow {
border-top: none; border-top: none;
border-left: none; border-left: none;
border-right: none; border-right: none;
border-bottom: 1px solid #eee; border-bottom: 1px solid #eee;
margin-top: -10px; margin-top: -10px;
background: #f8f8f8;
border: 1px solid #d8d8d8;
} }
.ql-container.ql-snow { .ql-container.ql-snow {
border: none; border: 1px solid #d8d8d8;
} }
</style> </style>

@ -7,6 +7,8 @@ import imagesloaded from 'imagesloaded'
import { randomInt } from '@/utils/index' import { randomInt } from '@/utils/index'
import { timeOptions, viewOptions } from '@/config/home' import { timeOptions, viewOptions } from '@/config/home'
import { getPictureList } from '@/api/home/main' import { getPictureList } from '@/api/home/main'
import { dubiousfilelist } from '@/api/task/task'
import { off, on } from '@/utils/domUtils' import { off, on } from '@/utils/domUtils'
import img1 from '@/assets/images/1.jpg' import img1 from '@/assets/images/1.jpg'
import img2 from '@/assets/images/2.jpg' import img2 from '@/assets/images/2.jpg'
@ -97,7 +99,7 @@ function randomUrl() {
async function featchList() { async function featchList() {
loading = true loading = true
try { try {
const result = await getPictureList({ ...pagination, search_month: '', search_history: '0' }) const result = await dubiousfilelist({ ...pagination, search_month: '', search_history: '0' })
// TODO // TODO
result.data = Array.from({ length: 30 }) result.data = Array.from({ length: 30 })
result.pageCount = 1 result.pageCount = 1
@ -132,6 +134,7 @@ onUpdated(() => {
}) })
onBeforeMount(async () => { onBeforeMount(async () => {
console.log(888)
const list = await featchList() const list = await featchList()
listData.value = list listData.value = list
}) })
@ -227,6 +230,7 @@ function afterLeave() {
} }
onMounted(() => { onMounted(() => {
console.log(789)
show.value && addListeners() show.value && addListeners()
}) })
@ -299,10 +303,15 @@ function onCheckChange(val: any, item: any) {
v-for="(item, index) in listData" :key="index" :data-id="index" v-for="(item, index) in listData" :key="index" :data-id="index"
:class="{ 'grid-item-selected': isSelected(index) }" :style="{ height: gridHeight }" class="grid-item" :class="{ 'grid-item-selected': isSelected(index) }" :style="{ height: gridHeight }" class="grid-item"
> >
<img <!-- <img
class="wrapper-content-item-img" class="wrapper-content-item-img"
:class="{ 'wrapper-content-item-img-fit': viewMode !== 'masonry' }" :src="item.imgUrl" :class="{ 'wrapper-content-item-img-fit': viewMode !== 'masonry' }" :src="item.imgUrl"
> > -->
<n-image
:src="item.imgUrl"
class="img "
:class="{ 'img-fit': viewMode === 'horizontalVersion', 'img-full': viewMode === '3:4' || viewMode === 'verticalVersion' }"
/>
<n-checkbox <n-checkbox
v-model:checked="item.checked" v-model:checked="item.checked"
style="position:absolute;left:20px;top:20px" @click.prevent style="position:absolute;left:20px;top:20px" @click.prevent
@ -434,8 +443,21 @@ function onCheckChange(val: any, item: any) {
.scroll { .scroll {
overflow-y: scroll; overflow-y: scroll;
height: calc(100vh - 282px); height: calc(100vh - 282px);
background-color: aqua;
} }
} }
} }
.img-fit {
width: 100%;
overflow: hidden;
}
.img-full {
width: 100%;
overflow: hidden;
::v-deep(img) {
width: 100%;
height: 100%;
object-fit: cover;
}
}
</style> </style>

@ -7,6 +7,7 @@ import RecycleModal from './RecycleModal.vue'
import SearchModal from './SearchModal.vue' import SearchModal from './SearchModal.vue'
import ShortcutModal from './ShortcutModal.vue' import ShortcutModal from './ShortcutModal.vue'
import UserSettings from './UserSettings.vue' import UserSettings from './UserSettings.vue'
import { getMessageList } from '@/api/message/message'
import { getImgUrl } from '@/utils/urlUtils' import { getImgUrl } from '@/utils/urlUtils'
import { useUser } from '@/store/modules/user' import { useUser } from '@/store/modules/user'
@ -45,6 +46,29 @@ export default defineComponent({
const router = useRouter() const router = useRouter()
const route = useRoute() const route = useRoute()
const routename = ref(route.meta.title) const routename = ref(route.meta.title)
// mm
const iconList = ref([
{
icon: 'magnifying-1',
handle: searchHandler,
},
{
icon: 'shortcut-keys',
handle: shortcutHandler,
},
{
icon: 'suspicious-folder',
handle: recycleHandler,
},
{
icon: 'memo',
handle: quillHandler,
},
{
icon: 'nomessage',
handle: goMessage,
},
])
watch( watch(
() => route.fullPath, () => route.fullPath,
@ -53,6 +77,10 @@ export default defineComponent({
}, },
) )
const handleDragOver = (event) => {
event.dataTransfer.dropEffect = 'move'
}
const dropdownSelect = (key) => { const dropdownSelect = (key) => {
router.push({ name: key }) router.push({ name: key })
} }
@ -110,6 +138,18 @@ export default defineComponent({
router.push({ name: 'message-main' }) router.push({ name: 'message-main' })
} }
async function getMessage() {
const res = await getMessageList({ page: 1, size: 10, msgCategory: 1 })
if (res.data)
iconList.value[4].icon = 'hasmessage'
else
iconList.value[4].icon = 'nomessage'
}
setInterval(() => {
getMessage()
}, 5000)
const mousetrap = inject('mousetrap') as any const mousetrap = inject('mousetrap') as any
onMounted(() => { onMounted(() => {
mousetrap.bind('n r', quillHandler) mousetrap.bind('n r', quillHandler)
@ -118,30 +158,6 @@ export default defineComponent({
mousetrap.bind('m m', searchHandler) mousetrap.bind('m m', searchHandler)
}) })
// mm
const iconList = [
{
icon: 'magnifying-1',
handle: searchHandler,
},
{
icon: 'shortcut-keys',
handle: shortcutHandler,
},
{
icon: 'suspicious-folder',
handle: recycleHandler,
},
{
icon: 'memo',
handle: quillHandler,
},
{
icon: 'newmessage',
handle: goMessage,
},
]
return { return {
...toRefs(state), ...toRefs(state),
iconList, iconList,
@ -158,6 +174,7 @@ export default defineComponent({
recycleHandler, recycleHandler,
useInfo, useInfo,
getImgUrl, getImgUrl,
getMessage,
} }
}, },
}) })
@ -182,6 +199,7 @@ export default defineComponent({
v-for="item in iconList" v-for="item in iconList"
:key="item.icon" :key="item.icon"
class="layout-header-trigger layout-header-trigger-min" class="layout-header-trigger layout-header-trigger-min"
@dragover.prevent="handleDragOver"
> >
<div class="back" @click="item.handle"> <div class="back" @click="item.handle">
<SvgIcon :name="item.icon" size="18" /> <SvgIcon :name="item.icon" size="18" />

@ -66,7 +66,7 @@ getDetail()
发布时间 发布时间
</div> </div>
<div class="value time"> <div class="value time">
{{ format(detail.sendTime * 1000, 'yyyy-MM-dd HH:mm:ss') }} {{ format(detail.sendTime, 'yyyy-MM-dd HH:mm:ss') }}
</div> </div>
</div> </div>
<div class="form-item flex margin-no"> <div class="form-item flex margin-no">

@ -134,31 +134,35 @@ function getMore() {
<div v-for="(item, index) in list" :key="item.id" :class="{ 'pt0': index === 0, 'item-disabled': item.readFlag }" class="item" @click="goDetail(item)"> <div v-for="(item, index) in list" :key="item.id" :class="{ 'pt0': index === 0, 'item-disabled': item.readFlag }" class="item" @click="goDetail(item)">
<div class="left left"> <div class="left left">
<div class="num"> <div class="num">
{{ format(item.sendTime * 1000, 'dd') }} {{ format(item.sendTime, 'dd') }}
<div v-if="!item.readFlag" class="point" /> <div v-if="!item.readFlag" class="point" />
</div> </div>
<div class="date"> <div class="date">
{{ format(item.sendTime * 1000, 'yyyy-MM') }} {{ format(item.sendTime, 'yyyy-MM') }}
</div> </div>
</div> </div>
<div class="middle"> <div class="middle">
<div v-if="tab === 1" class="title"> <div v-if="tab === 1" class="title">
{{ `<任务ID${item.tag.nbus_id}>` }}{{ item.tag.task_name }} {{ `<任务ID${item.tag.taskId}>` }}{{ item.tag.taskName }}
</div> </div>
<div v-else class="title"> <div v-else class="title">
{{ item.titile }} {{ item.titile }}
</div> </div>
<div v-if="tab === 1" class="status"> <div v-if="tab === 1" class="status">
<div class="tag tag-blue"> <div class="tag tag-blue">
审批节点 审批节点{{ item.tag.nodeName }}
</div> </div>
<div :class="item.tag.nbug_status === '不通过' ? 'tag-red' : 'tag-green'" class="tag"> <div :class="item.tag.states === 5 ? 'tag-red' : 'tag-green'" class="tag">
审批状态{{ item.tag.nbug_status }} 审批状态{{ item.tag.states }}
</div> </div>
</div> </div>
<div class="subtitle"> <div v-if="tab === 1" class="subtitle">
<span class="name">{{ item.tag.sendUserName }}</span>
<span class="time">{{ format(item.sendTime, 'yyyy-MM-dd HH:mm:ss') }}</span>
</div>
<div v-else class="subtitle">
<span class="name">{{ item.userName }}</span> <span class="name">{{ item.userName }}</span>
<span class="time">{{ format(item.sendTime * 1000, 'yyyy-MM-dd HH:mm:ss') }}</span> <span class="time">{{ format(item.sendTime, 'yyyy-MM-dd HH:mm:ss') }}</span>
</div> </div>
</div> </div>
<div class="look"> <div class="look">

Loading…
Cancel
Save