panhui 5 jaren geleden
bovenliggende
commit
9eb776b88f
5 gewijzigde bestanden met toevoegingen van 267 en 474 verwijderingen
  1. 2 2
      App.js
  2. 2 134
      MapHtml/MapMarkerDetail.html
  3. 1 1
      navigation/BaseNavigator.jsx
  4. 8 93
      screens/Map/MapScreen.jsx
  5. 254 244
      screens/Order/OrderDetailScreen.jsx

+ 2 - 2
App.js

@@ -52,8 +52,8 @@ export default function App() {
           index: 0,
           routes: [
             {
-              name: initName,
-              // name: 'RewardRider',
+              // name: initName,
+              name: 'OrderDetail',
             },
           ],
         })

+ 2 - 134
MapHtml/MapMarkerDetail.html

@@ -23,141 +23,9 @@
 	}
 </style>
 
-<body onload="initMap()">
-	<div id="container"></div>
-	<script>
-		var SVG_NS = 'http://www.w3.org/2000/svg';
-		// 自定义环状饼图 - 继承DOMOverlay
-		function Donut(options) {
-			TMap.DOMOverlay.call(this, options);
-		}
+<body>
 
-		Donut.prototype = new TMap.DOMOverlay();
-
-		// 初始化
-		Donut.prototype.onInit = function (options) {
-			this.position = options.position;
-			this.data = options.data;
-			this.minRadius = options.minRadius || 0;
-			this.maxRadius = options.maxRadius || 50;
-		};
-
-		// 销毁时需解绑事件监听
-		Donut.prototype.onDestroy = function () {
-			if (this.onClick) {
-				this.dom.removeEventListener(this.onClick);
-			}
-		};
-
-		// 创建DOM元素,返回一个DOMElement,使用this.dom可以获取到这个元素
-		Donut.prototype.createDOM = function () {
-			let svg = document.createElementNS(SVG_NS, 'svg');
-
-			svg.setAttribute('width', '64px');
-			svg.setAttribute('height', '75px');
-			svg.style.cssText = 'position:absolute;top:0px;left:0px;';
-			html = `<path fill-rule="evenodd"  opacity="0.502" fill="rgb(0, 0, 0)"
- d="M31.000,50.787 C47.016,50.787 60.000,55.715 60.000,61.793 C60.000,67.872 47.016,72.799 31.000,72.799 C14.984,72.799 2.000,67.872 2.000,61.793 C2.000,55.715 14.984,50.787 31.000,50.787 Z"/>
-<path fill-rule="evenodd"  stroke="rgb(241, 90, 60)" stroke-width="4px" stroke-linecap="butt" stroke-linejoin="miter" fill="rgb(241, 90, 60)"
- d="M56.154,60.538 C53.385,61.278 50.538,59.639 49.796,56.878 C49.796,56.878 47.801,55.106 45.308,52.447 L43.260,60.792 L18.805,60.792 L16.779,52.535 C14.237,55.187 12.199,56.952 12.199,56.952 C11.457,59.715 8.614,61.355 5.847,60.614 C3.080,59.874 1.438,57.034 2.180,54.271 L13.538,32.672 C13.575,32.535 13.639,32.414 13.686,32.282 C13.712,32.216 13.735,32.146 13.762,32.082 C13.974,31.558 14.254,31.084 14.606,30.670 C15.128,30.021 15.766,29.529 16.521,29.269 C17.015,29.059 17.537,28.921 18.082,28.872 C18.751,28.358 20.921,26.742 23.554,25.303 C20.647,22.983 18.781,19.423 18.781,15.425 C18.781,8.431 24.476,2.762 31.500,2.762 C38.524,2.762 44.219,8.431 44.219,15.425 C44.219,19.606 42.174,23.303 39.036,25.609 C41.333,26.910 43.200,28.280 43.903,28.812 C44.695,28.882 45.452,29.122 46.120,29.524 C46.662,29.816 47.132,30.238 47.530,30.756 C47.536,30.763 47.542,30.770 47.548,30.778 C47.736,31.024 47.904,31.294 48.057,31.582 C48.076,31.619 48.093,31.655 48.111,31.692 C48.293,32.051 48.454,32.431 48.582,32.842 L59.825,54.198 C60.567,56.959 58.924,59.798 56.154,60.538 Z"/>
-`
-			svg.innerHTML = html
-
-
-
-			// click事件监听
-			this.onClick = () => {
-				// DOMOverlay继承自EventEmitter,可以使用emit触发事件
-				this.emit('click');
-			};
-			svg.addEventListener('click', this.onClick);
-			return svg;
-		};
-
-		// 更新DOM元素,在地图移动/缩放后执行
-		Donut.prototype.updateDOM = function () {
-			if (!this.map) {
-				return;
-			}
-
-			// 经纬度坐标转容器像素坐标
-			let pixel = this.map.projectToContainer(this.position);
-
-			// 使饼图中心点对齐经纬度坐标点
-			let left = pixel.getX() - this.dom.clientWidth / 2 + 'px';
-			let top = pixel.getY() - this.dom.clientHeight / 2 + 'px';
-			this.dom.style.transform = `translate(${left}, ${top})`;
-		};
-
-		// 使用SVG创建环状饼图
-		function createDonut(data, minRadius, maxRadius) {
-			const colorList = [
-				'#7AF4FF',
-				'#67D7FF',
-				'#52B5FF',
-				'#295BFF'
-			];
-			let sum = data.reduce((prev, curr) => prev + curr, 0);
-			let angle = 0;
-
-			let group = document.createElementNS(SVG_NS, "g");
-
-
-			// 在中心创建一个圆形
-			let circleShape = document.createElementNS(SVG_NS, 'circle');
-			circleShape.setAttribute('style', 'fill: #FFFFFF');
-			circleShape.setAttribute('cx', 0);
-			circleShape.setAttribute('cy', 0);
-			circleShape.setAttribute('r', minRadius);
-			group.appendChild(circleShape);
-
-			// 绘制文字
-			let textShape = document.createElementNS(SVG_NS, 'text');
-			textShape.setAttribute('x', 0);
-			textShape.setAttribute('y', '0.3em');
-			textShape.setAttribute('text-anchor', 'middle');
-			textShape.innerHTML = sum;
-			group.appendChild(textShape);
-
-			return group;
-		}
-
-		window.Donut = Donut;
-	</script>
-	<script type="text/javascript">
-		var map;
-		function initMap() {
-			// 初始化地图
-			map = new TMap.Map("container", {
-				zoom: 12, // 设置地图缩放级别
-				center: new TMap.LatLng(39.984104, 116.307503) // 设置地图中心点坐标
-			});
-
-			let donutList = [
-				new Donut({
-					map,
-					position: new TMap.LatLng(39.96030543872138, 116.25809083213608),
-					type: 'user'
-				}),
-				new Donut({
-					map,
-					position: new TMap.LatLng(39.9986945980902, 116.33598362780685),
-					type: 'merchat'
-				}),
-				new Donut({
-					map,
-					position: new TMap.LatLng(40.02906301748584, 116.25499991104516),
-					type: 'rider'
-				})
-			];
-
-			donutList.forEach((donut, index) => {
-				donut.on('click', () => {
-					console.log(`第${index}个环形图被点击,位置为${donut.position}`);
-				});
-			});
-		}
-	</script>
+	<iframe src="http://dingdong.izouma.com/map/home" id='container' frameborder="0"></iframe>
 </body>
 
 </html>

