update
This commit is contained in:
parent
5275f79993
commit
e5550582a9
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "ant-design-pro",
|
||||
"version": "4.5.85",
|
||||
"version": "4.5.88",
|
||||
"private": true,
|
||||
"description": "An out-of-box UI solution for enterprise applications",
|
||||
"scripts": {
|
||||
|
||||
@ -240,10 +240,12 @@ const CardCouponApplicRules: React.FC<{ currentUser: CurrentUser }> = (props) =>
|
||||
|
||||
// 删除规则记录
|
||||
const handleDeleteShopRule = async (id: any) => {
|
||||
setModalLoading(true)
|
||||
const req: any = {
|
||||
COOPSHOP_RULEId: id
|
||||
}
|
||||
const data = await handleDeleteCOOPSHOP_RULE(req)
|
||||
setModalLoading(false)
|
||||
if (data.Result_Code === 100) {
|
||||
handleSetlogSave(`删除【${currentRow?.COOPSHOP_RULE_NAME}】卡券规则`)
|
||||
message.success(data.Result_Desc)
|
||||
@ -378,6 +380,7 @@ const CardCouponApplicRules: React.FC<{ currentUser: CurrentUser }> = (props) =>
|
||||
})
|
||||
}}
|
||||
footer={<ModalFooter
|
||||
confirmLoading={modalLoading}
|
||||
hideDelete={!currentRow?.COOPSHOP_RULE_ID}
|
||||
handleDelete={async () => {
|
||||
await handleDeleteShopRule(currentRow?.COOPSHOP_RULE_ID)
|
||||
|
||||
@ -251,7 +251,7 @@ const CardHaveCollection: React.FC<{ currentUser: CurrentUser }> = (props) => {
|
||||
setShowDetail(false)
|
||||
}}
|
||||
>
|
||||
<CardVoucherSearch isComponent={true} parentRow={currentRow} />
|
||||
<CardVoucherSearch isComponent={true} parentRow={currentRow} parentSearchParams={searchParams} />
|
||||
</Drawer>
|
||||
|
||||
{/* 卡券的编辑 还是 新增 组件 */}
|
||||
|
||||
@ -138,6 +138,7 @@ const CardInfo = ({ showDetail, currentRow, currentUser, parentRef, setShowDetai
|
||||
ModalFormRef?.current?.resetFields()
|
||||
setCurrentRow(undefined)
|
||||
setShowDetail(false)
|
||||
setFileList([])
|
||||
if (parentRef) {
|
||||
parentRef.current?.reload()
|
||||
}
|
||||
@ -176,7 +177,9 @@ const CardInfo = ({ showDetail, currentRow, currentUser, parentRef, setShowDetai
|
||||
confirmLoading={modalLoading}
|
||||
hideDelete={!currentRow?.COUPON_ID}
|
||||
handleDelete={async () => {
|
||||
setModalLoading(true)
|
||||
await handleDeleteShopRule(currentRow?.COUPON_ID)
|
||||
setModalLoading(false)
|
||||
}}
|
||||
handleCancel={() => {
|
||||
ModalFormRef?.current?.resetFields()
|
||||
@ -207,6 +210,14 @@ const CardInfo = ({ showDetail, currentRow, currentUser, parentRef, setShowDetai
|
||||
setCouponDetail(data)
|
||||
setCOUPON_TYPE(currentRow?.COUPON_TYPE)
|
||||
setVALID_TYPE(currentRow?.VALID_TYPE)
|
||||
if (data.COUPON_IMAGEURL) {
|
||||
let list: any = [
|
||||
{ url: data.COUPON_IMAGEURL, name: "" }
|
||||
]
|
||||
setFileList(list)
|
||||
}
|
||||
|
||||
|
||||
return data
|
||||
} else {
|
||||
setCOUPON_TYPE(1000)
|
||||
|
||||
@ -22,8 +22,8 @@ import MemberDetail from "@/pages/travelMember/memberInfor/component/memberDetai
|
||||
import CardInfo from "../CardInformationManager/components/CardInfo";
|
||||
|
||||
|
||||
const CardVoucherSearch: React.FC<{ currentUser: CurrentUser, isComponent?: boolean, parentRow?: any }> = (props) => {
|
||||
const { currentUser, isComponent, parentRow } = props
|
||||
const CardVoucherSearch: React.FC<{ currentUser: CurrentUser, isComponent?: boolean, parentRow?: any, parentSearchParams?: any }> = (props) => {
|
||||
const { currentUser, isComponent, parentRow, parentSearchParams } = props
|
||||
const downloadBtnRef = useRef<any>()
|
||||
const actionRef = useRef<ActionType>();
|
||||
const formRef = useRef<FormInstance>();
|
||||
@ -112,7 +112,7 @@ const CardVoucherSearch: React.FC<{ currentUser: CurrentUser, isComponent?: bool
|
||||
{
|
||||
title: "优惠券名称",
|
||||
dataIndex: "COUPON_NAME",
|
||||
width: 150,
|
||||
width: 250,
|
||||
hideInSearch: true,
|
||||
ellipsis: true,
|
||||
align: "center",
|
||||
@ -152,7 +152,7 @@ const CardVoucherSearch: React.FC<{ currentUser: CurrentUser, isComponent?: bool
|
||||
{
|
||||
title: "优惠券状态",
|
||||
dataIndex: "COUPON_STATE",
|
||||
width: 150,
|
||||
width: 110,
|
||||
hideInSearch: true,
|
||||
ellipsis: true,
|
||||
align: "center",
|
||||
@ -241,6 +241,8 @@ const CardVoucherSearch: React.FC<{ currentUser: CurrentUser, isComponent?: bool
|
||||
search={isComponent ? false : { span: 6, defaultCollapsed: false }}
|
||||
request={async (params) => {
|
||||
console.log('selectedIdselectedIdselectedIdselectedId', selectedId);
|
||||
console.log('parentRowparentRowparentRow', parentRow);
|
||||
console.log('parentSearchParamsparentSearchParamsparentSearchParams', parentSearchParams);
|
||||
if (!selectedId && !isComponent) {
|
||||
return
|
||||
}
|
||||
@ -251,6 +253,9 @@ const CardVoucherSearch: React.FC<{ currentUser: CurrentUser, isComponent?: bool
|
||||
SearchParameter: {
|
||||
COUPON_IDS: parentRow?.COUPON_ID,
|
||||
WECHATAPP_APPID: "wxee018fb96955552a",
|
||||
// 领取时间
|
||||
CREATE_DATE_Start: parentSearchParams?.STARTDATE || '',
|
||||
CREATE_DATE_End: parentSearchParams?.ENDDATE || '',
|
||||
},
|
||||
PageIndex: 1,
|
||||
PageSize: 999999,
|
||||
|
||||
@ -1225,6 +1225,7 @@ const MerchantInformation: React.FC<{ currentUser: CurrentUser | undefined }> =
|
||||
setDoorImageList([])
|
||||
setInteriorImageList([])
|
||||
setCurrentShopData([])
|
||||
setSelectTab("1")
|
||||
}}
|
||||
// onOk={async () => { // 提交框内的数据
|
||||
// formRef?.current?.validateFields().then(() => {
|
||||
@ -1293,6 +1294,7 @@ const MerchantInformation: React.FC<{ currentUser: CurrentUser | undefined }> =
|
||||
handleModalVisible(false)
|
||||
setCurrentRowDetail(null)
|
||||
setCurrentRow(null)
|
||||
setSelectTab("1")
|
||||
}}>取消</Button>
|
||||
<Button type={"primary"} loading={confirmLoading} onClick={() => {
|
||||
formRef?.current?.validateFields().then(() => {
|
||||
@ -1696,6 +1698,8 @@ const MerchantInformation: React.FC<{ currentUser: CurrentUser | undefined }> =
|
||||
fileList: MerchantLogoList, // 绑定 fileList
|
||||
onChange: async (info: any) => {
|
||||
if (info.file.status === 'removed') {
|
||||
console.log('MerchantLogoListMerchantLogoList', MerchantLogoList);
|
||||
|
||||
const index = MerchantLogoList.findIndex(n => n.uid === info.file.uid);
|
||||
confirm({
|
||||
title: '确认删除该文件吗?',
|
||||
@ -1718,7 +1722,7 @@ const MerchantInformation: React.FC<{ currentUser: CurrentUser | undefined }> =
|
||||
message.error("删除失败")
|
||||
}
|
||||
} else {
|
||||
const files = [...fileList];
|
||||
const files = [...MerchantLogoList];
|
||||
files.splice(index, 1);
|
||||
setMerchantLogoList(files);
|
||||
}
|
||||
@ -1769,7 +1773,7 @@ const MerchantInformation: React.FC<{ currentUser: CurrentUser | undefined }> =
|
||||
message.error("删除失败")
|
||||
}
|
||||
} else {
|
||||
const files = [...fileList];
|
||||
const files = [...DoorImageList];
|
||||
files.splice(index, 1);
|
||||
setDoorImageList(files);
|
||||
}
|
||||
@ -1820,7 +1824,7 @@ const MerchantInformation: React.FC<{ currentUser: CurrentUser | undefined }> =
|
||||
message.error("删除失败")
|
||||
}
|
||||
} else {
|
||||
const files = [...fileList];
|
||||
const files = [...InteriorImage];
|
||||
files.splice(index, 1);
|
||||
setInteriorImageList(files);
|
||||
}
|
||||
|
||||
@ -246,6 +246,22 @@ const AfterSalesManage: React.FC<{ currentUser: CurrentUser | undefined }> = (pr
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
const markDisabled = (nodes: any, disabledIds: any) => {
|
||||
return nodes.map((node: any) => {
|
||||
const copy = { ...node };
|
||||
|
||||
if (disabledIds.includes(copy.FIELDENUM_ID)) {
|
||||
copy.disabled = true;
|
||||
}
|
||||
|
||||
if (copy.children && Array.isArray(copy.children)) {
|
||||
copy.children = markDisabled(copy.children, disabledIds);
|
||||
}
|
||||
return copy;
|
||||
});
|
||||
};
|
||||
|
||||
return (
|
||||
<PageContainer header={{
|
||||
title: '',
|
||||
@ -349,8 +365,10 @@ const AfterSalesManage: React.FC<{ currentUser: CurrentUser | undefined }> = (pr
|
||||
setCurrentRow(undefined);
|
||||
}}
|
||||
footer={<ModalFooter
|
||||
confirmLoading={confirmLoading}
|
||||
hideDelete={!currentRow?.FIELDENUM_ID}
|
||||
handleDelete={async () => {
|
||||
handleConfirmLoading(true)
|
||||
await handelDelete(currentRow?.FIELDENUM_ID)
|
||||
}}
|
||||
handleCancel={() => {
|
||||
@ -424,7 +442,8 @@ const AfterSalesManage: React.FC<{ currentUser: CurrentUser | undefined }> = (pr
|
||||
request={async () => {
|
||||
if (typeTreeData && typeTreeData.length > 0) {
|
||||
let list: any = [{ FIELDENUM_NAME: "默认类别", FIELDENUM_ID: -1 }, ...typeTreeData]
|
||||
return list
|
||||
let res = markDisabled(list, currentRow?.FIELDENUM_ID ? [currentRow.FIELDENUM_ID] : [])
|
||||
return res
|
||||
} else {
|
||||
const req = {
|
||||
FIELDEXPLAIN_FIELD: 'AFTERSALE_TYPE',
|
||||
@ -436,8 +455,11 @@ const AfterSalesManage: React.FC<{ currentUser: CurrentUser | undefined }> = (pr
|
||||
const data = await handeGetNestingFIELDENUMList(req);
|
||||
if (data && data.length > 0) {
|
||||
data.unshirft({ FIELDENUM_NAME: "默认类别", FIELDENUM_ID: -1 })
|
||||
|
||||
let res = markDisabled(data, currentRow?.FIELDENUM_ID ? [currentRow.FIELDENUM_ID] : [])
|
||||
|
||||
setTypeTreeData(data)
|
||||
return data
|
||||
return res
|
||||
} else {
|
||||
return [{ FIELDENUM_NAME: "默认类别", FIELDENUM_ID: -1 }]
|
||||
}
|
||||
|
||||
@ -26,7 +26,7 @@ const AnalysisOfHotSellingButUnsoldProducts: React.FC<{ currentUser: CurrentUser
|
||||
title: '查询内容',
|
||||
hideInTable: true,
|
||||
fieldProps: {
|
||||
placeholder: "请输入"
|
||||
placeholder: "请输入商品名称"
|
||||
}
|
||||
},
|
||||
{
|
||||
|
||||
@ -192,6 +192,7 @@ const OrderDetailModal = ({ modalVisible, handleCloseModal, currentRow, detailTy
|
||||
TrackingInfo: str || ""
|
||||
}
|
||||
console.log('reqreq', req);
|
||||
handleConfirmLoading(true)
|
||||
const data = await handeSendSaleBillGoods(req)
|
||||
if (data.Result_Code === 100) {
|
||||
message.success('发货成功!')
|
||||
@ -215,6 +216,7 @@ const OrderDetailModal = ({ modalVisible, handleCloseModal, currentRow, detailTy
|
||||
SaleBillChildId: currentRow?.SALEBILL_CHILD_ID || "",
|
||||
SaleBillId: currentRow?.SALEBILL_ID,
|
||||
}
|
||||
handleConfirmLoading(true)
|
||||
const data = await handeDeleteSaleBillInfo(req)
|
||||
if (data.Result_Code === 100) {
|
||||
message.success('删除成功!')
|
||||
@ -236,6 +238,11 @@ const OrderDetailModal = ({ modalVisible, handleCloseModal, currentRow, detailTy
|
||||
// 更新物流信息
|
||||
const handleUpdateLogisticsInformation = async () => {
|
||||
console.log('logisticsList', logisticsList);
|
||||
if (!logisticsList[0].company || !logisticsList[0].trackingNumber) {
|
||||
message.error('还没填入完整信息!')
|
||||
return
|
||||
}
|
||||
|
||||
let isOk: boolean = false
|
||||
let str: string = ''
|
||||
if (currentRow?.TAKE_TYPE === 1000) {
|
||||
@ -274,6 +281,7 @@ const OrderDetailModal = ({ modalVisible, handleCloseModal, currentRow, detailTy
|
||||
SaleBillId: currentRow?.SALEBILL_ID,
|
||||
TrackingInfo: str || ""
|
||||
}
|
||||
handleConfirmLoading(true)
|
||||
const data = await handeModifyTrackingInfo(req)
|
||||
if (data.Result_Code === 100) {
|
||||
message.success('更新成功!')
|
||||
@ -329,7 +337,7 @@ const OrderDetailModal = ({ modalVisible, handleCloseModal, currentRow, detailTy
|
||||
await handleGetDeleteOrder()
|
||||
}}
|
||||
>
|
||||
<Button type={'primary'} danger>删除订单</Button>
|
||||
<Button type={'primary'} danger loading={confirmLoading}>删除订单</Button>
|
||||
</Popconfirm> : ""
|
||||
}
|
||||
</div>
|
||||
@ -342,7 +350,7 @@ const OrderDetailModal = ({ modalVisible, handleCloseModal, currentRow, detailTy
|
||||
await handleUpdateLogisticsInformation()
|
||||
}}
|
||||
>
|
||||
<Button type="primary">更新物流信息</Button>
|
||||
<Button type="primary" loading={confirmLoading}>更新物流信息</Button>
|
||||
</Popconfirm> :
|
||||
currentRow?.SALEBILL_STATE === 1010 ?
|
||||
|
||||
@ -352,7 +360,7 @@ const OrderDetailModal = ({ modalVisible, handleCloseModal, currentRow, detailTy
|
||||
await handleProductDelivery()
|
||||
}}
|
||||
>
|
||||
<Button type="primary">确认发货</Button>
|
||||
<Button type="primary" loading={confirmLoading}>确认发货</Button>
|
||||
</Popconfirm> : ''
|
||||
}
|
||||
|
||||
|
||||
@ -241,7 +241,8 @@ const BuriedPointConfig: React.FC<{ currentUser: CurrentUser | undefined }> = (p
|
||||
UPDATE_STAFF_ID: currentUser?.ID,
|
||||
UPDATE_STAFF_NAME: currentUser?.Name,
|
||||
UPDATE_DATE: moment().format('YYYY-MM-DD HH:mm:ss'),
|
||||
ISSHOW: 1
|
||||
ISSHOW: 1,
|
||||
WECHATAPPBURYPOINT_STATE: 1
|
||||
}
|
||||
} else {
|
||||
req = {
|
||||
@ -252,7 +253,8 @@ const BuriedPointConfig: React.FC<{ currentUser: CurrentUser | undefined }> = (p
|
||||
UPDATE_STAFF_ID: currentUser?.ID,
|
||||
UPDATE_STAFF_NAME: currentUser?.Name,
|
||||
UPDATE_DATE: moment().format('YYYY-MM-DD HH:mm:ss'),
|
||||
ISSHOW: 1
|
||||
ISSHOW: 1,
|
||||
WECHATAPPBURYPOINT_STATE: 1
|
||||
}
|
||||
}
|
||||
console.log('reqreq', req);
|
||||
@ -391,8 +393,10 @@ const BuriedPointConfig: React.FC<{ currentUser: CurrentUser | undefined }> = (p
|
||||
handleModalVisible(false)
|
||||
}}
|
||||
footer={<ModalFooter
|
||||
confirmLoading={confirmLoading}
|
||||
hideDelete={!currentRow?.WECHATAPPBURYPOINT_ID}
|
||||
handleDelete={async () => {
|
||||
handleConfirmLoading(true)
|
||||
await handelDelete(currentRow?.WECHATAPPBURYPOINT_ID)
|
||||
}}
|
||||
handleCancel={() => {
|
||||
|
||||
@ -355,8 +355,10 @@ const ConsumptionTypeConfig: React.FC<{ currentUser: CurrentUser | undefined }>
|
||||
setCurrentRow(undefined);
|
||||
}}
|
||||
footer={<ModalFooter
|
||||
confirmLoading={confirmLoading}
|
||||
hideDelete={!currentRow?.FIELDENUM_ID}
|
||||
handleDelete={async () => {
|
||||
handleConfirmLoading(true)
|
||||
await handelDelete(currentRow?.FIELDENUM_ID)
|
||||
}}
|
||||
handleCancel={() => {
|
||||
|
||||
@ -8,11 +8,12 @@ import Draggable from "react-draggable";
|
||||
import ProForm, { ProFormCheckbox, ProFormDatePicker, ProFormDigit, ProFormSelect, ProFormText, ProFormTextArea, ProFormUploadButton } from "@ant-design/pro-form";
|
||||
import session from "@/utils/session";
|
||||
import moment from 'moment'
|
||||
import { handleGetACTIVITYDETAILList, handleGetSynchroACTIVITY } from "../../SharedRestStationManagement/service";
|
||||
import { handleDeleteACTIVITY, handleGetACTIVITYDETAILList, handleGetSynchroACTIVITY } from "../../SharedRestStationManagement/service";
|
||||
import { deleteAHYDPicture, uploadAHYDPicture } from "../service";
|
||||
import { compressImage } from "@/utils/imageCompress";
|
||||
import ProTable, { ActionType } from "@ant-design/pro-table";
|
||||
import './style.less'
|
||||
import ModalFooter from "../../scenicSpotConfig/component/modalFooter";
|
||||
|
||||
type DetailProps = {
|
||||
parentRow: any;// 传入的当前行数据
|
||||
@ -97,7 +98,7 @@ const EventRegistrationDetail = ({ parentRow, setparentRow, onShow, setOnShow, c
|
||||
{
|
||||
title: <div style={{ textAlign: 'center' }}>报名状态</div>,
|
||||
width: 180,
|
||||
dataIndex: "ACTIVITYDETAIL_STATE",
|
||||
dataIndex: "ACTIVITYDETAIL_STATE",
|
||||
ellipsis: true,
|
||||
hideInSearch: true,
|
||||
valueType: "select",
|
||||
@ -107,6 +108,27 @@ const EventRegistrationDetail = ({ parentRow, setparentRow, onShow, setOnShow, c
|
||||
},
|
||||
]
|
||||
|
||||
|
||||
// 删除活动的方法
|
||||
const handleGetDeleteActivity = async (activityId: string) => {
|
||||
const req: any = {
|
||||
ACTIVITYId: activityId
|
||||
}
|
||||
const data = await handleDeleteACTIVITY(req)
|
||||
if (data.Result_Code === 100) {
|
||||
message.success(data.Result_Desc)
|
||||
|
||||
handleConfirmLoading(false)
|
||||
setOnShow(false)
|
||||
setparentRow(undefined);
|
||||
setFileList([])
|
||||
modalFromRef.current?.resetFields();
|
||||
actionRef.current?.reload()
|
||||
} else {
|
||||
message.error(data.Result_Desc)
|
||||
}
|
||||
}
|
||||
|
||||
return (
|
||||
<div>
|
||||
<Modal
|
||||
@ -138,24 +160,47 @@ const EventRegistrationDetail = ({ parentRow, setparentRow, onShow, setOnShow, c
|
||||
height: '700px', // 你可以根据需要调整高度
|
||||
overflowY: 'auto',
|
||||
}}
|
||||
footer={readonly ? '' :
|
||||
<div style={{ width: '100%', display: 'flex', justifyContent: 'flex-end' }}>
|
||||
<Button onClick={() => {
|
||||
handleConfirmLoading(false)
|
||||
setOnShow(false)
|
||||
setparentRow(undefined);
|
||||
setFileList([])
|
||||
modalFromRef.current?.resetFields();
|
||||
}}>取消</Button>
|
||||
<Button type="primary" loading={confirmLoading} style={{ marginLeft: '16px' }} onClick={async () => {
|
||||
modalFromRef.current?.validateFields().then((values) => {
|
||||
modalFromRef.current?.submit();
|
||||
})
|
||||
}}>
|
||||
确认
|
||||
</Button>
|
||||
</div>
|
||||
}
|
||||
footer={readonly ? false : <ModalFooter
|
||||
confirmLoading={confirmLoading}
|
||||
hideDelete={!parentRow?.ACTIVITY_ID}
|
||||
handleDelete={async () => {
|
||||
handleConfirmLoading(true)
|
||||
await handleGetDeleteActivity(parentRow?.ACTIVITY_ID)
|
||||
handleConfirmLoading(false)
|
||||
}}
|
||||
handleCancel={() => {
|
||||
handleConfirmLoading(false)
|
||||
setOnShow(false)
|
||||
setparentRow(undefined);
|
||||
setFileList([])
|
||||
modalFromRef.current?.resetFields();
|
||||
}}
|
||||
handleOK={() => {
|
||||
modalFromRef.current?.validateFields().then((values) => {
|
||||
modalFromRef.current?.submit();
|
||||
})
|
||||
}}
|
||||
|
||||
/>}
|
||||
|
||||
// footer={readonly ? '' :
|
||||
// <div style={{ width: '100%', display: 'flex', justifyContent: 'flex-end' }}>
|
||||
// <Button onClick={() => {
|
||||
// handleConfirmLoading(false)
|
||||
// setOnShow(false)
|
||||
// setparentRow(undefined);
|
||||
// setFileList([])
|
||||
// modalFromRef.current?.resetFields();
|
||||
// }}>取消</Button>
|
||||
// <Button type="primary" loading={confirmLoading} style={{ marginLeft: '16px' }} onClick={async () => {
|
||||
// modalFromRef.current?.validateFields().then((values) => {
|
||||
// modalFromRef.current?.submit();
|
||||
// })
|
||||
// }}>
|
||||
// 确认
|
||||
// </Button>
|
||||
// </div>
|
||||
// }
|
||||
open={onShow}
|
||||
confirmLoading={confirmLoading}
|
||||
afterClose={() => {
|
||||
|
||||
@ -1,3 +1,4 @@
|
||||
// 活动信息填报
|
||||
import { connect } from "umi";
|
||||
import type { CurrentUser } from "umi";
|
||||
import type { ConnectState } from "@/models/connect";
|
||||
@ -85,6 +86,27 @@ const EventRegistration: React.FC<{ currentUser: CurrentUser }> = (props) => {
|
||||
dataIndex: "ACTIVITY_NAME",
|
||||
ellipsis: true,
|
||||
hideInSearch: true,
|
||||
render: (_, record) => {
|
||||
return record?.ACTIVITY_NAME ? <a onClick={() => {
|
||||
let imgList: any = []
|
||||
if (record?.ImageList && record?.ImageList.length > 0) {
|
||||
record?.ImageList.forEach((item: any) => {
|
||||
let obj = JSON.parse(JSON.stringify(item))
|
||||
obj.url = obj.ImageUrl
|
||||
obj.name = obj.ImageName
|
||||
obj.uid = item.ImageId
|
||||
obj.status = 'done'
|
||||
imgList.push(obj)
|
||||
})
|
||||
}
|
||||
setCurrentRow({
|
||||
...record,
|
||||
ACTIVITY_IMG: imgList
|
||||
})
|
||||
setFileList(imgList);
|
||||
handleModalVisible(true)
|
||||
}}>{record?.ACTIVITY_NAME}</a> : ""
|
||||
}
|
||||
},
|
||||
{
|
||||
title: <div style={{ textAlign: 'center' }}>活动范围</div>,
|
||||
@ -141,44 +163,44 @@ const EventRegistration: React.FC<{ currentUser: CurrentUser }> = (props) => {
|
||||
9: { text: '已下架', status: 'error' },
|
||||
}
|
||||
},
|
||||
{
|
||||
title: "操作",
|
||||
dataIndex: "option",
|
||||
width: 120,
|
||||
align: 'center',
|
||||
hideInSearch: true,
|
||||
render: (_, record) => {
|
||||
return <Space>
|
||||
<a onClick={() => {
|
||||
let imgList: any = []
|
||||
if (record?.ImageList && record?.ImageList.length > 0) {
|
||||
record?.ImageList.forEach((item: any) => {
|
||||
let obj = JSON.parse(JSON.stringify(item))
|
||||
obj.url = obj.ImageUrl
|
||||
obj.name = obj.ImageName
|
||||
obj.uid = item.ImageId
|
||||
obj.status = 'done'
|
||||
imgList.push(obj)
|
||||
})
|
||||
}
|
||||
setCurrentRow({
|
||||
...record,
|
||||
ACTIVITY_IMG: imgList
|
||||
})
|
||||
setFileList(imgList);
|
||||
handleModalVisible(true)
|
||||
}}>编辑</a>
|
||||
<Popconfirm
|
||||
title="确认删除?"
|
||||
onConfirm={async () => {
|
||||
await handleGetDeleteActivity(record.ACTIVITY_ID)
|
||||
}}
|
||||
>
|
||||
<a>删除</a>
|
||||
</Popconfirm>
|
||||
</Space>
|
||||
}
|
||||
}
|
||||
// {
|
||||
// title: "操作",
|
||||
// dataIndex: "option",
|
||||
// width: 120,
|
||||
// align: 'center',
|
||||
// hideInSearch: true,
|
||||
// render: (_, record) => {
|
||||
// return <Space>
|
||||
// <a onClick={() => {
|
||||
// let imgList: any = []
|
||||
// if (record?.ImageList && record?.ImageList.length > 0) {
|
||||
// record?.ImageList.forEach((item: any) => {
|
||||
// let obj = JSON.parse(JSON.stringify(item))
|
||||
// obj.url = obj.ImageUrl
|
||||
// obj.name = obj.ImageName
|
||||
// obj.uid = item.ImageId
|
||||
// obj.status = 'done'
|
||||
// imgList.push(obj)
|
||||
// })
|
||||
// }
|
||||
// setCurrentRow({
|
||||
// ...record,
|
||||
// ACTIVITY_IMG: imgList
|
||||
// })
|
||||
// setFileList(imgList);
|
||||
// handleModalVisible(true)
|
||||
// }}>编辑</a>
|
||||
// <Popconfirm
|
||||
// title="确认删除?"
|
||||
// onConfirm={async () => {
|
||||
// await handleGetDeleteActivity(record.ACTIVITY_ID)
|
||||
// }}
|
||||
// >
|
||||
// <a>删除</a>
|
||||
// </Popconfirm>
|
||||
// </Space>
|
||||
// }
|
||||
// }
|
||||
]
|
||||
|
||||
// 删除活动的方法
|
||||
|
||||
@ -367,7 +367,9 @@ const MEMBERSHIPTYPEConfig: React.FC<{ currentUser: CurrentUser | undefined }> =
|
||||
}}
|
||||
footer={<ModalFooter
|
||||
hideDelete={!currentRow?.FIELDENUM_ID}
|
||||
confirmLoading={confirmLoading}
|
||||
handleDelete={async () => {
|
||||
handleConfirmLoading(true)
|
||||
await handelDelete(currentRow?.FIELDENUM_ID)
|
||||
}}
|
||||
handleCancel={() => {
|
||||
|
||||
@ -364,8 +364,10 @@ const GrowthConfig: React.FC<{ currentUser: CurrentUser | undefined }> = (props)
|
||||
setCurrentRow(undefined);
|
||||
}}
|
||||
footer={<ModalFooter
|
||||
confirmLoading={confirmLoading}
|
||||
hideDelete={!currentRow?.FIELDENUM_ID}
|
||||
handleDelete={async () => {
|
||||
handleConfirmLoading(true)
|
||||
await handelDelete(currentRow?.FIELDENUM_ID)
|
||||
}}
|
||||
handleCancel={() => {
|
||||
|
||||
@ -564,12 +564,14 @@ const GrowthValueRuleConfig: React.FC<{ currentUser: CurrentUser | undefined }>
|
||||
footer={<ModalFooter
|
||||
hideDelete={!currentRow?.GROWTHSETTING_ID}
|
||||
handleDelete={async () => {
|
||||
handleConfirmLoading(true)
|
||||
await handelDelete(currentRow?.GROWTHSETTING_ID)
|
||||
}}
|
||||
handleCancel={() => {
|
||||
handleConfirmLoading(false)
|
||||
handleModalVisible(false)
|
||||
}}
|
||||
confirmLoading={confirmLoading}
|
||||
handleOK={() => {
|
||||
formRef?.current?.validateFields().then(() => {
|
||||
handleConfirmLoading(true)
|
||||
|
||||
@ -19,6 +19,7 @@ import { handleGetPictureList, handleGetRTNOTICEINFOList } from "../SharedRestSt
|
||||
import { handleGetServerpartTree } from "@/pages/basicManage/serverpartAssets/service";
|
||||
import { bool } from "aws-sdk/clients/signer";
|
||||
import InvestmentInformationDetail from "./components/InvestmentInformationDetail";
|
||||
import ModalFooter from "../scenicSpotConfig/component/modalFooter";
|
||||
|
||||
|
||||
const InvestmentInformation: React.FC<{ currentUser: CurrentUser }> = (props) => {
|
||||
@ -124,6 +125,13 @@ const InvestmentInformation: React.FC<{ currentUser: CurrentUser }> = (props) =>
|
||||
hideInSearch: true,
|
||||
width: 250,
|
||||
ellipsis: true,
|
||||
render: (_, record) => {
|
||||
return record?.NOTICEINFO_TITLE ?
|
||||
<a onClick={() => {
|
||||
setCurrentRow(record)
|
||||
setShowAddModal(true)
|
||||
}}>{record?.NOTICEINFO_TITLE || ""}</a> : ""
|
||||
}
|
||||
},
|
||||
{
|
||||
title: <div style={{ textAlign: 'center' }}>内容</div>,
|
||||
@ -183,33 +191,33 @@ const InvestmentInformation: React.FC<{ currentUser: CurrentUser }> = (props) =>
|
||||
align: 'center',
|
||||
ellipsis: true
|
||||
},
|
||||
{
|
||||
title: '操作',
|
||||
dataIndex: "options",
|
||||
hideInSearch: true,
|
||||
width: 120,
|
||||
align: 'center',
|
||||
ellipsis: true,
|
||||
render: (_, record) => {
|
||||
return <div>
|
||||
<a onClick={() => {
|
||||
setCurrentRow(record)
|
||||
setShowAddModal(true)
|
||||
}}>
|
||||
编辑
|
||||
</a>
|
||||
<Popconfirm
|
||||
title={'确认删除?'}
|
||||
onConfirm={() => {
|
||||
handleDeleteLine(record?.NOTICEINFO_ID)
|
||||
}}
|
||||
>
|
||||
<a style={{ marginLeft: '8px' }}>删除</a>
|
||||
</Popconfirm>
|
||||
// {
|
||||
// title: '操作',
|
||||
// dataIndex: "options",
|
||||
// hideInSearch: true,
|
||||
// width: 120,
|
||||
// align: 'center',
|
||||
// ellipsis: true,
|
||||
// render: (_, record) => {
|
||||
// return <div>
|
||||
// <a onClick={() => {
|
||||
// setCurrentRow(record)
|
||||
// setShowAddModal(true)
|
||||
// }}>
|
||||
// 编辑
|
||||
// </a>
|
||||
// <Popconfirm
|
||||
// title={'确认删除?'}
|
||||
// onConfirm={() => {
|
||||
// handleDeleteLine(record?.NOTICEINFO_ID)
|
||||
// }}
|
||||
// >
|
||||
// <a style={{ marginLeft: '8px' }}>删除</a>
|
||||
// </Popconfirm>
|
||||
|
||||
</div>
|
||||
}
|
||||
}
|
||||
// </div>
|
||||
// }
|
||||
// }
|
||||
]
|
||||
|
||||
|
||||
@ -285,6 +293,7 @@ const InvestmentInformation: React.FC<{ currentUser: CurrentUser }> = (props) =>
|
||||
const data = await handleDeleteNOTICEINFO({ NOTICEINFOId: id })
|
||||
if (data.Result_Code === 100) {
|
||||
message.success(data.Result_Desc)
|
||||
handleModalClose()
|
||||
actionRef.current?.reload()
|
||||
} else {
|
||||
message.error(data.Result_Desc)
|
||||
@ -403,6 +412,22 @@ const InvestmentInformation: React.FC<{ currentUser: CurrentUser }> = (props) =>
|
||||
setConfirmLoading(false)
|
||||
})
|
||||
}}
|
||||
footer={<ModalFooter
|
||||
hideDelete={!currentRow?.NOTICEINFO_ID}
|
||||
confirmLoading={confirmLoading}
|
||||
handleDelete={async () => {
|
||||
await handleDeleteLine(currentRow?.NOTICEINFO_ID)
|
||||
}}
|
||||
handleCancel={() => {
|
||||
handleModalClose()
|
||||
}}
|
||||
handleOK={() => {
|
||||
modalRef.current?.validateFields().then(async (res: any) => {
|
||||
setConfirmLoading(true)
|
||||
await handleAddHeadlines(res)
|
||||
setConfirmLoading(false)
|
||||
})
|
||||
}} />}
|
||||
>
|
||||
<ProForm
|
||||
formRef={modalRef}
|
||||
|
||||
@ -152,6 +152,7 @@ const LibraryInformationManager: React.FC<{ currentUser: CurrentUser }> = (props
|
||||
|
||||
// 同步图片信息
|
||||
const handleSynchroImage = async (obj: any) => {
|
||||
setModalLoading(true)
|
||||
let req: any = {}
|
||||
if (currentRow?.PICTURE_ID) {
|
||||
req = {
|
||||
@ -172,11 +173,12 @@ const LibraryInformationManager: React.FC<{ currentUser: CurrentUser }> = (props
|
||||
}
|
||||
const data = await hanleSynchroPICTURE(req)
|
||||
console.log('datadatadatadatadata', data);
|
||||
setModalLoading(false)
|
||||
if (data.Result_Code === 100) {
|
||||
message.success('同步成功!')
|
||||
setCurrentRow(null)
|
||||
setShowDetail(false)
|
||||
|
||||
setCurrentRow(null)
|
||||
setFileList([])
|
||||
actionRef.current?.reload()
|
||||
} else {
|
||||
message.error(data.Result_Desc)
|
||||
@ -185,11 +187,13 @@ const LibraryInformationManager: React.FC<{ currentUser: CurrentUser }> = (props
|
||||
|
||||
// 删除图片信息
|
||||
const handleDeleteImg = async (id: any) => {
|
||||
setModalLoading(true)
|
||||
const req: any = {
|
||||
PICTUREId: id,
|
||||
requestEncryption: true
|
||||
}
|
||||
const data = await hanleDeletePICTURE(req)
|
||||
setModalLoading(false)
|
||||
if (data.Result_Code === 100) {
|
||||
message.success('同步成功!')
|
||||
setCurrentRow(null)
|
||||
@ -268,6 +272,7 @@ const LibraryInformationManager: React.FC<{ currentUser: CurrentUser }> = (props
|
||||
},
|
||||
PageIndex: 1,
|
||||
PageSize: 999999,
|
||||
SortStr: "OPERATE_DATE desc",
|
||||
requestEncryption: true
|
||||
}
|
||||
|
||||
@ -281,6 +286,7 @@ const LibraryInformationManager: React.FC<{ currentUser: CurrentUser }> = (props
|
||||
toolbar={{
|
||||
actions: [
|
||||
<Button type={'primary'} onClick={() => {
|
||||
setFileList([])
|
||||
setShowDetail(true)
|
||||
}}>添加图片</Button>
|
||||
]
|
||||
@ -328,6 +334,7 @@ const LibraryInformationManager: React.FC<{ currentUser: CurrentUser }> = (props
|
||||
}}
|
||||
footer={<ModalFooter
|
||||
hideDelete={!currentRow?.PICTURE_ID}
|
||||
confirmLoading={modalLoading}
|
||||
handleDelete={async () => {
|
||||
// await handleDeleteShopRule(currentRow?.PICTURE_ID)
|
||||
await handleDeleteImg(currentRow?.PICTURE_ID)
|
||||
@ -385,9 +392,9 @@ const LibraryInformationManager: React.FC<{ currentUser: CurrentUser }> = (props
|
||||
formData.append('TableType', "1203");
|
||||
formData.append('ImageName', typeof info.file !== 'string' ? info.file?.name : '');
|
||||
if (info.filename) {
|
||||
message.info('图片上传中...')
|
||||
const success = await hanleSaveImgFile(formData)
|
||||
|
||||
console.log('successsuccesssuccess', success);
|
||||
message.success('图片上传成功!')
|
||||
|
||||
if (success) {
|
||||
const list = [{
|
||||
|
||||
@ -157,19 +157,19 @@ const MallClassificationManage: React.FC<{ currentUser: CurrentUser | undefined
|
||||
// },
|
||||
// initialValue: "1"
|
||||
// },
|
||||
{
|
||||
dataIndex: 'SCANCODE_ORDER',
|
||||
title: '上架状态',
|
||||
align: 'center',
|
||||
width: 120,
|
||||
ellipsis: true,
|
||||
valueType: "select",
|
||||
valueEnum: {
|
||||
"1": "上架",
|
||||
"0": "下架"
|
||||
},
|
||||
initialValue: "1"
|
||||
},
|
||||
// {
|
||||
// dataIndex: 'SCANCODE_ORDER',
|
||||
// title: '上架状态',
|
||||
// align: 'center',
|
||||
// width: 120,
|
||||
// ellipsis: true,
|
||||
// valueType: "select",
|
||||
// valueEnum: {
|
||||
// "1": "上架",
|
||||
// "0": "下架"
|
||||
// },
|
||||
// initialValue: "1"
|
||||
// },
|
||||
{
|
||||
dataIndex: "PRESALE_TYPE",
|
||||
title: "是否预售",
|
||||
@ -262,6 +262,8 @@ const MallClassificationManage: React.FC<{ currentUser: CurrentUser | undefined
|
||||
handleModalVisible(false)
|
||||
setFormPRESALE_TYPE(false)
|
||||
setFileList([])
|
||||
|
||||
handlesyncWeChatGetMallGoodsType({ appId: 'wxee018fb96955552a' })
|
||||
}
|
||||
}
|
||||
|
||||
@ -272,6 +274,8 @@ const MallClassificationManage: React.FC<{ currentUser: CurrentUser | undefined
|
||||
req = {
|
||||
...currentRow,
|
||||
...res,
|
||||
SCANCODE_ORDER: 1,
|
||||
USERDEFINEDTYPE_STATE: 1,
|
||||
GOODSTYPE: 4000,
|
||||
USERDEFINEDTYPE_ICO: fileList && fileList.length > 0 ? fileList[0].url : "",
|
||||
PRESALE_STARTTIME: res.PRESALE_TIME && res.PRESALE_TIME.length > 0 ? res.PRESALE_TIME[0] : "",
|
||||
@ -285,6 +289,8 @@ const MallClassificationManage: React.FC<{ currentUser: CurrentUser | undefined
|
||||
req = {
|
||||
...res,
|
||||
GOODSTYPE: 4000,
|
||||
SCANCODE_ORDER: 1,
|
||||
USERDEFINEDTYPE_STATE: 1,
|
||||
USERDEFINEDTYPE_ICO: fileList && fileList.length > 0 ? fileList[0].url : "",
|
||||
PRESALE_STARTTIME: res.PRESALE_TIME && res.PRESALE_TIME.length > 0 ? res.PRESALE_TIME[0] : "",
|
||||
PRESALE_ENDTIME: res.PRESALE_TIME && res.PRESALE_TIME.length > 0 ? res.PRESALE_TIME[1] : "",
|
||||
@ -335,7 +341,8 @@ const MallClassificationManage: React.FC<{ currentUser: CurrentUser | undefined
|
||||
OWNERUNIT_ID: currentUser?.OwnerUnitId,
|
||||
PROVINCE_CODE: "",
|
||||
GOODSTYPE: 4000,
|
||||
USERDEFINEDTYPE_STATE: params?.SCANCODE_ORDER,
|
||||
// USERDEFINEDTYPE_STATE: params?.SCANCODE_ORDER,
|
||||
USERDEFINEDTYPE_STATE: 1,
|
||||
SearchKey: params?.searchText || ""
|
||||
}
|
||||
const data = await handlGetUSERDEFINEDTYPEList(req);
|
||||
@ -425,8 +432,10 @@ const MallClassificationManage: React.FC<{ currentUser: CurrentUser | undefined
|
||||
setFileList([])
|
||||
}}
|
||||
footer={<ModalFooter
|
||||
confirmLoading={confirmLoading}
|
||||
hideDelete={!currentRow?.USERDEFINEDTYPE_ID}
|
||||
handleDelete={() => {
|
||||
handleConfirmLoading(true)
|
||||
handelDelete(currentRow.USERDEFINEDTYPE_ID)
|
||||
}}
|
||||
handleCancel={() => {
|
||||
@ -562,14 +571,14 @@ const MallClassificationManage: React.FC<{ currentUser: CurrentUser | undefined
|
||||
]}
|
||||
/>
|
||||
</Col>
|
||||
<Col span={12}>
|
||||
{/* <Col span={12}>
|
||||
<ProFormSelect
|
||||
name="SCANCODE_ORDER"
|
||||
label="上架状态"
|
||||
options={[{ label: "上架", value: 1 }, { label: "下架", value: 0 }]}
|
||||
/>
|
||||
</Col>
|
||||
<Col span={12}>
|
||||
</Col> */}
|
||||
{/* <Col span={12}>
|
||||
<ProFormSelect
|
||||
name="USERDEFINEDTYPE_STATE"
|
||||
label="有效状态"
|
||||
@ -581,7 +590,7 @@ const MallClassificationManage: React.FC<{ currentUser: CurrentUser | undefined
|
||||
}
|
||||
]}
|
||||
/>
|
||||
</Col>
|
||||
</Col> */}
|
||||
<Col span={12}>
|
||||
<ProFormSelect
|
||||
name="PRESALE_TYPE"
|
||||
|
||||
@ -288,6 +288,8 @@ const MallEvaluationManage: React.FC<{ currentUser: CurrentUser | undefined, isC
|
||||
search={isComponent ? false : { span: 6, labelWidth: 'auto' }}
|
||||
// 请求数据
|
||||
request={async (params, sorter) => {
|
||||
console.log('parentDetailparentDetailparentDetail', parentDetail);
|
||||
|
||||
const req: any = isComponent ? {
|
||||
searchParameter: {
|
||||
OWNERUNIT_ID: currentUser?.OwnerUnitId,
|
||||
@ -295,6 +297,7 @@ const MallEvaluationManage: React.FC<{ currentUser: CurrentUser | undefined, isC
|
||||
ISVALID: 1,
|
||||
CREATE_DATE_Start: params?.CREATE_DATE_Start || "",
|
||||
CREATE_DATE_End: params?.CREATE_DATE_End || "",
|
||||
MEMBERSHIP_ID: parentDetail?.MEMBERSHIP_ID || "",
|
||||
},
|
||||
PageIndex: 1,
|
||||
PageSize: 999999,
|
||||
|
||||
@ -380,8 +380,10 @@ const AddressDetail = ({ currentBigRow, currentUser, isComponent }: DetailProps)
|
||||
setCounty("")
|
||||
}}
|
||||
footer={<ModalFooter
|
||||
confirmLoading={confirmLoading}
|
||||
hideDelete={!currentRow?.MEMBERADDRESS_ID}
|
||||
handleDelete={async () => {
|
||||
handleConfirmLoading(true)
|
||||
await handelDelete(currentRow?.MEMBERADDRESS_ID)
|
||||
}}
|
||||
handleCancel={() => {
|
||||
|
||||
@ -354,7 +354,9 @@ const MemberTagManage: React.FC<{ currentUser: CurrentUser | undefined }> = (pro
|
||||
}}
|
||||
footer={<ModalFooter
|
||||
hideDelete={!currentRow?.AUTOTYPE_ID}
|
||||
confirmLoading={confirmLoading}
|
||||
handleDelete={async () => {
|
||||
handleConfirmLoading(true)
|
||||
await handelDelete(currentRow?.AUTOTYPE_ID)
|
||||
}}
|
||||
handleCancel={() => {
|
||||
|
||||
@ -358,8 +358,10 @@ const MembershipLevelManage: React.FC<{ currentUser: CurrentUser | undefined }>
|
||||
footer={<ModalFooter
|
||||
hideDelete={!currentRow?.FIELDENUM_ID}
|
||||
handleDelete={async () => {
|
||||
handleConfirmLoading(true)
|
||||
await handelDelete(currentRow?.FIELDENUM_ID)
|
||||
}}
|
||||
confirmLoading={confirmLoading}
|
||||
handleCancel={() => {
|
||||
handleConfirmLoading(false)
|
||||
handleModalVisible(false)
|
||||
|
||||
@ -285,7 +285,7 @@ const MerchantEvaluationManage: React.FC<{ currentUser: CurrentUser, isComponent
|
||||
expandRowByClick: true
|
||||
}}
|
||||
options={false}
|
||||
scroll={{ x: "100%", y: isComponent ? '300px' : "calc(100vh - 410px)" }}
|
||||
scroll={{ x: "100%", y: isComponent ? come === 'MerchantSalesRanking' ? 'calc(100vh )' : '300px' : "calc(100vh - 410px)" }}
|
||||
headerTitle={isComponent ? '' : <PageTitleBox props={props} />} // 列表表头
|
||||
search={isComponent ? false : { span: 8 }}
|
||||
request={async (params) => {
|
||||
|
||||
@ -111,6 +111,7 @@ const MerchantSalesRanking: React.FC<{ currentUser: CurrentUser | undefined }> =
|
||||
align: 'right',
|
||||
width: 120,
|
||||
hideInSearch: true,
|
||||
valueType: 'digit',
|
||||
sorter: true
|
||||
},
|
||||
{
|
||||
@ -121,6 +122,7 @@ const MerchantSalesRanking: React.FC<{ currentUser: CurrentUser | undefined }> =
|
||||
hideInSearch: true,
|
||||
sorter: true,
|
||||
defaultSortOrder: 'descend',
|
||||
valueType: 'digit',
|
||||
},
|
||||
{
|
||||
dataIndex: 'PERCAPITA',
|
||||
@ -128,7 +130,8 @@ const MerchantSalesRanking: React.FC<{ currentUser: CurrentUser | undefined }> =
|
||||
align: 'right',
|
||||
width: 120,
|
||||
hideInSearch: true,
|
||||
sorter: true
|
||||
sorter: true,
|
||||
valueType: 'digit',
|
||||
}
|
||||
]
|
||||
|
||||
|
||||
@ -392,6 +392,7 @@ const OperationTypeConfig: React.FC<{ currentUser: CurrentUser | undefined }> =
|
||||
footer={<ModalFooter
|
||||
hideDelete={!currentRow?.FIELDENUM_ID}
|
||||
handleDelete={async () => {
|
||||
handleConfirmLoading(true)
|
||||
await handelDelete(currentRow?.FIELDENUM_ID)
|
||||
}}
|
||||
handleCancel={() => {
|
||||
@ -406,7 +407,7 @@ const OperationTypeConfig: React.FC<{ currentUser: CurrentUser | undefined }> =
|
||||
formRef?.current?.submit()
|
||||
})
|
||||
}}
|
||||
|
||||
confirmLoading={confirmLoading}
|
||||
/>}
|
||||
onCancel={() => {
|
||||
handleConfirmLoading(false)
|
||||
|
||||
@ -131,19 +131,19 @@ const OrderCategoryManage: React.FC<{ currentUser: CurrentUser | undefined }> =
|
||||
ellipsis: true,
|
||||
hideInSearch: true,
|
||||
},
|
||||
{
|
||||
dataIndex: 'USERDEFINEDTYPE_STATE',
|
||||
title: '有效状态',
|
||||
align: 'center',
|
||||
width: 120,
|
||||
ellipsis: true,
|
||||
valueType: "select",
|
||||
valueEnum: {
|
||||
"1": "有效",
|
||||
"0": "无效"
|
||||
},
|
||||
initialValue: "1"
|
||||
},
|
||||
// {
|
||||
// dataIndex: 'USERDEFINEDTYPE_STATE',
|
||||
// title: '有效状态',
|
||||
// align: 'center',
|
||||
// width: 120,
|
||||
// ellipsis: true,
|
||||
// valueType: "select",
|
||||
// valueEnum: {
|
||||
// "1": "有效",
|
||||
// "0": "无效"
|
||||
// },
|
||||
// initialValue: "1"
|
||||
// },
|
||||
{
|
||||
dataIndex: 'SCANCODE_ORDER',
|
||||
title: '上架状态',
|
||||
@ -261,6 +261,7 @@ const OrderCategoryManage: React.FC<{ currentUser: CurrentUser | undefined }> =
|
||||
...currentRow,
|
||||
...res,
|
||||
GOODSTYPE: 3000,
|
||||
USERDEFINEDTYPE_STATE: 1,
|
||||
USERDEFINEDTYPE_ICO: fileList && fileList.length > 0 ? fileList[0].url : "",
|
||||
PRESALE_STARTTIME: res.PRESALE_TIME && res.PRESALE_TIME.length > 0 ? res.PRESALE_TIME[0] : "",
|
||||
PRESALE_ENDTIME: res.PRESALE_TIME && res.PRESALE_TIME.length > 0 ? res.PRESALE_TIME[1] : "",
|
||||
@ -273,6 +274,7 @@ const OrderCategoryManage: React.FC<{ currentUser: CurrentUser | undefined }> =
|
||||
req = {
|
||||
...res,
|
||||
GOODSTYPE: 3000,
|
||||
USERDEFINEDTYPE_STATE: 1,
|
||||
USERDEFINEDTYPE_ICO: fileList && fileList.length > 0 ? fileList[0].url : "",
|
||||
PRESALE_STARTTIME: res.PRESALE_TIME && res.PRESALE_TIME.length > 0 ? res.PRESALE_TIME[0] : "",
|
||||
PRESALE_ENDTIME: res.PRESALE_TIME && res.PRESALE_TIME.length > 0 ? res.PRESALE_TIME[1] : "",
|
||||
@ -299,6 +301,20 @@ const OrderCategoryManage: React.FC<{ currentUser: CurrentUser | undefined }> =
|
||||
}
|
||||
}
|
||||
|
||||
const markDisabled = (nodes: any, disabledIds: any) => {
|
||||
return nodes.map((node: any) => {
|
||||
const copy = { ...node };
|
||||
|
||||
if (disabledIds.includes(copy.USERDEFINEDTYPE_ID)) {
|
||||
copy.disabled = true;
|
||||
}
|
||||
|
||||
if (copy.children && Array.isArray(copy.children)) {
|
||||
copy.children = markDisabled(copy.children, disabledIds);
|
||||
}
|
||||
return copy;
|
||||
});
|
||||
};
|
||||
return (
|
||||
<PageContainer header={{
|
||||
title: '',
|
||||
@ -321,7 +337,8 @@ const OrderCategoryManage: React.FC<{ currentUser: CurrentUser | undefined }> =
|
||||
OWNERUNIT_ID: currentUser?.OwnerUnitId,
|
||||
PROVINCE_CODE: "",
|
||||
GOODSTYPE: 3000,
|
||||
USERDEFINEDTYPE_STATE: params?.USERDEFINEDTYPE_STATE
|
||||
// USERDEFINEDTYPE_STATE: params?.USERDEFINEDTYPE_STATE
|
||||
USERDEFINEDTYPE_STATE: 1
|
||||
// SearchKey: ""
|
||||
}
|
||||
const data = await handlGetUSERDEFINEDTYPEList(req);
|
||||
@ -410,8 +427,10 @@ const OrderCategoryManage: React.FC<{ currentUser: CurrentUser | undefined }> =
|
||||
}}
|
||||
footer={
|
||||
<ModalFooter
|
||||
confirmLoading={confirmLoading}
|
||||
hideDelete={!currentRow?.USERDEFINEDTYPE_ID}
|
||||
handleDelete={async () => {
|
||||
handleConfirmLoading(true)
|
||||
await handelDelete(currentRow?.USERDEFINEDTYPE_ID)
|
||||
}}
|
||||
handleCancel={() => {
|
||||
@ -487,7 +506,8 @@ const OrderCategoryManage: React.FC<{ currentUser: CurrentUser | undefined }> =
|
||||
request={async () => {
|
||||
if (typeTreeData && typeTreeData.length > 0) {
|
||||
let list: any = [{ USERDEFINEDTYPE_NAME: "默认类别", USERDEFINEDTYPE_ID: -1 }, ...typeTreeData]
|
||||
return list
|
||||
let res = markDisabled(list, currentRow?.USERDEFINEDTYPE_ID ? [currentRow.USERDEFINEDTYPE_ID] : [])
|
||||
return res
|
||||
} else {
|
||||
const req = {
|
||||
OWNERUNIT_ID: currentUser?.OwnerUnitId,
|
||||
@ -499,7 +519,9 @@ const OrderCategoryManage: React.FC<{ currentUser: CurrentUser | undefined }> =
|
||||
if (data.List && data.List.length > 0) {
|
||||
data.List.unshirft({ USERDEFINEDTYPE_NAME: "默认类别", USERDEFINEDTYPE_ID: -1 })
|
||||
setTypeTreeData(data.List)
|
||||
return data.List
|
||||
let res = markDisabled(data.List, currentRow?.USERDEFINEDTYPE_ID ? [currentRow.USERDEFINEDTYPE_ID] : [])
|
||||
|
||||
return res
|
||||
} else {
|
||||
return [{ USERDEFINEDTYPE_NAME: "默认类别", USERDEFINEDTYPE_ID: -1 }]
|
||||
}
|
||||
@ -554,7 +576,7 @@ const OrderCategoryManage: React.FC<{ currentUser: CurrentUser | undefined }> =
|
||||
options={[{ label: "上架", value: 1 }, { label: "下架", value: 0 }]}
|
||||
/>
|
||||
</Col>
|
||||
<Col span={12}>
|
||||
{/* <Col span={12}>
|
||||
<ProFormSelect
|
||||
name="USERDEFINEDTYPE_STATE"
|
||||
label="有效状态"
|
||||
@ -566,7 +588,7 @@ const OrderCategoryManage: React.FC<{ currentUser: CurrentUser | undefined }> =
|
||||
}
|
||||
]}
|
||||
/>
|
||||
</Col>
|
||||
</Col> */}
|
||||
<Col span={12}>
|
||||
<ProFormSelect
|
||||
name="PRESALE_TYPE"
|
||||
|
||||
@ -607,16 +607,18 @@ const OrderProductManage: React.FC<{ currentUser: CurrentUser | undefined }> = (
|
||||
preserve={false}
|
||||
request={async () => {
|
||||
if (currentRow) {
|
||||
if (currentRow?.ImageInfo && currentRow?.ImageInfo.length > 0) {
|
||||
if (currentRow?.ImageInfo) {
|
||||
let list: any = []
|
||||
currentRow?.ImageInfo.forEach((item: any) => {
|
||||
let obj = JSON.parse(JSON.stringify(item))
|
||||
obj.url = obj.ImageUrl
|
||||
obj.name = obj.ImageName
|
||||
obj.uid = item.ImageId
|
||||
obj.status = 'done'
|
||||
list.push(obj)
|
||||
})
|
||||
// currentRow?.ImageInfo.forEach((item: any) => {
|
||||
let obj = JSON.parse(JSON.stringify(currentRow?.ImageInfo))
|
||||
obj.url = obj.ImageUrl
|
||||
obj.name = obj.ImageName
|
||||
obj.uid = obj.ImageId
|
||||
obj.status = 'done'
|
||||
list.push(obj)
|
||||
// })
|
||||
console.log('listlistlist', list);
|
||||
|
||||
setFileList(list)
|
||||
}
|
||||
|
||||
|
||||
@ -143,7 +143,7 @@ const PointsRecordSearch: React.FC<{ currentUser: CurrentUser, isComponent?: Boo
|
||||
AUTOTYPE_TYPEID: '2000',
|
||||
AUTOTYPE_PID: "",
|
||||
OWNERUNIT_ID: currentUser?.OwnerUnitId,
|
||||
AUTOTYPE_VALID: "",
|
||||
AUTOTYPE_VALID: 1,
|
||||
SearchKey: ""
|
||||
}
|
||||
const data = await handeGetNestingAUTOTYPEList(req);
|
||||
@ -335,7 +335,7 @@ const PointsRecordSearch: React.FC<{ currentUser: CurrentUser, isComponent?: Boo
|
||||
SearchParameter: {
|
||||
OWNERUNIT_ID: 911,
|
||||
MEMBERSHIP_IDS: parentDetail?.MEMBERSHIP_ID,
|
||||
MEMBERSHIP_TARGETS: params?.MEMBERSHIP_TARGET && params?.MEMBERSHIP_TARGET.length > 0 ? params?.MEMBERSHIP_TARGET.toString() : ""
|
||||
MEMBERSHIP_TARGET: params?.MEMBERSHIP_TARGET && params?.MEMBERSHIP_TARGET.length > 0 ? params?.MEMBERSHIP_TARGET.toString() : ""
|
||||
},
|
||||
PageIndex: params?.current,
|
||||
PageSize: 20,
|
||||
@ -349,7 +349,7 @@ const PointsRecordSearch: React.FC<{ currentUser: CurrentUser, isComponent?: Boo
|
||||
OWNERUNIT_ID: 911,
|
||||
POINT_TYPE: params?.POINT_TYPE === '0' ? '' : params?.POINT_TYPE,
|
||||
POINT_SOURCE: params?.POINT_SOURCE === '0' ? '' : params?.POINT_SOURCE,
|
||||
MEMBERSHIP_TARGETS: params?.MEMBERSHIP_TARGET && params?.MEMBERSHIP_TARGET.length > 0 ? params?.MEMBERSHIP_TARGET.toString() : ""
|
||||
MEMBERSHIP_TARGET: params?.MEMBERSHIP_TARGET && params?.MEMBERSHIP_TARGET.length > 0 ? params?.MEMBERSHIP_TARGET.toString() : ""
|
||||
},
|
||||
PageIndex: params?.current,
|
||||
PageSize: 20,
|
||||
|
||||
@ -386,8 +386,10 @@ const PointConfig: React.FC<{ currentUser: CurrentUser | undefined }> = (props)
|
||||
setCurrentRow(undefined);
|
||||
}}
|
||||
footer={<ModalFooter
|
||||
confirmLoading={confirmLoading}
|
||||
hideDelete={!currentRow?.FIELDENUM_ID}
|
||||
handleDelete={async () => {
|
||||
handleConfirmLoading(true)
|
||||
await handelDelete(currentRow?.FIELDENUM_ID)
|
||||
}}
|
||||
handleCancel={() => {
|
||||
|
||||
@ -590,8 +590,10 @@ const PointsRuleConfig: React.FC<{ currentUser: CurrentUser | undefined }> = (pr
|
||||
handleModalVisible(false)
|
||||
}}
|
||||
footer={<ModalFooter
|
||||
confirmLoading={confirmLoading}
|
||||
hideDelete={!currentRow?.SCORESETTING_ID}
|
||||
handleDelete={async () => {
|
||||
handleConfirmLoading(true)
|
||||
await handelDelete(currentRow?.SCORESETTING_ID)
|
||||
}}
|
||||
handleCancel={() => {
|
||||
|
||||
@ -288,8 +288,10 @@ const ProductWarningRuleSetting: React.FC<{ currentUser: CurrentUser }> = (props
|
||||
setCurrentRow(undefined);
|
||||
}}
|
||||
footer={<ModalFooter
|
||||
confirmLoading={confirmLoading}
|
||||
hideDelete={!currentRow?.COMMODITYWARNING_ID}
|
||||
handleDelete={async () => {
|
||||
handleConfirmLoading(true)
|
||||
await handelDelete(currentRow?.COMMODITYWARNING_ID)
|
||||
}}
|
||||
handleCancel={() => {
|
||||
|
||||
@ -10,10 +10,11 @@ import { handleGetServerpartInfo } from "@/pages/newDataAnalysis/service";
|
||||
import { compressImage } from "@/utils/imageCompress";
|
||||
import { ExclamationCircleOutlined } from "@ant-design/icons";
|
||||
import { deleteAHYDPicture, uploadAHYDPicture } from "@/services/picture";
|
||||
import { handleGetRESTSTATIONBILLList, handleGetSynchroRESTSTATION } from "../service";
|
||||
import { handleDeleteRESTSTATION, handleGetRESTSTATIONBILLList, handleGetSynchroRESTSTATION } from "../service";
|
||||
import moment from 'moment'
|
||||
import ProTable, { ActionType } from "@ant-design/pro-table";
|
||||
import SharedRestStationOrderDetail from "./SharedRestStationOrderDetail";
|
||||
import ModalFooter from "../../scenicSpotConfig/component/modalFooter";
|
||||
|
||||
type DetailProps = {
|
||||
parentRow: any; // 当前行数据
|
||||
@ -211,6 +212,7 @@ const SharedRestStationDetail = ({ parentRow, setParentRow, onShow, setOnShow, r
|
||||
req = {
|
||||
...parentRow,
|
||||
...obj,
|
||||
RESTSTATION_STATE: 1,
|
||||
STAFF_ID: currentUser.ID,
|
||||
STAFF_NAME: currentUser.Name,
|
||||
OPERATE_DATE: moment().format('YYYY-MM-DD HH:mm:ss'),
|
||||
@ -218,6 +220,7 @@ const SharedRestStationDetail = ({ parentRow, setParentRow, onShow, setOnShow, r
|
||||
} else {
|
||||
req = {
|
||||
...obj,
|
||||
RESTSTATION_STATE: 1,
|
||||
PROVINCE_CODE: "530000",
|
||||
SERVERPART_NAME: serverpartObj[obj.SERVERPART_ID],
|
||||
STAFF_ID: currentUser.ID,
|
||||
@ -261,6 +264,26 @@ const SharedRestStationDetail = ({ parentRow, setParentRow, onShow, setOnShow, r
|
||||
}
|
||||
}
|
||||
|
||||
// 删除共享休息站
|
||||
const handleGetDeleteActivity = async (id: any) => {
|
||||
const req: any = {
|
||||
RESTSTATIONId: id
|
||||
}
|
||||
const data = await handleDeleteRESTSTATION(req)
|
||||
if (data.Result_Code === 100) {
|
||||
message.success(data.Result_Desc)
|
||||
handleConfirmLoading(false)
|
||||
setOnShow(false)
|
||||
setParentRow(undefined);
|
||||
setREGIONList([])
|
||||
setFileList([])
|
||||
actionRef.current?.reload()
|
||||
} else {
|
||||
message.error(data.Result_Desc)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
return (
|
||||
<div>
|
||||
<Modal
|
||||
@ -305,23 +328,47 @@ const SharedRestStationDetail = ({ parentRow, setParentRow, onShow, setOnShow, r
|
||||
setREGIONList([])
|
||||
setFileList([])
|
||||
}}
|
||||
footer={readonly ? '' :
|
||||
<div style={{ width: '100%', display: 'flex', justifyContent: 'flex-end' }}>
|
||||
<Button onClick={() => {
|
||||
footer={
|
||||
readonly ? false : <ModalFooter
|
||||
confirmLoading={confirmLoading}
|
||||
hideDelete={!parentRow?.RESTSTATION_ID}
|
||||
handleDelete={async () => {
|
||||
handleConfirmLoading(true)
|
||||
await handleGetDeleteActivity(parentRow.RESTSTATION_ID)
|
||||
handleConfirmLoading(false)
|
||||
}}
|
||||
handleCancel={() => {
|
||||
handleConfirmLoading(false)
|
||||
setOnShow(false)
|
||||
setParentRow(undefined);
|
||||
setREGIONList([])
|
||||
setFileList([])
|
||||
}}>取消</Button>
|
||||
<Button type="primary" loading={confirmLoading} style={{ marginLeft: '16px' }} onClick={async () => {
|
||||
}}
|
||||
handleOK={() => {
|
||||
modalFromRef.current?.validateFields().then(async (values) => {
|
||||
await handleAddUpdateStation(values)
|
||||
})
|
||||
}}>
|
||||
确认
|
||||
</Button>
|
||||
</div>
|
||||
}}
|
||||
|
||||
/>
|
||||
|
||||
// readonly ? '' :
|
||||
// <div style={{ width: '100%', display: 'flex', justifyContent: 'flex-end' }}>
|
||||
// <Button onClick={() => {
|
||||
// handleConfirmLoading(false)
|
||||
// setOnShow(false)
|
||||
// setParentRow(undefined);
|
||||
// setREGIONList([])
|
||||
// setFileList([])
|
||||
// }}>取消</Button>
|
||||
// <Button type="primary" loading={confirmLoading} style={{ marginLeft: '16px' }} onClick={async () => {
|
||||
// modalFromRef.current?.validateFields().then(async (values) => {
|
||||
// await handleAddUpdateStation(values)
|
||||
// })
|
||||
// }}>
|
||||
// 确认
|
||||
// </Button>
|
||||
// </div>
|
||||
}
|
||||
modalRender={(modal) => {
|
||||
return <Draggable
|
||||
@ -459,7 +506,7 @@ const SharedRestStationDetail = ({ parentRow, setParentRow, onShow, setOnShow, r
|
||||
}}
|
||||
/>
|
||||
</Col>
|
||||
<Col span={12}>
|
||||
{/* <Col span={12}>
|
||||
<ProFormSelect
|
||||
label={"有效状态"}
|
||||
name={"RESTSTATION_STATE"}
|
||||
@ -468,7 +515,7 @@ const SharedRestStationDetail = ({ parentRow, setParentRow, onShow, setOnShow, r
|
||||
}}
|
||||
initialValue={1}
|
||||
/>
|
||||
</Col>
|
||||
</Col> */}
|
||||
<Col span={24}>
|
||||
<ProFormTextArea
|
||||
label={"备注说明"}
|
||||
|
||||
@ -45,6 +45,27 @@ const SharedRestStationManagement: React.FC<{ currentUser: CurrentUser }> = (pro
|
||||
dataIndex: "RESTSTATION_NAME",
|
||||
ellipsis: true,
|
||||
hideInSearch: true,
|
||||
render: (_, record) => {
|
||||
return record?.RESTSTATION_NAME ? <a onClick={() => {
|
||||
let imgList: any = []
|
||||
if (record?.ImageList && record?.ImageList.length > 0) {
|
||||
record?.ImageList.forEach((item: any) => {
|
||||
let obj = JSON.parse(JSON.stringify(item))
|
||||
obj.url = obj.ImageUrl
|
||||
obj.name = obj.ImageName
|
||||
obj.uid = item.ImageId
|
||||
obj.status = 'done'
|
||||
imgList.push(obj)
|
||||
})
|
||||
}
|
||||
setCurrentRow({
|
||||
...record,
|
||||
ACTIVITY_IMG: imgList
|
||||
})
|
||||
setFileList(imgList);
|
||||
handleModalVisible(true)
|
||||
}}>{record?.RESTSTATION_NAME}</a> : ""
|
||||
}
|
||||
},
|
||||
{
|
||||
title: <div style={{ textAlign: 'center' }}>服务区名称</div>,
|
||||
@ -82,56 +103,56 @@ const SharedRestStationManagement: React.FC<{ currentUser: CurrentUser }> = (pro
|
||||
2: { text: '使用中', status: 'error' },
|
||||
}
|
||||
},
|
||||
{
|
||||
title: <div style={{ textAlign: 'center' }}>有效状态</div>,
|
||||
width: 120,
|
||||
dataIndex: "LOCK_STATUS",
|
||||
ellipsis: true,
|
||||
hideInSearch: true,
|
||||
align: 'center',
|
||||
valueType: "select",
|
||||
fieldProps: {
|
||||
options: [{ label: "有效", value: 1 }, { label: "无效", value: 0 }]
|
||||
}
|
||||
},
|
||||
{
|
||||
title: "操作",
|
||||
dataIndex: "option",
|
||||
width: 120,
|
||||
align: 'center',
|
||||
hideInSearch: true,
|
||||
render: (_, record) => {
|
||||
return <Space>
|
||||
<a onClick={() => {
|
||||
let imgList: any = []
|
||||
if (record?.ImageList && record?.ImageList.length > 0) {
|
||||
record?.ImageList.forEach((item: any) => {
|
||||
let obj = JSON.parse(JSON.stringify(item))
|
||||
obj.url = obj.ImageUrl
|
||||
obj.name = obj.ImageName
|
||||
obj.uid = item.ImageId
|
||||
obj.status = 'done'
|
||||
imgList.push(obj)
|
||||
})
|
||||
}
|
||||
setCurrentRow({
|
||||
...record,
|
||||
ACTIVITY_IMG: imgList
|
||||
})
|
||||
setFileList(imgList);
|
||||
handleModalVisible(true)
|
||||
}}>编辑</a>
|
||||
<Popconfirm
|
||||
title="确认删除?"
|
||||
onConfirm={async () => {
|
||||
await handleGetDeleteActivity(record.RESTSTATION_ID)
|
||||
}}
|
||||
>
|
||||
<a>删除</a>
|
||||
</Popconfirm>
|
||||
</Space>
|
||||
}
|
||||
}
|
||||
// {
|
||||
// title: <div style={{ textAlign: 'center' }}>有效状态</div>,
|
||||
// width: 120,
|
||||
// dataIndex: "RESTSTATION_STATE",
|
||||
// ellipsis: true,
|
||||
// hideInSearch: true,
|
||||
// align: 'center',
|
||||
// valueType: "select",
|
||||
// fieldProps: {
|
||||
// options: [{ label: "有效", value: 1 }, { label: "无效", value: 0 }]
|
||||
// }
|
||||
// },
|
||||
// {
|
||||
// title: "操作",
|
||||
// dataIndex: "option",
|
||||
// width: 120,
|
||||
// align: 'center',
|
||||
// hideInSearch: true,
|
||||
// render: (_, record) => {
|
||||
// return <Space>
|
||||
// <a onClick={() => {
|
||||
// let imgList: any = []
|
||||
// if (record?.ImageList && record?.ImageList.length > 0) {
|
||||
// record?.ImageList.forEach((item: any) => {
|
||||
// let obj = JSON.parse(JSON.stringify(item))
|
||||
// obj.url = obj.ImageUrl
|
||||
// obj.name = obj.ImageName
|
||||
// obj.uid = item.ImageId
|
||||
// obj.status = 'done'
|
||||
// imgList.push(obj)
|
||||
// })
|
||||
// }
|
||||
// setCurrentRow({
|
||||
// ...record,
|
||||
// ACTIVITY_IMG: imgList
|
||||
// })
|
||||
// setFileList(imgList);
|
||||
// handleModalVisible(true)
|
||||
// }}>编辑</a>
|
||||
// <Popconfirm
|
||||
// title="确认删除?"
|
||||
// onConfirm={async () => {
|
||||
// await handleGetDeleteActivity(record.RESTSTATION_ID)
|
||||
// }}
|
||||
// >
|
||||
// <a>删除</a>
|
||||
// </Popconfirm>
|
||||
// </Space>
|
||||
// }
|
||||
// }
|
||||
]
|
||||
|
||||
// 删除共享休息站
|
||||
|
||||
@ -663,10 +663,10 @@ const SummaryOfReservation: React.FC<{ currentUser: CurrentUser | undefined }> =
|
||||
OWNERUNIT_ID: currentUser?.OwnerUnitId,
|
||||
ORDER_DATE_Start: searchParams?.StartDate || "",
|
||||
ORDER_DATE_End: searchParams?.EndDate || "",
|
||||
SALEBILL_STATES: selectTab == 1 ? '1010,2000,3000,8000' :
|
||||
selectTab == 2 ? '1010,2000,3000,8000,8900' :
|
||||
selectTab == 3 ? '1010,2000,3000,8000,8900' :
|
||||
selectTab == 4 ? '1010,2000,3000,8000,8900' :
|
||||
SALEBILL_STATES: selectTab == 1 ? '1010,2010,3000,8000' :
|
||||
selectTab == 2 ? '1010,2010,3000,8000,8900' :
|
||||
selectTab == 3 ? '1010,2010,3000,8000,8900' :
|
||||
selectTab == 4 ? '1010,2010,3000,8000,8900' :
|
||||
selectTab == 5 ? '9000,9999' :
|
||||
selectTab == 6 ? '8900' :
|
||||
selectTab == 7 ? '8900' :
|
||||
|
||||
@ -114,25 +114,25 @@ const SupplierClassification: React.FC<{ currentUser: CurrentUser | undefined }>
|
||||
ellipsis: true,
|
||||
hideInSearch: true,
|
||||
},
|
||||
{
|
||||
dataIndex: 'AUTOTYPE_VALID',
|
||||
title: '有效状态',
|
||||
align: 'center',
|
||||
width: 120,
|
||||
ellipsis: true,
|
||||
valueType: "select",
|
||||
// valueEnum: {
|
||||
// "1": "有效",
|
||||
// "0": "无效"
|
||||
// },
|
||||
fieldProps: {
|
||||
options: [
|
||||
{ label: '有效', value: "1" },
|
||||
{ label: '无效', value: "0" }
|
||||
]
|
||||
},
|
||||
initialValue: "1"
|
||||
},
|
||||
// {
|
||||
// dataIndex: 'AUTOTYPE_VALID',
|
||||
// title: '有效状态',
|
||||
// align: 'center',
|
||||
// width: 120,
|
||||
// ellipsis: true,
|
||||
// valueType: "select",
|
||||
// // valueEnum: {
|
||||
// // "1": "有效",
|
||||
// // "0": "无效"
|
||||
// // },
|
||||
// fieldProps: {
|
||||
// options: [
|
||||
// { label: '有效', value: "1" },
|
||||
// { label: '无效', value: "0" }
|
||||
// ]
|
||||
// },
|
||||
// initialValue: "1"
|
||||
// },
|
||||
{
|
||||
dataIndex: 'OWNERUNIT_NAME',
|
||||
title: '业主单位',
|
||||
@ -225,6 +225,7 @@ const SupplierClassification: React.FC<{ currentUser: CurrentUser | undefined }>
|
||||
// PRESALE_STARTTIME: res.PRESALE_TIME && res.PRESALE_TIME.length > 0 ? res.PRESALE_TIME[0] : "",
|
||||
// PRESALE_ENDTIME: res.PRESALE_TIME && res.PRESALE_TIME.length > 0 ? res.PRESALE_TIME[1] : "",
|
||||
// PROVINCE_CODE: currentUser?.ProvinceCode,
|
||||
AUTOTYPE_VALID: 1,
|
||||
STAFF_ID: currentUser?.ID,
|
||||
STAFF_NAME: currentUser?.Name,
|
||||
OPERATE_DATE: moment().format('YYYY-MM-DD HH:mm:ss'),
|
||||
@ -235,6 +236,7 @@ const SupplierClassification: React.FC<{ currentUser: CurrentUser | undefined }>
|
||||
AUTOTYPE_TYPEID: 4000,
|
||||
// PRESALE_STARTTIME: res.PRESALE_TIME && res.PRESALE_TIME.length > 0 ? res.PRESALE_TIME[0] : "",
|
||||
// PRESALE_ENDTIME: res.PRESALE_TIME && res.PRESALE_TIME.length > 0 ? res.PRESALE_TIME[1] : "",
|
||||
AUTOTYPE_VALID: 1,
|
||||
PROVINCE_CODE: currentUser?.ProvinceCode,
|
||||
STAFF_ID: currentUser?.ID,
|
||||
STAFF_NAME: currentUser?.Name,
|
||||
@ -304,7 +306,7 @@ const SupplierClassification: React.FC<{ currentUser: CurrentUser | undefined }>
|
||||
OWNERUNIT_ID: currentUser?.OwnerUnitId,
|
||||
PROVINCE_CODE: "",
|
||||
AUTOTYPE_TYPEID: 4000,
|
||||
AUTOTYPE_VALID: params?.AUTOTYPE_VALID
|
||||
AUTOTYPE_VALID: 1
|
||||
// SearchKey: ""
|
||||
}
|
||||
console.log('reqreq', req);
|
||||
@ -401,8 +403,10 @@ const SupplierClassification: React.FC<{ currentUser: CurrentUser | undefined }>
|
||||
})
|
||||
}}
|
||||
footer={<ModalFooter
|
||||
confirmLoading={confirmLoading}
|
||||
hideDelete={!currentRow?.AUTOTYPE_ID}
|
||||
handleDelete={async () => {
|
||||
handleConfirmLoading(true)
|
||||
await handelDelete(currentRow?.AUTOTYPE_ID)
|
||||
}}
|
||||
handleCancel={() => {
|
||||
@ -543,7 +547,7 @@ const SupplierClassification: React.FC<{ currentUser: CurrentUser | undefined }>
|
||||
]}
|
||||
/>
|
||||
</Col>
|
||||
<Col span={12}>
|
||||
{/* <Col span={12}>
|
||||
<ProFormSelect
|
||||
name="AUTOTYPE_VALID"
|
||||
label="有效状态"
|
||||
@ -555,7 +559,7 @@ const SupplierClassification: React.FC<{ currentUser: CurrentUser | undefined }>
|
||||
}
|
||||
]}
|
||||
/>
|
||||
</Col>
|
||||
</Col> */}
|
||||
|
||||
<Col span={12}>
|
||||
<ProFormText
|
||||
|
||||
@ -118,21 +118,21 @@ const SupplierMerchantManage: React.FC<{ currentUser: CurrentUser | undefined }>
|
||||
width: 150,
|
||||
ellipsis: true,
|
||||
},
|
||||
{
|
||||
dataIndex: 'MERCHANTS_STATE',
|
||||
title: '有效状态',
|
||||
align: 'center',
|
||||
width: 120,
|
||||
ellipsis: true,
|
||||
valueType: "select",
|
||||
fieldProps: {
|
||||
options: [
|
||||
{ label: '有效', value: "1" },
|
||||
{ label: '无效', value: "0" }
|
||||
]
|
||||
},
|
||||
initialValue: "1"
|
||||
},
|
||||
// {
|
||||
// dataIndex: 'MERCHANTS_STATE',
|
||||
// title: '有效状态',
|
||||
// align: 'center',
|
||||
// width: 120,
|
||||
// ellipsis: true,
|
||||
// valueType: "select",
|
||||
// fieldProps: {
|
||||
// options: [
|
||||
// { label: '有效', value: "1" },
|
||||
// { label: '无效', value: "0" }
|
||||
// ]
|
||||
// },
|
||||
// initialValue: "1"
|
||||
// },
|
||||
{
|
||||
dataIndex: 'searchText',
|
||||
title: '查询内容',
|
||||
@ -223,6 +223,7 @@ const SupplierMerchantManage: React.FC<{ currentUser: CurrentUser | undefined }>
|
||||
req = {
|
||||
...currentRow,
|
||||
...res,
|
||||
MERCHANTS_STATE: 1,
|
||||
OWNERUNIT_ID: currentUser?.OwnerUnitId,
|
||||
OWNERUNIT_NAME: currentUser?.OwnerUnitName,
|
||||
PROVINCE_CODE: currentUser?.ProvinceCode,
|
||||
@ -286,7 +287,8 @@ const SupplierMerchantManage: React.FC<{ currentUser: CurrentUser | undefined }>
|
||||
PROVINCE_CODE: currentUser?.ProvinceCode,
|
||||
MERCHANTS_TYPE: params?.MERCHANTS_TYPE === '0' ? '' : params?.MERCHANTS_TYPE,
|
||||
MERCHANTS_AUTOTYPE: selectedId,
|
||||
MERCHANTS_STATE: params?.MERCHANTS_STATE === '-1' ? '' : params?.MERCHANTS_STATE
|
||||
// MERCHANTS_STATE: params?.MERCHANTS_STATE === '-1' ? '' : params?.MERCHANTS_STATE
|
||||
MERCHANTS_STATE: 1
|
||||
},
|
||||
keyWord: {
|
||||
key: "MERCHANTS_NAME,MERCHANTS_EN",
|
||||
@ -294,6 +296,7 @@ const SupplierMerchantManage: React.FC<{ currentUser: CurrentUser | undefined }>
|
||||
},
|
||||
PageIndex: 1,
|
||||
PageSize: 999999,
|
||||
sortStr: "OPERATE_DATE desc"
|
||||
}
|
||||
setCurrentSearchText(params?.searchText || "")
|
||||
const data = await handeGetMERCHANTSList(req);
|
||||
@ -366,8 +369,10 @@ const SupplierMerchantManage: React.FC<{ currentUser: CurrentUser | undefined }>
|
||||
handleModalVisible(false)
|
||||
}}
|
||||
footer={<ModalFooter
|
||||
confirmLoading={confirmLoading}
|
||||
hideDelete={!currentRow?.MERCHANTS_ID}
|
||||
handleDelete={() => {
|
||||
handleConfirmLoading(true)
|
||||
handelDelete(currentRow?.MERCHANTS_ID)
|
||||
}}
|
||||
handleCancel={() => {
|
||||
@ -514,13 +519,13 @@ const SupplierMerchantManage: React.FC<{ currentUser: CurrentUser | undefined }>
|
||||
label="手机号码"
|
||||
/>
|
||||
</Col>
|
||||
<Col span={8}>
|
||||
{/* <Col span={8}>
|
||||
<ProFormSelect
|
||||
name="MERCHANTS_STATE"
|
||||
label="商户状态"
|
||||
options={[{ label: "有效", value: 1 }, { label: "无效", value: 0 }]}
|
||||
/>
|
||||
</Col>
|
||||
</Col> */}
|
||||
|
||||
<Col span={24}>
|
||||
<ProFormText
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
import { connect } from "umi";
|
||||
import type { ConnectState } from "@/models/connect";
|
||||
import ProCard from "@ant-design/pro-card";
|
||||
import { useEffect, useRef, useState } from "react";
|
||||
import { useEffect, useImperativeHandle, useRef, useState } from "react";
|
||||
import { MenuFoldOutlined } from "@ant-design/icons";
|
||||
import { Avatar, Divider, FormInstance, Menu, Modal, Tree } from "antd";
|
||||
import ProTable, { ActionType } from "@ant-design/pro-table";
|
||||
@ -13,10 +13,11 @@ import moment from 'moment'
|
||||
import SubMenu from "antd/lib/menu/SubMenu";
|
||||
|
||||
type DetailProps = {
|
||||
onRef: any // 当前组件的实例
|
||||
parentRow: any // 行数据
|
||||
currentUser: any
|
||||
}
|
||||
const pushTemplate = ({ parentRow, currentUser }: DetailProps) => {
|
||||
const pushTemplate = ({ onRef, parentRow, currentUser }: DetailProps) => {
|
||||
const actionRef = useRef<ActionType>();
|
||||
const formRef = useRef<FormInstance>();
|
||||
const [collapsible, setCollapsible] = useState<boolean>(false)
|
||||
@ -110,6 +111,11 @@ const pushTemplate = ({ parentRow, currentUser }: DetailProps) => {
|
||||
]
|
||||
|
||||
useEffect(async () => {
|
||||
await handleGetLeftTreeData()
|
||||
}, [])
|
||||
|
||||
// 获取左侧的数据
|
||||
const handleGetLeftTreeData = async () => {
|
||||
const req: any = {
|
||||
SearchParameter: {
|
||||
WECHATPUBLICSIGN_ID: parentRow?.WECHATPUBLICSIGN_ID,
|
||||
@ -131,7 +137,7 @@ const pushTemplate = ({ parentRow, currentUser }: DetailProps) => {
|
||||
}
|
||||
setPushCodeList(list)
|
||||
setPushCodeObj(obj)
|
||||
}, [])
|
||||
}
|
||||
|
||||
// 生成左侧菜单
|
||||
const getMenuDom = (data: any[], callback: (item: any) => void) => {
|
||||
@ -214,6 +220,12 @@ const pushTemplate = ({ parentRow, currentUser }: DetailProps) => {
|
||||
actionRef?.current?.reload()
|
||||
}
|
||||
|
||||
|
||||
useImperativeHandle(onRef, () => ({
|
||||
handleGetLeftTreeData
|
||||
}));
|
||||
|
||||
|
||||
return (
|
||||
<div style={{ display: 'flex' }}>
|
||||
<ProCard
|
||||
|
||||
@ -3,17 +3,19 @@ import type { ConnectState } from "@/models/connect";
|
||||
import { Button, Col, FormInstance, message, Modal, Row } from "antd";
|
||||
import ProTable, { ActionType } from "@ant-design/pro-table";
|
||||
import { useRef, useState } from "react";
|
||||
import { handleGetPUSHMODULEList, handleSynchroPUSHMODULE } from "../service";
|
||||
import { handleDeletePUSHMODULE, handleGetPUSHMODULEList, handleSynchroPUSHMODULE } from "../service";
|
||||
import moment from 'moment'
|
||||
import ProForm, { ProFormSelect, ProFormText, ProFormTextArea } from "@ant-design/pro-form";
|
||||
import ModalFooter from "../../scenicSpotConfig/component/modalFooter";
|
||||
|
||||
type DetailProps = {
|
||||
onShow: boolean // 显示的判断
|
||||
setOnShow: any // 控制是否显示
|
||||
parentRow: any // 父级传入的行数据
|
||||
currentUser: any // 公参信息
|
||||
handleUpdateLeftData?: any // 更新一下外部的左侧树的数据
|
||||
}
|
||||
const PushTemplateModal = ({ onShow, setOnShow, parentRow, currentUser }: DetailProps) => {
|
||||
const PushTemplateModal = ({ onShow, setOnShow, parentRow, currentUser, handleUpdateLeftData }: DetailProps) => {
|
||||
const actionRef = useRef<ActionType>();
|
||||
const ModalFormRef = useRef<FormInstance>();
|
||||
const formRef = useRef<FormInstance>();
|
||||
@ -21,6 +23,8 @@ const PushTemplateModal = ({ onShow, setOnShow, parentRow, currentUser }: Detail
|
||||
const [updateModal, setUpdateModal] = useState<boolean>(false)
|
||||
// 当前行数据
|
||||
const [currentRow, setCurrentRow] = useState<any>()
|
||||
// 悬浮框的loading效果
|
||||
const [modalLoading, setModalLoading] = useState<boolean>(false)
|
||||
|
||||
const columns: any = [
|
||||
{
|
||||
@ -61,18 +65,18 @@ const PushTemplateModal = ({ onShow, setOnShow, parentRow, currentUser }: Detail
|
||||
ellipsis: true,
|
||||
hideInSearch: true,
|
||||
},
|
||||
{
|
||||
dataIndex: 'PUSHMODULE_STATE',
|
||||
title: '模板状态',
|
||||
width: 100,
|
||||
align: 'center',
|
||||
ellipsis: true,
|
||||
hideInSearch: true,
|
||||
valueType: 'select',
|
||||
fieldProps: {
|
||||
options: [{ label: "有效", value: 1 }, { label: "无效", value: 0 }]
|
||||
}
|
||||
},
|
||||
// {
|
||||
// dataIndex: 'PUSHMODULE_STATE',
|
||||
// title: '模板状态',
|
||||
// width: 100,
|
||||
// align: 'center',
|
||||
// ellipsis: true,
|
||||
// hideInSearch: true,
|
||||
// valueType: 'select',
|
||||
// fieldProps: {
|
||||
// options: [{ label: "有效", value: 1 }, { label: "无效", value: 0 }]
|
||||
// }
|
||||
// },
|
||||
{
|
||||
dataIndex: 'STAFF_NAME',
|
||||
title: '操作员名称',
|
||||
@ -105,11 +109,13 @@ const PushTemplateModal = ({ onShow, setOnShow, parentRow, currentUser }: Detail
|
||||
// 同步推送模板信息
|
||||
const handleUpdatePushModal = async (res: any) => {
|
||||
let req: any = {}
|
||||
setModalLoading(true)
|
||||
if (currentRow?.PUSHMODULE_ID) {
|
||||
req = {
|
||||
WECHATPUBLICSIGN_ID: parentRow?.WECHATPUBLICSIGN_ID,
|
||||
...currentRow,
|
||||
...res,
|
||||
PUSHMODULE_STATE: 1,
|
||||
STAFF_ID: currentUser?.ID,
|
||||
STAFF_NAME: currentUser?.Name,
|
||||
OPERATE_DATE: moment().format('YYYY-MM-DD HH:mm:ss')
|
||||
@ -117,6 +123,7 @@ const PushTemplateModal = ({ onShow, setOnShow, parentRow, currentUser }: Detail
|
||||
} else {
|
||||
req = {
|
||||
...res,
|
||||
PUSHMODULE_STATE: 1,
|
||||
WECHATPUBLICSIGN_ID: parentRow?.WECHATPUBLICSIGN_ID,
|
||||
STAFF_ID: currentUser?.ID,
|
||||
STAFF_NAME: currentUser?.Name,
|
||||
@ -125,6 +132,7 @@ const PushTemplateModal = ({ onShow, setOnShow, parentRow, currentUser }: Detail
|
||||
}
|
||||
}
|
||||
const data = await handleSynchroPUSHMODULE(req)
|
||||
setModalLoading(false)
|
||||
|
||||
console.log('datadatadatadata', data);
|
||||
if (data.Result_Code === 100) {
|
||||
@ -132,6 +140,28 @@ const PushTemplateModal = ({ onShow, setOnShow, parentRow, currentUser }: Detail
|
||||
setCurrentRow(null)
|
||||
setUpdateModal(false)
|
||||
actionRef.current?.reload()
|
||||
if (handleUpdateLeftData) {
|
||||
handleUpdateLeftData()
|
||||
}
|
||||
} else {
|
||||
message.error(data.Result_Desc)
|
||||
}
|
||||
}
|
||||
|
||||
// 删除推送模板
|
||||
const handleDeletePushModal = async (id: any) => {
|
||||
const req: any = {
|
||||
PUSHMODULEId: id
|
||||
}
|
||||
const data = await handleDeletePUSHMODULE(req)
|
||||
if (data.Result_Code === 100) {
|
||||
message.success(data.Result_Desc)
|
||||
setCurrentRow(null)
|
||||
setUpdateModal(false)
|
||||
actionRef.current?.reload()
|
||||
if (handleUpdateLeftData) {
|
||||
handleUpdateLeftData()
|
||||
}
|
||||
} else {
|
||||
message.error(data.Result_Desc)
|
||||
}
|
||||
@ -173,7 +203,7 @@ const PushTemplateModal = ({ onShow, setOnShow, parentRow, currentUser }: Detail
|
||||
},
|
||||
PageIndex: 1,
|
||||
PageSize: 999999,
|
||||
SortStr: "ADDTIME desc",
|
||||
SortStr: "PUSHMODULE_INDEX,ADDTIME desc",
|
||||
requestEncryption: true
|
||||
}
|
||||
const data = await handleGetPUSHMODULEList(req)
|
||||
@ -212,6 +242,23 @@ const PushTemplateModal = ({ onShow, setOnShow, parentRow, currentUser }: Detail
|
||||
handleUpdatePushModal(res)
|
||||
})
|
||||
}}
|
||||
footer={<ModalFooter
|
||||
confirmLoading={modalLoading}
|
||||
hideDelete={!currentRow?.PUSHMODULE_ID}
|
||||
handleDelete={async () => {
|
||||
await handleDeletePushModal(currentRow?.PUSHMODULE_ID)
|
||||
}}
|
||||
handleCancel={() => {
|
||||
setCurrentRow(null)
|
||||
setUpdateModal(false)
|
||||
}}
|
||||
handleOK={() => {
|
||||
ModalFormRef?.current?.validateFields().then(async (res) => {
|
||||
handleUpdatePushModal(res)
|
||||
})
|
||||
}}
|
||||
|
||||
/>}
|
||||
>
|
||||
<ProForm
|
||||
formRef={ModalFormRef}
|
||||
@ -247,14 +294,14 @@ const PushTemplateModal = ({ onShow, setOnShow, parentRow, currentUser }: Detail
|
||||
name={"PUSHMODULE_INDEX"}
|
||||
/>
|
||||
</Col>
|
||||
<Col span={8}>
|
||||
{/* <Col span={8}>
|
||||
<ProFormSelect
|
||||
label={"模板状态"}
|
||||
name={"PUSHMODULE_STATE"}
|
||||
options={[{ label: "有效", value: 1 }, { label: "无效", value: 0 }]}
|
||||
initialValue={1}
|
||||
/>
|
||||
</Col>
|
||||
</Col> */}
|
||||
<Col span={24}>
|
||||
<ProFormTextArea
|
||||
label={"备注"}
|
||||
|
||||
@ -17,6 +17,7 @@ import PushTemplateModal from "./components/pushTemplateModal";
|
||||
const WeChatAccountManagement: React.FC<{ currentUser: CurrentUser }> = (props) => {
|
||||
const { currentUser } = props
|
||||
const actionRef = useRef<ActionType>();
|
||||
const PushTemplateRef = useRef<any>();
|
||||
const formRef = useRef<FormInstance>();
|
||||
const ModalFormRef = useRef<FormInstance>();
|
||||
|
||||
@ -54,6 +55,11 @@ const WeChatAccountManagement: React.FC<{ currentUser: CurrentUser }> = (props)
|
||||
}
|
||||
]
|
||||
|
||||
// 更新子集里面的方法
|
||||
const handleUpdateLeftData = async () => {
|
||||
PushTemplateRef.current?.handleGetLeftTreeData()
|
||||
}
|
||||
|
||||
|
||||
return (
|
||||
<div >
|
||||
@ -123,12 +129,12 @@ const WeChatAccountManagement: React.FC<{ currentUser: CurrentUser }> = (props)
|
||||
}}>设置推送模板</Button>
|
||||
</div>}
|
||||
>
|
||||
<PushTemplate parentRow={currentRow} currentUser={currentUser} />
|
||||
<PushTemplate parentRow={currentRow} currentUser={currentUser} onRef={PushTemplateRef} />
|
||||
</Modal>
|
||||
|
||||
|
||||
{/* 设置推送模板的悬浮框 */}
|
||||
<PushTemplateModal onShow={updatePushTemplateModal} setOnShow={setUpdatePushTemplateModal} parentRow={currentRow} currentUser={currentUser} />
|
||||
<PushTemplateModal onShow={updatePushTemplateModal} setOnShow={setUpdatePushTemplateModal} parentRow={currentRow} currentUser={currentUser} handleUpdateLeftData={handleUpdateLeftData} />
|
||||
</div>
|
||||
</div>
|
||||
)
|
||||
|
||||
@ -48,6 +48,20 @@ export async function handleSynchroPUSHMODULE(params: any) {
|
||||
return data
|
||||
}
|
||||
|
||||
// 删除推送模板
|
||||
export async function handleDeletePUSHMODULE(params: any) {
|
||||
const data = await request(`/WeChat/DeletePUSHMODULE`, {
|
||||
method: 'POST',
|
||||
data: { ...params, requestEncryption: true }
|
||||
})
|
||||
if (data.Result_Code !== 100) {
|
||||
return data
|
||||
}
|
||||
return data
|
||||
}
|
||||
|
||||
|
||||
|
||||
// 获取人员推送权限表列表
|
||||
export async function handleGetRTWECAHTPUSHDTAILList(params: any) {
|
||||
const data = await request(`/WeChat/GetRTWECAHTPUSHDTAILList`, {
|
||||
|
||||
@ -787,7 +787,7 @@ const memberInfor: React.FC<{ currentUser: CurrentUser, searchType?: any, valueT
|
||||
MEMBERSHIP_STATES: 1000,
|
||||
ACTIVE_DATE_Start: come === 'ActiveMemberStatistics' ? comeParams?.start || '' : '',
|
||||
ACTIVE_DATE_End: come === 'ActiveMemberStatistics' ? comeParams?.end || '' : '',
|
||||
MEMBERSHIP_TARGETS: params?.MEMBERSHIP_TARGET && params?.MEMBERSHIP_TARGET.length > 0 ? params?.MEMBERSHIP_TARGET.toString() : "",
|
||||
MEMBERSHIP_TARGET: params?.MEMBERSHIP_TARGET && params?.MEMBERSHIP_TARGET.length > 0 ? params?.MEMBERSHIP_TARGET.toString() : "",
|
||||
ExcludeTest: ExcludeTest || ''
|
||||
},
|
||||
keyWord: {
|
||||
@ -808,7 +808,7 @@ const memberInfor: React.FC<{ currentUser: CurrentUser, searchType?: any, valueT
|
||||
MEMBERSHIP_TYPES: params?.MEMBERSHIP_TYPE === "1" ? "" : params?.MEMBERSHIP_TYPE,
|
||||
MEMBERSHIP_LEVELS: params?.MEMBERSHIP_LEVEL === "1" ? "" : params?.MEMBERSHIP_LEVEL,
|
||||
MEMBERSHIP_STATES: params?.MEMBERSHIP_STATE,
|
||||
MEMBERSHIP_TARGETS: params?.MEMBERSHIP_TARGET && params?.MEMBERSHIP_TARGET.length > 0 ? params?.MEMBERSHIP_TARGET.toString() : ""
|
||||
MEMBERSHIP_TARGET: params?.MEMBERSHIP_TARGET && params?.MEMBERSHIP_TARGET.length > 0 ? params?.MEMBERSHIP_TARGET.toString() : ""
|
||||
// PLATE_NUMBER: params?.MEMBERSHIP_NAME || ""
|
||||
},
|
||||
keyWord: {
|
||||
|
||||
@ -27,7 +27,7 @@ const ModalFooter = ({ hideDelete, handleDelete, hideCancel, handleCancel, hideO
|
||||
}
|
||||
}}
|
||||
>
|
||||
<Button type="primary" danger>删除</Button>
|
||||
<Button type="primary" danger loading={confirmLoading}>删除</Button>
|
||||
</Popconfirm>
|
||||
|
||||
}
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
// 由 scripts/writeVersion.js 自动生成
|
||||
export const VERSION = "4.5.85";
|
||||
export const GIT_HASH = "f1ba03a";
|
||||
export const BUILD_TIME = "2025-12-09T06:03:09.173Z";
|
||||
export const VERSION = "4.5.88";
|
||||
export const GIT_HASH = "5275f79";
|
||||
export const BUILD_TIME = "2025-12-11T07:57:34.516Z";
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user