From ea3cfca7d6b2d5a38d638cf0ee13c552da32466f Mon Sep 17 00:00:00 2001 From: shenyifei Date: Wed, 19 Nov 2025 22:23:46 +0800 Subject: [PATCH] =?UTF-8?q?style(components):=20=E7=BB=9F=E4=B8=80?= =?UTF-8?q?=E5=BC=B9=E7=AA=97=E6=A0=B7=E5=BC=8F=E5=B9=B6=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E5=9B=BE=E6=A0=87=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 为多个 Popup 组件添加统一的动画持续时间和最小高度样式 - 在多个表单标题和标签前添加相应功能图标提升可读性 - 引入 Icon 组件并在合适位置应用 - 调整部分组件导入顺序以符合规范 - 优化表格列渲染逻辑以支持图标显示 - 修复部分 JSX 结构以改善布局展示效果 --- .../src/components/company/CompanyPicker.tsx | 5 +- .../dealer/DealerPaymentAccountPicker.tsx | 15 ++++-- .../src/components/dealer/DealerPicker.tsx | 5 +- .../dealer/DealerRebateCustomer.tsx | 11 +++-- .../dealer/DealerWarehousePicker.tsx | 5 +- .../button/PurchaseOrderRejectApprove.tsx | 8 +++- .../button/PurchaseOrderRejectFinal.tsx | 4 ++ .../purchase/document/Step1Form.tsx | 4 ++ .../components/purchase/module/OrderCost.tsx | 8 ++++ .../purchase/module/OrderPackage.tsx | 8 ++++ .../src/components/purchase/module/Weigh.tsx | 4 ++ .../purchase/section/BasicInfoSection.tsx | 11 +++-- .../purchase/section/EmptyBoxInfoSection.tsx | 13 +++-- .../purchase/section/LaborInfoSection.tsx | 12 +++++ .../purchase/section/MarketPriceSection.tsx | 30 +++++++++--- .../purchase/section/MaterialCostSection.tsx | 29 +++++++++--- .../purchase/section/PackageInfoSection.tsx | 13 +++-- .../purchase/section/PackagingCostSection.tsx | 12 +++++ .../section/ProductionAdvanceSection.tsx | 8 ++++ .../section/PurchaseCostInfoSection.tsx | 21 ++++++++- .../purchase/section/RebateCalcSection.tsx | 5 +- .../purchase/section/SupplierInfoSection.tsx | 47 +++++++++++++------ .../purchase/section/WorkerAdvanceSection.tsx | 8 ++++ .../components/supplier/SupplierPicker.tsx | 5 +- .../src/pages/main/center/index.tsx | 5 +- .../src/pages/public/login/index.tsx | 9 ++-- .../src/pages/purchase/reviewer/audit.tsx | 19 ++++++-- .../src/pages/supplier/purchase/invoice.tsx | 21 +++------ 28 files changed, 268 insertions(+), 77 deletions(-) diff --git a/packages/app-client/src/components/company/CompanyPicker.tsx b/packages/app-client/src/components/company/CompanyPicker.tsx index 55e0d81..00ddf8e 100644 --- a/packages/app-client/src/components/company/CompanyPicker.tsx +++ b/packages/app-client/src/components/company/CompanyPicker.tsx @@ -49,9 +49,12 @@ export default function CompanyPicker(props: ICompanyPickerProps) { {/* 选择销售方 */} { if (visible) { - setDealerPaymentAccountVO(undefined) - setSearchText("") + setDealerPaymentAccountVO(undefined); + setSearchText(""); setVisible(false); } else if (dealerPaymentAccountVO) { onFinish(dealerPaymentAccountVO); @@ -97,7 +102,7 @@ export default function DealerPaymentAccountPicker(props: IDealerPaymentAccountP key={dealerPaymentAccountVO.accountId} onClick={async () => { setDealerPaymentAccountVO(dealerPaymentAccountVO); - setSearchText("") + setSearchText(""); setVisible(false); }} > diff --git a/packages/app-client/src/components/dealer/DealerPicker.tsx b/packages/app-client/src/components/dealer/DealerPicker.tsx index af3fabb..0fe1817 100644 --- a/packages/app-client/src/components/dealer/DealerPicker.tsx +++ b/packages/app-client/src/components/dealer/DealerPicker.tsx @@ -78,9 +78,12 @@ export default function DealerPicker(props: IDealerPickerProps) { {/* 选择经销商 */} { if (visible) { - setDealerRebateCustomerVO(undefined) + setDealerRebateCustomerVO(undefined); setSearchText(""); setVisible(false); } else if (dealerRebateCustomerVO) { @@ -95,7 +98,7 @@ export default function DealerRebateCustomerPicker( key={dealerRebateCustomer.customerId} onClick={async () => { setDealerRebateCustomerVO(dealerRebateCustomer); - setSearchText("") + setSearchText(""); setVisible(false); }} > diff --git a/packages/app-client/src/components/dealer/DealerWarehousePicker.tsx b/packages/app-client/src/components/dealer/DealerWarehousePicker.tsx index 3a63f43..b21fbb7 100644 --- a/packages/app-client/src/components/dealer/DealerWarehousePicker.tsx +++ b/packages/app-client/src/components/dealer/DealerWarehousePicker.tsx @@ -61,9 +61,12 @@ export default function DealerWarehousePicker( {/* 选择经销商仓库 */} void; } -export default function PurchaseOrderRejectApprove(props: IPurchaseOrderRejectApproveProps) { +export default function PurchaseOrderRejectApprove( + props: IPurchaseOrderRejectApproveProps, +) { const { purchaseOrderVO, size = "normal", onFinish } = props; // 驳回原因弹窗相关状态 const [rejectVisible, setRejectVisible] = useState(false); @@ -81,6 +83,10 @@ export default function PurchaseOrderRejectApprove(props: IPurchaseOrderRejectAp {/* 驳回原因弹窗 */} { diff --git a/packages/app-client/src/components/purchase/button/PurchaseOrderRejectFinal.tsx b/packages/app-client/src/components/purchase/button/PurchaseOrderRejectFinal.tsx index 5d0f69f..b2c29b1 100644 --- a/packages/app-client/src/components/purchase/button/PurchaseOrderRejectFinal.tsx +++ b/packages/app-client/src/components/purchase/button/PurchaseOrderRejectFinal.tsx @@ -82,6 +82,10 @@ export default function PurchaseOrderRejectFinal( {/* 驳回原因弹窗 */} { diff --git a/packages/app-client/src/components/purchase/document/Step1Form.tsx b/packages/app-client/src/components/purchase/document/Step1Form.tsx index 7a4fed5..61fd228 100644 --- a/packages/app-client/src/components/purchase/document/Step1Form.tsx +++ b/packages/app-client/src/components/purchase/document/Step1Form.tsx @@ -315,6 +315,10 @@ const Step1Form = forwardRef((props, ref) => { /> ( return ( { @@ -1241,6 +1245,10 @@ export default forwardRef( return ( setShowEditModal(false)} diff --git a/packages/app-client/src/components/purchase/module/OrderPackage.tsx b/packages/app-client/src/components/purchase/module/OrderPackage.tsx index ede845a..677ffae 100644 --- a/packages/app-client/src/components/purchase/module/OrderPackage.tsx +++ b/packages/app-client/src/components/purchase/module/OrderPackage.tsx @@ -760,6 +760,10 @@ export default forwardRef( return ( { @@ -956,6 +960,10 @@ export default forwardRef( return ( setShowEditModal(false)} diff --git a/packages/app-client/src/components/purchase/module/Weigh.tsx b/packages/app-client/src/components/purchase/module/Weigh.tsx index 5948e2c..09f27c5 100644 --- a/packages/app-client/src/components/purchase/module/Weigh.tsx +++ b/packages/app-client/src/components/purchase/module/Weigh.tsx @@ -323,6 +323,10 @@ export default forwardRef(function Weigh(props, ref) { {/* 西瓜品种选择弹窗 */} - + + 本车次号 @@ -509,7 +510,8 @@ export default function BasicInfoSection(props: { {/* 运费信息 */} - + + 运费信息 - 草帘 + + + 草帘 + ( - + + 销售单价 @@ -562,7 +567,8 @@ export default function EmptyBoxInfoSection(props: { - + + 成本单价 @@ -591,7 +597,8 @@ export default function EmptyBoxInfoSection(props: { - + + 箱重 diff --git a/packages/app-client/src/components/purchase/section/LaborInfoSection.tsx b/packages/app-client/src/components/purchase/section/LaborInfoSection.tsx index cc11996..253747f 100644 --- a/packages/app-client/src/components/purchase/section/LaborInfoSection.tsx +++ b/packages/app-client/src/components/purchase/section/LaborInfoSection.tsx @@ -304,6 +304,10 @@ export default function LaborInfoSection(props: { {/* 新增其他人工费 */} - + + 报价方式 @@ -204,7 +206,10 @@ export default function MarketPriceSection(props: { }} > - 销售单价 + + + 销售单价 + 元/斤 @@ -216,7 +221,10 @@ export default function MarketPriceSection(props: { ) : ( - 销售单价 + + + 销售单价 + 元/斤 @@ -269,7 +277,8 @@ export default function MarketPriceSection(props: { })} - + + 销售金额 @@ -277,7 +286,8 @@ export default function MarketPriceSection(props: { - + + 平均单价 @@ -285,7 +295,8 @@ export default function MarketPriceSection(props: { - + + 市场报价( {purchaseOrderVO.orderDealer?.includePackingFlag ? "销售金额 + 包装费" @@ -301,6 +312,10 @@ export default function MarketPriceSection(props: { {/* 销售单价编辑弹窗 */} {purchaseOrderVO.orderSupplierList?.map((supplier) => ( - + + 销售单价 diff --git a/packages/app-client/src/components/purchase/section/MaterialCostSection.tsx b/packages/app-client/src/components/purchase/section/MaterialCostSection.tsx index 6ddf4c0..bbfb21c 100644 --- a/packages/app-client/src/components/purchase/section/MaterialCostSection.tsx +++ b/packages/app-client/src/components/purchase/section/MaterialCostSection.tsx @@ -311,6 +311,10 @@ export default function MaterialCostSection(props: { {/* 新增其他辅料费 */} {/* 辅料项目 */} - + + 辅料项目 @@ -391,7 +396,8 @@ export default function MaterialCostSection(props: { {/* 数量输入 */} {newCostData.itemId && newCostData.requireQuantityAndPrice && ( <> - + + 数量 @@ -414,7 +420,8 @@ export default function MaterialCostSection(props: { {/* 单价输入 */} - + + 单价 @@ -454,7 +461,8 @@ export default function MaterialCostSection(props: { {newCostData.itemId && !newCostData.requireQuantityAndPrice && ( <> - + + 金额 @@ -599,6 +607,10 @@ export default function MaterialCostSection(props: { return ( {requireQuantityAndPrice ? ( <> - + + 数量 @@ -648,7 +661,8 @@ export default function MaterialCostSection(props: { - + + 单价 @@ -678,7 +692,8 @@ export default function MaterialCostSection(props: { ) : ( <> - + + 金额 diff --git a/packages/app-client/src/components/purchase/section/PackageInfoSection.tsx b/packages/app-client/src/components/purchase/section/PackageInfoSection.tsx index fc9990c..670e503 100644 --- a/packages/app-client/src/components/purchase/section/PackageInfoSection.tsx +++ b/packages/app-client/src/components/purchase/section/PackageInfoSection.tsx @@ -527,6 +527,10 @@ export default function PackageInfoSection(props: { {/* 纸箱价格编辑弹窗 */} {packageData.map((pkg: BusinessAPI.OrderPackage) => ( - + + 销售单价 @@ -575,7 +580,8 @@ export default function PackageInfoSection(props: { - + + 成本单价 @@ -604,7 +610,8 @@ export default function PackageInfoSection(props: { - + + 箱重 diff --git a/packages/app-client/src/components/purchase/section/PackagingCostSection.tsx b/packages/app-client/src/components/purchase/section/PackagingCostSection.tsx index c0f8323..6f131f4 100644 --- a/packages/app-client/src/components/purchase/section/PackagingCostSection.tsx +++ b/packages/app-client/src/components/purchase/section/PackagingCostSection.tsx @@ -304,6 +304,10 @@ export default function PackagingCostSection(props: { {/* 新增其他费用*/} ( ( { return ( { + return ( + + {record.icon && ( + + )} + {record.project} + + ); + }, }, ...(purchaseOrderVO?.orderSupplierList.length > 0 ? purchaseOrderVO?.orderSupplierList.map((item) => { @@ -196,6 +206,7 @@ export default function PurchaseCostInfoSection(props: { data={[ { project: "毛重(斤)", + icon: "weight-scale", ...(purchaseOrderVO?.orderSupplierList.length > 0 ? purchaseOrderVO?.orderSupplierList.reduce((acc, item) => { acc[item.orderSupplierId] = item.grossWeight; @@ -211,6 +222,7 @@ export default function PurchaseCostInfoSection(props: { }, { project: "箱重(斤)", + icon: "weight-scale", ...(purchaseOrderVO?.orderSupplierList.length > 0 ? purchaseOrderVO?.orderSupplierList.reduce((acc, item) => { acc[item.orderSupplierId] = calculateBoxWeight(item); @@ -226,6 +238,7 @@ export default function PurchaseCostInfoSection(props: { }, { project: "净重(斤)", + icon: "weight-scale", ...(purchaseOrderVO?.orderSupplierList.length > 0 ? purchaseOrderVO?.orderSupplierList.reduce((acc, item) => { acc[item.orderSupplierId] = calculateNetWeight(item); @@ -241,6 +254,7 @@ export default function PurchaseCostInfoSection(props: { }, { project: "单价(元/斤)", + icon: "money-bill", ...(purchaseOrderVO?.orderSupplierList.length > 0 ? purchaseOrderVO?.orderSupplierList.reduce((acc, item) => { const purchasePrice = @@ -267,6 +281,7 @@ export default function PurchaseCostInfoSection(props: { }, { project: "合计(元)", + icon: "money-bill", ...(purchaseOrderVO?.orderSupplierList.length > 0 ? purchaseOrderVO?.orderSupplierList.reduce((acc, item) => { acc[item.orderSupplierId] = formatCurrency( @@ -287,6 +302,10 @@ export default function PurchaseCostInfoSection(props: { {/* 采购单价编辑弹窗 */} { if (file) { imageUrls.push(file); @@ -109,25 +110,31 @@ export default function SupplierInfoSection(props: { if (!currentSupplier || !currentUploadType) return; // 获取当前上传的文件列表 - const uploadedFiles = uploadStates[currentSupplier.orderSupplierId]?.[currentUploadType]; + const uploadedFiles = + uploadStates[currentSupplier.orderSupplierId]?.[currentUploadType]; if (!uploadedFiles) return; // 创建新的 purchaseOrderVO 副本 const updatedPurchaseOrderVO = { ...purchaseOrderVO }; if (updatedPurchaseOrderVO.orderSupplierList) { - updatedPurchaseOrderVO.orderSupplierList = [...updatedPurchaseOrderVO.orderSupplierList]; + updatedPurchaseOrderVO.orderSupplierList = [ + ...updatedPurchaseOrderVO.orderSupplierList, + ]; } // 找到当前供应商在列表中的索引 const supplierIndex = updatedPurchaseOrderVO.orderSupplierList?.findIndex( - (supplier) => supplier.orderSupplierId === currentSupplier.orderSupplierId + (supplier) => + supplier.orderSupplierId === currentSupplier.orderSupplierId, ); if (supplierIndex === undefined || supplierIndex === -1) return; // 更新对应的供应商字段 - const updatedSupplier = { ...updatedPurchaseOrderVO.orderSupplierList[supplierIndex] }; + const updatedSupplier = { + ...updatedPurchaseOrderVO.orderSupplierList[supplierIndex], + }; switch (currentUploadType) { case "emptyWeightImg": @@ -141,15 +148,15 @@ export default function SupplierInfoSection(props: { case "contractImg": // 合同图片可以有多张,保存所有 URL updatedSupplier.contractImg = uploadedFiles - .filter(file => file.url) - .map(file => file.url!); + .filter((file) => file.url) + .map((file) => file.url!); updatedSupplier.contractUpload = uploadedFiles.length > 0; break; case "invoiceImg": // 发票图片可以有多张,保存所有 URL updatedSupplier.invoiceImg = uploadedFiles - .filter(file => file.url) - .map(file => file.url!); + .filter((file) => file.url) + .map((file) => file.url!); updatedSupplier.invoiceUpload = uploadedFiles.length > 0; break; } @@ -187,7 +194,8 @@ export default function SupplierInfoSection(props: { {/* 瓜农凭证信息 */} - + + 空磅照片 @@ -217,7 +225,8 @@ export default function SupplierInfoSection(props: { - + + 总磅照片 @@ -247,7 +256,8 @@ export default function SupplierInfoSection(props: { - + + 合同 @@ -277,7 +287,8 @@ export default function SupplierInfoSection(props: { - + + 发票 @@ -313,6 +324,10 @@ export default function SupplierInfoSection(props: { {/* 未上传弹窗 */} setPopupVisible(false)} @@ -335,7 +350,9 @@ export default function SupplierInfoSection(props: { upload={uploadFile} defaultValue={ currentSupplier - ? uploadStates[currentSupplier.orderSupplierId]?.[currentUploadType] || [] + ? uploadStates[currentSupplier.orderSupplierId]?.[ + currentUploadType + ] || [] : [] } onChange={(fileList) => { diff --git a/packages/app-client/src/components/purchase/section/WorkerAdvanceSection.tsx b/packages/app-client/src/components/purchase/section/WorkerAdvanceSection.tsx index 759c716..b004e6e 100644 --- a/packages/app-client/src/components/purchase/section/WorkerAdvanceSection.tsx +++ b/packages/app-client/src/components/purchase/section/WorkerAdvanceSection.tsx @@ -243,6 +243,10 @@ export default function WorkerAdvanceSection(props: { {/* 新增其他工头垫付费用 */} { return ( { diff --git a/packages/app-client/src/pages/public/login/index.tsx b/packages/app-client/src/pages/public/login/index.tsx index cfcf8f9..3a802ca 100644 --- a/packages/app-client/src/pages/public/login/index.tsx +++ b/packages/app-client/src/pages/public/login/index.tsx @@ -40,13 +40,14 @@ export default base(function Page() { }} > { setShowBasic(false); }} - style={{ - maxWidth: "100%", - }} > { @@ -72,7 +73,7 @@ export default base(function Page() { {/* Logo展示区域 */} {channel?.logo && ( - + )} diff --git a/packages/app-client/src/pages/purchase/reviewer/audit.tsx b/packages/app-client/src/pages/purchase/reviewer/audit.tsx index 53aeea9..0a2414f 100644 --- a/packages/app-client/src/pages/purchase/reviewer/audit.tsx +++ b/packages/app-client/src/pages/purchase/reviewer/audit.tsx @@ -5,7 +5,16 @@ import { business } from "@/services"; import { useEffect, useState } from "react"; import { View } from "@tarojs/components"; import purchaseOrder from "@/constant/purchaseOrder"; -import { ActionSheet, Button, Dialog, Input, Popup, SafeArea, TextArea, Toast } from "@nutui/nutui-react-taro"; +import { + ActionSheet, + Button, + Dialog, + Input, + Popup, + SafeArea, + TextArea, + Toast, +} from "@nutui/nutui-react-taro"; import { BasicInfoSection, CompanyInfoSection, @@ -22,7 +31,7 @@ import { State, TaxProvisionSection, TaxSubsidySection, - WorkerAdvanceSection + WorkerAdvanceSection, } from "@/components"; import buildUrl from "@/utils/buildUrl"; import { PurchaseOrderCalculator } from "@/utils/PurchaseOrderCalculator"; @@ -482,7 +491,7 @@ export default hocAuth(function Page(props: CommonComponent) { <> {section.title} { diff --git a/packages/app-client/src/pages/supplier/purchase/invoice.tsx b/packages/app-client/src/pages/supplier/purchase/invoice.tsx index 405881e..fe5b0b0 100644 --- a/packages/app-client/src/pages/supplier/purchase/invoice.tsx +++ b/packages/app-client/src/pages/supplier/purchase/invoice.tsx @@ -1,10 +1,4 @@ -import { - ActionType, - Icon, - PageList, - SupplierPicker, - ToolBar, -} from "@/components"; +import { ActionType, Icon, PageList, SupplierPicker, ToolBar } from "@/components"; import { useShareAppMessage } from "@tarojs/taro"; import { useRef, useState } from "react"; import { business } from "@/services"; @@ -12,14 +6,7 @@ import hocAuth from "@/hocs/auth"; import { CommonComponent } from "@/types/typings"; import { View } from "@tarojs/components"; import dayjs from "dayjs"; -import { - Button, - Popup, - SafeArea, - Toast, - Uploader, - UploaderFileItem, -} from "@nutui/nutui-react-taro"; +import { Button, Popup, SafeArea, Toast, Uploader, UploaderFileItem } from "@nutui/nutui-react-taro"; import { uploadFile } from "@/utils/uploader"; export default hocAuth(function Page(props: CommonComponent) { @@ -104,6 +91,10 @@ export default hocAuth(function Page(props: CommonComponent) { <> {/* Popup 弹窗 */} setPopupVisible(false)}