feat: 报单优化
This commit is contained in:
@ -72,6 +72,7 @@ interface ILoadProps {
|
||||
chatId: string;
|
||||
jobId?: string;
|
||||
job?: string;
|
||||
initText?: boolean;
|
||||
material?: string;
|
||||
}
|
||||
|
||||
@ -90,6 +91,7 @@ export default function MessageChat() {
|
||||
const [input, setInput] = useState('');
|
||||
const [showMore, setShowMore] = useState(false);
|
||||
const [chat, setChat] = useState<IChatInfo | null>(null);
|
||||
const [initText, setInitText] = useState('');
|
||||
const [reject, setReject] = useState<boolean>(false);
|
||||
const [receiver, setReceiver] = useState<IChatUser | null>(null);
|
||||
const [messages, setMessages] = useState<IChatMessage[]>([]);
|
||||
@ -100,7 +102,7 @@ export default function MessageChat() {
|
||||
const [material, setMaterial] = useState<IMaterialMessage>();
|
||||
const [scrollItemId, setScrollItemId] = useState<string>();
|
||||
const scrollToLowerRef = useRef(false);
|
||||
const autoSendRef = useRef({ sendJob: false, sendMaterial: false });
|
||||
const autoSendRef = useRef({ sendJob: false, sendMaterial: false, sendText: false });
|
||||
const loadMoreRef = useRef(async (chatId: string, currentMessages: IChatMessage[], forceScroll?: boolean) => {
|
||||
try {
|
||||
const lastMsgId = last(currentMessages)?.msgId;
|
||||
@ -278,7 +280,11 @@ export default function MessageChat() {
|
||||
}
|
||||
job && handleSendJobMessage();
|
||||
material && handleSendMaterialMessage();
|
||||
}, [chat, job, material, handleSendJobMessage, handleSendMaterialMessage]);
|
||||
if (initText && !autoSendRef.current.sendText) {
|
||||
autoSendRef.current.sendText = true;
|
||||
handleSendMessage({ type: MessageType.Text, content: '你好,想了解下这个岗位' });
|
||||
}
|
||||
}, [chat, job, material, handleSendJobMessage, handleSendMaterialMessage, initText, handleSendMessage]);
|
||||
|
||||
useLoad(async () => {
|
||||
const query = getPageQuery<ILoadProps>();
|
||||
@ -309,6 +315,9 @@ export default function MessageChat() {
|
||||
setScrollItemId(getScrollItemId(last(chatDetail.messages)?.msgId));
|
||||
parseJob && setJob(parseJob);
|
||||
parseMaterial && setMaterial(parseMaterial);
|
||||
if (!parseMaterial && query.initText && watchType === ChatWatchType.AnchorReject) {
|
||||
setInitText('你好,想了解下这个岗位');
|
||||
}
|
||||
Taro.setNavigationBarTitle({ title: toUserInfo.nickName });
|
||||
setReceiver(toUserInfo);
|
||||
setReject(!watchStatus);
|
||||
|
||||
Reference in New Issue
Block a user