+ 1 - 1
navigation/BaseNavigator.jsx

@@ -83,7 +83,7 @@ export default function BasicScreens(Screen) {
       {/* 订单详情 */}
       <Screen
         name="OrderDetail"
-        initialParams={{ orderId: 1904 }}
+        initialParams={{ orderId: 2029 }}
         component={OrderDetail}
       />
       {/* 投诉 */}

+ 8 - 93
screens/Map/MapScreen.jsx

@@ -1,106 +1,21 @@
 import * as WebBrowser from 'expo-web-browser';
 import * as React from 'react';
-import { StatusBar } from 'expo-status-bar';
-import {
-  Div,
-  Button,
-  Image,
-  Text,
-  Avatar,
-  Icon,
-  Input,
-} from 'react-native-magnus';
-import { Appbar } from 'react-native-paper';
-import { ScrollView } from 'react-native-gesture-handler';
 import { WebView } from 'react-native-webview';
 
-import useModel from 'flooks';
-import User from '../../flooks/User'; // detail模块通用方法
+export default function MapScreen({ orderInfo }) {
+  React.useEffect(() => {
+    console.log(webref.postMessage('2836372'));
+  }, [orderInfo]);
 
-import Header from '../../components/Header';
-
-import { alert } from '../../Utils/TotastUtils';
-
-export default function MapScreen({ navigation }) {
-  const key = 'c4faf80125b298f93bbc1477db10e69c';
-  const html = `
-<head lang="zh-CN">
-	<meta charset="UTF-8">
-	<meta name="viewport"
-		content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no">
-	<meta name="mobile-web-app-capable" content="yes">
-	<meta name="apple-mobile-web-app-capable" content="yes">
-	<meta name="apple-mobile-web-app-status-bar-style" content="black">
-	<meta name="format-detection" content="address=no">
-	<script type="text/javascript"
-		src="https://3gimg.qq.com/lightmap/components/locationPicker2/js/main-62c2e3b971.js"></script>
-	<title>locationPicker Components Demo - iframe</title>
-	<style>
-		* {
-			margin: 0;
-			padding: 0;
-		}
-
-		body,
-		html {
-			overflow: hidden;
-		}
-	</style>
-
-</head>
-
-<body>
-	<!-- 通过 iframe 嵌入地图选点组件 -->
-	<iframe id="iframe" style="width:100vw;height:100vh" frameborder=0 scrolling="no"
-		src="https://apis.map.qq.com/tools/locpicker?search=1&type=1&key=GLFBZ-ZR2W6-76XSA-MF7CQ-GDJ6Z-6FB5K&referer=Dingdong">
-	</iframe>
-
-	<script>
-
-		window.addEventListener('message', function (event) {
-			var loc = event.data;
-			window.ReactNativeWebView.postMessage(JSON.stringify(loc))
-		}, false);
-
-
-	</script>
-</body>
-	`;
+  const webref = React.useRef();
   return (
     <>
-      <StatusBar backgroundColor="#fff" style="dark" translucent />
-
-      <Appbar.Header
-        theme={{ colors: { primary: '#fff' } }}
-        style={{
-          elevation: 0,
-          shadowOffset: {
-            width: 0,
-            height: 0,
-          },
-          shadowOpacity: 0,
-          zIndex: 2,
-        }}
-      >
-        <Appbar.BackAction onPress={navigation.goBack} />
-        <Appbar.Content
-          title="选择收货地址"
-          titleStyle={{ textAlign: 'center', fontSize: 16 }}
-        />
-        <Div w={56} h={56} />
-      </Appbar.Header>
       <WebView
+        ref={webref}
         source={{
-          html,
-        }}
-        style={{ flexGrow: 1, width: '100%' }}
-        onMessage={({ nativeEvent }) => {
-          const info = JSON.parse(nativeEvent.data);
-          console.log(info);
-          alert('', `您当前选择的是:${info.poiaddress}`, () => {
-            navigation.goBack();
-          });
+          uri: `http://dingdong.izouma.com/map/home`,
         }}
+        javaScriptEnabled
       />
     </>
   );

+ 254 - 244
screens/Order/OrderDetailScreen.jsx

@@ -1,6 +1,12 @@
 import * as WebBrowser from 'expo-web-browser';
 import * as React from 'react';
-import { StyleSheet, View, Clipboard, RefreshControl } from 'react-native';
+import {
+  StyleSheet,
+  View,
+  Clipboard,
+  RefreshControl,
+  Dimensions,
+} from 'react-native';
 import { Div, Button, Image, Text } from 'react-native-magnus';
 
 import { Flex } from '@ant-design/react-native';
@@ -22,6 +28,8 @@ import {
 } from '../../Utils/OrderUtils';
 import Time from '../../Utils/TimeUtils';
 
+import MapScreen from '../Map/MapScreen';
+
 export default function OrderScreen({ navigation }) {
   const [orderInfo, setorderInfo] = React.useState({
     merchant: {},
@@ -84,7 +92,8 @@ export default function OrderScreen({ navigation }) {
   }, [orderInfo]);
 
   return (
-    <>
+    <Div bg="gray200">
+      <MapScreen orderInfo={orderInfo} />
       <Header title={statusInfo.name} />
       <ScrollView
         contentContainerStyle={styles.scroll}
@@ -95,80 +104,33 @@ export default function OrderScreen({ navigation }) {
           />
         }
       >
-        <View style={[styles.card]}>
-          {finish ? (
-            <Text fontSize="xl">
-              <Text fontSize="xl" color="brand500" mr={10} fontWeight="bold">
-                {statusInfo.name}
+        <Div pt={Dimensions.get('window').height * 0.6} pb={50} px={15}>
+          <View style={[styles.card]}>
+            {finish ? (
+              <Text fontSize="xl">
+                <Text fontSize="xl" color="brand500" mr={10} fontWeight="bold">
+                  {statusInfo.name}
+                </Text>
+                {new Time(
+                  orderInfo.userReceivedTime,
+                  'yyyy-MM-DD HH:mm:ss'
+                ).getFormat('HH:mm')}
+                送达
               </Text>
-              {new Time(
-                orderInfo.userReceivedTime,
-                'yyyy-MM-DD HH:mm:ss'
-              ).getFormat('HH:mm')}
-              送达
-            </Text>
-          ) : (
-            <Text fontSize="xl">
-              <Text fontSize="xl" color="brand500" mr={10} fontWeight="bold">
-                {statusInfo.name}
+            ) : (
+              <Text fontSize="xl">
+                <Text fontSize="xl" color="brand500" mr={10} fontWeight="bold">
+                  {statusInfo.name}
+                </Text>
+                预计
+                {new Time(
+                  orderInfo.timeOfArrival,
+                  'yyyy-MM-DD HH:mm:ss'
+                ).getFormat('HH:mm')}
+                送达
               </Text>
-              预计
-              {new Time(
-                orderInfo.timeOfArrival,
-                'yyyy-MM-DD HH:mm:ss'
-              ).getFormat('HH:mm')}
-              送达
-            </Text>
-          )}
-          <Div row mt={10}>
-            <Button
-              fontSize="xs"
-              flex={1}
-              mx={5}
-              bg="white"
-              color="gray600"
-              borderColor="brand500"
-              borderWidth={1}
-              rounded={3}
-              onPress={() => connectKefu(orderId)}
-            >
-              联系客服
-            </Button>
-            {!finish && (
-              <Button
-                fontSize="xs"
-                flex={1}
-                mx={5}
-                bg="white"
-                color="gray600"
-                borderColor="brand500"
-                borderWidth={1}
-                rounded={3}
-                onPress={() => {
-                  warnning('正在帮您联系骑手');
-                }}
-              >
-                联系骑手
-              </Button>
-            )}
-            {!finish && (
-              <Button
-                fontSize="xs"
-                flex={1}
-                mx={5}
-                bg="white"
-                color="gray600"
-                borderColor="brand500"
-                borderWidth={1}
-                rounded={3}
-                onPress={() => {
-                  warnning('正在帮您催单');
-                }}
-              >
-                催单
-              </Button>
             )}
-            {finish && !Allfinish && (
+            <Div row mt={10}>
               <Button
                 fontSize="xs"
                 flex={1}
@@ -178,237 +140,288 @@ export default function OrderScreen({ navigation }) {
                 borderColor="brand500"
                 borderWidth={1}
                 rounded={3}
-                onPress={() => {
-                  navigation.navigate('Evaluate', {
-                    orderId,
-                  });
-                }}
+                onPress={() => connectKefu(orderId)}
               >
-                立即评价
+                联系客服
               </Button>
-            )}
-            {finish && (
+              {!finish && (
+                <Button
+                  fontSize="xs"
+                  flex={1}
+                  mx={5}
+                  bg="white"
+                  color="gray600"
+                  borderColor="brand500"
+                  borderWidth={1}
+                  rounded={3}
+                  onPress={() => {
+                    warnning('正在帮您联系骑手');
+                  }}
+                >
+                  联系骑手
+                </Button>
+              )}
+              {!finish && (
+                <Button
+                  fontSize="xs"
+                  flex={1}
+                  mx={5}
+                  bg="white"
+                  color="gray600"
+                  borderColor="brand500"
+                  borderWidth={1}
+                  rounded={3}
+                  onPress={() => {
+                    warnning('正在帮您催单');
+                  }}
+                >
+                  催单
+                </Button>
+              )}
+              {finish && !Allfinish && (
+                <Button
+                  fontSize="xs"
+                  flex={1}
+                  mx={5}
+                  bg="white"
+                  color="gray600"
+                  borderColor="brand500"
+                  borderWidth={1}
+                  rounded={3}
+                  onPress={() => {
+                    navigation.navigate('Evaluate', {
+                      orderId,
+                    });
+                  }}
+                >
+                  立即评价
+                </Button>
+              )}
+              {finish && (
+                <Button
+                  fontSize="xs"
+                  flex={1}
+                  mx={5}
+                  bg="white"
+                  color="gray600"
+                  borderColor="brand500"
+                  borderWidth={1}
+                  rounded={3}
+                  onPress={() => {
+                    navigation.navigate('MerchantDetail', {
+                      merchantId: orderInfo.merchantId,
+                    });
+                  }}
+                >
+                  再来一单
+                </Button>
+              )}
+            </Div>
+          </View>
+
+          <View style={[styles.card]}>
+            <Div row pb={10}>
+              <Text fontSize="xl" fontWeight="bold">
+                {merchant.showName}
+              </Text>
               <Button
                 fontSize="xs"
-                flex={1}
-                mx={5}
+                w={100}
                 bg="white"
                 color="gray600"
                 borderColor="brand500"
                 borderWidth={1}
                 rounded={3}
+                ml={14}
                 onPress={() => {
-                  navigation.navigate('MerchantDetail', {
-                    merchantId: orderInfo.merchantId,
-                  });
+                  warnning('正在帮您联系商家');
                 }}
               >
-                再来一单
+                联系商家
               </Button>
-            )}
-          </Div>
-        </View>
-
-        <View style={[styles.card]}>
-          <Div row pb={10}>
-            <Text fontSize="xl" fontWeight="bold">
-              {merchant.showName}
-            </Text>
-            <Button
-              fontSize="xs"
-              w={100}
-              bg="white"
-              color="gray600"
-              borderColor="brand500"
-              borderWidth={1}
-              rounded={3}
-              ml={14}
-              onPress={() => {
-                warnning('正在帮您联系商家');
-              }}
-            >
-              联系商家
-            </Button>
-          </Div>
-          <Div>
-            {orderGoodsSpecs.map((item) => {
-              return <GoodsItem info={item} goods={item.goods} key={item.id} />;
-            })}
-          </Div>
-          <Flex style={styles.info}>
-            <Flex.Item>
-              <Flex>
-                <Text fontSize="xs" color="gray300" textAlign="left">
-                  包装费
-                </Text>
-                <Text fontSize="xs" color="gray300" textAlign="left">
-                  餐盒
-                </Text>
-              </Flex>
-            </Flex.Item>
-            <Text fontSize="xs" color="gray300" textAlign="left">
-              ¥{orderInfo.packingPrice}
-            </Text>
-          </Flex>
-          <Flex style={styles.info}>
-            <Flex.Item>
+            </Div>
+            <Div>
+              {orderGoodsSpecs.map((item) => {
+                return (
+                  <GoodsItem info={item} goods={item.goods} key={item.id} />
+                );
+              })}
+            </Div>
+            <Flex style={styles.info}>
+              <Flex.Item>
+                <Flex>
+                  <Text fontSize="xs" color="gray300" textAlign="left">
+                    包装费
+                  </Text>
+                  <Text fontSize="xs" color="gray300" textAlign="left">
+                    餐盒
+                  </Text>
+                </Flex>
+              </Flex.Item>
               <Text fontSize="xs" color="gray300" textAlign="left">
-                配送费(叮咚专送)
+                ¥{orderInfo.packingPrice}
               </Text>
-            </Flex.Item>
-            <Text fontSize="xs" color="gray300" textAlign="left">
-              ¥{orderInfo.deliveryAmount}
-            </Text>
-          </Flex>
-          <Flex style={styles.info}>
-            <Flex.Item>
+            </Flex>
+            <Flex style={styles.info}>
+              <Flex.Item>
+                <Text fontSize="xs" color="gray300" textAlign="left">
+                  配送费(叮咚专送)
+                </Text>
+              </Flex.Item>
               <Text fontSize="xs" color="gray300" textAlign="left">
-                满减
+                ¥{orderInfo.deliveryAmount}
               </Text>
-            </Flex.Item>
-            <Text fontSize="xs" color="red500" textAlign="left">
-              -¥{orderInfo.fullReduction}
-            </Text>
-          </Flex>
-          {!!orderInfo.firstBuy && (
+            </Flex>
             <Flex style={styles.info}>
               <Flex.Item>
                 <Text fontSize="xs" color="gray300" textAlign="left">
-                  首单
+                  满减
                 </Text>
               </Flex.Item>
               <Text fontSize="xs" color="red500" textAlign="left">
-                ¥{orderInfo.firstBuy}
+                -¥{orderInfo.fullReduction}
               </Text>
             </Flex>
-          )}
-
-          <Flex style={styles.info}>
-            <Flex.Item>
-              <Text fontSize="xs" color="gray300" textAlign="left">
-                红包
-              </Text>
-            </Flex.Item>
-            <Text fontSize="xs" color="red500" textAlign="left">
-              -¥{orderInfo.redBag || 0}
-            </Text>
-          </Flex>
-          <Flex style={styles.total} justify="end">
-            <Text size="s1">小计 ¥{orderInfo.realAmount}</Text>
-          </Flex>
-        </View>
+            {!!orderInfo.firstBuy && (
+              <Flex style={styles.info}>
+                <Flex.Item>
+                  <Text fontSize="xs" color="gray300" textAlign="left">
+                    首单
+                  </Text>
+                </Flex.Item>
+                <Text fontSize="xs" color="red500" textAlign="left">
+                  ¥{orderInfo.firstBuy}
+                </Text>
+              </Flex>
+            )}
 
-        <View style={[styles.card]}>
-          <Text size="c1">订单信息</Text>
-          <View style={styles.main}>
-            <Flex style={styles.info2}>
+            <Flex style={styles.info}>
               <Flex.Item>
-                <Text fontSize="xs" textAlign="left">
-                  下单时间
+                <Text fontSize="xs" color="gray300" textAlign="left">
+                  红包
                 </Text>
               </Flex.Item>
-              <Text fontSize="xs" textAlign="left">
-                {orderInfo.orderTime}
+              <Text fontSize="xs" color="red500" textAlign="left">
+                {orderInfo.redBag || 0}
               </Text>
             </Flex>
-            {orderInfo.userReceivedTime ? (
+            <Flex style={styles.total} justify="end">
+              <Text size="s1">小计 ¥{orderInfo.realAmount}</Text>
+            </Flex>
+          </View>
+
+          <View style={[styles.card]}>
+            <Text size="c1">订单信息</Text>
+            <View style={styles.main}>
               <Flex style={styles.info2}>
                 <Flex.Item>
                   <Text fontSize="xs" textAlign="left">
-                    送达时间
+                    下单时间
                   </Text>
                 </Flex.Item>
                 <Text fontSize="xs" textAlign="left">
-                  {orderInfo.userReceivedTime}
+                  {orderInfo.orderTime}
                 </Text>
               </Flex>
-            ) : (
+              {orderInfo.userReceivedTime ? (
+                <Flex style={styles.info2}>
+                  <Flex.Item>
+                    <Text fontSize="xs" textAlign="left">
+                      送达时间
+                    </Text>
+                  </Flex.Item>
+                  <Text fontSize="xs" textAlign="left">
+                    {orderInfo.userReceivedTime}
+                  </Text>
+                </Flex>
+              ) : (
+                <Flex style={styles.info2}>
+                  <Flex.Item>
+                    <Text fontSize="xs" textAlign="left">
+                      预计送达时间
+                    </Text>
+                  </Flex.Item>
+                  <Text fontSize="xs" textAlign="left">
+                    {orderInfo.timeOfArrival}
+                  </Text>
+                </Flex>
+              )}
+
               <Flex style={styles.info2}>
-                <Flex.Item>
+                <Flex.Item style={styles.address}>
                   <Text fontSize="xs" textAlign="left">
-                    预计送达时间
+                    收货地址
                   </Text>
                 </Flex.Item>
                 <Text fontSize="xs" textAlign="left">
-                  {orderInfo.timeOfArrival}
+                  {orderInfo.userAddress}
                 </Text>
               </Flex>
-            )}
-
-            <Flex style={styles.info2}>
-              <Flex.Item style={styles.address}>
+              <Flex style={styles.info2}>
+                <Flex.Item>
+                  <Text fontSize="xs" textAlign="left">
+                    配送骑手
+                  </Text>
+                </Flex.Item>
+                <Flex>
+                  <Button
+                    fontSize="xs"
+                    w={100}
+                    bg="white"
+                    color="gray600"
+                    borderColor="brand500"
+                    borderWidth={1}
+                    rounded={3}
+                    onPress={() => {
+                      warnning('正在帮您联系骑手');
+                    }}
+                  >
+                    联系骑手
+                  </Button>
+                  <Text fontSize="xs" ml={20} textAlign="left">
+                    周猩猩
+                  </Text>
+                </Flex>
+              </Flex>
+              <Flex style={styles.info2}>
                 <Text fontSize="xs" textAlign="left">
-                  收货地址
+                  订 单 号
                 </Text>
-              </Flex.Item>
-              <Text fontSize="xs" textAlign="left">
-                {orderInfo.userAddress}
-              </Text>
-            </Flex>
-            <Flex style={styles.info2}>
-              <Flex.Item>
-                <Text fontSize="xs" textAlign="left">
-                  配送骑手
+                <Text fontSize="xs" textAlign="right" ml={10} flex={1}>
+                  {orderInfo.id}
                 </Text>
-              </Flex.Item>
-              <Flex>
                 <Button
                   fontSize="xs"
-                  w={100}
+                  w={62}
                   bg="white"
                   color="gray600"
                   borderColor="brand500"
                   borderWidth={1}
                   rounded={3}
                   onPress={() => {
-                    warnning('正在帮您联系骑手');
+                    Clipboard.setString(orderInfo.id.toString());
+                    success('复制成功');
                   }}
+                  ml={5}
                 >
-                  联系骑手
+                  复制
                 </Button>
-                <Text fontSize="xs" ml={20} textAlign="left">
-                  周猩猩
-                </Text>
               </Flex>
-            </Flex>
-            <Flex style={styles.info2}>
-              <Text fontSize="xs" textAlign="left">
-                订 单 号
-              </Text>
-              <Text fontSize="xs" textAlign="right" ml={10} flex={1}>
-                {orderInfo.id}
-              </Text>
-              <Button
-                fontSize="xs"
-                w={62}
-                bg="white"
-                color="gray600"
-                borderColor="brand500"
-                borderWidth={1}
-                rounded={3}
-                onPress={() => {
-                  Clipboard.setString(orderInfo.id.toString());
-                  success('复制成功');
-                }}
-                ml={5}
-              >
-                复制
-              </Button>
-            </Flex>
-            {payMap.has(orderInfo.payMethod) && (
-              <Flex style={styles.info2}>
-                <Text fontSize="xs" flex={1}>
-                  支付方式
-                </Text>
-                <Text fontSize="xs" textAlign="left">
-                  {payMap.get(orderInfo.payMethod).name}
-                </Text>
-              </Flex>
-            )}
+              {payMap.has(orderInfo.payMethod) && (
+                <Flex style={styles.info2}>
+                  <Text fontSize="xs" flex={1}>
+                    支付方式
+                  </Text>
+                  <Text fontSize="xs" textAlign="left">
+                    {payMap.get(orderInfo.payMethod).name}
+                  </Text>
+                </Flex>
+              )}
+            </View>
           </View>
-        </View>
+        </Div>
       </ScrollView>
-    </>
+    </Div>
   );
 }
 
@@ -435,9 +448,6 @@ const GoodsItem = ({ info, goods }) => {
 const styles = StyleSheet.create({
   scroll: {
     flexGrow: 1,
-    paddingHorizontal: 15,
-    paddingVertical: 10,
-    backgroundColor: '#eee',
   },
   card: {
     borderRadius: 3,