Переглянути джерело

fix: 访客进入不显示无企业名提示

王晓东 3 місяців тому
батько
коміт
dbadeb7a83

+ 1 - 1
project.private.config.json

@@ -11,7 +11,7 @@
         {
           "name": "pages/profile/index",
           "pathName": "pages/profile/index",
-          "query": "agentId=p_2e73c9d7efaYfDo2-agent_1034",
+          "query": "agentId=p_2e73c9d7efaYfDo2-agent_1485",
           "scene": null,
           "launchMode": "default"
         },

+ 2 - 2
src/components/AgentPage/components/AgentActionBar/index.tsx

@@ -89,11 +89,11 @@ export default ({agent, isVisitor}: IProps) => {
               <View className="flex flex-col flex-1 gap-8">
                 <View className="flex items-end gap-8">
                   <View className="text-24 font-medium leading-22 truncate max-w-180">{agent?.name}</View>
-                  <View className="text-12 leading-20 text-black-60">{agent?.position ?? '暂未填职业'}</View>
+                  <View className="text-12 leading-20 text-black-60">{agent?.position ?? (isVisitor ? '' :'暂未填职业')}</View>
                 </View>
                 <View className="flex items-center gap-4">
                   <View className="text-12 leading-20 text-black-60 truncate max-w-[188px]">
-                    {agent?.entName ?? '暂未填写企业'}
+                    {agent?.entName ?? (isVisitor ? '' :'暂未填写企业')}
                   </View>
                   {agent?.isEnt && <TagCertificated />}
                 </View>

+ 28 - 23
src/components/KnowledgePicker/index.tsx

@@ -6,13 +6,13 @@ import WemetaTabs from "@/components/wemeta-tabs/index";
 import KnowledgeList from "@/components/KnowledgeList";
 import { EKnowlegeTypes } from "@/consts/enum";
 import BottomBar from "@/components/BottomBar";
-import PickerSingleColumn from "@/components/Picker/PickerSingleColumn";
 import WeComQRcode from '@/components/WeComQRcode'
 import IconArrowDownRounded from "@/components/icon/IconArrowDownRounded";
 import Taro from "@tarojs/taro";
 import { useUserStore } from "@/store/userStore";
 import { TKnowledgeItem } from "@/types/knowledge";
 import { TEntItem } from "@/types/user";
+import WemetaRadio from "@/components/WemetaRadio/index";
 import EmptyData, { EmptyDataSubInfo, EmptyDataTitle } from "../EmptyData";
 export interface IProps {
   show: boolean;
@@ -28,11 +28,6 @@ export default function Index({title = '知识库',  show, setShow, multi, types
   const [ent, setEnt] = useState<TEntItem>();
   const [picked, setPicked] = useState<TKnowledgeItem[]>();
 
-  
-
-  // 如果没有当前企业,则默认第一个
-  
-
   // 当前选中的值
   const options = entList.map((item) => item.entName);
   // 是否显示选择器
@@ -47,6 +42,7 @@ export default function Index({title = '知识库',  show, setShow, multi, types
     if (ent) {
       setEnt(ent);
     }
+    setShowPicker(false)
   };
 
   const handleOnChange = (picked: TKnowledgeItem[]) => {
@@ -92,31 +88,40 @@ export default function Index({title = '知识库',  show, setShow, multi, types
 
     return (
       <View className="h-full pb-40">
-        <PickerSingleColumn
-          options={options}
-          selected={selected}
-          onPicked={handleChange}
-          showPicker={showPicker}
-          setShowPicker={setShowPicker}
+        <View
+          className="flex items-center gap-2 bg-gray-3 rounded-12 p-12 mb-16"
+          onClick={() => setShowPicker(true)}
         >
-          <View
-            className="flex items-center gap-2 bg-gray-3 rounded-12 p-12 mb-16"
-            onClick={() => setShowPicker(true)}
-          >
-            <View className="flex-1 text-14 leading-22 text-gray-45">
-              {selected}
-            </View>
-            <View className="flex-center">
-              <IconArrowDownRounded />
-            </View>
+          <View className="flex-1 text-14 leading-22 text-gray-45">
+            {selected}
+          </View>
+          <View className="flex-center">
+            <IconArrowDownRounded />
           </View>
-        </PickerSingleColumn>
+        </View>
         <KnowledgeList
           multi={multi}
           entId={ent?.entId}
           types={types}
           onChange={handleOnChange}
         ></KnowledgeList>
+        <Popup title="选择企业" show={showPicker} setShow={setShowPicker}>
+          <View className="flex flex-col gap-12 w-full overflow-y-auto max-h-[440px]">
+            {options.map((item) => {
+              return (
+                <View
+                  className="flex items-center rounded-8 bg-gray-3 px-16 py-20"
+                  onClick={() => handleChange(item)}
+                >
+                  <View className="flex-1 text-black font-medium text-14 leading-22 font-pingfangSCMedium">
+                    {item}
+                  </View>
+                  <WemetaRadio checkbox checked={selected === item} />
+                </View>
+              );
+            })}
+          </View>
+        </Popup>
       </View>
     );
   };

+ 1 - 1
src/components/WeComQRcode/index.tsx

@@ -11,7 +11,7 @@ const WeComQRcode = ({text = '长按二维码 上传文件给知识库助手'}:
         <Image
           showMenuByLongpress
           src="https://cdn.wehome.cn/cmn/jpg/141/META-H8UKWHWU-5YMWRSCR77VBOBA6AANE3-UFEPQICM-26.jpg"
-          style={{ width: "160px", height: "160px" }}
+          style={{ width: "180px", height: "180px" }}
         />
       </View>
       <View className="text-12 text-[#777E95] leading-16">{text}</View>

+ 1 - 1
src/pages/agent/index.tsx

@@ -52,7 +52,7 @@ export default function Index() {
 
   return (
     <PageCustom>
-      <NavBarNormal>创建</NavBarNormal>
+      <NavBarNormal>编辑智能体</NavBarNormal>
       <View className="px-16 w-full flex flex-col gap-20">
         <View className={style.tabContainer} 
         style={{

+ 15 - 8
src/pages/knowledge/components/PersonalTab/components/ScrollList.tsx

@@ -5,14 +5,14 @@ import IconCorrect from '@/images/svgs/knowledge/IconCorrect.svg'
 import FigureListItem from "@/components/list/FigureListItem";
 import { useDidShow } from "@tarojs/taro";
 import { useEffect, useState } from "react";
-
+import { WelcomeCard  } from "../../AsistantMessage";
 import RotateLoading from "@/components/rotate-loading";
 import Taro from "@tarojs/taro";
-
+import MessageRobotRich from "@/components/chat-message/MessageRobotRich";
 import { EKnowlegeTypes } from "@/consts/enum";
 import KnowledgeIcon from "@/components/KnowledgeIcon";
 import EmptyData from "@/components/EmptyData";
-
+import { DEFAULT_AGENT } from "@/config";
 import type { TKnowledgeItem } from "@/types/knowledge";
 
 import { deleteMyKnowledge, getKnowledgeList } from "@/service/knowledge";
@@ -30,6 +30,7 @@ const Index = ({ types, setTotalCount }: IProps) => {
     const res = await getKnowledgeList({ startId: nextId, pageSize, types });
     return res.data;
   };
+  const [showAsistantGreeting, setShowAsistantGreeting] = useState(false)
   const { list, loadMore, mutate, data, pageIndex } = useLoadMoreInfinite<
     TKnowledgeItem[]
   >(createKey("getKnowledgeList", 30, [types]), fetcher);
@@ -42,6 +43,16 @@ const Index = ({ types, setTotalCount }: IProps) => {
     mutate(undefined, { revalidate: true });
   });
 
+  let timer:any = undefined
+  useEffect(()=> {
+    timer = setTimeout(()=> {
+      setShowAsistantGreeting(list.length <= 0)
+    }, 1000)
+    return ()=> {
+      clearTimeout(timer)
+    }
+  }, [list])
+
   useEffect(() => {
     if (data && pageIndex === 1) {
       setTotalCount(data?.[0].totalCount || 0);
@@ -138,11 +149,7 @@ const Index = ({ types, setTotalCount }: IProps) => {
         height: "100%", // 高度自适应
       }}
     >
-      {list.length <= 0 ? (
-        <EmptyData type={'search'} />
-      ) : (
-        <></>
-      )}
+      {(showAsistantGreeting) && <MessageRobotRich data={DEFAULT_AGENT}><WelcomeCard /></MessageRobotRich>}
       {/* <slide-delete> 如果被嵌套太深,会无法正常执行原生小程序逻辑 */}
       <View className="flex flex-col gap-8 pb-32 mx-16">
         {list.map((item) => {

+ 1 - 1
src/pages/knowledge/components/PersonalTab/index.tsx

@@ -41,7 +41,7 @@ const Index = () => {
       </View>
 
       <Popup title="添加AI小助理的企业微信" setShow={setShowAiAsistant} show={showAiAsistant}>
-        <View className="p-20">
+        <View className="p-4">
           <View className="text-12 leading-24 text-[#414A64]">请将资料发送到我的企业微信,我会自动为你解析内容,并同步到这里。</View>
           <WeComQRcode text="长按二维码添加" />
         </View>