diff --git a/src/api/bpm/tbup/index.ts b/src/api/bpm/tbup/index.ts new file mode 100644 index 0000000..5d5759b --- /dev/null +++ b/src/api/bpm/tbup/index.ts @@ -0,0 +1,41 @@ +import request from '@/config/axios' + +// 点赞管理 VO +export interface TbupVO { + kowsmId: number // 知识id + userId: number // 用户id + kowsId: number // 知识分类id +} + +// 点赞管理 API +export const TbupApi = { + // 查询点赞管理分页 + getTbupPage: async (params: any) => { + return await request.get({ url: `/bpm/tbup/page`, params }) + }, + + // 查询点赞管理详情 + getTbup: async (id: number) => { + return await request.get({ url: `/bpm/tbup/get?id=` + id }) + }, + + // 新增点赞管理 + createTbup: async (data: TbupVO) => { + return await request.post({ url: `/bpm/tbup/create`, data }) + }, + + // 修改点赞管理 + updateTbup: async (data: TbupVO) => { + return await request.put({ url: `/bpm/tbup/update`, data }) + }, + + // 删除点赞管理 + deleteTbup: async (id: number) => { + return await request.delete({ url: `/bpm/tbup/delete?id=` + id }) + }, + + // 导出点赞管理 Excel + exportTbup: async (params) => { + return await request.download({ url: `/bpm/tbup/export-excel`, params }) + }, +} \ No newline at end of file diff --git a/src/views/bpm/knows/knowledge/KnowledgeForm.vue b/src/views/bpm/knows/knowledge/KnowledgeForm.vue index 4aecefd..08d544a 100644 --- a/src/views/bpm/knows/knowledge/KnowledgeForm.vue +++ b/src/views/bpm/knows/knowledge/KnowledgeForm.vue @@ -113,6 +113,7 @@ import noIcon from "../../../../assets/imgs/Knowledge/star_no.svg" import tbYesIcon from "../../../../assets/imgs/Knowledge/Tbup_yes.svg" import tbNoIcon from "../../../../assets/imgs/Knowledge/Tbup_no.svg" import {Star2Api} from "@/api/bpm/star2"; +import { TbupApi } from '@/api/bpm/tbup' /** 知识发布 表单 */ defineOptions({ name: 'KnowledgeForm' }) @@ -135,10 +136,15 @@ const formData = ref({ status: undefined, filePath: undefined }) -const formData2 ={ - kowsmId: undefined, - userId: undefined, - kowsId: undefined, +const formData_Star2 ={ + kowsmId: 0, + userId: 0, + kowsId: 0, +} +const formData_Tb ={ + kowsmId: 0, + userId: 0, + kowsId: 0, } const formRules = reactive({ typeId: [{ required: true, message: '类型id不能为空', trigger: 'blur' }], @@ -146,6 +152,8 @@ const formRules = reactive({ }) const formRef = ref() // 表单 Ref const knowtypeTree = ref() // 树形结构 +const userInfo_Star2 = ref({} as ProfileVO ) +const userInfo_Tb = ref({} as ProfileVO ) const userInfo = ref({} as ProfileVO ) const deptInfo = ref({} as DeptVO ) /** 子表的表单 */ @@ -169,9 +177,6 @@ const getUserInfo = async () => { } } -const stb = async () => { - tb.value = !tb.value; -} /** 打开弹窗 */ const open = async (type: string, id?: number) => { dialogVisible.value = true @@ -189,44 +194,76 @@ const open = async (type: string, id?: number) => { } await getUserInfo() await getKnowtypeTree() - await ifBook() + await ifStar2() + await ifTbup() } -const ifBook = async () => { - const data = formData.value as unknown as KnowledgeVO - userInfo.value = await getUserProfile() +//判断知识是否收藏 +const ifStar2 = async () => { + const data_Star2 = formData.value as unknown as KnowledgeVO + userInfo_Star2.value = await getUserProfile()//拿到知识信息和当前用户信息 queryParams.pageNo = 1 - queryParams.kowsmId = data.id - queryParams.userId = userInfo.value.id - const data2 = await Star2Api.getStar2Page(queryParams) - if (data2.total>0){ - starId.value = data2.list[0].id - data2.total === 0?ys.value=false:ys.value=true - }else if(data2.total===0){ + queryParams.kowsmId = data_Star2.id + queryParams.userId = userInfo_Star2.value.id + const data2_Star2 = await Star2Api.getStar2Page(queryParams)//给查询条件赋值并调用api去查询 + if (data2_Star2.total>0){//拍段查询条数进行相应操作 如果大于0那就吧 tb 设置为true 并吧id 传过去 然后删除这个点赞记录 + starId.value = data2_Star2.list[0].id + data2_Star2.total === 0?ys.value=false:ys.value=true//如果大于0那就吧 tb 设置为true 并吧id 传过去 然后删除这个点赞记录 + }else if(data2_Star2.total===0){//如果没查到那就设置为false 一边下一步操作 ys.value=false } } +const ifTbup = async () => { + const data_Tb = formData.value as unknown as KnowledgeVO + userInfo_Tb.value = await getUserProfile() + queryParams.pageNo = 1 + queryParams.kowsmId = data_Tb.id + queryParams.userId = userInfo_Tb.value.id + const data2_Tb = await TbupApi.getTbupPage(queryParams) + if (data2_Tb.total>0){ + tbUpId.value = data2_Tb.list[0].id + data2_Tb.total === 0?tb.value=false:tb.value=true + }else if(data2_Tb.total===0){ + tb.value=false + } +} const queryParams = reactive({ pageNo: 1, pageSize: 2, - kowsmId: undefined, - userId: undefined, + kowsmId: 0, + userId: 0, kowsId: undefined, createTime: [], }) +const tbUpId = ref(0) +const stb = async () => { + await ifTbup() + userInfo_Tb.value = await getUserProfile() + const data_Tb = formData.value as unknown as KnowledgeVO + if (tb.value && !(tbUpId.value === 0)){ + await TbupApi.deleteTbup(tbUpId.value) + tb.value=false + }else{ + formData_Tb.kowsmId = data_Tb.id + formData_Tb.kowsId = data_Tb.typeId + formData_Tb.userId = userInfo_Tb.value.id + await TbupApi.createTbup(formData_Tb) + tb.value=true + } +} //收藏 const starId = ref(0) const star = async () => { - await ifBook() - userInfo.value = await getUserProfile() - const data = formData.value as unknown as KnowledgeVO - if (ys.value && !(starId.value === 0)){ + await ifStar2()//判断有没有收藏过会把tb设置为true或者false + userInfo_Star2.value = await getUserProfile() //拿到当前用户信息` + const data_Star2 = formData.value as unknown as KnowledgeVO //拿到当前知识信息 + if (ys.value && !(starId.value === 0)){ //判断是否收藏过并且吧ifStar2() 拿到的id来删除 await Star2Api.deleteStar2(starId.value) - ys.value=false - }else{ - formData2.kowsmId = data.id - formData2.kowsId = data.typeId - formData2.userId = userInfo.value.id - await Star2Api.createStar2(formData2) + ys.value=false + }else{//如果判断没有收藏过就拿着信息去新建 + formData_Star2.kowsmId = data_Star2.id + formData_Star2.kowsId = data_Star2.typeId + formData_Star2.userId = userInfo_Star2.value.id + await Star2Api.createStar2(formData_Star2) ys.value=true } } diff --git a/src/views/bpm/mystar/index.vue b/src/views/bpm/mystar/index.vue index d93b5de..1208d4e 100644 --- a/src/views/bpm/mystar/index.vue +++ b/src/views/bpm/mystar/index.vue @@ -65,11 +65,11 @@ - + - + - + + + + + + + + + + + + + + + + + + + + + + + + 搜索 + 重置 + + + + + + + + + + 导出 + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/views/bpm/star2/index.vue b/src/views/bpm/star2/index.vue index 91bd272..6b4717c 100644 --- a/src/views/bpm/star2/index.vue +++ b/src/views/bpm/star2/index.vue @@ -73,11 +73,11 @@ - + - + - + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/views/bpm/tbup/index.vue b/src/views/bpm/tbup/index.vue new file mode 100644 index 0000000..28b6922 --- /dev/null +++ b/src/views/bpm/tbup/index.vue @@ -0,0 +1,211 @@ + + +