diff --git a/doc/界面原型.bmpr b/doc/界面原型.bmpr index 2f1c53e..7c42fc4 100644 Binary files a/doc/界面原型.bmpr and b/doc/界面原型.bmpr differ diff --git a/doc/运维语句.sql b/doc/运维语句.sql index ea6978c..1799709 100644 --- a/doc/运维语句.sql +++ b/doc/运维语句.sql @@ -4,6 +4,7 @@ SELECT opi_sn,COUNT(*) FROM whatsapp_session where opi_sn is not null and opi_sn not in (29,383,404,227) + AND (last_send_time >= '2024-4-15' AND last_send_time <= '2024-4-21') GROUP by opi_sn ) session_count diff --git a/src/assets/App.css b/src/assets/App.css index 516e170..9d80c28 100644 --- a/src/assets/App.css +++ b/src/assets/App.css @@ -1,6 +1,6 @@ .logo { float: left; - height: 36px; - margin: 16px 24px 16px 0; + height: 68px; + margin: 0 6px 0 0; background: rgba(255, 255, 255, 0.3); } \ No newline at end of file diff --git a/src/assets/highlights_travel_300_300.png b/src/assets/highlights_travel_300_300.png new file mode 100644 index 0000000..8c78901 Binary files /dev/null and b/src/assets/highlights_travel_300_300.png differ diff --git a/src/maintenance/index.jsx b/src/maintenance/index.jsx index ca8acdb..8121da7 100644 --- a/src/maintenance/index.jsx +++ b/src/maintenance/index.jsx @@ -40,9 +40,7 @@ const MaintenancePage = () => { 打开系统

Version: {__BUILD_VERSION__}

-

- Build Date: {__BUILD_DATE__}  GMT+00:00 -

+

Build Date: {__BUILD_DATE__}

); diff --git a/src/views/DesktopApp.jsx b/src/views/DesktopApp.jsx index 0888b41..10bd7d9 100644 --- a/src/views/DesktopApp.jsx +++ b/src/views/DesktopApp.jsx @@ -8,7 +8,7 @@ import { useEffect, useState } from 'react' import { Link, NavLink, Outlet, useHref } from 'react-router-dom' import '@/assets/App.css' -import AppLogo from '@/assets/logo-gh.png' +import AppLogo from '@/assets/highlights_travel_300_300.png' import 'react-chat-elements/dist/main.css' import ReloadPrompt from './ReloadPrompt'; import ClearCache from './ClearCache'; @@ -61,6 +61,9 @@ function DesktopApp() { return () => clearInterval(interval); }, [totalNotify, isTitleVisible]); + const __BUILD_DATE__ = `__BUILD_DATE__`; + const __BUILD_VERSION__ = `__BUILD_VERSION__`; + return (
@@ -138,7 +141,7 @@ function DesktopApp() { -
桂林海纳国际旅行社有限公司
+
桂林海纳国际旅行社有限公司 Version: {__BUILD_VERSION__}({__BUILD_DATE__})
); } diff --git a/src/views/MobileApp.jsx b/src/views/MobileApp.jsx index 2c1762e..544af6a 100644 --- a/src/views/MobileApp.jsx +++ b/src/views/MobileApp.jsx @@ -1,6 +1,6 @@ import { useEffect } from 'react'; import '@/assets/App.css'; -import AppLogo from '@/assets/logo-gh.png'; +import AppLogo from '@/assets/highlights_travel_300_300.png'; import { useThemeContext } from '@/stores/ThemeContext'; import useAuthStore from '@/stores/AuthStore'; import { Col, Layout, Row, Typography, theme, Space, Avatar, Dropdown, Flex } from 'antd'; diff --git a/src/views/orders/Follow.jsx b/src/views/orders/Follow.jsx index 3c6385a..3f8faec 100644 --- a/src/views/orders/Follow.jsx +++ b/src/views/orders/Follow.jsx @@ -10,9 +10,9 @@ import { DatePicker, Empty, Flex, Form, Input, - Radio, Row, + Radio, Row, Typography, Select, Space, Switch, Table, - Tabs, + Tabs, Divider, Tag, Tooltip } from 'antd' import dayjs from 'dayjs' @@ -21,6 +21,7 @@ import { Link } from 'react-router-dom' import { useShallow } from 'zustand/react/shallow' const { RangePicker } = DatePicker +const { Title } = Typography const AdvanceSearchForm = memo(function noName({ initialValues, onSubmit }) { @@ -195,19 +196,16 @@ function OrderGroupTable({ formValues }) { { title: '订单状态', dataIndex: 'COLI_State', - width: 120, + width: 140, render: (text, record) => { - // 1新订单;2未读消息;3需一催;4需二催;5需三催;6未处理邮件 - const needTo = '要催信' + (record.coli_ordertype - 2) - let statusIcon = '' - if (record.coli_ordertype === 1) statusIcon = - else if (record.coli_ordertype === 2) statusIcon = - else if (record.coli_ordertype === 3 || record.coli_ordertype === 4 || record.coli_ordertype === 5) statusIcon = - else if (record.coli_ordertype === 6) statusIcon = + let extra = '' + if (record.coli_ordertype === 3 || record.coli_ordertype === 4 || record.coli_ordertype === 5) { + extra = '(' + (record.coli_ordertype - 2) + '催)' + } return ( - {statusIcon} + {extra} {text} ) @@ -347,13 +345,73 @@ function OrderGroupTable({ formValues }) { deptKeys.forEach((deptNo, index) => { const deptOrderList = groupOrderData[deptNo] + // 1新订单;2未读消息;3需一催;4需二催;5需三催;6未处理邮件 + const newOrderList = deptOrderList.filter((o) => { + return o.coli_ordertype === 1 + }) + const newMsgList = deptOrderList.filter((o) => { + return o.coli_ordertype === 2 + }) + const followUpList = deptOrderList.filter((o) => { + return o.coli_ordertype === 3 || o.coli_ordertype === 4 || o.coli_ordertype === 5 + }) + const paymentList = deptOrderList.filter((o) => { + return o.coli_ordertype === 1000 + }) + const entryList = deptOrderList.filter((o) => { + return o.coli_ordertype === 20000 + }) deptItems.push( { key: index, label: deptMap.get(deptNo), - children: + children: <> + 新订单 + 0} + whenTrue={
} + whenFalse={} + /> + + 新消息/老邮件 + 0} + whenTrue={
} + whenFalse={} + /> + + 催信 + 0} + whenTrue={
} + whenFalse={} + /> + + 余款收付 + 0} + whenTrue={
} + whenFalse={} + /> + + 入境提醒 + 0} + whenTrue={
} + whenFalse={} + /> + + } ) }) diff --git a/vite.config.js b/vite.config.js index 37dff43..11563f7 100644 --- a/vite.config.js +++ b/vite.config.js @@ -3,12 +3,15 @@ import react from '@vitejs/plugin-react'; import WindiCSS from 'vite-plugin-windicss'; import { VitePWA } from 'vite-plugin-pwa'; import packageJson from './package.json'; +import dayjs from 'dayjs' + +const today = new dayjs().format('YYYY-MM-DD HH:mm:ss') const buildDatePlugin = () => { return { transformIndexHtml(html) { const dataString = new Date().toISOString(); - return html.replace(/%BUILD_VERSION%/, `${packageJson.version}(${dataString})`); + return html.replace(/%BUILD_VERSION%/, `${packageJson.version}(${today})`); }, }; }; @@ -106,10 +109,11 @@ const manifestForPlugIn = { orientation: 'portrait', }, }; + // https://vitejs.dev/config/ export default defineConfig({ define: { - __BUILD_DATE__: JSON.stringify(`${new Date().toISOString()}`), + __BUILD_DATE__: JSON.stringify(`${today}`), __BUILD_VERSION__: JSON.stringify(`${packageJson.version}`), }, plugins: [react(), WindiCSS(), buildDatePlugin(), VitePWA(manifestForPlugIn)],