|
@@ -1,11 +1,12 @@
|
|
import { css, cx } from "@linaria/core";
|
|
import { css, cx } from "@linaria/core";
|
|
import { IconMore } from "@queenjs/icons";
|
|
import { IconMore } from "@queenjs/icons";
|
|
import { Image, View } from "@queenjs/ui";
|
|
import { Image, View } from "@queenjs/ui";
|
|
-import { Divider, Dropdown, Menu } from "ant-design-vue";
|
|
|
|
|
|
+import { Divider, Dropdown, Menu , Tag} from "ant-design-vue";
|
|
import { EyeOutlined } from "@ant-design/icons-vue";
|
|
import { EyeOutlined } from "@ant-design/icons-vue";
|
|
import dayjs from "dayjs";
|
|
import dayjs from "dayjs";
|
|
import { defineUI } from "queenjs";
|
|
import { defineUI } from "queenjs";
|
|
import { any } from "vue-types";
|
|
import { any } from "vue-types";
|
|
|
|
+import { useAuth } from "@queenjs-modules/auth";
|
|
|
|
|
|
// const ShareBox = defineComponent({
|
|
// const ShareBox = defineComponent({
|
|
// props: {
|
|
// props: {
|
|
@@ -40,23 +41,36 @@ export default defineUI({
|
|
},
|
|
},
|
|
emits: ["edit", "preview", "menu"],
|
|
emits: ["edit", "preview", "menu"],
|
|
setup(props, { emit }) {
|
|
setup(props, { emit }) {
|
|
|
|
+
|
|
|
|
+ const auth = useAuth();
|
|
|
|
+
|
|
return () => {
|
|
return () => {
|
|
const { record } = props;
|
|
const { record } = props;
|
|
|
|
+
|
|
|
|
+ //@ts-ignore
|
|
|
|
+ const isSys = (auth.store.userInfo.roles || []).indexOf("system") > -1
|
|
|
|
|
|
- return (
|
|
|
|
|
|
+
|
|
|
|
+ return (
|
|
<div class={cx(itemStyles, "relative")}>
|
|
<div class={cx(itemStyles, "relative")}>
|
|
<View ratio={1} class="overflow-hidden relative">
|
|
<View ratio={1} class="overflow-hidden relative">
|
|
<Image
|
|
<Image
|
|
class="h-1/1 w-1/1 !object-contain bg-[#ebebeb]"
|
|
class="h-1/1 w-1/1 !object-contain bg-[#ebebeb]"
|
|
src={record?.thumbnail}
|
|
src={record?.thumbnail}
|
|
/>
|
|
/>
|
|
- {/* <Tag
|
|
|
|
- color="#E88B00"
|
|
|
|
- // color="rgba(0, 0, 0, 0.4)"
|
|
|
|
- class="absolute top-0 left-0 z-1 !rounded-none"
|
|
|
|
- >
|
|
|
|
- 未发布
|
|
|
|
- </Tag> */}
|
|
|
|
|
|
+
|
|
|
|
+ {
|
|
|
|
+ isSys && <Tag
|
|
|
|
+ color="#E88B00"
|
|
|
|
+ // color="rgba(0, 0, 0, 0.4)"
|
|
|
|
+ class="absolute top-0 left-0 z-1 !rounded-none"
|
|
|
|
+ >
|
|
|
|
+ {
|
|
|
|
+ record.published ? "已发布" : "未发布"
|
|
|
|
+ }
|
|
|
|
+ </Tag>
|
|
|
|
+ }
|
|
|
|
+
|
|
<div class="absolute inset-0 flex items-center justify-center opacity-0 hover:opacity-100 transition-opacity">
|
|
<div class="absolute inset-0 flex items-center justify-center opacity-0 hover:opacity-100 transition-opacity">
|
|
<div
|
|
<div
|
|
class="text-white icon_action w-60px leading-60px orange cursor-pointer rounded-1/2 text-center transition-opacity hover:opacity-90 active:opacity-80"
|
|
class="text-white icon_action w-60px leading-60px orange cursor-pointer rounded-1/2 text-center transition-opacity hover:opacity-90 active:opacity-80"
|
|
@@ -105,6 +119,18 @@ export default defineUI({
|
|
<Menu.Item>
|
|
<Menu.Item>
|
|
<div onClick={() => emit("menu", "delete")}>删除</div>
|
|
<div onClick={() => emit("menu", "delete")}>删除</div>
|
|
</Menu.Item>
|
|
</Menu.Item>
|
|
|
|
+
|
|
|
|
+ {
|
|
|
|
+ isSys && !record.published && <Menu.Item>
|
|
|
|
+ <div onClick={() => emit("menu", "publish")}>发布平台</div>
|
|
|
|
+ </Menu.Item>
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ {
|
|
|
|
+ isSys && record.published && <Menu.Item>
|
|
|
|
+ <div onClick={() => emit("menu", "unpublish")}>取消平台发布</div>
|
|
|
|
+ </Menu.Item>
|
|
|
|
+ }
|
|
</Menu>
|
|
</Menu>
|
|
}
|
|
}
|
|
>
|
|
>
|