From 7087954bd3e61cbb034fe035bbd423f6398871d0 Mon Sep 17 00:00:00 2001 From: Lei OT Date: Tue, 30 Dec 2025 09:53:23 +0800 Subject: [PATCH] refactor: `urils/commons` --> `@haina/utils-commons`; `urils/request` --> `@haina/utils-request`; --- package.json | 2 ++ src/components/BackBtn.jsx | 2 +- src/components/CitySelector.jsx | 2 +- src/components/Data.jsx | 2 +- src/components/ImageUploader.jsx | 2 +- src/components/ProductsSelector.jsx | 4 ++-- src/components/SearchForm.jsx | 2 +- src/components/SearchInput.jsx | 2 +- src/components/VendorSelector.jsx | 4 ++-- src/hooks/useProductsQuotationFormat.js | 2 +- src/hooks/useProductsSets.js | 2 +- src/i18n/LanguageSwitcher.jsx | 2 +- src/main.jsx | 7 +++++-- src/stores/Account.js | 6 +++--- src/stores/Airticket.js | 4 ++-- src/stores/Auth.js | 4 ++-- src/stores/ExternalReview.js | 2 +- src/stores/Feedback.js | 4 ++-- src/stores/Invoice.js | 2 +- src/stores/Notice.js | 2 +- src/stores/Products/Index.js | 4 ++-- src/stores/Report.js | 2 +- src/stores/Reservation.js | 4 ++-- src/stores/Trainticket.js | 4 ++-- src/views/App.jsx | 4 ++-- src/views/Login.jsx | 2 +- src/views/ReloadUpdate.jsx | 2 +- src/views/account/Management.jsx | 2 +- src/views/account/RoleList.jsx | 2 +- src/views/airticket/Index.jsx | 2 +- src/views/airticket/Invoice.jsx | 2 +- src/views/airticket/InvoicePaid.jsx | 2 +- src/views/airticket/Plan.jsx | 2 +- src/views/external-reviews/review-list.jsx | 2 +- src/views/invoice/Detail.jsx | 2 +- src/views/invoice/History.jsx | 2 +- src/views/invoice/Index.jsx | 2 +- src/views/invoice/Paid.jsx | 2 +- src/views/invoice/PaidDetail.jsx | 2 +- src/views/notifs/Edit.jsx | 2 +- src/views/products/Audit.jsx | 2 +- src/views/products/Detail.jsx | 2 +- src/views/products/Detail/CopyProducts.jsx | 4 ++-- src/views/products/Detail/Extras.jsx | 2 +- src/views/products/Detail/Header.jsx | 2 +- src/views/products/Detail/NewProductModal.jsx | 2 +- src/views/products/Detail/ProductInfo.jsx | 2 +- src/views/products/Detail/ProductInfoForm.jsx | 2 +- src/views/products/Detail/ProductInfoLgc.jsx | 2 +- src/views/products/Detail/ProductQuotationLogPopover.jsx | 4 ++-- .../products/Detail/ProductQuotationSnapshotPopover.jsx | 4 ++-- src/views/products/Detail/ProductsTree.jsx | 2 +- src/views/products/Manage.jsx | 2 +- src/views/products/Print/AgencyContract.jsx | 2 +- src/views/products/Print/AgencyContract_v0903.jsx | 2 +- src/views/products/Print/AgencyContract_v3.jsx | 2 +- src/views/products/Print/AgencyPreview.jsx | 2 +- src/views/products/Print/ExportDocxBtn.jsx | 2 +- src/views/report/Index.jsx | 2 +- src/views/reservation/Newest.jsx | 2 +- src/views/trainticket/index.jsx | 2 +- src/views/trainticket/invoice.jsx | 2 +- src/views/trainticket/invoicePaid.jsx | 2 +- src/views/trainticket/plan.jsx | 2 +- 64 files changed, 83 insertions(+), 78 deletions(-) diff --git a/package.json b/package.json index 6ce2ebf..e8bddfd 100644 --- a/package.json +++ b/package.json @@ -12,6 +12,8 @@ }, "dependencies": { "@ant-design/icons": "^5.5.1", + "@haina/utils-commons": "http://202.103.68.93:9000/npm/utils-commons-0.1.0.tgz", + "@haina/utils-request": "http://202.103.68.93:9000/npm/utils-request-0.1.0.tgz", "@react-pdf/renderer": "^3.4.0", "antd": "^5.28.0", "dayjs": "^1.11.13", diff --git a/src/components/BackBtn.jsx b/src/components/BackBtn.jsx index baefd53..7b96e6d 100644 --- a/src/components/BackBtn.jsx +++ b/src/components/BackBtn.jsx @@ -2,7 +2,7 @@ import { createContext, useContext, useEffect, useState } from 'react'; import { Link, useNavigate } from 'react-router-dom'; import { useTranslation } from 'react-i18next'; import { Button } from 'antd'; -import { isNotEmpty } from '@/utils/commons'; +import { isNotEmpty } from '@haina/utils-commons'; const BackBtn = ({to, ...props}) => { const { t } = useTranslation(); diff --git a/src/components/CitySelector.jsx b/src/components/CitySelector.jsx index 48fdf75..15fa5e3 100644 --- a/src/components/CitySelector.jsx +++ b/src/components/CitySelector.jsx @@ -1,7 +1,7 @@ import { createContext, useEffect, useState } from 'react'; import {} from 'antd'; import SearchInput from './SearchInput'; -import { fetchJSON } from '@/utils/request'; +import { fetchJSON } from '@haina/utils-request'; import { HT_HOST } from '@/config'; import { useTranslation } from 'react-i18next'; diff --git a/src/components/Data.jsx b/src/components/Data.jsx index cf4a29b..b33ce25 100644 --- a/src/components/Data.jsx +++ b/src/components/Data.jsx @@ -2,7 +2,7 @@ import React, { useState, useEffect } from "react"; import { Tag, Button, message } from 'antd'; import { CaretUpOutlined, CaretDownOutlined, DownloadOutlined } from '@ant-design/icons'; import { utils, writeFile } from "xlsx"; -import { isEmpty, getNestedValue } from "../utils/commons"; +import { isEmpty, getNestedValue } from "@haina/utils-commons"; /** * @property diffPercent diff --git a/src/components/ImageUploader.jsx b/src/components/ImageUploader.jsx index 7b6e840..9cf5831 100644 --- a/src/components/ImageUploader.jsx +++ b/src/components/ImageUploader.jsx @@ -2,7 +2,7 @@ import { useEffect, useState } from "react"; import { Upload, List, Button, Tooltip, Popconfirm, Col, Row } from "antd"; import { UploadOutlined, FileTextOutlined, DeleteOutlined, StopOutlined } from "@ant-design/icons"; import { Image } from "antd"; -import { fetchJSON } from "@/utils/request"; +import { fetchJSON } from "@haina/utils-request"; import { HT3_HOST } from "@/config"; // 加密函数 diff --git a/src/components/ProductsSelector.jsx b/src/components/ProductsSelector.jsx index 09b4852..9f6ba3d 100644 --- a/src/components/ProductsSelector.jsx +++ b/src/components/ProductsSelector.jsx @@ -1,9 +1,9 @@ import { useEffect, useState } from 'react'; import { Spin, Cascader } from 'antd'; -import { fetchJSON } from '@/utils/request'; +import { fetchJSON } from '@haina/utils-request'; import { HT_HOST } from '@/config'; import { useTranslation } from 'react-i18next'; -import { groupBy } from '@/utils/commons'; +import { groupBy } from '@haina/utils-commons'; // 产品列表 export const fetchAgencyProductsList = async (params) => { diff --git a/src/components/SearchForm.jsx b/src/components/SearchForm.jsx index 2772997..23b9b4f 100644 --- a/src/components/SearchForm.jsx +++ b/src/components/SearchForm.jsx @@ -1,6 +1,6 @@ import { useEffect } from "react"; import { Form, Input, Row, Col, Select, DatePicker, Space, Button, Checkbox, Tag } from "antd"; -import { objectMapper, at, isEmpty } from "@/utils/commons"; +import { objectMapper, at, isEmpty } from "@haina/utils-commons"; import { DATE_FORMAT, SMALL_DATETIME_FORMAT, PERM_AGENCY_ALL } from "@/config"; import useFormStore from "@/stores/Form"; import { useDatePresets } from "@/hooks/useDatePresets"; diff --git a/src/components/SearchInput.jsx b/src/components/SearchInput.jsx index e2b488d..aa4ae6e 100644 --- a/src/components/SearchInput.jsx +++ b/src/components/SearchInput.jsx @@ -1,6 +1,6 @@ import React, { useMemo, useRef, useState, useEffect } from 'react'; import { Select, Spin } from 'antd'; -import { debounce, objectMapper } from '@/utils/commons'; +import { debounce, objectMapper } from '@haina/utils-commons'; function DebounceSelect({ fetchOptions, debounceTimeout = 500, initLoad = false, defaultOptions=[], onFetch=null, ...props }) { const [fetching, setFetching] = useState(false); diff --git a/src/components/VendorSelector.jsx b/src/components/VendorSelector.jsx index 13f743a..ebee6d1 100644 --- a/src/components/VendorSelector.jsx +++ b/src/components/VendorSelector.jsx @@ -1,13 +1,13 @@ import { createContext, useEffect, useState } from 'react'; import {} from 'antd'; import SearchInput from './SearchInput'; -import { fetchJSON } from '@/utils/request'; +import { fetchJSON } from '@haina/utils-request'; import { HT_HOST } from '@/config'; import { useTranslation } from 'react-i18next'; import useFormStore from "@/stores/Form"; import { usingStorage } from "@/hooks/usingStorage"; import useAuthStore from '@/stores/Auth' -import { isEmpty, objectMapper } from '@/utils/commons'; +import { isEmpty, objectMapper } from '@haina/utils-commons'; const mapper = { travel_agency_name: 'label', travel_agency_id: 'value' }; diff --git a/src/hooks/useProductsQuotationFormat.js b/src/hooks/useProductsQuotationFormat.js index 9a15718..b7f4f6e 100644 --- a/src/hooks/useProductsQuotationFormat.js +++ b/src/hooks/useProductsQuotationFormat.js @@ -1,4 +1,4 @@ -import { flush, groupBy, isEmpty, isNotEmpty, pick, unique, uniqWith } from '@/utils/commons'; +import { flush, groupBy, isEmpty, isNotEmpty, pick, unique, uniqWith } from '@haina/utils-commons'; import dayjs from 'dayjs'; import { formatGroupSize } from './useProductsSets'; diff --git a/src/hooks/useProductsSets.js b/src/hooks/useProductsSets.js index 3983faf..b04126d 100644 --- a/src/hooks/useProductsSets.js +++ b/src/hooks/useProductsSets.js @@ -2,7 +2,7 @@ import { useEffect, useState } from 'react'; import { useTranslation } from 'react-i18next'; import useAuthStore from '@/stores/Auth'; import { PERM_OVERSEA, PERM_AIR_TICKET, PERM_PRODUCTS_MANAGEMENT } from '@/config'; -import { isEmpty } from '@/utils/commons'; +import { isEmpty } from '@haina/utils-commons'; /** * 产品管理 相关的预设数据 diff --git a/src/i18n/LanguageSwitcher.jsx b/src/i18n/LanguageSwitcher.jsx index f09a07e..a3af8b4 100644 --- a/src/i18n/LanguageSwitcher.jsx +++ b/src/i18n/LanguageSwitcher.jsx @@ -1,7 +1,7 @@ import { useState, useEffect } from 'react'; import { Dropdown } from 'antd'; import { useTranslation } from 'react-i18next'; -import { appendRequestParams } from '@/utils/request'; +import { appendRequestParams } from '@haina/utils-request'; const i18n_to_htcode = { 'zh': 2, diff --git a/src/main.jsx b/src/main.jsx index 39596da..c82cad6 100644 --- a/src/main.jsx +++ b/src/main.jsx @@ -45,7 +45,7 @@ import TrainticketInvoicePaid from '@/views/trainticket/invoicePaid' import { ThemeContext } from '@/stores/ThemeContext' import { usingStorage } from '@/hooks/usingStorage' import useAuthStore from './stores/Auth' -import { isNotEmpty } from '@/utils/commons' +import { isNotEmpty } from '@haina/utils-commons' import ProductsManage from '@/views/products/Manage'; import ProductsDetail from '@/views/products/Detail'; @@ -54,10 +54,11 @@ import ImageViewer from '@/views/ImageViewer'; import CustomerImageViewer from '@/views/CustomerImageViewer'; import PickYear from './views/products/PickYear' -import { PERM_ACCOUNT_MANAGEMENT, PERM_ROLE_NEW, +import { BUILD_VERSION, PERM_ACCOUNT_MANAGEMENT, PERM_ROLE_NEW, PERM_TRAIN_TICKET, PERM_AIR_TICKET, PERM_PRODUCTS_MANAGEMENT, PERM_PRODUCTS_OFFER_PUT, PERM_RESERVATION_ALL, PERM_FEEDBACK_ALL, PERM_INVOICE_ALL, PERM_REPORT_ALL, PERM_REVIEW_ALL, PERM_PRODUCTS_INFO_PUT } from '@/config' +import { appendRequestHeader } from '@haina/utils-request'; import './i18n' @@ -128,6 +129,8 @@ const initRouter = async () => { const initAppliction = async () => { + appendRequestHeader('X-Web-Version', BUILD_VERSION); + const { loginToken, userId } = usingStorage() if (isNotEmpty(userId) && isNotEmpty(loginToken)) { diff --git a/src/stores/Account.js b/src/stores/Account.js index 7a692c2..9ef3d3d 100644 --- a/src/stores/Account.js +++ b/src/stores/Account.js @@ -1,7 +1,7 @@ import { create } from 'zustand' import { devtools } from 'zustand/middleware' -import { fetchJSON, postForm } from '@/utils/request' -import { isEmpty, isNotEmpty } from '@/utils/commons' +import { fetchJSON, postForm } from '@haina/utils-request' +import { isEmpty, isNotEmpty } from '@haina/utils-commons' import { HT_HOST } from "@/config" import { usingStorage } from '@/hooks/usingStorage' @@ -188,4 +188,4 @@ const useAccountStore = create(devtools((set) => ({ }, }), { name: 'accountStore' })) -export default useAccountStore \ No newline at end of file +export default useAccountStore diff --git a/src/stores/Airticket.js b/src/stores/Airticket.js index 4f03e8b..1515d00 100644 --- a/src/stores/Airticket.js +++ b/src/stores/Airticket.js @@ -1,6 +1,6 @@ import { create } from "zustand"; -import { fetchJSON, postForm } from "@/utils/request"; -import { prepareUrl, isNotEmpty } from "@/utils/commons"; +import { fetchJSON, postForm } from "@haina/utils-request"; +import { prepareUrl, isNotEmpty } from "@haina/utils-commons"; import { HT_HOST, DATE_FORMAT } from "@/config"; import dayjs from "dayjs"; diff --git a/src/stores/Auth.js b/src/stores/Auth.js index c89bb09..cf9d9b2 100644 --- a/src/stores/Auth.js +++ b/src/stores/Auth.js @@ -1,10 +1,10 @@ import { create } from 'zustand' import { devtools } from 'zustand/middleware' -import { appendRequestParams, fetchJSON, postForm } from '@/utils/request' +import { appendRequestParams, fetchJSON, postForm } from '@haina/utils-request' import { HT_HOST } from "@/config" import { loadPageSpy } from '@/pageSpy' import { usingStorage } from '@/hooks/usingStorage' -import { isEmpty } from "@/utils/commons"; +import { isEmpty } from "@haina/utils-commons"; const KEY_LOGIN_TOKEN = 'G-STR:LOGIN_TOKEN' const KEY_TRAVEL_AGENCY_ID = 'G-INT:TRAVEL_AGENCY_ID' diff --git a/src/stores/ExternalReview.js b/src/stores/ExternalReview.js index ce4d3fe..c307d59 100644 --- a/src/stores/ExternalReview.js +++ b/src/stores/ExternalReview.js @@ -1,6 +1,6 @@ import { create } from 'zustand' import { devtools } from 'zustand/middleware' -import { fetchJSON, postForm } from '@/utils/request' +import { fetchJSON, postForm } from '@haina/utils-request' import { DATE_FORMAT, TGA_HOST } from "@/config" import dayjs from "dayjs"; diff --git a/src/stores/Feedback.js b/src/stores/Feedback.js index aa3f778..f0e9b01 100644 --- a/src/stores/Feedback.js +++ b/src/stores/Feedback.js @@ -1,5 +1,5 @@ -import { fetchJSON, postForm , postJSON} from '@/utils/request'; -import { groupBy } from '@/utils/commons'; +import { fetchJSON, postForm , postJSON} from '@haina/utils-request'; +import { groupBy } from '@haina/utils-commons'; import * as config from '@/config'; import dayjs from 'dayjs'; diff --git a/src/stores/Invoice.js b/src/stores/Invoice.js index dc489bc..5fd4a58 100644 --- a/src/stores/Invoice.js +++ b/src/stores/Invoice.js @@ -1,4 +1,4 @@ -import { fetchJSON, postForm } from "@/utils/request"; +import { fetchJSON, postForm } from "@haina/utils-request"; import { HT_HOST } from "@/config"; import { create } from 'zustand'; diff --git a/src/stores/Notice.js b/src/stores/Notice.js index fa8cba2..e0f67fe 100644 --- a/src/stores/Notice.js +++ b/src/stores/Notice.js @@ -4,7 +4,7 @@ import * as config from "@/config"; import { create } from 'zustand'; import { devtools } from 'zustand/middleware'; -import { fetchJSON, postJSON } from '@/utils/request'; +import { fetchJSON, postJSON } from '@haina/utils-request'; const { HT_HOST } = config; /** diff --git a/src/stores/Products/Index.js b/src/stores/Products/Index.js index d66b067..3fb7679 100644 --- a/src/stores/Products/Index.js +++ b/src/stores/Products/Index.js @@ -1,9 +1,9 @@ import { create } from 'zustand'; import { devtools } from 'zustand/middleware'; import dayjs from 'dayjs' -import { fetchJSON, postForm, postJSON } from '@/utils/request'; +import { fetchJSON, postForm, postJSON } from '@haina/utils-request'; import { HT_HOST } from '@/config'; -import { groupBy, generateId, isNotEmpty } from '@/utils/commons'; +import { groupBy, generateId, isNotEmpty } from '@haina/utils-commons'; export const searchAgencyAction = async (param) => { const { errcode, result } = await fetchJSON(`${HT_HOST}/Service_BaseInfoWeb/products_search`, param); diff --git a/src/stores/Report.js b/src/stores/Report.js index 1814bc7..6de5c03 100644 --- a/src/stores/Report.js +++ b/src/stores/Report.js @@ -1,4 +1,4 @@ -import { fetchJSON } from "@/utils/request"; +import { fetchJSON } from "@haina/utils-request"; import { HT_HOST } from "@/config"; import { create } from 'zustand'; import { devtools } from 'zustand/middleware'; diff --git a/src/stores/Reservation.js b/src/stores/Reservation.js index 84af9f4..7fceb5f 100644 --- a/src/stores/Reservation.js +++ b/src/stores/Reservation.js @@ -1,8 +1,8 @@ import { create } from 'zustand' import { devtools } from 'zustand/middleware' -import { fetchJSON, postForm } from '@/utils/request' +import { fetchJSON, postForm } from '@haina/utils-request' import { HT_HOST, TGA_HOST } from "@/config" -import { prepareUrl } from '@/utils/commons' +import { prepareUrl } from '@haina/utils-commons' import { usingStorage } from '@/hooks/usingStorage' export const fetchCityList = async (travelAgencyId, reservationId) => { diff --git a/src/stores/Trainticket.js b/src/stores/Trainticket.js index 5366915..787dedd 100644 --- a/src/stores/Trainticket.js +++ b/src/stores/Trainticket.js @@ -1,6 +1,6 @@ import { create } from "zustand"; -import { fetchJSON, postForm } from "@/utils/request"; -import { prepareUrl, isNotEmpty } from "@/utils/commons"; +import { fetchJSON, postForm } from "@haina/utils-request"; +import { prepareUrl, isNotEmpty } from "@haina/utils-commons"; import { HT_HOST, DATE_FORMAT } from "@/config"; import dayjs from "dayjs"; diff --git a/src/views/App.jsx b/src/views/App.jsx index bbc4c56..1166ed7 100644 --- a/src/views/App.jsx +++ b/src/views/App.jsx @@ -8,7 +8,7 @@ import { import { DownOutlined } from '@ant-design/icons' import 'antd/dist/reset.css' import AppLogo from '@/assets/highlights_travel_600_550.png' -import { isEmpty } from '@/utils/commons' +import { isEmpty } from '@haina/utils-commons' import { useTranslation } from 'react-i18next' import zhLocale from 'antd/locale/zh_CN' import enLocale from 'antd/locale/en_US' @@ -20,7 +20,7 @@ import useAuthStore from '@/stores/Auth' import { useThemeContext } from '@/stores/ThemeContext' import { usingStorage } from '@/hooks/usingStorage' import { useDefaultLgc } from '@/i18n/LanguageSwitcher' -import { appendRequestParams } from '@/utils/request' +import { appendRequestParams } from '@haina/utils-request' import LogUploader from '@/components/LogUploader' import { PERM_ACCOUNT_MANAGEMENT, PERM_ROLE_NEW, PERM_REVIEW_ALL, PERM_AIR_TICKET, PERM_PRODUCTS_MANAGEMENT,PERM_TRAIN_TICKET, diff --git a/src/views/Login.jsx b/src/views/Login.jsx index b861b1a..5f9b5dc 100644 --- a/src/views/Login.jsx +++ b/src/views/Login.jsx @@ -3,7 +3,7 @@ import { useEffect } from "react"; import { Button, Form, Input, Row, Radio, App, Typography } from "antd"; import { useTranslation } from "react-i18next"; import useAuthStore from "@/stores/Auth"; -import { appendRequestParams } from "@/utils/request"; +import { appendRequestParams } from "@haina/utils-request"; function Login() { const [authenticate, loginStatus, defaultRoute] = useAuthStore((state) => [ diff --git a/src/views/ReloadUpdate.jsx b/src/views/ReloadUpdate.jsx index 9d71f8a..40d224c 100644 --- a/src/views/ReloadUpdate.jsx +++ b/src/views/ReloadUpdate.jsx @@ -1,5 +1,5 @@ import { Button } from 'antd'; -import { clearAllCaches } from '@/utils/commons'; +import { clearAllCaches } from '@haina/utils-commons'; import { useTranslation } from 'react-i18next' const ReloadUpdate = ({ ...props }) => { diff --git a/src/views/account/Management.jsx b/src/views/account/Management.jsx index 8c9196f..6d7ec2b 100644 --- a/src/views/account/Management.jsx +++ b/src/views/account/Management.jsx @@ -1,7 +1,7 @@ import SearchForm from '@/components/SearchForm' import useAccountStore, { fetchRoleList, fetchTravelAgencyByName, genRandomPassword } from '@/stores/Account' import useFormStore from '@/stores/Form' -import { isEmpty, debounce } from '@/utils/commons' +import { isEmpty, debounce } from '@haina/utils-commons' import { ExclamationCircleFilled } from '@ant-design/icons' import { App, Button, Col, Form, Input, Modal, Row, Select, Space, Table, Typography, Switch, Spin } from 'antd' import dayjs from 'dayjs' diff --git a/src/views/account/RoleList.jsx b/src/views/account/RoleList.jsx index edd99d4..12f9133 100644 --- a/src/views/account/RoleList.jsx +++ b/src/views/account/RoleList.jsx @@ -1,7 +1,7 @@ import RequireAuth from '@/components/RequireAuth' import { PERM_ROLE_NEW } from '@/config' import useAccountStore, { fetchPermissionList, fetchPermissionListByRoleId, fetchRoleList } from '@/stores/Account' -import { isEmpty } from '@/utils/commons' +import { isEmpty } from '@haina/utils-commons' import { PushpinTwoTone, } from '@ant-design/icons' diff --git a/src/views/airticket/Index.jsx b/src/views/airticket/Index.jsx index 8216bb2..686306c 100644 --- a/src/views/airticket/Index.jsx +++ b/src/views/airticket/Index.jsx @@ -2,7 +2,7 @@ import { useState, useEffect } from "react"; import { Grid, Divider, Layout, Spin, Input, Col, Row, Space, List, Table, Button } from "antd"; import { PhoneOutlined, CustomerServiceOutlined, AudioOutlined, AuditOutlined } from "@ant-design/icons"; import { useParams, useHref, useNavigate, NavLink } from "react-router-dom"; -import { isEmpty, formatColonTime } from "@/utils/commons"; +import { isEmpty, formatColonTime } from "@haina/utils-commons"; import dayjs from "dayjs"; import SearchForm from "@/components/SearchForm"; import { DATE_FORMAT } from "@/config"; diff --git a/src/views/airticket/Invoice.jsx b/src/views/airticket/Invoice.jsx index 5db58b6..443db6b 100644 --- a/src/views/airticket/Invoice.jsx +++ b/src/views/airticket/Invoice.jsx @@ -2,7 +2,7 @@ import { useState, useEffect } from "react"; import { Grid, Divider, Layout, Steps, Statistic, Col, Row, Space, Checkbox, Table, Button, App, Typography } from "antd"; import { PhoneOutlined, CustomerServiceOutlined, FrownTwoTone, LikeTwoTone } from "@ant-design/icons"; import { useParams, useHref, useNavigate, NavLink } from "react-router-dom"; -import { isEmpty, formatColonTime } from "@/utils/commons"; +import { isEmpty, formatColonTime } from "@haina/utils-commons"; import dayjs from "dayjs"; import SearchForm from "@/components/SearchForm"; import BackBtn from "@/components/BackBtn"; diff --git a/src/views/airticket/InvoicePaid.jsx b/src/views/airticket/InvoicePaid.jsx index a9be989..f862f3d 100644 --- a/src/views/airticket/InvoicePaid.jsx +++ b/src/views/airticket/InvoicePaid.jsx @@ -2,7 +2,7 @@ import { useState, useEffect } from "react"; import { Grid, Divider, Layout, Spin, Input, Col, Row, Space, Checkbox, Table, Button, App } from "antd"; import { PhoneOutlined, CustomerServiceOutlined, FrownTwoTone, LikeTwoTone } from "@ant-design/icons"; import { useParams, useHref, useNavigate, NavLink } from "react-router-dom"; -import { isEmpty, formatColonTime, formatDate, isNotEmpty } from "@/utils/commons"; +import { isEmpty, formatColonTime, formatDate, isNotEmpty } from "@haina/utils-commons"; import { DATE_FORMAT } from "@/config"; import dayjs from "dayjs"; import SearchForm from "@/components/SearchForm"; diff --git a/src/views/airticket/Plan.jsx b/src/views/airticket/Plan.jsx index 237d5ae..5b8b9b6 100644 --- a/src/views/airticket/Plan.jsx +++ b/src/views/airticket/Plan.jsx @@ -2,7 +2,7 @@ import { useState, useEffect } from 'react'; import { Checkbox, Divider, DatePicker, Modal, Form, Input, Col, Row, Space, Collapse, Table, Button, Select, App, Popconfirm, Switch, Radio, List } from 'antd'; import { PhoneOutlined, FrownTwoTone, LikeTwoTone, ArrowUpOutlined, ArrowDownOutlined, PlusOutlined } from '@ant-design/icons'; import { useParams, useHref, useNavigate, NavLink } from 'react-router-dom'; -import { isEmpty, formatColonTime } from '@/utils/commons'; +import { isEmpty, formatColonTime } from '@haina/utils-commons'; import { OFFICEWEBVIEWERURL } from '@/config'; import dayjs from 'dayjs'; import airTicketStore from '@/stores/Airticket'; diff --git a/src/views/external-reviews/review-list.jsx b/src/views/external-reviews/review-list.jsx index afcbf33..58f94b6 100644 --- a/src/views/external-reviews/review-list.jsx +++ b/src/views/external-reviews/review-list.jsx @@ -15,7 +15,7 @@ import { } from "antd"; import dayjs from "dayjs"; import { FileAddOutlined, EditOutlined } from "@ant-design/icons"; -import { groupBy, isNotEmpty, isEmpty } from "@/utils/commons"; +import { groupBy, isNotEmpty, isEmpty } from "@haina/utils-commons"; import { useTranslation } from "react-i18next"; import useFormStore from "@/stores/Form"; import { usingStorage } from "@/hooks/usingStorage"; diff --git a/src/views/invoice/Detail.jsx b/src/views/invoice/Detail.jsx index 88698f2..8bdfdf2 100644 --- a/src/views/invoice/Detail.jsx +++ b/src/views/invoice/Detail.jsx @@ -2,7 +2,7 @@ import { useParams, useNavigate } from "react-router-dom"; import { useEffect, useState } from "react"; import { Row, Col, Space, Button, Typography, Card, Form, Upload, Input, Divider, DatePicker, Select, App, Descriptions, Image } from "antd"; import { PlusOutlined,AuditOutlined } from "@ant-design/icons"; -import { isNotEmpty } from "@/utils/commons"; +import { isNotEmpty } from "@haina/utils-commons"; import * as config from "@/config"; import dayjs from "dayjs"; import { fetchInvoiceDetail, postEditInvoiceDetail, postAddInvoice } from "@/stores/Invoice"; diff --git a/src/views/invoice/History.jsx b/src/views/invoice/History.jsx index bac40a2..2b3875d 100644 --- a/src/views/invoice/History.jsx +++ b/src/views/invoice/History.jsx @@ -1,7 +1,7 @@ import { useParams, NavLink, useNavigate } from "react-router-dom"; import { useEffect, useState } from "react"; import { Row, Col, Space, Table, Image,App } from "antd"; -import { formatDate, isNotEmpty } from "@/utils/commons"; +import { formatDate, isNotEmpty } from "@haina/utils-commons"; import SearchForm from "@/components/SearchForm"; import dayjs from "dayjs"; import BackBtn from "@/components/BackBtn"; diff --git a/src/views/invoice/Index.jsx b/src/views/invoice/Index.jsx index cad5a5e..40388db 100644 --- a/src/views/invoice/Index.jsx +++ b/src/views/invoice/Index.jsx @@ -1,6 +1,6 @@ import { NavLink, useNavigate } from "react-router-dom"; import { Row, Col, Space, Button, Table, App, Steps } from "antd"; -import { formatDate, isNotEmpty } from "@/utils/commons"; +import { formatDate, isNotEmpty } from "@haina/utils-commons"; import { AuditOutlined, SmileOutlined, SolutionOutlined, EditOutlined } from "@ant-design/icons"; import SearchForm from '@/components/SearchForm'; import dayjs from 'dayjs'; diff --git a/src/views/invoice/Paid.jsx b/src/views/invoice/Paid.jsx index 52f38fb..46e14dc 100644 --- a/src/views/invoice/Paid.jsx +++ b/src/views/invoice/Paid.jsx @@ -1,7 +1,7 @@ import { NavLink, useNavigate } from 'react-router-dom'; import { useEffect } from 'react'; import { Row, Col, Space, Table, Image } from 'antd'; -import { formatDate, isNotEmpty } from '@/utils/commons'; +import { formatDate, isNotEmpty } from '@haina/utils-commons'; import SearchForm from '@/components/SearchForm'; import dayjs from 'dayjs'; import BackBtn from '@/components/BackBtn'; diff --git a/src/views/invoice/PaidDetail.jsx b/src/views/invoice/PaidDetail.jsx index f3ce3f9..11ec626 100644 --- a/src/views/invoice/PaidDetail.jsx +++ b/src/views/invoice/PaidDetail.jsx @@ -1,7 +1,7 @@ import { useNavigate, useParams } from 'react-router-dom'; import { useEffect, useState } from 'react'; import { Row, Col, Space, Table, Typography } from 'antd'; -import { formatDate, isNotEmpty } from '@/utils/commons'; +import { formatDate, isNotEmpty } from '@haina/utils-commons'; import BackBtn from '@/components/BackBtn'; import { fetchInvoicePaidDetail } from '@/stores/Invoice'; import { usingStorage } from '@/hooks/usingStorage'; diff --git a/src/views/notifs/Edit.jsx b/src/views/notifs/Edit.jsx index 1b6c64c..f48fa84 100644 --- a/src/views/notifs/Edit.jsx +++ b/src/views/notifs/Edit.jsx @@ -7,7 +7,7 @@ import useFormStore from "@/stores/Form"; import BackBtn from '@/components/BackBtn'; import { usingStorage } from '@/hooks/usingStorage'; import VendorSelector from '@/components/VendorSelector'; -import { isEmpty, objectMapper } from '@/utils/commons'; +import { isEmpty, objectMapper } from '@haina/utils-commons'; import Editor from '@/components/Editor'; const { Title, Paragraph } = Typography; diff --git a/src/views/products/Audit.jsx b/src/views/products/Audit.jsx index a08c6e9..8f066b6 100644 --- a/src/views/products/Audit.jsx +++ b/src/views/products/Audit.jsx @@ -5,7 +5,7 @@ import { useProductsTypes, useProductsAuditStatesMapVal } from '@/hooks/useProdu import SecondHeaderWrapper from '@/components/SecondHeaderWrapper'; import { useTranslation } from 'react-i18next'; import useProductsStore, { postProductsQuoteAuditAction, } from '@/stores/Products/Index'; -import { cloneDeep, groupBy, isEmpty, isNotEmpty } from '@/utils/commons'; +import { cloneDeep, groupBy, isEmpty, isNotEmpty } from '@haina/utils-commons'; import useAuthStore from '@/stores/Auth'; import RequireAuth from '@/components/RequireAuth'; import { PERM_PRODUCTS_MANAGEMENT, PERM_PRODUCTS_OFFER_AUDIT, PERM_PRODUCTS_OFFER_PUT } from '@/config'; diff --git a/src/views/products/Detail.jsx b/src/views/products/Detail.jsx index 6ff6a2c..16b73f8 100644 --- a/src/views/products/Detail.jsx +++ b/src/views/products/Detail.jsx @@ -1,6 +1,6 @@ import { useState } from 'react'; import { App, Divider, Empty, Flex } from 'antd'; -import { isEmpty } from '@/utils/commons'; +import { isEmpty } from '@haina/utils-commons'; import SecondHeaderWrapper from '@/components/SecondHeaderWrapper'; import Header from './Detail/Header'; import { useParams } from 'react-router-dom'; diff --git a/src/views/products/Detail/CopyProducts.jsx b/src/views/products/Detail/CopyProducts.jsx index 8bd4d88..c0cb210 100644 --- a/src/views/products/Detail/CopyProducts.jsx +++ b/src/views/products/Detail/CopyProducts.jsx @@ -1,6 +1,6 @@ import { useState, useEffect } from 'react'; import { App, Form, Modal, DatePicker, Divider, Switch, Space, Flex, Radio } from 'antd'; -import { isEmpty, objectMapper } from '@/utils/commons'; +import { isEmpty, objectMapper } from '@haina/utils-commons'; import { useTranslation } from 'react-i18next'; import DeptSelector from '@/components/DeptSelector'; @@ -163,7 +163,7 @@ export const CopyProductsFormModal = ({ source, action = '#' | 'o', open, onSubm // debug: // console.log('ready params', param); // setCopyLoading(false); - // throw new Error('暂不支持复制'); + // throw new Error('暂不提交'); // const toID = param.target_agency; const success = await copyAgencyDataAction({ ...param, source_agency: source.sourceAgency.travel_agency_id }).catch((ex) => { notification.error({ diff --git a/src/views/products/Detail/Extras.jsx b/src/views/products/Detail/Extras.jsx index 0a49089..cb7383c 100644 --- a/src/views/products/Detail/Extras.jsx +++ b/src/views/products/Detail/Extras.jsx @@ -3,7 +3,7 @@ import { useParams } from 'react-router-dom'; import { useTranslation } from 'react-i18next'; import { App, Table, Button, Modal, Popconfirm } from 'antd'; import { getAgencyProductExtrasAction, searchPublishedProductsAction, addProductExtraAction, delProductExtrasAction } from '@/stores/Products/Index'; -import { cloneDeep, pick } from '@/utils/commons'; +import { cloneDeep, pick } from '@haina/utils-commons'; import SearchForm from '@/components/SearchForm'; import RequireAuth from '@/components/RequireAuth'; diff --git a/src/views/products/Detail/Header.jsx b/src/views/products/Detail/Header.jsx index 4d0f0cf..467985f 100644 --- a/src/views/products/Detail/Header.jsx +++ b/src/views/products/Detail/Header.jsx @@ -8,7 +8,7 @@ import useProductsStore, { postAgencyProductsAuditAction, postAgencyAuditAction, } from "@/stores/Products/Index"; -import { isEmpty, objectMapper } from "@/utils/commons"; +import { isEmpty, objectMapper } from "@haina/utils-commons"; import useAuthStore from "@/stores/Auth"; import RequireAuth from "@/components/RequireAuth"; import { PERM_PRODUCTS_OFFER_AUDIT, PERM_PRODUCTS_OFFER_PUT } from "@/config"; diff --git a/src/views/products/Detail/NewProductModal.jsx b/src/views/products/Detail/NewProductModal.jsx index 7d671db..137b829 100644 --- a/src/views/products/Detail/NewProductModal.jsx +++ b/src/views/products/Detail/NewProductModal.jsx @@ -1,6 +1,6 @@ import { useState, useEffect } from 'react'; import { Form, Modal, Input, Button } from 'antd'; -import { objectMapper } from '@/utils/commons'; +import { objectMapper } from '@haina/utils-commons'; import { useTranslation } from 'react-i18next'; import ProductsTypesSelector from '@/components/ProductsTypesSelector'; diff --git a/src/views/products/Detail/ProductInfo.jsx b/src/views/products/Detail/ProductInfo.jsx index 7691ebe..bd73921 100644 --- a/src/views/products/Detail/ProductInfo.jsx +++ b/src/views/products/Detail/ProductInfo.jsx @@ -5,7 +5,7 @@ import { useProductsTypesMapVal, useNewProductRecord } from '@/hooks/useProducts import useProductsStore, { postProductsSaveAction } from '@/stores/Products/Index'; import useAuthStore from '@/stores/Auth'; import { PERM_PRODUCTS_MANAGEMENT, PERM_PRODUCTS_OFFER_PUT, PERM_PRODUCTS_INFO_PUT, PERM_PRODUCTS_NEW } from '@/config'; -import { isEmpty, objectMapper, pick, unique } from '@/utils/commons'; +import { isEmpty, objectMapper, pick, unique } from '@haina/utils-commons'; import ProductInfoForm from './ProductInfoForm'; import { usingStorage } from '@/hooks/usingStorage'; import Extras from './Extras'; diff --git a/src/views/products/Detail/ProductInfoForm.jsx b/src/views/products/Detail/ProductInfoForm.jsx index 8bfbc9d..12698fb 100644 --- a/src/views/products/Detail/ProductInfoForm.jsx +++ b/src/views/products/Detail/ProductInfoForm.jsx @@ -1,6 +1,6 @@ import { useEffect, useState } from 'react'; import { App, Form, Input, Row, Col, Select, Button, InputNumber, Checkbox } from 'antd'; -import { objectMapper, isEmpty, isNotEmpty, pick } from '@/utils/commons'; +import { objectMapper, isEmpty, isNotEmpty, pick } from '@haina/utils-commons'; import { useTranslation } from 'react-i18next'; import { useWeekdays } from '@/hooks/useDatePresets'; import DeptSelector from '@/components/DeptSelector'; diff --git a/src/views/products/Detail/ProductInfoLgc.jsx b/src/views/products/Detail/ProductInfoLgc.jsx index 3ef7af4..d07f9c2 100644 --- a/src/views/products/Detail/ProductInfoLgc.jsx +++ b/src/views/products/Detail/ProductInfoLgc.jsx @@ -4,7 +4,7 @@ import useProductsStore from '@/stores/Products/Index'; import { useHTLanguageSets, useHTLanguageSetsMapVal } from '@/hooks/useHTLanguageSets'; import { useTranslation } from 'react-i18next'; import { useDefaultLgc } from '@/i18n/LanguageSwitcher'; -import { cloneDeep, isEmpty, isNotEmpty } from '@/utils/commons'; +import { cloneDeep, isEmpty, isNotEmpty } from '@haina/utils-commons'; const ProductInfoLgc = ({ editable, formInstance, pickEditedInfo, ...props }) => { const { t } = useTranslation('products'); diff --git a/src/views/products/Detail/ProductQuotationLogPopover.jsx b/src/views/products/Detail/ProductQuotationLogPopover.jsx index 99a7d5b..13f4575 100644 --- a/src/views/products/Detail/ProductQuotationLogPopover.jsx +++ b/src/views/products/Detail/ProductQuotationLogPopover.jsx @@ -2,9 +2,9 @@ import { useState, useMemo } from 'react'; import { Button, Table, Popover, Typography } from 'antd'; import { useTranslation } from 'react-i18next'; import { HT_HOST } from '@/config'; -import { fetchJSON } from '@/utils/request'; +import { fetchJSON } from '@haina/utils-request'; import { formatGroupSize } from '@/hooks/useProductsSets'; -import { isEmpty, isNotEmpty } from '@/utils/commons'; +import { isEmpty, isNotEmpty } from '@haina/utils-commons'; import { usingStorage } from '@/hooks/usingStorage'; /** diff --git a/src/views/products/Detail/ProductQuotationSnapshotPopover.jsx b/src/views/products/Detail/ProductQuotationSnapshotPopover.jsx index 8bae688..c381676 100644 --- a/src/views/products/Detail/ProductQuotationSnapshotPopover.jsx +++ b/src/views/products/Detail/ProductQuotationSnapshotPopover.jsx @@ -2,9 +2,9 @@ import { useState, useMemo } from 'react'; import { Button, Table, Popover, Typography, List, Flex } from 'antd'; import { useTranslation } from 'react-i18next'; import { HT_HOST } from '@/config'; -import { fetchJSON } from '@/utils/request'; +import { fetchJSON } from '@haina/utils-request'; import { formatGroupSize } from '@/hooks/useProductsSets'; -import { isEmpty, isNotEmpty } from '@/utils/commons'; +import { isEmpty, isNotEmpty } from '@haina/utils-commons'; import { chunkBy } from '@/hooks/useProductsQuotationFormat'; /** diff --git a/src/views/products/Detail/ProductsTree.jsx b/src/views/products/Detail/ProductsTree.jsx index a14fc6c..149a045 100644 --- a/src/views/products/Detail/ProductsTree.jsx +++ b/src/views/products/Detail/ProductsTree.jsx @@ -5,7 +5,7 @@ import { CaretDownOutlined } from '@ant-design/icons'; import { useTranslation } from 'react-i18next'; import useProductsStore from '@/stores/Products/Index'; import { useProductsTypes, useProductsAuditStatesMapVal } from '@/hooks/useProductsSets'; -import { groupBy, isEmpty, sortBy } from '@/utils/commons'; +import { groupBy, isEmpty, sortBy } from '@haina/utils-commons'; import NewProductModal from './NewProductModal'; import ContractRemarksModal from './ContractRemarksModal' diff --git a/src/views/products/Manage.jsx b/src/views/products/Manage.jsx index 23c622f..754f0dc 100644 --- a/src/views/products/Manage.jsx +++ b/src/views/products/Manage.jsx @@ -8,7 +8,7 @@ import { useTranslation } from 'react-i18next'; import useProductsStore, { copyAgencyDataAction } from '@/stores/Products/Index'; import { useProductsTypes, useProductsAuditStatesMapVal } from '@/hooks/useProductsSets'; import useFormStore from '@/stores/Form'; -import { objectMapper } from '@/utils/commons'; +import { objectMapper } from '@haina/utils-commons'; import CopyProductsFormModal from './Detail/CopyProducts'; import useAuthStore from '@/stores/Auth'; import RequireAuth from '@/components/RequireAuth'; diff --git a/src/views/products/Print/AgencyContract.jsx b/src/views/products/Print/AgencyContract.jsx index 9afc078..4cb1e1f 100644 --- a/src/views/products/Print/AgencyContract.jsx +++ b/src/views/products/Print/AgencyContract.jsx @@ -1,4 +1,4 @@ -import { isEmpty } from '@/utils/commons' +import { isEmpty } from '@haina/utils-commons' import dayjs from 'dayjs' import { AlignmentType, diff --git a/src/views/products/Print/AgencyContract_v0903.jsx b/src/views/products/Print/AgencyContract_v0903.jsx index 91089d1..fe72507 100644 --- a/src/views/products/Print/AgencyContract_v0903.jsx +++ b/src/views/products/Print/AgencyContract_v0903.jsx @@ -22,7 +22,7 @@ import { PositionalTabLeader, } from 'docx'; import dayjs from 'dayjs'; -import { cloneDeep, flush, groupBy, isEmpty, isNotEmpty, sortBy, unique, uniqWith } from '@/utils/commons'; +import { cloneDeep, flush, groupBy, isEmpty, isNotEmpty, sortBy, unique, uniqWith } from '@haina/utils-commons'; // Shoulder Season 平季; peak season 旺季 const isFullYearOrLonger = (year, startDate, endDate) => { diff --git a/src/views/products/Print/AgencyContract_v3.jsx b/src/views/products/Print/AgencyContract_v3.jsx index 3ce91a0..e3a6e98 100644 --- a/src/views/products/Print/AgencyContract_v3.jsx +++ b/src/views/products/Print/AgencyContract_v3.jsx @@ -22,7 +22,7 @@ import { PositionalTabLeader, } from 'docx'; import dayjs from 'dayjs'; -import { cloneDeep, groupBy, isEmpty, isNotEmpty, sortBy, unique, uniqWith } from '@/utils/commons'; +import { cloneDeep, groupBy, isEmpty, isNotEmpty, sortBy, unique, uniqWith } from '@haina/utils-commons'; // Shoulder Season 平季; peak season 旺季 const isFullYearOrLonger = (year, startDate, endDate) => { diff --git a/src/views/products/Print/AgencyPreview.jsx b/src/views/products/Print/AgencyPreview.jsx index 17e136f..fc856ff 100644 --- a/src/views/products/Print/AgencyPreview.jsx +++ b/src/views/products/Print/AgencyPreview.jsx @@ -5,7 +5,7 @@ import { useTranslation } from 'react-i18next'; import useProductsStore, { getAgencyAllExtrasAction } from '@/stores/Products/Index'; import { useProductsTypes, formatGroupSize, useProductsTypesMapVal } from '@/hooks/useProductsSets'; import { chunkBy, splitTable_6, splitTable_7, splitTable_8, splitTable_B, splitTable_D, splitTable_J, splitTable_Q, splitTable_R } from '@/hooks/useProductsQuotationFormat'; -import { groupBy, isNotEmpty } from '@/utils/commons'; +import { groupBy, isNotEmpty } from '@haina/utils-commons'; import useAuthStore from '@/stores/Auth'; import { PERM_PRODUCTS_MANAGEMENT, PERM_PRODUCTS_OFFER_AUDIT, PERM_PRODUCTS_OFFER_PUT } from '@/config'; import ExportDocxBtn from './ExportDocxBtn'; diff --git a/src/views/products/Print/ExportDocxBtn.jsx b/src/views/products/Print/ExportDocxBtn.jsx index b58bb4b..3c53f8e 100644 --- a/src/views/products/Print/ExportDocxBtn.jsx +++ b/src/views/products/Print/ExportDocxBtn.jsx @@ -9,7 +9,7 @@ import dayjs from 'dayjs'; import AgencyContract from '../Print/AgencyContract'; import { saveAs } from 'file-saver'; import { Packer } from 'docx'; -import { isEmpty } from '@/utils/commons'; +import { isEmpty } from '@haina/utils-commons'; const ExportDocxBtn = ({ params = { travel_agency_id: '', use_year: '', audit_state: '' }, ...props }) => { const { t } = useTranslation(); diff --git a/src/views/report/Index.jsx b/src/views/report/Index.jsx index a3ffbbc..1d9d328 100644 --- a/src/views/report/Index.jsx +++ b/src/views/report/Index.jsx @@ -1,5 +1,5 @@ import { Row, Col, Space, Button, Table, Divider, Typography, } from 'antd'; -import * as comm from '@/utils/commons'; +import * as comm from '@haina/utils-commons'; import { usePDF } from 'react-to-pdf'; import dayjs from 'dayjs'; import SearchForm from '@/components/SearchForm'; diff --git a/src/views/reservation/Newest.jsx b/src/views/reservation/Newest.jsx index f002127..05d54da 100644 --- a/src/views/reservation/Newest.jsx +++ b/src/views/reservation/Newest.jsx @@ -2,7 +2,7 @@ import { NavLink } from 'react-router-dom' import { useState, useEffect } from 'react' import { Row, Col, Space, Button, Table, Typography, Modal, App, Select } from 'antd' import dayjs from 'dayjs' -import { groupBy, isEmpty } from '@/utils/commons' +import { groupBy, isEmpty } from '@haina/utils-commons' import { useTranslation } from 'react-i18next' import useFormStore from '@/stores/Form' import useReservationStore from '@/stores/Reservation' diff --git a/src/views/trainticket/index.jsx b/src/views/trainticket/index.jsx index e7a18f9..0b83c18 100644 --- a/src/views/trainticket/index.jsx +++ b/src/views/trainticket/index.jsx @@ -2,7 +2,7 @@ import { useState, useEffect } from "react"; import { Grid, Divider, Layout, Spin, Input, Col, Row, Space, List, Table, Button, Typography } from "antd"; import { PhoneOutlined, CustomerServiceOutlined, AudioOutlined, AuditOutlined } from "@ant-design/icons"; import { useParams, useHref, useNavigate, NavLink } from "react-router-dom"; -import { isEmpty, formatColonTime } from "@/utils/commons"; +import { isEmpty, formatColonTime } from "@haina/utils-commons"; import dayjs from "dayjs"; import SearchForm from "@/components/SearchForm"; import { DATE_FORMAT } from "@/config"; diff --git a/src/views/trainticket/invoice.jsx b/src/views/trainticket/invoice.jsx index b8e972c..103bf9e 100644 --- a/src/views/trainticket/invoice.jsx +++ b/src/views/trainticket/invoice.jsx @@ -2,7 +2,7 @@ import { useState, useEffect } from "react"; import { Grid, Divider, Layout, Steps, Statistic, Col, Row, Space, Checkbox, Table, Button, App, Typography } from "antd"; import { PhoneOutlined, CustomerServiceOutlined, FrownTwoTone, LikeTwoTone } from "@ant-design/icons"; import { useParams, useHref, useNavigate, NavLink } from "react-router-dom"; -import { isEmpty, formatColonTime } from "@/utils/commons"; +import { isEmpty, formatColonTime } from "@haina/utils-commons"; import dayjs from "dayjs"; import SearchForm from "@/components/SearchForm"; import BackBtn from "@/components/BackBtn"; diff --git a/src/views/trainticket/invoicePaid.jsx b/src/views/trainticket/invoicePaid.jsx index 5a6c01b..7078676 100644 --- a/src/views/trainticket/invoicePaid.jsx +++ b/src/views/trainticket/invoicePaid.jsx @@ -2,7 +2,7 @@ import { useState, useEffect } from "react"; import { Grid, Divider, Layout, Spin, Input, Col, Row, Space, Checkbox, Table, Button, App } from "antd"; import { PhoneOutlined, CustomerServiceOutlined, FrownTwoTone, LikeTwoTone } from "@ant-design/icons"; import { useParams, useHref, useNavigate, NavLink } from "react-router-dom"; -import { isEmpty, formatColonTime, formatDate, isNotEmpty } from "@/utils/commons"; +import { isEmpty, formatColonTime, formatDate, isNotEmpty } from "@haina/utils-commons"; import { DATE_FORMAT } from "@/config"; import dayjs from "dayjs"; import SearchForm from "@/components/SearchForm"; diff --git a/src/views/trainticket/plan.jsx b/src/views/trainticket/plan.jsx index b6f54c8..b209d43 100644 --- a/src/views/trainticket/plan.jsx +++ b/src/views/trainticket/plan.jsx @@ -2,7 +2,7 @@ import { useState, useEffect } from "react"; import { Checkbox, Divider, DatePicker, Modal, Form, Input, Col, Row, Space, Collapse, Table, Button, Select, App, Popconfirm, Switch, Radio, List } from "antd"; import { PhoneOutlined, FrownTwoTone, LikeTwoTone, ArrowUpOutlined, ArrowDownOutlined, PlusOutlined } from "@ant-design/icons"; import { useParams, useHref, useNavigate, NavLink } from "react-router-dom"; -import { isEmpty, formatColonTime } from "@/utils/commons"; +import { isEmpty, formatColonTime } from "@haina/utils-commons"; import { OFFICEWEBVIEWERURL } from "@/config"; import dayjs from "dayjs"; import trainTicketStore from "@/stores/Trainticket";