From 0846eb2fe12bdcde1c59b5cedad80ae2b471759c Mon Sep 17 00:00:00 2001
From: wujiabao <jiabaowu@mjitech.com>
Date: Wed, 26 Sep 2018 14:23:09 +0800
Subject: [PATCH] 报损和盘点基本完成联调

---
 client/actions/TokeStokeContainer.js                                                |  5 +++++
 client/components/BreakageComponent/BreakageProductDetail/BreakageProductDetail.jsx |  4 ++--
 client/components/BreakageComponent/BreakageProductDetail/index.css                 |  3 +++
 client/components/BreakageComponent/defaultComponent/DefaultComponnet.jsx           |  3 ++-
 client/components/CommonComponent/BarcodeComponent/index.css                        |  1 +
 client/containers/BreakageContainer/BreakageConatiner.jsx                           | 56 +++++++++++++++++++++++++++++++++++++++++---------------
 client/containers/TakeStokeContainer/TakeStokeContainer.jsx                         | 11 ++++++++---
 7 files changed, 62 insertions(+), 21 deletions(-)

diff --git a/client/actions/TokeStokeContainer.js b/client/actions/TokeStokeContainer.js
index 890eabc..04a6b00 100644
--- a/client/actions/TokeStokeContainer.js
+++ b/client/actions/TokeStokeContainer.js
@@ -1,5 +1,6 @@
 import fetch from 'isomorphic-fetch'
 import tokeActionType from '../actiontype/TokeStokeContainer'
+import {getTaskList} from './common'
 console.log(tokeActionType,'dhakjshdjhasjhdjshj')
 let domain1 = ENV.domain;
 let domain = 'http://192.168.10.128:8080/web/'
@@ -23,6 +24,10 @@ const checkProductQuantity = (data)=>{
                     body:JSON.stringify(bodyData)
                 }).then(response=>response.json())
                 .then((json)=>{
+                    if(json.data===1){
+                        console.log("执行了 json.data===1 的拉取工单的操作")
+                        dispatch(getTaskList(commonInfo))
+                    }
                     dispatch(checkQuantity({type:json.data}))
                 }).catch(e=>{console.log('err'+e)})
 
diff --git a/client/components/BreakageComponent/BreakageProductDetail/BreakageProductDetail.jsx b/client/components/BreakageComponent/BreakageProductDetail/BreakageProductDetail.jsx
index b7c188a..864a474 100644
--- a/client/components/BreakageComponent/BreakageProductDetail/BreakageProductDetail.jsx
+++ b/client/components/BreakageComponent/BreakageProductDetail/BreakageProductDetail.jsx
@@ -77,8 +77,8 @@ class BreakageProductDetail extends React.Component{
         let {product}=this.props.breakageProductInfo;
         let {statusColor}=this.state;
         let productDetail={skuId:product.skuId,skuStatus:statusColor,skuPosition:0}
-        this.props.submitBreakageProduct(productDetail)
-        this.props.changePage(1)
+        this.props.submitBreakageProduct(productDetail);
+        this.props.changePopShow(true)
     }
     changeProductStatus(key){
         this.setState({statusColor:key})
diff --git a/client/components/BreakageComponent/BreakageProductDetail/index.css b/client/components/BreakageComponent/BreakageProductDetail/index.css
index 1979b84..40e09e6 100644
--- a/client/components/BreakageComponent/BreakageProductDetail/index.css
+++ b/client/components/BreakageComponent/BreakageProductDetail/index.css
@@ -72,4 +72,7 @@
 }
 .pagebox .ProductPosition ul li.active{
     border:6px solid #05bb09;
+}
+.breakageInfo{
+    background:rgba(0,0,0.3);
 }
\ No newline at end of file
diff --git a/client/components/BreakageComponent/defaultComponent/DefaultComponnet.jsx b/client/components/BreakageComponent/defaultComponent/DefaultComponnet.jsx
index 119d8c4..81103e9 100644
--- a/client/components/BreakageComponent/defaultComponent/DefaultComponnet.jsx
+++ b/client/components/BreakageComponent/defaultComponent/DefaultComponnet.jsx
@@ -24,7 +24,8 @@ class DefaultComponent extends React.Component{
         )
     }
     skipInputCode(){
-        this.props.changeCodePage(false)
+        this.props.changeCodePage(false);
+        this.props.changeSanCodePage('SanCode')
     }
 }
 export default DefaultComponent;
\ No newline at end of file
diff --git a/client/components/CommonComponent/BarcodeComponent/index.css b/client/components/CommonComponent/BarcodeComponent/index.css
index 34d3d7c..9c30c4f 100644
--- a/client/components/CommonComponent/BarcodeComponent/index.css
+++ b/client/components/CommonComponent/BarcodeComponent/index.css
@@ -8,6 +8,7 @@
     border:2px solid #9b9b9b ;
     border-radius: 10px;
     margin-top:20px;
