diff --git a/src/assets/mobile/6.png b/src/assets/mobile/6.png new file mode 100644 index 0000000..e58a53a --- /dev/null +++ b/src/assets/mobile/6.png diff --git a/src/assets/mobile/61.png b/src/assets/mobile/61.png new file mode 100644 index 0000000..5f12f7a --- /dev/null +++ b/src/assets/mobile/61.png diff --git a/src/components/QuickQuote/index.jsx b/src/components/QuickQuote/index.jsx index e00aa31..1f8209e 100644 --- a/src/components/QuickQuote/index.jsx +++ b/src/components/QuickQuote/index.jsx @@ -1187,9 +1187,11 @@ const ContentComponent = props => { // 主表组件 const MasterComponent = props => { const { masterConfig, masterData = {}, selectedNode = {} } = props.state; + console.log("🚀 ~ masterConfig:", masterConfig) if (!masterConfig) return ""; const ableConfigs = masterConfig.gdsconfigformslave.filter(item => item.sName && item.bVisible); + console.log("🚀 ~ ableConfigs:", ableConfigs) // 处理长宽样式 const viewConfigs = selectedNode?.bBox ? ableConfigs : ableConfigs.filter(x => x.sName !== "dHeight"); if (selectedNode?.bBox) { diff --git a/src/mobile/components/SelectInput.jsx b/src/mobile/components/SelectInput.jsx new file mode 100644 index 0000000..db72793 --- /dev/null +++ b/src/mobile/components/SelectInput.jsx @@ -0,0 +1,112 @@ +import React, { useState, useRef, useEffect, useCallback } from "react"; +import { Input, Popup, Button, Toast, PickerView, SearchBar } from "antd-mobile"; +import { DownOutline } from "antd-mobile-icons"; +import commonConfig from "@/utils/config"; +import * as commonServices from "@/services/services"; +import * as commonFunc from "@/components/Common/commonFunc"; +import styles from "./selectInput.less"; +import debounce from "lodash/debounce"; + + +const SelectInput = (props) => { + console.log(props, "SelectInput props"); + + const [value, setValue] = useState(""); + const [values, setValues] = useState(""); + const [searchValue, setSearchValue] = useState(""); + const [visible, setVisible] = useState(false); + useEffect(() => { + // 监听滚动事件 + // const data = getSqlDropDownData() + // console.log(data, "data"); + + }, [visible]); + const [columns, setColumns] = useState([ + { label: "选项1", value: "option1" }, + { label: "选项2", value: "option2" }, + { label: "选项3", value: "option3" }, + ]); + const [coplyColumns, setCopyColumns] = useState(columns); + // + const [hasMore, setHasMore] = useState(true); + const [loading, setLoading] = useState(false); + + const handleConfirm = () => { + console.log(values, "values"); + setValue(values); + setVisible(false); + }; + + const handleCancel = () => { + Toast.show("取消按钮被点击"); + setVisible(false); + }; + const changeInputValue = val => { + console.log(val, "val"); + }; + + const searchData = val => { + // todo调用接口 + setSearchValue(val); + const list = columns.filter(item => item.label.includes(val)); + setColumns(list); + if (val === "") { + console.log(36666); + setColumns(coplyColumns); + } + }; + // 处理选择器变化 + const changeOption = val => { + setValues(val[0]); + }; + + const getSqlDropDownData = async ({ sId, sModelsId, sName }) => { + const url = `${commonConfig.server_host}business/getSelectLimit/${sId}?sModelsId=${sModelsId}&sName=${sName}`; + const body = { + sSqlCondition: "", + sKeyUpFilterName: "", + pageNum: 1, + pageSize: 20, + }; + const retrunData = await commonServices.postValueService(props.app.token, body, url); + const sColumnNameConfigStr = retrunData.data?.dataset?.rows?.[0]?.sColumnNameConfig; + return commonUtils.convertStrToObj(sColumnNameConfigStr, []); + }; + return ( +
+
+ { + setValue(val); + }} + /> +
setVisible(true)}> + +
+
+ setVisible(false)} onClose={() => setVisible(false)} bodyStyle={{ height: "50vh" }}> +
+ + +
+
+ searchData(val)} /> +
+ changeOption(val)} + style={{ "--height": "200px", "--item-height": "2.8rem" }} + /> +
+
+ ); +}; + +export default SelectInput; diff --git a/src/mobile/components/selectInput.css b/src/mobile/components/selectInput.css new file mode 100644 index 0000000..fd2a500 --- /dev/null +++ b/src/mobile/components/selectInput.css @@ -0,0 +1,24 @@ +.inputBox { + position: relative; +} +.inputBox .icons { + position: absolute; + top: 50%; + right: 0rem; + transform: translateY(-50%); + width: 3.125rem; + height: 3.125rem; + line-height: 3.125rem; + text-align: center; +} +.inputBox .pickerWrapper { + flex: 1; + overflow-y: auto; + -webkit-overflow-scrolling: touch; +} +.popupHeader { + display: flex; + align-items: center; + justify-content: space-between; + margin: 0.2rem; +} diff --git a/src/mobile/components/selectInput.less b/src/mobile/components/selectInput.less new file mode 100644 index 0000000..ebb5515 --- /dev/null +++ b/src/mobile/components/selectInput.less @@ -0,0 +1,24 @@ +.inputBox { + position: relative; + .icons { + position: absolute; + top: 50%; + right: 0rem; + transform: translateY(-50%); + width: 3.125rem; + height: 3.125rem; + line-height: 3.125rem; + text-align: center; + } + .pickerWrapper { + flex: 1; + overflow-y: auto; + -webkit-overflow-scrolling: touch; + } +} +.popupHeader{ + display: flex; + align-items: center; + justify-content: space-between; + margin: 0.2rem; +} \ No newline at end of file diff --git a/src/mobile/components/showType.jsx b/src/mobile/components/showType.jsx new file mode 100644 index 0000000..4833d7d --- /dev/null +++ b/src/mobile/components/showType.jsx @@ -0,0 +1,23 @@ +import React, { useState } from "react"; +import { history } from "umi"; +import { Tabs } from "antd-mobile"; +import commonConfig from "@/utils/config"; +import * as commonServices from "@/services/services"; +import * as commonFunc from "@/components/Common/commonFunc"; +import { useEffect } from "react"; +import styles from "./showType.less"; +const showType = props => { + // const {state} = props.location + + // console.log(JSON.parse(state), "QuotationAllprogressDetail"); + console.log(props, "QuotationAllprogressDetail props"); + + return ( +
+ 66666 +
+ ); +}; + + +export default showType; diff --git a/src/mobile/components/showType.less b/src/mobile/components/showType.less new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/src/mobile/components/showType.less diff --git a/src/mobile/quotation/detail.jsx b/src/mobile/quotation/detail.jsx new file mode 100644 index 0000000..e9c3761 --- /dev/null +++ b/src/mobile/quotation/detail.jsx @@ -0,0 +1,86 @@ +import React, { useState } from "react"; +import { history } from "umi"; +import { Tabs } from "antd-mobile"; +import commonConfig from "@/utils/config"; +import * as commonServices from "@/services/services"; +import * as commonFunc from "@/components/Common/commonFunc"; +import { useEffect } from "react"; +import styles from "./quotationDetail.less"; +import SelectInput from "../components/SelectInput"; +const QuotationAllprogressDetail = props => { + // const {state} = props.location + + // console.log(JSON.parse(state), "QuotationAllprogressDetail"); + console.log(props, "QuotationAllprogressDetail props"); + + return ( +
+ +
+ ); +}; + +const QuotationDetail = props => { + const { location, app } = props; + const { token } = app; + const [state, setState] = useState(null); + + // 初始化状态 + const { formData = [] } = state || {}; + const { quotationData } = JSON.parse(location.state) || {}; + const [masterConfig, setMasterConfig] = useState(null); + useEffect(() => { + // 安全地解析 state + let parsedState = {}; + try { + parsedState = JSON.parse(location.state || "{}"); + } catch (error) { + console.error("Error parsing state:", error); + } + const { sModelsId } = parsedState; + // 构造请求 URL + const configUrl = `${commonConfig.server_host}business/getModelBysId/${"172129113112117428019179600"}?sModelsId=${"172129113112117428019179600"}`; + // 调用服务获取数据 + commonServices + .getService(token, configUrl) + .then(({ data: configReturn }) => { + if (configReturn.code === 1) { + const formData = configReturn.dataset.rows[0]?.formData; + setMasterConfig(formData[0]); + setState(pre => ({ ...pre, formData })); + } + }) + .catch(error => { + console.error("Error fetching data:", error); + }); + }, [location, app]); + + // 主表 + const list = masterConfig?.gdsconfigformslave.filter(item => item.sName && item.bVisible); + console.log("🚀 ~ list:", list); + // 客户 + const customer = list?.find(x => x.showName === "客户名称") || {}; + // console.log("🚀 ~ ableConfigs:", masterConfig); + console.log("🚀 ~ customer:", customer); + return ( +
+
{quotationData?.showName || "Loading..."}
+ {/* {list&& list.length + ? list.map((item, index) => { + return ( +
+
{item.showName}
+ +
+ ); + }) + : ""} */} +
+
客户名称
+ +
+
+ ); +}; + +export default QuotationAllprogressDetail; diff --git a/src/mobile/quotation/index.css b/src/mobile/quotation/index.css new file mode 100644 index 0000000..cf197f1 --- /dev/null +++ b/src/mobile/quotation/index.css @@ -0,0 +1,40 @@ +.quotationBox { + width: 100%; + height: 100%; + position: relative; + display: flex; + align-items: center; + justify-content: center; +} +.quotationBox .quotationNavigation { + width: 30%; + height: 100%; +} +.quotationBox .quotationNavigation :global .adm-side-bar { + background-color: #EBF2FD; +} +.quotationBox .quotationContent { + width: 70%; + height: 100%; +} +.quotationBox .quotationContent .contentItem { + width: 92%; + height: 7.5rem; + border-radius: 10px; + background-color: #fff; + margin: 0 auto; + margin-bottom: 1rem; + display: flex; + padding: 0.625rem; +} +.quotationBox .quotationContent .contentItem .contentItemImg { + width: 6rem; + height: 6rem; + border-radius: 10px; +} +.quotationBox .quotationContent .contentItem .contentItemTitle { + font-size: 1.1rem; + color: #333; + margin-left: 0.625rem; + font-weight: 700; +} diff --git a/src/mobile/quotation/index.jsx b/src/mobile/quotation/index.jsx new file mode 100644 index 0000000..fc4ea00 --- /dev/null +++ b/src/mobile/quotation/index.jsx @@ -0,0 +1,126 @@ +import React, { useEffect, useState } from "react"; +import { history } from "umi"; +import { SideBar } from "antd-mobile"; +import styles from "./index.less"; +import Icon5 from "@/assets/mobile/20.png"; +import commonConfig from "@/utils/config"; +import * as commonServices from "@/services/services"; +import quotation from "@/routes/mobile/quotation"; +const QuotationAllprogress = baseProps => { + const { sModelsId } = baseProps; + const { token } = baseProps.app; + const [state, setState] = useState(null); + const [selectedKey, setSelectedKey] = useState(null); + const { treeDataList } = baseProps.state || {}; + const getQuotationList = async () => { + const configDataId = "172129113112117428019180410"; + const formSrcRoute = ""; + const condition = { + bFilter: [], + pageNum: 1, + pageSize: 1000, + }; + const dataUrl = `${commonConfig.server_host}filterTree/getFilterTree/${configDataId}?sModelsId=${sModelsId}&sName=${formSrcRoute}`; + const dataReturn = (await commonServices.postValueService(token, condition, dataUrl)).data; + const treeDataList = dataReturn.dataset.rows[0].children.map(item => { + return item; + }); + setState(pre => ({ ...pre, treeDataList })); + // setSelectedKey(treeDataList[0].sId); // 默认选中第一条 + }; + // 172129113112117428019180410 + useEffect(() => { + getQuotationList(); + }, [sModelsId]); + const treeProps = { + ...baseProps, + state, + selectedKey, + setState, + }; + return ( +
+
+ +
+
+ +
+
+ ); +}; +// 侧边导航 +const TreeComponent = props => { + const { treeDataList, selectedKey } = props.state || {}; + const { setState } = props; + useEffect(() => { + if (treeDataList && treeDataList.length) { + const list = treeDataList.find(item => item.sId === treeDataList[0].sId); + if (list && list.children && list.children.length) { + // 如果有子节点,则取子节点的名称 + setState(pre => ({ + ...pre, + selectedKey: treeDataList[0].sId, + contentList: list.children.map(child => { + return child; + }), + })); + } + } + }, [treeDataList]); + return treeDataList && treeDataList.length ? ( + { + const list = treeDataList.find(item => item.sId === key); + if (list && list.children && list.children.length) { + // 如果有子节点,则取子节点的名称 + setState(pre => ({ + ...pre, + selectedKey: key, + contentList: list.children.map(child => { + return child; + }), + })); + } + }} + > + {treeDataList && treeDataList.length + ? treeDataList.map(item => ) + : ""} + + ) : ( + "" + ); +}; +// 内容 +const ContentComponent = props => { + const { contentList = [] } = props.state || {}; + // 路由 + const handleGridClick = item => () => { + console.log(item, props, "handleGridClick"); + console.log(props.dispatch, "handleGridClick"); + + props.dispatch({ + type: "content/onRouterMobile", + payload: { + url: "/indexMobile/quotationDetail" /* 接口地址 */, + urlKey: undefined, + sModelsId: props.sModelsId, + sModelType: props.sModelType, + quotationData: item + }, + }); + }; + return ( +
+ {contentList.map(item => ( +
+ + {item.showName} +
+ ))} +
+ ); +}; +export default QuotationAllprogress; diff --git a/src/mobile/quotation/index.less b/src/mobile/quotation/index.less new file mode 100644 index 0000000..0767f1e --- /dev/null +++ b/src/mobile/quotation/index.less @@ -0,0 +1,41 @@ + +.quotationBox { + width: 100%; + height: 100%; + position: relative; + display: flex; + align-items: center; + justify-content: center; + .quotationNavigation { + width: 30%; + height: 100%; + :global .adm-side-bar { + background-color: #EBF2FD; + } + } + .quotationContent { + width: 70%; + height: 100%; + .contentItem { + width: 92%; + height: 7.5rem; + border-radius: 10px; + background-color: #fff; + margin: 0 auto; + margin-bottom: 1rem; + display: flex; + padding: 0.625rem; + .contentItemImg { + width: 6rem; + height: 6rem; + border-radius: 10px; + } + .contentItemTitle { + font-size: 1.1rem; + color: #333; + margin-left: 0.625rem; + font-weight: 700; + } + } + } +} diff --git a/src/mobile/quotation/quotationDetail.css b/src/mobile/quotation/quotationDetail.css new file mode 100644 index 0000000..c2bb3d3 --- /dev/null +++ b/src/mobile/quotation/quotationDetail.css @@ -0,0 +1,13 @@ +.quotationDetailBox { + padding: 1rem; + background-color: #fff; +} +.customer { + margin-top: 2rem; +} +.customer :global .adm-input-element { + border: 1px solid #DEDEDF; + height: 3.125rem; + margin: 0.5rem 0; + border-radius: 5px; +} diff --git a/src/mobile/quotation/quotationDetail.less b/src/mobile/quotation/quotationDetail.less new file mode 100644 index 0000000..f7b7873 --- /dev/null +++ b/src/mobile/quotation/quotationDetail.less @@ -0,0 +1,15 @@ +.quotationDetailBox{ + padding: 1rem; + // height: 100%; + background-color: #fff; + // height: 100vh; +} +.customer{ + margin-top: 2rem; + :global .adm-input-element{ + border: 1px solid #DEDEDF; + height: 3.125rem; + margin: 0.5rem 0; + border-radius: 5px; + } +} \ No newline at end of file diff --git a/src/models/content.js b/src/models/content.js index 6194a03..a23c85d 100644 --- a/src/models/content.js +++ b/src/models/content.js @@ -94,6 +94,8 @@ export default { *onRouterMobile({ payload }, { put, call, select }) { const { urlKey } = payload; /* 参数接收 */ + console.log(payload,'payload'); + if (urlKey !== undefined) { const token = yield select(state => state.app.token); /* 用户令牌 */ const { data } = yield call(services.getService, token, urlKey); @@ -126,11 +128,13 @@ export default { yield put({ type: 'app/throwErrorMobile', payload: data }); } } else { + const param = { sModelsId: payload.sModelsId, sId: payload.sId, personPic: payload.personPic, slaveData: payload.slaveData, + quotationData: payload.quotationData, }; history.push(payload.url, commonUtils.convertObjToStr(param)); // yield put(routerRedux.push({ diff --git a/src/routes/mobile/IndexMobile.js b/src/routes/mobile/IndexMobile.js index 9894010..72b820c 100644 --- a/src/routes/mobile/IndexMobile.js +++ b/src/routes/mobile/IndexMobile.js @@ -28,6 +28,10 @@ import Icon31 from "../../assets/mobile/31.png"; // import Icon41 from '../../assets/mobile/41.png'; import Icon5 from "../../assets/mobile/5.png"; import Icon51 from "../../assets/mobile/51.png"; +import Icon6 from "../../assets/mobile/6.png"; +import Icon61 from "../../assets/mobile/61.png"; +import Quotation from "./quotation/index"; +import QuotationDetail from "./quotation/detail"; // import AppUtil from '../../utils/AppUtil'; import * as commonBusiness from "../../components/Common/commonBusiness"; @@ -48,8 +52,6 @@ class IndexMobile extends React.Component { } componentWillMount() { history.push("/indexMobile"); // 刷新时更新路由,避免底部按钮和返回按钮错乱显示 - console.log("🚀 ~ IndexMobile ~ componentWillMount ~ this.props:", this.props) - if (this.props.routing && this.props.routing) { const { state } = this.props.routing; if (state) { @@ -72,6 +74,7 @@ class IndexMobile extends React.Component { scene: "现场", workbench: "工作台", device: "设备", + quotation: "报价下单", myself: "我的", }[this.state.selectedTab]; @@ -113,6 +116,8 @@ class IndexMobile extends React.Component { } }; renderContent(pageText) { + console.log(this.props, "pageText"); + if (pageText === "message") { if (location.pathname === "/indexMobile/examine") { return ( @@ -208,6 +213,19 @@ class IndexMobile extends React.Component { ); } + } else if (pageText === "quotation") { + if (location.pathname === "/indexMobile/quotationDetail") { + return ( + + + ) + } else { + return ( +
+ +
+ ); + } } } @@ -378,6 +396,42 @@ class IndexMobile extends React.Component { style={{ width: "22px", height: "22px", + background: `url(${Icon61}) center center / 21px 21px no-repeat`, + }} + /> + } + selectedIcon={ +
+ } + title="报价" + key="quotation" + // badge="2" + selected={this.state.selectedTab === "quotation"} + onPress={() => { + const { app } = this.props; + const { token } = app; + commonBusiness.clearSocketData({ token, value: {}, sModelsId: 100 }); + this.setState({ + selectedTab: "quotation", + title: "报价下单", + }); + history.push("/indexMobile"); + }} + > + {this.state.selectedTab === "quotation" ? this.renderContent(this.state.selectedTab) : ""} + + diff --git a/src/routes/mobile/common/ContactsInfoMobile.js b/src/routes/mobile/common/ContactsInfoMobile.js index 4cda798..f6d3229 100644 --- a/src/routes/mobile/common/ContactsInfoMobile.js +++ b/src/routes/mobile/common/ContactsInfoMobile.js @@ -1,5 +1,5 @@ import React from 'react'; -import { connect } from 'dva'; +import { connect } from 'umi'; import ContactsInfoMobileComponent from '../../../mobile/common/ContactsInfoMobile'; import * as commonUtils from '../../../utils/utils'; diff --git a/src/routes/mobile/common/ContactsMobile.js b/src/routes/mobile/common/ContactsMobile.js index 4e6d4fb..ae42e54 100644 --- a/src/routes/mobile/common/ContactsMobile.js +++ b/src/routes/mobile/common/ContactsMobile.js @@ -1,5 +1,5 @@ import React from 'react'; -import { connect } from 'dva'; +import { connect } from 'umi'; import ContactsMobileComponent from '../../../mobile/common/ContactsMobile'; function ContactsMobile({ diff --git a/src/routes/mobile/common/DeviceMobile.js b/src/routes/mobile/common/DeviceMobile.js index dd5f97c..43e5a1f 100644 --- a/src/routes/mobile/common/DeviceMobile.js +++ b/src/routes/mobile/common/DeviceMobile.js @@ -1,5 +1,5 @@ import React from 'react'; -import { connect } from 'dva'; +import { connect } from 'umi'; import DeviceMobileComponent from '../../../mobile/common/CommobileList'; function DeviceMobile({ diff --git a/src/routes/mobile/common/ExamineMobile.js b/src/routes/mobile/common/ExamineMobile.js index b7e524a..d7d43b9 100644 --- a/src/routes/mobile/common/ExamineMobile.js +++ b/src/routes/mobile/common/ExamineMobile.js @@ -1,5 +1,5 @@ import React from 'react'; -import { connect } from 'dva'; +import { connect } from 'umi'; import ExamineMobileComponent from '../../../mobile/common/ExamineMobile'; import * as commonUtils from '../../../utils/utils'; diff --git a/src/routes/mobile/common/MessageMobile.js b/src/routes/mobile/common/MessageMobile.js index d9fe872..aa3ae30 100644 --- a/src/routes/mobile/common/MessageMobile.js +++ b/src/routes/mobile/common/MessageMobile.js @@ -1,5 +1,5 @@ import React from 'react'; -import { connect } from 'dva'; +import { connect } from 'umi'; import MessageMobileComponent from '../../../mobile/common/MessageMobile'; function MessageMobile({ diff --git a/src/routes/mobile/common/MyselfMobile.js b/src/routes/mobile/common/MyselfMobile.js index 73fc454..0dbd8e2 100644 --- a/src/routes/mobile/common/MyselfMobile.js +++ b/src/routes/mobile/common/MyselfMobile.js @@ -1,5 +1,5 @@ import React from 'react'; -import { connect } from 'dva'; +import { connect } from 'umi'; import MyselfMobileComponent from '../../../mobile/common/MyselfMobile'; function MyselfMobile({ diff --git a/src/routes/mobile/common/NewsMobile.js b/src/routes/mobile/common/NewsMobile.js index 13ffe38..adb859e 100644 --- a/src/routes/mobile/common/NewsMobile.js +++ b/src/routes/mobile/common/NewsMobile.js @@ -1,5 +1,5 @@ import React from 'react'; -import { connect } from 'dva'; +import { connect } from 'umi'; import NewsMobileComponent from '../../../mobile/common/NewsMobile'; function NewsMobile({ diff --git a/src/routes/mobile/common/ProcessReportMobile.js b/src/routes/mobile/common/ProcessReportMobile.js index 4f14fcb..aa66011 100644 --- a/src/routes/mobile/common/ProcessReportMobile.js +++ b/src/routes/mobile/common/ProcessReportMobile.js @@ -1,5 +1,5 @@ import React from 'react'; -import { connect } from 'dva'; +import { connect } from 'umi'; import ProcessReportMobileComponent from '../../../mobile/common/ProcessReportMobile'; import * as commonUtils from '../../../utils/utils'; diff --git a/src/routes/mobile/common/RevisePasswordMobile.js b/src/routes/mobile/common/RevisePasswordMobile.js index adeb073..c459afa 100644 --- a/src/routes/mobile/common/RevisePasswordMobile.js +++ b/src/routes/mobile/common/RevisePasswordMobile.js @@ -1,5 +1,5 @@ import React from 'react'; -import { connect } from 'dva'; +import { connect } from 'umi'; import RevisePasswordMobileComponent from '../../../mobile/common/RevisePasswordMobile'; function RevisePasswordMobile({ diff --git a/src/routes/mobile/common/SceneCssMobile.js b/src/routes/mobile/common/SceneCssMobile.js index 3d9681e..395c1de 100644 --- a/src/routes/mobile/common/SceneCssMobile.js +++ b/src/routes/mobile/common/SceneCssMobile.js @@ -1,5 +1,5 @@ import React from 'react'; -import { connect } from 'dva'; +import { connect } from 'umi'; import SceneCssMobileComponent from '../../../mobile/common/SceneCssMobile'; function SceneMobile({ diff --git a/src/routes/mobile/common/SceneSrmMobile.js b/src/routes/mobile/common/SceneSrmMobile.js index c2ca05f..85a84c8 100644 --- a/src/routes/mobile/common/SceneSrmMobile.js +++ b/src/routes/mobile/common/SceneSrmMobile.js @@ -1,5 +1,5 @@ import React from 'react'; -import { connect } from 'dva'; +import { connect } from 'umi'; import SceneSrmMobileComponent from '../../../mobile/common/SceneSrmMobile'; function SceneMobile({ diff --git a/src/routes/mobile/common/WorkBenchMobile.js b/src/routes/mobile/common/WorkBenchMobile.js index 41f0d91..3a49ef0 100644 --- a/src/routes/mobile/common/WorkBenchMobile.js +++ b/src/routes/mobile/common/WorkBenchMobile.js @@ -1,5 +1,5 @@ import React from 'react'; -import { connect } from 'dva'; +import { connect } from 'umi'; import WorkBenchMobileComponent from '../../../mobile/common/WorkBenchMobile'; diff --git a/src/routes/mobile/common/commobilePrintPdf.js b/src/routes/mobile/common/commobilePrintPdf.js index 7409fb5..7e01674 100644 --- a/src/routes/mobile/common/commobilePrintPdf.js +++ b/src/routes/mobile/common/commobilePrintPdf.js @@ -4,7 +4,7 @@ */ import React from 'react'; -import { connect } from 'dva'; +import { connect } from 'umi'; import * as commonUtils from '../../../utils/utils'; import CommobilePrintPdf from '../../../mobile/common/CommobilePrintPdf'; diff --git a/src/routes/mobile/logincss/LoginCss.js b/src/routes/mobile/logincss/LoginCss.js index e4837c6..2b1ba7c 100644 --- a/src/routes/mobile/logincss/LoginCss.js +++ b/src/routes/mobile/logincss/LoginCss.js @@ -1,5 +1,5 @@ import React from 'react'; -import { connect } from 'dva'; +import { connect } from 'umi'; import LoginCssComponent from '../../../mobile/logincss/LoginCss'; function LoginCss({ diff --git a/src/routes/mobile/loginsrm/LoginSrm.js b/src/routes/mobile/loginsrm/LoginSrm.js index 6bcf42e..43215a9 100644 --- a/src/routes/mobile/loginsrm/LoginSrm.js +++ b/src/routes/mobile/loginsrm/LoginSrm.js @@ -1,5 +1,5 @@ import React from 'react'; -import { connect } from 'dva'; +import { connect } from 'umi'; import LoginSrmComponent from '../../../mobile/loginsrm/LoginSrm'; function LoginSrm({ diff --git a/src/routes/mobile/quotation/detail.js b/src/routes/mobile/quotation/detail.js new file mode 100644 index 0000000..354d3c9 --- /dev/null +++ b/src/routes/mobile/quotation/detail.js @@ -0,0 +1,20 @@ +import { connect } from "umi"; +import QuotationAllprogressDetail from "@/mobile/quotation/detail.jsx"; + +function quotationDetail({ dispatch, app, content, location, sModelsId }) { + const quotationProps = { + app, + content, + dispatch, + location, // 只传递需要的部分 + sModelsId, + }; + return ; +} + +const mapStateToProps = ({ app, content }) => ({ + app, + content, +}); + +export default connect(mapStateToProps)(quotationDetail); \ No newline at end of file diff --git a/src/routes/mobile/quotation/index.js b/src/routes/mobile/quotation/index.js new file mode 100644 index 0000000..5d4d2da --- /dev/null +++ b/src/routes/mobile/quotation/index.js @@ -0,0 +1,20 @@ +import { connect } from "umi"; +import QuotationAllprogress from "@/mobile/quotation/index.jsx"; + +function quotation({ dispatch, app, content, location, sModelsId }) { + const quotationProps = { + app, + content, + dispatch, + location, // 只传递需要的部分 + sModelsId, + }; + return ; +} + +const mapStateToProps = ({ app, content }) => ({ + app, + content, +}); + +export default connect(mapStateToProps)(quotation); \ No newline at end of file