From 9d0acfb65c80c4948c305ca01338f894b87346a0 Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@163.com>
Date: 星期一, 08 四月 2024 09:44:37 +0800
Subject: [PATCH] Merge branch 'Four-Way-Rack' of http://47.97.1.152:5880/r/zy-asrs-master into Four-Way-Rack

---
 zy-asrs-flow/src/pages/map/batch/modify.jsx |  105 +++++++++++++++++++++++++++-------------------------
 1 files changed, 55 insertions(+), 50 deletions(-)

diff --git a/zy-asrs-flow/src/pages/map/batch/modify.jsx b/zy-asrs-flow/src/pages/map/batch/modify.jsx
index 5b0347f..b21bcd0 100644
--- a/zy-asrs-flow/src/pages/map/batch/modify.jsx
+++ b/zy-asrs-flow/src/pages/map/batch/modify.jsx
@@ -1,59 +1,66 @@
 import React, { useState, useRef, useEffect } from 'react';
-import { Drawer, Space, Button, Card, Select, InputNumber, Input, Result, Form } from 'antd';
+import { message, Space, Button, Card, Select, InputNumber, Input, Result, Form } from 'antd';
 import {
     ProForm,
     StepsForm,
 } from '@ant-design/pro-components';
 import { FormattedMessage, useIntl, useModel } from '@umijs/max';
-import { createStyles } from 'antd-style';
 import * as Utils from '../utils'
 import ShowJson from '../drawer/showJson';
 
-const waitTime = (time = 100) => {
-    return new Promise((resolve) => {
-        setTimeout(() => {
-            resolve(true);
-        }, time);
-    });
-};
-
-const useStyles = createStyles(({ token, css }) => {
-    return {
-    }
-})
-
 const BatchModify = (props) => {
     const intl = useIntl();
-    const { styles } = useStyles();
     const { batchSprites } = props;
 
     const [form] = Form.useForm();
     const [currentStep, setCurrentStep] = useState(0);
 
-    const resetForm = () => {
+    useEffect(() => {
         form.resetFields();
+        form.setFieldsValue({
+            shelfType: null
+        })
         setCurrentStep(0);
-    };
+    }, [batchSprites]);
 
-    useEffect(() => {
-        console.log(batchSprites);
-        resetForm();
-    }, [props]);
-
-    useEffect(() => {
-        console.log(currentStep);
-    }, [currentStep]);
+    const handleOk = (values) => {
+        if (batchSprites?.length > 0) {
+            const closeLoading = message.loading(intl.formatMessage({ id: 'common.loading.api.message', defaultMessage: '绛夊緟鏈嶅姟鍣�......' }));
+            batchSprites.forEach(sprite => {
+                if (sprite.data?.type === Utils.SENSOR_TYPE.SHELF) {
+                    if (!Utils.isNullOfUndefined(values.shelfType)) {
+                        sprite.data.shelfType = values.shelfType;
+                        Utils.showSheflType(sprite);
+                    }
+                    if (!Utils.isNullOfUndefined(values.top)) {
+                        sprite.data.top = values.top;
+                    }
+                    if (!Utils.isNullOfUndefined(values.right)) {
+                        sprite.data.right = values.right;
+                    }
+                    if (!Utils.isNullOfUndefined(values.bottom)) {
+                        sprite.data.bottom = values.bottom;
+                    }
+                    if (!Utils.isNullOfUndefined(values.left)) {
+                        sprite.data.left = values.left;
+                    }
+                    if (!Utils.isNullOfUndefined(values.value)) {
+                        sprite.data.value = values.value;
+                    }
+                }
+            });
+            closeLoading();
+            return true;
+        } else {
+            return false;
+        }
+    }
 
     return (
         <>
             <StepsForm
-                form={form}
                 current={currentStep}
                 onCurrentChange={setCurrentStep}
-                onFinish={async () => {
-                    await waitTime(1000);
-                    message.success('鎻愪氦鎴愬姛');
-                }}
                 formProps={{
                     variant: 'filled',
                     layout: 'horizontal',
@@ -79,16 +86,13 @@
                         return true;
                     }}
                 >
-                    <ProForm.Item
-                    >
+                    <ProForm.Item>
                         <ShowJson
-                            data={
-                                batchSprites?.filter(item => {
-                                    return item.data?.type === Utils.SENSOR_TYPE.SHELF
-                                }).map(item => {
-                                    return item.data?.no;
-                                })
-                            }
+                            data={batchSprites?.filter(item => {
+                                return item.data?.type === Utils.SENSOR_TYPE.SHELF
+                            }).map(item => {
+                                return item.data?.no;
+                            })}
                             height='500px'
                             jsonType={0}
                         />
@@ -97,38 +101,39 @@
                 {/************************* second ****************************/}
                 <StepsForm.StepForm
                     name="checkbox"
+                    form={form}
                     title={intl.formatMessage({ id: 'map.settings.batch.set.params', defaultMessage: '璁剧疆鍙傛暟' })}
-                    onFinish={(values) => {
-                        console.log(values);
-                        return true;
-                    }}
+                    onFinish={handleOk}
                 >
                     <ProForm.Item
                         name='shelfType'
                         label={intl.formatMessage({ id: 'map.settings.shelf.type', defaultMessage: '绫诲瀷' })}
                         rules={[
                             {
-                                required: true,
+                                required: false,
                             },
                         ]}
                     >
                         <Select
-                            style={{ width: 120 }}
+                            style={{ width: 160 }}
                             options={[
                                 {
+                                    label: intl.formatMessage({ id: 'common.select.cancel', defaultMessage: '鍙栨秷閫夋嫨' }),
+                                    value: null
+                                },
+                                {
                                     label: intl.formatMessage({ id: 'map.settings.shelf.store', defaultMessage: '搴撲綅' }),
-                                    value: 0
+                                    value: Utils.SHELF_TYPE.STORE
                                 },
                                 {
                                     label: intl.formatMessage({ id: 'map.settings.shelf.track', defaultMessage: '杞ㄩ亾' }),
-                                    value: 3
+                                    value: Utils.SHELF_TYPE.TRACK
                                 },
                                 {
                                     label: intl.formatMessage({ id: 'map.settings.shelf.diable', defaultMessage: '绂佺敤' }),
-                                    value: 1
+                                    value: Utils.SHELF_TYPE.DISABLE
                                 },
                             ]}
-                            defaultValue={0}
                         />
                     </ProForm.Item>
                     <ProForm.Item

--
Gitblit v1.9.1