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