diff --git a/package.json b/package.json index 1806dcd..e6681c7 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "global-highlights-hub", "private": true, - "version": "2.0.0-beta.3", + "version": "2.0.0-beta.5", "type": "module", "scripts": { "dev": "vite", diff --git a/src/config.js b/src/config.js index 149a9f9..786bbfe 100644 --- a/src/config.js +++ b/src/config.js @@ -1,7 +1,7 @@ export const PROJECT_NAME = "GHHub"; // mode: test,内部测试使用 -export const HT_HOST = import.meta.env.MODE === 'test' ? 'http://202.103.68.144:891' : import.meta.env.PROD ? "https://p9axztuwd7x8a7.mycht.cn" : 'http://202.103.68.144:891' +export const HT_HOST = import.meta.env.MODE === 'test' ? 'http://120.79.9.217:10024' : import.meta.env.PROD ? 'https://p9axztuwd7x8a7.mycht.cn' : 'http://202.103.68.144:890' export const DATE_FORMAT = "YYYY-MM-DD"; diff --git a/src/stores/Products/Index.js b/src/stores/Products/Index.js index 42395ba..98f4cc0 100644 --- a/src/stores/Products/Index.js +++ b/src/stores/Products/Index.js @@ -82,6 +82,20 @@ export const postProductsQuoteAuditAction = async (auditState, quoteRow) => { // return errcode !== 0 ? {} : result; }; +export const postAgencyProductsAuditAction = async (auditState, agency) => { + const postbody = { + audit_state: auditState, + travel_agency_id: agency.travel_agency_id, + use_year: agency.use_year, + }; + const formData = new FormData(); + Object.keys(postbody).forEach((key) => { + formData.append(key, postbody[key]); + }); + const json = await postForm(`${HT_HOST}/Service_BaseInfoWeb/agency_products_audit`, formData); + return json; +}; + /** * 供应商提交审核 */ @@ -263,6 +277,7 @@ export const useProductsStore = create( return { ...prevQuotation, + audit_state_id: -1, adult_cost: formValues.adult_cost, child_cost: formValues.child_cost, currency: formValues.currency, diff --git a/src/views/account/Management.jsx b/src/views/account/Management.jsx index 6f88084..2d337d6 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 } from '@/utils/commons' +import { isEmpty, debounce } from '@/utils/commons' import { ExclamationCircleFilled } from '@ant-design/icons' import { App, Button, Col, Form, Input, Modal, Row, Select, Space, Table, Typography, Switch } from 'antd' import dayjs from 'dayjs' @@ -299,7 +299,7 @@ function Management() { loading={dataLoading} showSearch filterOption={false} - onSearch={handleTravelAgencySearch} + onSearch={debounce(handleTravelAgencySearch, 800)} notFoundContent={null} > diff --git a/src/views/products/Audit.jsx b/src/views/products/Audit.jsx index d0af5d4..ca95ccd 100644 --- a/src/views/products/Audit.jsx +++ b/src/views/products/Audit.jsx @@ -55,7 +55,8 @@ const PriceTable = ({ productType, dataSource, refresh }) => { const trCls = tri%2 !== 0 ? ' bg-stone-50' : ''; // 奇偶行 const [infoI, quoteI] = r.rowSpanI; const bigTrCls = quoteI === 0 && tri !== 0 ? 'border-collapse border-double border-0 border-t-4 border-stone-300' : ''; // 合并行双下划线 - const editedCls = (r.audit_state_id === 0 && isNotEmpty(r.lastedit_changed)) ? 'bg-red-100' : ''; // 待审核, 变更: 红色 + const editedCls = (r.audit_state_id === 0 && isNotEmpty(r.lastedit_changed)) ? '!bg-red-100' : ''; // 待审核, 变更: 红色 + const editedCls_ = isNotEmpty(r.lastedit_changed) ? (r.audit_state_id === 0 ? '!bg-red-100' : '!bg-sky-100') : ''; return [trCls, bigTrCls, editedCls].join(' '); }; diff --git a/src/views/products/Detail/Header.jsx b/src/views/products/Detail/Header.jsx index debeba0..42d7f27 100644 --- a/src/views/products/Detail/Header.jsx +++ b/src/views/products/Detail/Header.jsx @@ -4,7 +4,7 @@ import { App, Button, Divider, Popconfirm, Select } from 'antd'; import { ReloadOutlined } from '@ant-design/icons'; import { useProductsAuditStatesMapVal } from '@/hooks/useProductsSets'; import { useTranslation } from 'react-i18next'; -import useProductsStore, { postProductsQuoteAuditAction, postAgencyAuditAction } from '@/stores/Products/Index'; +import useProductsStore, { postAgencyProductsAuditAction, postAgencyAuditAction } from '@/stores/Products/Index'; import { isEmpty, objectMapper } from '@/utils/commons'; import useAuthStore from '@/stores/Auth'; import RequireAuth from '@/components/RequireAuth'; @@ -74,8 +74,8 @@ const Header = ({ refresh, ...props }) => { setParam((pre) => ({ ...pre, ...{ pick_agency: value } })); }; - const handleAuditItem = (state, row) => { - postProductsQuoteAuditAction(state, { id: row.id, travel_agency_id: activeAgency.travel_agency_id }) + const handleAuditAgency = (state) => { + postAgencyProductsAuditAction(state, { travel_agency_id: activeAgency.travel_agency_id, use_year: switchParams.use_year }) .then((json) => { if (json.errcode === 0) { message.success(json.errmsg); @@ -157,15 +157,15 @@ const Header = ({ refresh, ...props }) => { )} - - {/* */} - diff --git a/tailwind.config.js b/tailwind.config.js index 14d963b..ae60bd0 100644 --- a/tailwind.config.js +++ b/tailwind.config.js @@ -6,6 +6,8 @@ export default { 'text-primary', 'text-danger', 'text-muted', + 'bg-red-100', + 'bg-sky-100', ], darkMode: 'media', theme: {