// 新增商品审批 import { connect } from "umi"; import type { CurrentUser } from "umi"; import type { ConnectState } from "@/models/connect"; import React, { useEffect, useRef, useState } from "react"; import type { FormInstance } from "antd"; import { Button, Card, Col, message, Modal, Popconfirm, Row, Space, Spin, Steps, Tooltip, Tree } from "antd"; import type { ActionType } from "@ant-design/pro-table"; import ProTable from "@ant-design/pro-table"; import PageTitleBox from "@/components/PageTitleBox"; import { handleGetExamineList } from "@/pages/examine/examineList/service"; import ProForm, { ProFormDateTimePicker, ProFormDigit, ProFormSelect, ProFormText, ProFormTextArea, ProFormTreeSelect } from "@ant-design/pro-form"; import { getServerpartTree } from "@/services/options"; import { handleGetAPPROVALROUTEList } from "@/pages/Setting/serviceConfig/service"; import { handleGetNestingCOMMODITYTYPETree, handleGetServerpartShopTrade } from "../commodityInfo/service"; import { handleGetUSERDEFINEDTYPEList } from "../userDefinedType/service"; import useRequest from "@ahooksjs/use-request"; import moment from 'moment' import { handleApproveCommodityProInst, handleCreateCommodityProInst, handleDeleteCOMMODITY_RUNNING, handleDeleteCommodityProInst, handleGetApprovalCommodityList, handleGetBUSINESSAPPROVALDetail, handleGetCOMMODITYRUNNINGList, handleReapplyCommodityProInst, handleRejectCommodityProInst } from "../ProductApprovalProcess/service"; import './style.less' const { Step } = Steps const ProductChangeInfoApproval: React.FC<{ currentUser: CurrentUser }> = (props) => { const { currentUser } = props const downloadBtnRef = useRef() const actionRef = useRef(); const formRef = useRef(); const modalFormRef = useRef(); const modalShopFormRef = useRef(); const modalApproveFormRef = useRef(); // 新增商品申请 const [showApplyFor, setShowApplyFor] = useState(false); // 显示新增商品的悬浮框 const [showAddShopModal, setShowAddShopModal] = useState(false); // 选择记录行的数据 const [currentRow, setCurrentRow] = useState() // 选择商品行的数据 const [currentShopRow, setCurrentShopRow] = useState() // 商品列表数据 const [shopData, setShopData] = useState() const [selectSERVERPARTID, setSelectSERVERPARTID] = useState() // 商品业态的搜索框内容 const [commodityList, setCommodityList] = useState([]) const [selectBUSINESSTYPE, setSelectBUSINESSTYPE] = useState() const [customClassList, setCustomClassList] = useState() const [treeView, setTreeView] = useState() // 审批的悬浮框 const [approveModal, setApproveModal] = useState(false); // 点击审批的行数据 const [approveCurrentRow, setApproveCurrentRow] = useState() // 下一个审批流程 const [nextApproval, setNextApproval] = useState() // 下一审批流程的审批人 const [nextApprovalPerson, setNextApprovalPerson] = useState() // 新增申请的加载效果 const [addApprovalLoading, setAddApprovalLoading] = useState(false); // 审批还是驳回 1 审批 2 驳回 const [ApprovalType, setApprovaType] = useState(0) // 审批记录详情 const [BUSINESSAPPROVALDETAIL, setBUSINESSAPPROVALDETAIL] = useState() // 还有几个环节 拼在流程进度后面 const [nextStepsList, setNextStepsList] = useState() // 判断有无发起申请的权限 const [InitiateApplication, setInitiateApplication] = useState(false) // 显示类型 const [showDetailType, setShowDetailType] = useState() // 加载服务区树 const { loading: treeLoading, data: treeViews } = useRequest(async () => { const req = { PROVINCE_CODE: currentUser?.ProvinceCode, COMMODITYTYPE_VALID: 1, ShowCode: true } const data = await handleGetNestingCOMMODITYTYPETree(req) setTreeView(data) return data }) let statusList: string[] = ["0", "1000", "2000", "2010,2020,2030,2040,2050,2060,2070,2080,2090", "9000"] const columns: any = [ { dataIndex: 'BusinessProcess_StateSearch', title: '流程状态', width: 200, ellipsis: true, align: 'center', hideInTable: true, // valueEnum: { // "0": "全部", // "2000": "待审核", // "2010,2020,2030,2040,2050,2060,2070,2080,2090": "审核中", // "9000": "已审结" // }, valueEnum: { 0: "全部", 1: "待申请", 2: "待审核", 3: "审核中", 4: "已审结" }, initialValue: "0" }, { dataIndex: 'BusinessProcess_Name', title: '业务名称', width: 300, ellipsis: true, align: 'center', hideInSearch: true, }, { dataIndex: 'Serverpart_Name', title: '服务区名称', width: 200, ellipsis: true, align: 'center', hideInSearch: true, }, { dataIndex: 'ServerpartShop_Name', title: '门店名称', width: 200, ellipsis: true, align: 'center', hideInSearch: true, }, { dataIndex: 'ApproveStaff_Name', title: '待审核人', width: 200, ellipsis: true, align: 'center', hideInSearch: true, }, { dataIndex: 'BusinessProcess_StateText', title: '待审核环节', width: 200, ellipsis: true, align: 'center', hideInSearch: true, render: (_, record) => { return { console.log('recordrecordrecord', record); setShowDetailType('detail') setCurrentRow(record) setShowApplyFor(true) }}>{record?.BusinessProcess_StateText || "-"} } }, // { // dataIndex: 'Accept_Code', // title: '业务类别', // width: 200, // ellipsis: true, // align: 'center', // hideInSearch: true, // }, { dataIndex: 'BusinessProcess_EndDate', title: '办结时间', width: 200, ellipsis: true, align: 'center', hideInSearch: true, }, { dataIndex: 'BusinessProcess_StartDate', title: '流程开始', width: 200, ellipsis: true, align: 'center', hideInSearch: true, }, { dataIndex: 'option', title: '操作', valueType: 'option', align: 'center', hideInSearch: true, width: 180, fixed: "right", ellipsis: true, render: (_, record) => { return ( record?.ApproveStaff_ID === currentUser?.ID && record?.BusinessProcess_State !== 9000 ? { record?.BusinessProcess_State === 1000 ? <> { console.log('recordrecordrecord', record); setCurrentRow(record) setShowApplyFor(true) }} > 编辑 { const req: any = { businessApprovalId: record?.BusinessApproval_ID, UserId: currentUser?.ID } const data = await handleDeleteCommodityProInst(req) if (data.Result_Code === 100) { message.success(data.Result_Desc) actionRef.current?.reload() } else { message.error(data.Result_Desc) } }} > 删除 : "" } { record?.BusinessProcess_State > 1000 ? <> { setApprovaType(1) setCurrentRow(record) // setApproveCurrentRow(record) // setApproveModal(true) setShowApplyFor(true) }} > 审批 { setApprovaType(2) setCurrentRow(record) // setApproveCurrentRow(record) // setApproveModal(true) setShowApplyFor(true) }}> 驳回 : "" } : "" ); }, }, ] const modalColumns: any = [ { title: "序号", width: 70, dataIndex: "index", valueType: "index", align: 'center', ellipsis: true, }, { title: "名称", width: 300, dataIndex: "COMMODITY_NAME", ellipsis: true, align: 'center', }, { title: "条码", width: 150, dataIndex: "COMMODITY_BARCODE", ellipsis: true, align: 'center', }, { title: "零售价", width: 150, dataIndex: "COMMODITY_RETAILPRICE", ellipsis: true, align: 'center', }, { title: "规格", width: 150, dataIndex: "COMMODITY_RULE", ellipsis: true, align: 'center', }, { title: "单位", width: 150, dataIndex: "COMMODITY_UNIT", ellipsis: true, align: 'center', }, { dataIndex: 'option', title: '操作', valueType: 'option', align: 'center', hideInSearch: true, width: 120, fixed: "right", ellipsis: true, render: (_, record) => { return ( { currentRow?.BusinessProcess_State > 1000 || (currentRow?.BusinessApproval_ID && currentRow?.ApproveStaff_ID !== currentUser?.ID) ? '' : <> { setCurrentShopRow(record) setShowAddShopModal(true) }} > 编辑 { if (currentRow?.BusinessApproval_ID) { // 申请回到发起时候的真删 const req: any = { COMMODITY_RUNNINGId: record?.COMMODITY_ID } const data = await handleDeleteCOMMODITY_RUNNING(req) console.log('datadatadatadata', data); actionRef.current?.reload() // 实现直接删除的效果 let oldData: any = JSON.parse(JSON.stringify(shopData)) let list: any = [] oldData.forEach((item: any) => { if (item.COMMODITY_ID !== record?.COMMODITY_ID) { list.push(item) } }) setShopData(list) } else { // 还未发起申请的假删 console.log('record', record); let oldData: any = JSON.parse(JSON.stringify(shopData)) let list: any = [] oldData.forEach((item: any) => { if (item.ADDTIME !== record?.ADDTIME) { list.push(item) } }) setShopData(list) } }} > 删除 } { currentRow?.BusinessProcess_State === 9000 ? { setCurrentShopRow(record) setShowAddShopModal(true) }}>详情 : '' } ); }, }, ] // 拿到对应的商品业态 const handleGetCommodity = async (id: any) => { const req: any = { ProvinceCode: currentUser?.ProvinceCode, ServerpartId: id } const data = await handleGetServerpartShopTrade(req) console.log('data', data) setCommodityList(data) } // 请求自定义类的选择列表 const handleGetCustomClassList = async (id: any) => { const req: any = { SearchParameter: { USERDEFINEDTYPE_STATE: 1, SERVERPART_ID: id, BUSINESSTYPE: selectBUSINESSTYPE }, PageIndex: 1, PageSize: 999999, pageSize: 999999, } const data = await handleGetUSERDEFINEDTYPEList(req) if (data && data.length > 0) { const list: any = [] data.forEach((item: any) => { list.push({ label: item.USERDEFINEDTYPE_NAME, value: item.USERDEFINEDTYPE_ID }) }) setCustomClassList(list) } console.log('data', data) } useEffect(async () => { const req: any = { SearchParameter: { APPROVALROUTE_STATES: "", APPROVALROUTE_VALID: 1, OPERATION_TYPES: "100100", } } const data = await handleGetAPPROVALROUTEList(req) console.log('datadatadatadata', data); // 拿到发起申请的人 let firstSetp: any = {} if (data && data.length > 0) { data.forEach((item: any) => { if (item.APPROVALROUTE_STATE === 1000) { firstSetp = item } }) } // 判断当前用户 是否有新增权限 let have: boolean = false let idList: any = firstSetp.APPROVALSTAFF_ID.split(',') console.log('idList', idList); if (idList.indexOf(currentUser?.ID.toString()) !== -1) { have = true } setInitiateApplication(have) }, []) return (
} // 列表表头 search={{ span: 6 }} request={async (params) => { const req: any = { QueryType: 0, SearchParameter: { Operation_Type: 6, Accept_Code: "6-100100", BusinessProcess_StateSearch: statusList[params?.BusinessProcess_StateSearch] === "0" ? '' : statusList[params?.BusinessProcess_StateSearch] }, PageIndex: 1, PageSize: 999999 } const data = await handleGetExamineList(req) console.log('data', data) if (data.data && data.data.length > 0) { data.data.forEach((item: any) => { if (item.BusinessProcess_State === 1000) { item.BusinessProcess_StateText = "待发起" } else if (item.BusinessProcess_State === 2000) { item.BusinessProcess_StateText = "待审核" } else if (item.BusinessProcess_State > 2000 && item.BusinessProcess_State < 9000) { item.BusinessProcess_StateText = "审核中" } else if (item.BusinessProcess_State = 9000) { item.BusinessProcess_StateText = "已审结" } }) return { data: data.data, success: true, total: data.data.length } } return { data: [], success: true } }} toolbar={{ actions: [ InitiateApplication ? : "" ] }} />
{/* 审批的悬浮框 */} {/* { setApproveCurrentRow(undefined) setApproveModal(false) setApprovaType(0) }} onOk={() => { modalApproveFormRef?.current?.validateFields().then(() => { modalApproveFormRef?.current?.submit() }) }} > { console.log('approveCurrentRowapproveCurrentRowapproveCurrentRow', approveCurrentRow); const reqState: any = { SearchParameter: { APPROVALROUTE_STATES: "", APPROVALROUTE_VALID: 1, OPERATION_TYPES: "100100", }, PageIndex: 1, PageSize: 999999 } const dataState = await handleGetAPPROVALROUTEList(reqState) console.log('dataStatedataStatedataState', dataState); let obj: any = {} let currentIndex: number = 0 if (dataState && dataState.length > 0) { dataState.forEach((item: any, index: number) => { if (item.APPROVALROUTE_STATE === approveCurrentRow.BusinessProcess_State) { obj = item currentIndex = index } }) } if (obj) { // 审批的时候 拿到当前状态 去找下一个状态 if (ApprovalType === 1) { // 拿到当前状态的信息 判断下一状态 是不是结束了 结束了 就不显示 下一结算审批人 不是结束 就拿到下一流程的审批人 setNextApproval(obj.NEXT_STATE) let nextObj: any = currentIndex + 1 <= dataState.length ? dataState[currentIndex + 1] : {} if (nextObj) { let personTotal: number = nextObj.APPROVALSTAFF_ID.split(',').length || 0 if (personTotal > 0) { let STAFFIDList: number[] = nextObj.APPROVALSTAFF_ID.split(',') let STAFFNAMEList: string[] = nextObj.APPROVALSTAFF_NAME.split(',') let list: any = [] for (let i = 0; i < personTotal; i++) { list.push({ label: STAFFNAMEList[i], value: STAFFIDList[i] }) } setNextApprovalPerson(list) } } } else { // 驳回的话 去找历史状态 if (dataState && dataState.length > 0) { let list: any = [] dataState.forEach((item: any, index: number) => { if (obj.APPROVALROUTE_STATE > item.APPROVALROUTE_STATE) { list.push({ label: item.APPROVALROUTE_NAME, value: item.APPROVALROUTE_STATE }) } }) setNextApprovalPerson(list) } } } return {} }} onFinish={async (res) => { setAddApprovalLoading(true) let data: any = {} if (ApprovalType === 1) { // 审批 const req: any = { businessApprovalId: approveCurrentRow?.BusinessApproval_ID, UserId: currentUser?.ID, ApproveInfo: res.ApproveInfo, nextApproveStaffId: res.nextApproveStaffId || "", nextApproveState: nextApproval || "" } data = await handleApproveCommodityProInst(req) } else { // 驳回 const req: any = { businessApprovalId: approveCurrentRow?.BusinessApproval_ID, UserId: currentUser?.ID, RejectInfo: res.ApproveInfo, nextApproveState: res.nextApproveState || "" } console.log('reqreqreqreq', req); data = await handleRejectCommodityProInst(req) } setAddApprovalLoading(false) console.log('datadatadata', data); if (data.Result_Code === 100) { message.success(data.Result_Desc) setApproveCurrentRow(undefined) setApproveModal(false) setNextApproval(null) setNextApprovalPerson(null) setApprovaType(0) actionRef.current?.reload() } else { message.error(data.Result_Desc) } }} > { ApprovalType === 1 ? { nextApproval === 9000 ? '' : } : ApprovalType === 2 ? : "" } */} {/* 新增申请的悬浮框 */} { setShowApplyFor(false) setCurrentRow(undefined) setShopData([]) setBUSINESSAPPROVALDETAIL(undefined) setShowDetailType(null) setApprovaType(0) }} footer={showDetailType === 'detail' || !InitiateApplication || (currentRow?.BusinessApproval_ID && currentRow?.ApproveStaff_ID !== currentUser?.ID) ? false :
} onOk={() => { if (currentRow?.BusinessProcess_State > 1000) { modalApproveFormRef?.current?.validateFields().then(() => { modalApproveFormRef?.current?.submit() }) } else { modalFormRef?.current?.validateFields().then(() => { modalFormRef?.current?.submit() }) } }} > { if (currentRow?.BusinessApproval_ID) { const req: any = { BUSINESSAPPROVALId: currentRow?.BusinessApproval_ID, } const data = await handleGetBUSINESSAPPROVALDetail(req) console.log('datadatadata', data); setBUSINESSAPPROVALDETAIL(data.Result_Data) let shopData: any = [] if (currentRow?.BusinessProcess_State === 9000) { shopData = await handleGetApprovalCommodityList({ ProvinceCode: currentUser?.ProvinceCode, // CommodityId: currentUser?.ProvinceCode, BusinessApprovalId: currentRow?.BusinessApproval_ID, PageIndex: 1, PageSize: 999999, }) } else { shopData = await handleGetCOMMODITYRUNNINGList({ SearchParameter: { BUSINESSAPPROVAL_ID: currentRow?.BusinessApproval_ID, }, PageIndex: 1, pageSize: 999999, }) } console.log('shopDatashopDatashopDatashopData', shopData); setShopData(shopData.Result_Data.List) return { reasonForApplication: data.Result_Data.BUSINESSAPPROVAL_DESC, ServerpartId: data.Result_Data.SERVERPART_ID, NextApproveStaffId: data.Result_Data.APPOVED_IDS } } else { return {} } }} onFinish={async (res) => { let data: any = {} if (currentRow?.BusinessApproval_ID) { const req: any = { ProinstId: currentRow?.BusinessApproval_ID, ProinstName: res.reasonForApplication, UserId: currentUser?.ID, OperateType: "100100", ServerpartId: res.ServerpartId, NextApproveStaffId: res.NextApproveStaffId, NextApproveState: 2000, CommodityRunningList: shopData } data = await handleReapplyCommodityProInst(req) } else { const req: any = { ProinstName: res.reasonForApplication, UserId: currentUser?.ID, OperateType: "100100", ServerpartId: res.ServerpartId, NextApproveStaffId: res.NextApproveStaffId, NextApproveState: 2000, CommodityRunningList: shopData } data = await handleCreateCommodityProInst(req) console.log('dsaidjaskda', data); } if (data.Result_Code === 100) { message.success(data.Result_Desc) // setShowApplyFor(false) // setCurrentRow(undefined) setShowApplyFor(false) setCurrentRow(undefined) setShopData([]) setBUSINESSAPPROVALDETAIL(undefined) setShowDetailType(null) setApprovaType(0) actionRef.current?.reload() } else { message.error(data.Result_Desc) } }} > 1000 || (currentRow?.BusinessApproval_ID && currentRow?.ApproveStaff_ID !== currentUser?.ID)} /> { const data = await getServerpartTree(currentUser?.ProvinceCode, currentUser?.CityAuthority, true, true, true) const list: any = [] if (data && data.length > 0) { data.forEach((item: any) => { if (item.children && item.children.length > 0) { item.children.forEach((subItem: any) => { list.push({ label: subItem.label, value: subItem.value }) }) } }) data.forEach((item: any) => { list.push({ label: item.label, value: item.value }) }) } return list }} disabled={currentRow?.BusinessProcess_State > 1000 || (currentRow?.BusinessApproval_ID && currentRow?.ApproveStaff_ID !== currentUser?.ID)} /> 1000 && ApprovalType !== 0 ? "none" : "" }}> { const reqState: any = { SearchParameter: { APPROVALROUTE_STATES: "", APPROVALROUTE_VALID: 1, OPERATION_TYPES: "100100", }, PageIndex: 1, PageSize: 999999 } const dataState = await handleGetAPPROVALROUTEList(reqState) if (dataState && dataState.length > 0) { let obj: any = {} // 下面的环节 let nextList: any = [] console.log('dataState', dataState); dataState.forEach((item: any) => { if (item.APPROVALROUTE_STATE === 2000) { obj = item } if (item.APPROVALROUTE_STATE >= currentRow?.BusinessProcess_State) { if (item.APPROVALROUTE_STATE === currentRow?.BusinessProcess_State) { item.status = "process" } nextList.push(item) } }) setNextStepsList(nextList) console.log('next', nextList); let personTotal: number = obj.APPROVALSTAFF_ID.split(',').length || 0 if (personTotal > 0) { let STAFFIDList: number[] = obj.APPROVALSTAFF_ID.split(',') let STAFFNAMEList: string[] = obj.APPROVALSTAFF_NAME.split(',') let list: any = [] for (let i = 0; i < personTotal; i++) { list.push({ label: STAFFNAMEList[i], value: STAFFIDList[i] }) } return list } } }} disabled={currentRow?.BusinessProcess_State > 1000 || (currentRow?.BusinessApproval_ID && currentRow?.ApproveStaff_ID !== currentUser?.ID)} /> { currentRow?.BusinessProcess_State > 1000 ? { console.log('approveCurrentRowapproveCurrentRowapproveCurrentRow', approveCurrentRow); const reqState: any = { SearchParameter: { APPROVALROUTE_STATES: "", APPROVALROUTE_VALID: 1, OPERATION_TYPES: "100100", }, PageIndex: 1, PageSize: 999999 } const dataState = await handleGetAPPROVALROUTEList(reqState) console.log('dataStatedataStatedataState', dataState); let obj: any = {} let currentIndex: number = 0 if (dataState && dataState.length > 0) { dataState.forEach((item: any, index: number) => { if (item.APPROVALROUTE_STATE === currentRow.BusinessProcess_State) { obj = item currentIndex = index } }) } if (obj) { // 审批的时候 拿到当前状态 去找下一个状态 if (ApprovalType === 1) { // 拿到当前状态的信息 判断下一状态 是不是结束了 结束了 就不显示 下一结算审批人 不是结束 就拿到下一流程的审批人 setNextApproval(obj.NEXT_STATE) let nextObj: any = currentIndex + 1 <= dataState.length ? dataState[currentIndex + 1] : {} if (nextObj) { let personTotal: number = nextObj.APPROVALSTAFF_ID.split(',').length || 0 if (personTotal > 0) { let STAFFIDList: number[] = nextObj.APPROVALSTAFF_ID.split(',') let STAFFNAMEList: string[] = nextObj.APPROVALSTAFF_NAME.split(',') let list: any = [] for (let i = 0; i < personTotal; i++) { list.push({ label: STAFFNAMEList[i], value: STAFFIDList[i] }) } setNextApprovalPerson(list) } } } else { // 驳回的话 去找历史状态 if (dataState && dataState.length > 0) { let list: any = [] dataState.forEach((item: any, index: number) => { if (obj.APPROVALROUTE_STATE > item.APPROVALROUTE_STATE) { list.push({ label: item.APPROVALROUTE_NAME, value: item.APPROVALROUTE_STATE }) } }) setNextApprovalPerson(list) } } } return {} }} onFinish={async (res) => { setAddApprovalLoading(true) let data: any = {} if (ApprovalType === 1) { // 审批 const req: any = { businessApprovalId: currentRow?.BusinessApproval_ID, UserId: currentUser?.ID, ApproveInfo: res.ApproveInfo, nextApproveStaffId: res.nextApproveStaffId || "", nextApproveState: nextApproval || "" } data = await handleApproveCommodityProInst(req) } else { // 驳回 const req: any = { businessApprovalId: currentRow?.BusinessApproval_ID, UserId: currentUser?.ID, RejectInfo: res.ApproveInfo, nextApproveState: res.nextApproveState || "" } console.log('reqreqreqreq', req); data = await handleRejectCommodityProInst(req) } setAddApprovalLoading(false) console.log('datadatadata', data); if (data.Result_Code === 100) { message.success(data.Result_Desc) setShowApplyFor(false) setCurrentRow(undefined) setShopData([]) setBUSINESSAPPROVALDETAIL(undefined) setShowDetailType(null) // setApproveCurrentRow(undefined) // setApproveModal(false) setNextApproval(null) setNextApprovalPerson(null) setApprovaType(0) actionRef.current?.reload() } else { message.error(data.Result_Desc) } }} > { ApprovalType === 1 ? { nextApproval === 9000 ? '' : } : ApprovalType === 2 ? : "" } : "" } 1000 || (currentRow?.BusinessApproval_ID && currentRow?.ApproveStaff_ID !== currentUser?.ID) ? '' : ] }} /> { currentRow?.BusinessProcess_State > 1000 ?
{/* 1000 ? 'finish' : 'wait'} title="发起申请" description={

{`${currentRow?.BusinessProcess_StartDate || ''}`}

} /> */} { BUSINESSAPPROVALDETAIL?.approveList && BUSINESSAPPROVALDETAIL?.approveList.length > 0 ? BUSINESSAPPROVALDETAIL?.approveList.map((item: any, index: number) => (

{`${item.APPLYAPPROVE_DATE || ''}`}

} /> )) : '' } { nextStepsList && nextStepsList.length > 0 ? nextStepsList.map((item: any, index: number) => ( )) : '' }
: '' } {/* 新增商品的悬浮框 */} { modalShopFormRef.current?.validateFields().then(async (res: any) => { let oldData: any = shopData && shopData.length > 0 ? JSON.parse(JSON.stringify(shopData)) : [] console.log('oldDataoldDataoldData', oldData); console.log('resresresresresres', res); let newList: any = [] // 判断当前的里面有没有一样的 if (oldData && oldData.length > 0) { let same: boolean = false oldData.forEach((item: any, index: number) => { if (item.ADDTIME === res.ADDTIME) { same = true newList.push({ ...item, ...res }) } else { newList.push(item) } }) if (!same) { newList.push(res) } } else { newList.push(res) } console.log('newList', newList); setShopData(newList) setShowAddShopModal(false) setCommodityList([]) setCustomClassList([]) setCurrentShopRow(undefined) }) }} onCancel={() => { setShowAddShopModal(false) setCommodityList([]) setCustomClassList([]) setCurrentShopRow(undefined) }} > { // !currentShopRow?.COMMODITY_ID && if (currentShopRow?.SERVERPART_ID) { await handleGetCommodity(currentShopRow?.SERVERPART_ID) } return { ...currentShopRow, BUSINESSTYPE: currentShopRow?.BUSINESSTYPE.toString() } }} disabled={currentRow?.BusinessProcess_State === 9000} >
商品基本信息
{ const data = await getServerpartTree(currentUser?.ProvinceCode, currentUser?.CityAuthority, true, true, true) const list: any = [] if (data && data.length > 0) { data.forEach((item: any) => { if (item.children && item.children.length > 0) { item.children.forEach((subItem: any) => { list.push({ label: subItem.label, value: subItem.value }) }) } }) data.forEach((item: any) => { list.push({ label: item.label, value: item.value }) }) } return list }} rules={[ { required: true, message: '请选择服务区', }, ]} fieldProps={{ onChange: async (e: any) => { console.log('e', e) if (e) { setSelectSERVERPARTID(e) await handleGetCommodity(e) if (selectBUSINESSTYPE) { await handleGetCustomClassList(e) } } else { setSelectSERVERPARTID(undefined) setCommodityList([]) setCustomClassList([]) } } }} /> { if (e) { setSelectBUSINESSTYPE(e) if (selectSERVERPARTID) { await handleGetCustomClassList(e) } } else { setSelectBUSINESSTYPE(undefined) } } }} /> { return treeView }} fieldProps={{ treeDefaultExpandAll: true }} />
商品状态信息
商品价格信息
商品进销信息
) } export default connect(({ user }: ConnectState) => ({ currentUser: user.currentUser }))(ProductChangeInfoApproval);