Browse Source

Merge branch 'master' of http://192.168.1.41:3000/caipin/cld2_react

caipin 5 years ago
parent
commit
2482ee16c8

+ 25 - 13
src/product/lock_store/index.js

@@ -2,17 +2,19 @@ import React, { PureComponent } from 'react';
 import { connect } from 'react-redux';
 //import { BrowserRouter, Route,Link } from 'react-router-dom';
 import StaffHeader from '../../common/staffHeader'
-
-import { Table } from 'antd';
+import { Table, Pagination } from 'antd';
 import 'antd/dist/antd.css';
-
 import { actionCreators } from './store';
+import Search from 'antd/lib/transfer/search';
+
+
 
 class lock_store extends PureComponent {
     render() {
-        
+      const {dataSource,columns,pagination,handleLockstoreList} = this.props;
+      // console.log(pagination.toJS());
         return (
-            <div>
+        <div>
         <StaffHeader />
         <main id="js-page-content" role="main" className="page-content">
           <div className="row">
@@ -21,7 +23,9 @@ class lock_store extends PureComponent {
                 <div className="panel-hdr">
                   <div className="col-auto pr-0">
                     <div className="input-group input-group-sm bg-white shadow-inset-2">
-                      <input type="text" ref={(input) => { this.searchValue = input }} onKeyUp={() => handleSearch(this.searchValue)} className="form-control bg-transparent" placeholder="锁号" />
+                      <Search
+                      />
+                      {/* <input type="text" ref={(input) => { this.searchValue = input }} onKeyUp={() => handleSearch(this.searchValue)} className="form-control bg-transparent" placeholder="锁号" /> */}
                     </div>
                   </div>
                   <div className="col-auto pr-0">
@@ -85,7 +89,11 @@ class lock_store extends PureComponent {
                   {/* <!--数据内容区--> */}
                   <div className="panel-content">
                    <Table
-                     
+                   onChange={(pagination) => handleLockstoreList(pagination, this.props)}
+                    pagination={pagination.toJS()}
+                    bordered
+                    dataSource={dataSource.toJS()}
+                    columns={columns.toJS()}
                   /> 
                   {/* 接口路径 */}
                   {/* <DataTable onRef={(ref) => dt = ref} url={`/contact/client`} columnBindEvent={handleColumnBindEvent} columnsData={columnsData} columns={columns.toJS()}/> */}
@@ -103,20 +111,22 @@ class lock_store extends PureComponent {
 
     //组件即将要被挂在的时候执行的方法--
     componentDidMount(){
-      
+      const{handleLockstoreList,pagination}= this.props;
+      // console.log(pagination.toJS());
+      handleLockstoreList(pagination.toJS(),this.props);
     }
-
 }
 
-let delaySwitch = null;
+// let delaySwitch = null;
 /**
  * store里的数据映射到这个组件里的state
  * @param {*} state 
  */
 const mapStateToProps = (state) => {
     return {
-     
-      
+      dataSource: state.getIn(['lockstore', 'dataSource']),
+      columns: state.getIn(['lockstore', 'columns']),
+      pagination: state.getIn(['lockstore', 'pagination']),
     }
 }
 
@@ -126,7 +136,9 @@ const mapStateToProps = (state) => {
  */
 const mapDispathToProps = (dispatch) => {
     return {
-      
+      handleLockstoreList(pagination, props){
+        dispatch(actionCreators.getLockstoreList(pagination, props));
+      }
     }
 }
 

+ 39 - 1
src/product/lock_store/store/actionCreators.js

@@ -1,7 +1,45 @@
 import * as constants from './constants';
 import { fromJS } from 'immutable';
-
+import * as config from '../../../common/config.js';
 import axios from '../../../common/axios_auth.js';
 
+export const getLockstoreList = (pagination) =>{
+    return(dispatch) =>{
+        // console.log(config.CLD2API + '/contact/company')
+        axios.get(config.CLD2API + '/contact/company', {
+            params: {
+                current: pagination.current,
+                pageSize: pagination.pageSize,
+                // sortField: sortField,
+                // sort: sort,
+                // searchValue:searchValue,
+            },
+        }).then((res) => {
+            const data = res.data;
+            if (data.code === 200) {
+                // console.log(data.recordsTotal);
+                dispatch({
+                    type: constants.CHANGE_LOCKSTORE_DATA,
+                    data: fromJS(data.data),
+                    pagination: pagination,
+                    recordsTotal:data.recordsTotal,
+                    // searchValue:searchValue
+                });
+            } else {
+                console.log(data);
+            }
+        }).catch((e) => {
+            console.log(e);
+            console.log('error');
+        })
+    }
+}
+
+
 
 
+    // current: pagination.current,    //当前页
+    // pageSize: pagination.pageSize,  //每页多少条
+    // sortField: sortField,           //排序字段
+    // sort: sort,                     //按降序 升级
+    // searchValue:searchValue         //检索关键字

+ 1 - 4
src/product/lock_store/store/constants.js

@@ -1,4 +1 @@
-
-
-
-
+export const CHANGE_LOCKSTORE_DATA = 'product/change_lockstore_data';

+ 1 - 1
src/product/lock_store/store/index.js

@@ -2,4 +2,4 @@ import reducer from './reducer';
 import * as actionCreators from './actionCreators';
 import * as constants from './constants';
 
-export { reducer,actionCreators,constants }
+export { reducer,actionCreators,constants}

+ 61 - 7
src/product/lock_store/store/reducer.js

@@ -1,19 +1,73 @@
 import * as constants from './constants';
+import React from 'react';
 //锁定state不可修改,导致错误y
 import { fromJS } from 'immutable';
 
-
 const defaultState = fromJS({
-	
-
-
+	pagination:{
+		current: 1,
+		pageSize: 10,
+		position:['bottomCenter'],
+		showSizeChanger: false
+	},
+	dataSource:[],
+	  columns:[
+		{
+			title: '锁号',
+			dataIndex: 'companyname',
+			key: 'companyname',
+		  },
+		  {
+			title: '产品',
+			dataIndex: 'nature',
+			key: 'nature',
+		  },
+		  {
+			title: '办事处',
+			dataIndex: 'local',
+			key: 'local',
+		  },
+		  {
+			title: '出库时间',
+			dataIndex: 'address',
+			key: 'address',
+		  },
+		  {
+			title: '销售/借出/赠送时间',
+			dataIndex: 'ride',
+			key: 'ride',
+		  },
+		  {
+			title: '责任人',
+			dataIndex: 'stay',
+			key: 'stay',
+		  },
+		  {
+			title: '状态',
+			dataIndex: 'remarks',
+			key: 'remarks',
+		  },
+		  {
+			title: '联系人',
+			dataIndex: 'webservice',
+			key: 'webservice',
+		  },
+	  ],
 });
 
-
 export default (state = defaultState, action) => {
-	
     switch(action.type) {
-		
+		case constants.CHANGE_LOCKSTORE_DATA:
+			let pagination ={
+				...action.pagination,
+				total:action.recordsTotal,
+			}
+			// console.log(pagination);
+			// return state.set('dataSource', action.data);
+			return state.merge({
+				pagination:fromJS(pagination),
+				dataSource:fromJS(action.data),
+			});
 		default:
 			return state;
 	}

+ 0 - 1
src/product/product.js

@@ -90,7 +90,6 @@ class product extends Component {
 }
 
 const mapStateToProps = (state) => {
-
   return {
     menuActive: state.getIn(['common', 'menuActive']),
   }