+    text-align: center;
 }
 .breakageCodeContent .barcodeScan{
     margin-top:30px;
diff --git a/client/containers/BreakageContainer/BreakageConatiner.jsx b/client/containers/BreakageContainer/BreakageConatiner.jsx
index 0abc192..7629e01 100644
--- a/client/containers/BreakageContainer/BreakageConatiner.jsx
+++ b/client/containers/BreakageContainer/BreakageConatiner.jsx
@@ -6,6 +6,8 @@ import DefaultComponent from '../../components/BreakageComponent/defaultComponen
 import BreakageProductDetail from '../../components/BreakageComponent/BreakageProductDetail/BreakageProductDetail'
 import BreakageCode from '../../components/BreakageComponent/BreakageCode/BreakageCode'
 import SanCodeComponent from '../../components/BreakageComponent/SanCodeComponent/SanCodeComponent'
+import PopModel from '../../components/CommonComponent/PopupComponent/PopupChildComponent'
+import Button from '../../components/CommonComponent/ButtonComponent/ButtonComponent'
 require('./index.css')
 class BreakageContainer extends React.Component {
     constructor(props){
@@ -13,33 +15,52 @@ class BreakageContainer extends React.Component {
          this.state={
             showPage:1,
             isShow:true,
-            SanCodePage:'SanCode'
+            SanCodePage:'SanCode',
+            popShow:false
          }
          this.changePage=this.changePage.bind(this);
     }
 
     render(){
         let props=this.props;
-        let {isShow}=this.state;
+        let {isShow,popShow}=this.state;
          return (
-             <div className={"BreakageContainer"}>
-                  {
-                       isShow?<div style={{width:'100%',height:'100%'}}>
-                       <HeaderComponent headerInfo={props.headerInfo} />
-                        <LeftContainer leftInfo={props.headerInfo}/>
-                        <RightContainer>
-                              {
-                                 this.getPages() 
-                              }
-                        </RightContainer>
-                       </div>:this.getSanCodePgae()
-                  }
-             </div>
+                  <div className={"BreakageContainer"}>
+                     {
+                          isShow?<div style={{width:'100%',height:'100%'}}>
+                          <HeaderComponent headerInfo={props.headerInfo} />
+                           <LeftContainer leftInfo={props.headerInfo}/>
+                           <RightContainer>
+                                 {
+                                    this.getPages() 
+                                 }
+                           </RightContainer>
+                          </div>:this.getSanCodePgae()
+                     }
+                    {
+                        popShow?<div style={{width:'100%',height:'100%',background:'rgba(0,0,0,.8)',position:'absolute',top:'0',left:'0'}}>
+                            <PopModel popupTitle={"货品匹配成功"} classContainer={"recoveryPopInfo"}>
+                            <div className={"icon iconfont icon-correct font150 col27ce61"} />
+                            <div className={"text font40 col000"}>
+                                <p>请将货品放入回收箱</p>
+                            </div>
+                            <div className={"btn"}>
+                                <Button text={'已放入'} btnContainer={'font32 backff775c colfff'} option={this.changePopHide.bind(this)} />
+                            </div>
+                    </PopModel>
+                        </div>:null
+                    }
+                   </div>
          ) 
     }
     componentDidMount(){
         
     }
+    //控制弹框消失
+    changePopHide(){
+        this.changePopShow(false)
+        this.changePage(1)
+    }
     //改变显示的组件
     changePage(page){
          this.setState({
@@ -68,12 +89,14 @@ class BreakageContainer extends React.Component {
             case  1 :
                  pages=<DefaultComponent pullTaskList={props.pullTaskList} 
                                          changeCodePage={this.changeCodePage.bind(this)}
+                                         changeSanCodePage={this.changeSanCodePage.bind(this)}
                  />
                  break;
             case  2 :
                  pages=<BreakageProductDetail breakageProductInfo={props.breakageProductInfo}
                                               changePage={this.changePage}
                                               submitBreakageProduct={this.transmitInfo.bind(this)}
+                                              changePopShow={this.changePopShow.bind(this)}
                  />
                  break;
         }
@@ -103,5 +126,8 @@ class BreakageContainer extends React.Component {
     transmitInfo(productDetail){
         this.props.submitBreakageProduct(productDetail)
     }
+    changePopShow(bool){
+        this.setState({popShow:bool})
+    }
 }
 export default BreakageContainer
\ No newline at end of file
diff --git a/client/containers/TakeStokeContainer/TakeStokeContainer.jsx b/client/containers/TakeStokeContainer/TakeStokeContainer.jsx
index c280d98..dde462f 100644
--- a/client/containers/TakeStokeContainer/TakeStokeContainer.jsx
+++ b/client/containers/TakeStokeContainer/TakeStokeContainer.jsx
@@ -58,7 +58,7 @@ class TakeStokeContaniner extends React.Component {
                                                      </p>
                                              </div>
                                           <Button text={'提交'} btnContainer={'backff775c font32 colfff'} style={{marginTop:'80px'}} option={this.checkProductNum.bind(this)} />
-                                          </div>:<Button text={'已放入'} btnContainer={'backff775c font32 colfff'} style={{marginTop:'280px'}} />
+                                          </div>:<Button option={this.clickPutIn.bind(this)} text={'已放入'} btnContainer={'backff775c font32 colfff'} style={{marginTop:'280px'}} />
                                       }
                                   </div>
                              </div>
@@ -100,11 +100,11 @@ class TakeStokeContaniner extends React.Component {
     }
     //根据后台返回的数据  判断显示的组件
     componentWillReceiveProps(nextProps){
+        console.log("执行了盘点任务中的拉取工单")
           let {type}=nextProps.TokeStokeState;
           switch(type){
               case 1 :
-              this.props.getTaskList()
-              this.setState({number:1,showButton:true})
+               this.setState({number:1,showButton:true})
               break;
               case 2 :
               this.setState({number:type})
@@ -114,6 +114,11 @@ class TakeStokeContaniner extends React.Component {
               break;
           }
     }
+    //点击已放入 继续拉取工单
+    clickPutIn(){
+        this.props.getTaskList();
+        this.setState({number:1,showButton:true})
+    }
    
 }
 export default TakeStokeContaniner
\ No newline at end of file
--
libgit2 0.26.0