diff --git a/client/actions/chooseTaskContainer.js b/client/actions/chooseTaskContainer.js
index cab6d2d..1a59648 100644
--- a/client/actions/chooseTaskContainer.js
+++ b/client/actions/chooseTaskContainer.js
@@ -12,28 +12,33 @@ const willCloseDoor=(data,flag=false)=>{
     UTILPATH.myLogger.info("finish_task url ",url);
     UTILPATH.myLogger.info("finish_task flag ",flag);
     UTILPATH.myLogger.info("finish_task request ",bodyData);
-    return (dispatch)=>{
-        fetch(url,{
-            credentials : 'include',
-            method : 'POST',
-            mode : 'cors',
-            headers:{
-                'Access-Control-Allow-Origin': '*',
-                'Content-Type': 'application/json; charset=UTF-8'
-            },
-            body:JSON.stringify(bodyData)
-        }).then((response)=>response.json())
-          .then((json)=>{
-              UTILPATH.myLogger.info("finish_task response ",json);
-              if(flag){
-                  //回收箱完成
-                  dispatch(getTaskList(data))
-              }
-          }).catch(e=>{
-            UTILPATH.myLogger.error(`finish_task error ${e}`);
-            // dispatch(willCloseDoor(data,flag));
-        })
-  }
+    return async (dispatch)=>{
+        let success = (json)=>{
+            UTILPATH.myLogger.info("finish_task response ",json);
+            if(flag){
+                //回收箱完成
+                dispatch(getTaskList(data))
+            }
+        };
+        let fail = (err)=>{
+            UTILPATH.myLogger.error(`finish_task error ${err}`);
+        };
+        try {
+            let result = await fetch(url,{
+                credentials : 'include',
+                method : 'POST',
+                mode : 'cors',
+                headers:{
+                    'Access-Control-Allow-Origin': '*',
+                    'Content-Type': 'application/json; charset=UTF-8'
+                },
+                body:JSON.stringify(bodyData)
+            }).then((response)=>response.json());
+            return success(result)
+        } catch (err) {
+            return fail(err)
+        }
+    }
 }
 
 /**
@@ -80,9 +85,10 @@ const closeDoorSuccess=(data,stopFlag=false)=>{
 
 
 const askForNextTask = (taskId)=>{
-    UTILPATH.myLogger.info("askForNextTask power_cut_close_door taskId ",taskId);
+    let url = domain+`machine_pad/power_cut_close_door/${taskId}`;
+    UTILPATH.myLogger.info("askForNextTask power_cut_close_door url ",url);
     return (dispatch) =>{
-        fetch(domain+`machine_pad/power_cut_close_door/${taskId}`,{
+        fetch(url,{
             credentials : 'include',
             method : 'POST',
             mode : 'cors',
diff --git a/client/actions/common.js b/client/actions/common.js
index f1104cc..23f9774 100644
--- a/client/actions/common.js
+++ b/client/actions/common.js
@@ -12,29 +12,36 @@ let myHeaders = new Headers({
 
 //获取店铺信息
 const getStoreInfo = (storeId)=>{
-    return(dispatch)=>{
+    return async (dispatch)=>{
         let bodyData = {storeId};
         UTILPATH.myLogger.info("getMachineData request ",bodyData);
-        fetch(domain + 'pad_warehouse/getMachineData.action',{
-            credentials : 'include',
-            method : 'POST',
-            mode : 'cors',
-            headers:myHeaders,
-            body: JSON.stringify(bodyData)
-        }).then((response)=>response.json())
-            .then(json=>{
-                UTILPATH.myLogger.info("getMachineData response ",json);
-                let storeInfo = Object.assign({},{id:storeId});
-                if(json.meta.success && json.data.warehouse){
-                    storeInfo = Object.assign({},storeInfo,json.data.warehouse)
-                }
-                dispatch(saveCommonInfo(Object.assign({},{storeInfo})))
-            }).catch(e=>{
-                UTILPATH.myLogger.error(`getMachineData error ${e}`);
-                dispatch(getStoreInfo(storeId));
-        })
 
+        let success = (json)=>{
+            UTILPATH.myLogger.info("getMachineData response ",json);
+            let storeInfo = Object.assign({},{id:storeId});
+            if(json.meta.success && json.data.warehouse){
+                storeInfo = Object.assign({},storeInfo,json.data.warehouse)
+            }
+            dispatch(saveCommonInfo(Object.assign({},{storeInfo})));
+        };
+
+        let fail = (e)=>{
+            UTILPATH.myLogger.error(`getMachineData error ${e}`);
+            dispatch(getStoreInfo(storeId));
+        };
 
+        try{
+            let res = await fetch(domain + 'pad_warehouse/getMachineData.action',{
+                credentials : 'include',
+                method : 'POST',
+                mode : 'cors',
+                headers:myHeaders,
+                body: JSON.stringify(bodyData)
+            }).then((response)=>response.json());
+            return success(res);
+        }catch (e) {
+            return fail(e)
+        }
     }
 };
 
diff --git a/client/actions/recovery.js b/client/actions/recovery.js
index 95f722a..14bec97 100644
--- a/client/actions/recovery.js
+++ b/client/actions/recovery.js
@@ -13,7 +13,7 @@ let lock = false;
 
 const finishBoxRecovery = (info)=>{
     //已放入回收箱
-    return (dispatch)=>{
+    return async dispatch => {
         if(!lock){
             lock = true;
             let {userInfo={},taskInfo={},storeInfo={},taskList={}} = info;
@@ -27,23 +27,31 @@ const finishBoxRecovery = (info)=>{
             });
             UTILPATH.myLogger.info("update_machine_recovery_sku request ",bodyData);
             let url=`${domain}machine_pad/update_machine_recovery_sku.action`;
-            fetch(url,{
-                credentials : 'include',
-                method : 'POST',
-                mode : 'cors',
-                headers: myHeaders,
-                body:JSON.stringify(bodyData)
-            }).then(response=>response.json())
-                .then((json)=>{
-                    dispatch(saveProductInfo({}));
-                    dispatch(getTaskList(info,()=>{
-                        lock = false;
-                    }));
-                }).catch(e=>{
+
+            let success = (res)=>{
+                dispatch(saveProductInfo({}));
+                dispatch(getTaskList(info,()=>{
                     lock = false;
-                    UTILPATH.myLogger.error(`update_machine_recovery_sku error ${e}`);
-                    // dispatch(finishBoxRecovery(info))
-                })
+                }));
+            };
+
+            let fail = (err)=>{
+                lock = false;
+                UTILPATH.myLogger.error(`update_machine_recovery_sku error ${err}`);
+            };
+
+            try {
+                const result = await fetch(url,{
+                    credentials : 'include',
+                    method : 'POST',
+                    mode : 'cors',
+                    headers: myHeaders,
+                    body:JSON.stringify(bodyData)
+                }).then(response=>response.json());
+                return success(result)
+            } catch (err) {
+                return fail(err)
+            }
         }
     }
 };
diff --git a/client/components/ReplenishComponent/ReplenishSkuPage/ReplenishSkuPage.jsx b/client/components/ReplenishComponent/ReplenishSkuPage/ReplenishSkuPage.jsx
index b13a883..db164af 100644
--- a/client/components/ReplenishComponent/ReplenishSkuPage/ReplenishSkuPage.jsx
+++ b/client/components/ReplenishComponent/ReplenishSkuPage/ReplenishSkuPage.jsx
@@ -43,8 +43,10 @@ export default class ReplenishSkuPage extends React.Component{
             this.setState({
                 btnClock : true
             },()=>{
-                this.props.finishBoxRecovery();
-                this.continueScan()
+                this.props.finishBoxRecovery().then(()=>{
+                    this.continueScan()
+                });
+
             })
         }
     }
diff --git a/client/containers/HomePageContainer/HomePageContainer.jsx b/client/containers/HomePageContainer/HomePageContainer.jsx
index a70fbdc..6cb79b8 100644
--- a/client/containers/HomePageContainer/HomePageContainer.jsx
+++ b/client/containers/HomePageContainer/HomePageContainer.jsx
@@ -45,16 +45,20 @@ export default class HomePageContainer extends React.Component{
             },()=>{
                 UTILPATH.myLogger.info("logout startStopServer ",this.props.startStopServer);
                 if(this.props.startStopServer){
-                    this.props.willCloseDoor();
-                    this.props.endCountBack();
-                    this.props.tempLogout()
+                    this.props.willCloseDoor().then(()=>{
+                        this.props.endCountBack();
+                        this.props.tempLogout()
+                    });
+
                 }else{
-                    this.props.willCloseDoor();
-                    this.props.endCountBack();
-                    let msg={type:'WILL_CLOSEDOOR'};
-                    sendMsg(JSON.stringify(msg));
-                    this.props.changeIsSend(true);
-                    // this.props.tempLogout()
+                    this.props.willCloseDoor().then(()=>{
+                        this.props.endCountBack();
+                        let msg={type:'WILL_CLOSEDOOR'};
+                        sendMsg(JSON.stringify(msg));
+                        this.props.changeIsSend(true);
+                        // this.props.tempLogout()
+                    });
+
                 }
 
             })