Browse Source

增加 跟进管理

mentoswzq 4 years ago
parent
commit
ee377a6dfc

+ 3 - 1
js/component/manageCenter/customer/NEW/intentionCustomer/intentionCustomer.jsx

@@ -25,7 +25,6 @@ const IntentionCustomer = Form.create()(
       this.setState({
         visitModul: false,
         loading: true,
-        ispage: pageNo,
         modalVisible: false,
       });
       let api = apiUrl ? apiUrl : this.props.ApiUrl;
@@ -88,6 +87,9 @@ const IntentionCustomer = Form.create()(
             }
             this.state.pagination.current = data.data.pageNo;
             this.state.pagination.total = data.data.totalCount;
+            this.setState({
+              ispage: data.data.pageNo,
+            })
           }
           if (data.data && data.data.list && !data.data.list.length) {
             this.state.pagination.current = 0;

+ 13 - 13
js/component/manageCenter/customer/NEW/intentionCustomer/intentionDetail/detail/account.jsx

@@ -69,7 +69,7 @@ const Account =React.createClass({
 				isMember: this.state.isMember,
 				currentMemberStatus: this.state.currentMemberStatus,
 				lvl: this.state.lvl,
-				status: this.state.status,
+				// status: this.state.status,
 			}
 		}).done(function(data) {
 			this.setState({
@@ -129,18 +129,18 @@ const Account =React.createClass({
 		                            label="创建时间" >
 		                            <span>{this.state.createTimes}</span>   
 		                    </FormItem>
-		                    <FormItem className="half-item" 
-	                           {...formItemLayout}
-	                           label="账户状态"
-	                         > 
-							    <Select placeholder="账户状态" value={this.state.status}  onChange={(e) => { this.setState({ status: e }); }} >
-                                {
-                                    statuslist.map(function (item) {
-                                        return <Select.Option key={item.value} >{item.key}</Select.Option>
-                                    })
-                                }
-                              </Select>
-	                   		</FormItem>
+		                    {/*<FormItem className="half-item" */}
+	                        {/*   {...formItemLayout}*/}
+	                        {/*   label="账户状态"*/}
+	                        {/* > */}
+							{/*    <Select placeholder="账户状态" value={this.state.status}  onChange={(e) => { this.setState({ status: e }); }} >*/}
+                            {/*    {*/}
+                            {/*        statuslist.map(function (item) {*/}
+                            {/*            return <Select.Option key={item.value} >{item.key}</Select.Option>*/}
+                            {/*        })*/}
+                            {/*    }*/}
+                            {/*  </Select>*/}
+	                   		{/*</FormItem>*/}
 	                   	</div>
 			            <div className="clearfix">
 			                <Button className='saveBtn' type="primary" htmlType="submit">保存</Button>  

+ 34 - 1
js/component/manageCenter/customer/NEW/intentionCustomer/intentionDetail/detail/visit.jsx

@@ -1,5 +1,5 @@
 import React from 'react';
-import {Form,Button,Spin,message,Table,Popconfirm} from 'antd';
+import {Form, Button, Spin, message, Table, Popconfirm, Input, Modal} from 'antd';
 import ajax from 'jquery/src/ajax/xhr.js';
 import $ from 'jquery/src/ajax';
 import FollowDetail from '../../followDetail.jsx'
@@ -90,6 +90,8 @@ const Visit = React.createClass({
           key: "followTime",
         }
       ],
+	  guidanceVisible: false,
+	  guidance: ''
     };
 	},
 	//拜访记录删除
@@ -176,6 +178,37 @@ const Visit = React.createClass({
 	},
 	componentWillMount(){
 		this.loadVisit();
+		if(this.props.isGuidanceLv){								//是否可指导
+			let arr = this.state.visitsList.concat();
+			arr.push({
+				title: "指导意见",
+				dataIndex: "abc",
+				key: "abc",
+				render: (text, record) => {
+					return (
+						<div>
+							{/*<div style={{width:'200px'}}>*/}
+							{/*	<span style={{wordWrap:"break-word"}}>*/}
+							{/*		11*/}
+							{/*	</span>*/}
+							{/*</div>*/}
+							<Button
+								onClick={(e) => {
+									e.stopPropagation();
+
+								}}
+								type="primary"
+							>
+								立即指导
+							</Button>
+						</div>
+					);
+				},
+			})
+			this.setState({
+				visitsList: arr
+			});
+		}
 	},
 	detailsModal(){
 		this.props.closeDetail(false, false)

+ 2 - 1
js/component/manageCenter/customer/NEW/intentionCustomer/intentionDetail/intentionDetail.jsx

@@ -29,7 +29,7 @@ const IntentionDetail = React.createClass({
 			basicState:false,
 			modalVisible:false
 		})
-		this.props.closeDesc(false,false)
+		this.props.closeDesc(false,true)
 	},
 	//详情tab切换数据处理
 	callback(e) {
@@ -150,6 +150,7 @@ const IntentionDetail = React.createClass({
 						    </TabPane>
 							<TabPane tab="客户跟进" key="4">
 							    <Visit
+									isGuidanceLv={this.props.isGuidanceLv}
 						     		categoryArr={this.props.categoryArr}
 						     		closeDetail={this.closeDetail}
 							        data={this.props.IntentionData}

+ 13 - 0
js/component/manageCenter/customer/content.jsx

@@ -313,6 +313,19 @@ class Content extends Component {
                     });
                 });
                 break;
+            //跟进管理
+            case 'customerFollow':
+                require.ensure([], () => {
+                    const CustomerFollow = require('./managementFollow/customerFollow/index').default;
+                    this.setState({
+                        component: <CustomerFollow
+                            isGuidanceLv={true}//是否可指导
+                            ApiUrl={'/api/admin/customer/listPrivateOrganizationCustomer'}
+                            detailApi={'/api/admin/customer/findOrganizationCustomerDetail'}
+                        />
+                    });
+                });
+                break;
             //客户资料    
             case 'crm':
                 require.ensure([], () => {

+ 513 - 0
js/component/manageCenter/customer/managementFollow/customerFollow/index.jsx

@@ -0,0 +1,513 @@
+import React,{Component} from 'react';
+import {
+    AutoComplete,
+    Button,
+    Cascader,
+    DatePicker,
+    Icon,
+    Input,
+    message,
+    Modal,
+    Select,
+    Spin,
+    Table,
+    Tabs,
+    Tag
+} from "antd";
+import { citySelect, provinceList } from '@/NewDicProvinceList';
+import {getSocialAttribute, beforeUploadFile, getLevel, ShowModal} from "@/tools.js";
+import moment from "moment";
+import $ from "jquery/src/ajax";
+import IntentionDetail from "../../NEW/intentionCustomer/intentionDetail/intentionDetail";
+
+const {TabPane} = Tabs;
+const { RangePicker } = DatePicker;
+
+class CustomerFollow extends Component{
+    constructor(props) {
+        super(props);
+        this.state={
+            nameSearch: '',
+            provinceSearch: '',
+            addressSearch: '',
+            level: '',
+            releaseDate: [],
+            selectedRowKeys: [],
+
+            provinces: [],
+            dataSource: [],
+            categoryArr: [],
+            modalName: '',
+            modalVisible: false,
+            basicState: false,
+            contactState: false,
+            rowData: {},
+            pagination: {
+                defaultCurrent: 1,
+                defaultPageSize: 10,
+                showQuickJumper: true,
+                pageSize: 10,
+                onChange: function (page) {
+                    this.loadData(page);
+                }.bind(this),
+                showTotal: function (total) {
+                    return "共" + total + "条数据";
+                },
+            },
+            columns: [
+                {
+                    title: "客户名称",
+                    dataIndex: "name",
+                    key: "name",
+                },
+                {
+                    title: "地区",
+                    dataIndex: "locationProvince",
+                    key: "locationProvince",
+                },
+                {
+                    title: "联系人",
+                    dataIndex: "contacts",
+                    key: "contacts",
+                },
+                {
+                    title: "联系电话",
+                    dataIndex: "contactMobile",
+                    key: "contactMobile",
+                },
+                {
+                    title: "社会性质",
+                    dataIndex: "societyTag",
+                    key: "societyTag",
+                    render: (text) => {
+                        return getSocialAttribute(text);
+                    },
+                },
+                {
+                    title: "客户初始时间",
+                    dataIndex: "transferTime",
+                    key: "transferTime",
+                },
+                {
+                    title: "剩余私有天数",
+                    dataIndex: "surplusFollowTime",
+                    key: "surplusFollowTime",
+                },
+                {
+                    title: "剩余签单天数",
+                    dataIndex: "surplusSignTime",
+                    key: "surplusSignTime",
+                },
+                {
+                    title: "最新跟进时间",
+                    dataIndex: "lastFollowTime",
+                    key: "lastFollowTime",
+                },
+                {
+                    title: "客户等级",
+                    dataIndex: "level",
+                    key: "level",
+                    render: (text) => {
+                        if(text === 0) {
+                            return <Tag color="#87d068">一般客户</Tag>;
+                        }else if(text === 1) {
+                            return <Tag color="#D2691E">意向客户</Tag>;
+                        }else if(text === 2) {
+                            return <Tag color="#FF0000">重点客户</Tag>;
+                        }else {
+                            return "";
+                        }
+                    },
+                },
+                {
+                    title: "跟进人",
+                    dataIndex: "null",
+                    key: "null",
+                },
+                {
+                    title: "跟进操作",
+                    dataIndex: "abc",
+                    key: "abc",
+                    render: (text, record, index) => {
+                        return (
+                            <div>
+                                <Button
+                                    onClick={(e) => {
+                                        e.stopPropagation();
+                                        this.setState({
+                                            guidanceVisible: true
+                                        });
+                                    }}
+                                    type="primary"
+                                >
+                                    指导
+                                </Button>
+                            </div>
+                        );
+                    },
+                },
+            ],
+            loading: false,
+            ispage: 1,
+            guidance: '',
+        };
+        this.callback = this.callback.bind(this);
+        this.loadData = this.loadData.bind(this);
+        this.reset = this.reset.bind(this);
+        this.tableRowClick = this.tableRowClick.bind(this);
+        this.closeDesc = this.closeDesc.bind(this);
+        this.releaseGuidance = this.releaseGuidance.bind(this);
+    }
+
+    componentDidMount() {
+        this.loadData();
+        this.category();
+        //城市
+        let Province = [];
+        provinceList.map(function (item) {
+            let id = String(item.id);
+            Province.push(
+                <Select.Option value={id} key={item.name}>
+                    {item.name}
+                </Select.Option>
+            );
+        });
+        this.setState({
+            provinces: Province
+        })
+    }
+
+    callback(){
+
+    }
+
+    loadData(pageNo) {
+        this.setState({
+            loading: true,
+        });
+        let api = '/api/admin/customer/listPrivateOrganizationCustomer';
+        $.ajax({
+            method: "post",
+            dataType: "json",
+            crossDomain: false,
+            url: globalConfig.context + api,
+            data: {
+                pageNo: pageNo || 1,
+                pageSize: this.state.pagination.pageSize,
+                level: this.state.level ? this.state.level : undefined,
+                name: this.state.nameSearch,
+                province: !this.state.addressSearch.length
+                    ? this.state.provinceSearch
+                    : this.state.addressSearch[0],
+                city: !this.state.addressSearch.length
+                    ? ""
+                    : this.state.addressSearch[1],
+                startDate: this.state.releaseDate[0],
+                endDate: this.state.releaseDate[1],
+            },
+            success: function (data) {
+                let theArr = [];
+                if (data.error.length || data.data.list == "") {
+                    if (data.error && data.error.length) {
+                        message.warning(data.error[0].message);
+                    }
+                } else {
+                    for (let i = 0; i < data.data.list.length; i++) {
+                        let thisdata = data.data.list[i];
+                        let diqu =
+                            (thisdata.province == null ? "" : thisdata.province) +
+                            (thisdata.city == null ? "" : "-" + thisdata.city) +
+                            (thisdata.area == null ? "" : "-" + thisdata.area);
+                        thisdata.key = i;
+                        thisdata.id = thisdata.uid;
+                        thisdata.lastFollowTime = thisdata.lastFollowTime && thisdata.lastFollowTime.split(" ")[0];
+                        thisdata.transferTime= thisdata.transferTime && thisdata.transferTime.split(" ")[0];
+                        thisdata.surplusFollowTime= thisdata.surplusFollowTime && thisdata.surplusFollowTime.split(" ")[0];
+                        thisdata.surplusSignTime= thisdata.surplusSignTime && thisdata.surplusSignTime.split(" ")[0];
+                        thisdata.locationProvince= diqu;
+                        theArr.push(thisdata);
+                    }
+                    this.state.pagination.current = data.data.pageNo;
+                    this.state.pagination.total = data.data.totalCount;
+                    if (data.data && data.data.list && !data.data.list.length) {
+                        this.state.pagination.current = 0;
+                        this.state.pagination.total = 0;
+                    }
+                    this.setState({
+                        ispage: data.data.pageNo,
+                        dataSource: theArr,
+                        pagination: this.state.pagination,
+                    });
+                }
+            }.bind(this),
+        }).always(
+            function () {
+                this.setState({
+                    loading: false,
+                });
+            }.bind(this)
+        );
+    };
+
+    reset(){
+        this.setState({
+            nameSearch: '',
+            provinceSearch: '',
+            addressSearch: '',
+            level: '',
+            releaseDate: [],
+            selectedRowKeys: [],
+        },()=>{
+            this.loadData();
+        });
+    };
+
+    //品类数据获取
+    category() {
+        $.ajax({
+            method: "get",
+            dataType: "json",
+            crossDomain: false,
+            url: globalConfig.context + "/api/admin/Varieties/getSuperList",
+            data: {},
+            success: function (data) {
+                let thedata = data.data;
+                let theArr = [];
+                if (!thedata) {
+                    if (data.error && data.error.length) {
+                        message.warning(data.error[0].message);
+                    }
+                } else {
+                    thedata.map(function (item, index) {
+                        theArr.push({
+                            value: item.id,
+                            key: item.cname,
+                        });
+                    });
+                }
+                this.setState({
+                    categoryArr: theArr,
+                });
+            }.bind(this),
+        });
+    }
+
+    tableRowClick(record){
+        this.setState({
+            selectedRowKeys: [],
+            modalVisible: true,
+            basicState: true,
+            contactState: true,
+            modalName: record.name,
+            rowData: record,
+        });
+    };
+
+    closeDesc(e, s) {
+        this.setState({
+            basicState: e,
+            visitModul: e,
+            modalVisible: e,
+            showDesc: e,
+        })
+        if (s) {
+            this.loadData(this.state.ispage);
+        }
+    }
+
+    //发布指导意见
+    releaseGuidance(){
+        if(!this.state.guidance){
+            message.info('指导意见不能为空')
+            return;
+        }
+        this.setState({
+            loading: true,
+        });
+        let _this = this;
+        $.ajax({
+            method: "get",
+            dataType: "json",
+            crossDomain: false,
+            url: globalConfig.context + "/api/admin/customer/pushReleaseUser",
+            data: {
+                guidance: this.state.guidance,
+            },
+            success: function (data) {
+                let thedata = data.data;
+                if (!thedata) {
+                    if (data.error && data.error.length) {
+                        message.warning(data.error[0].message);
+                    }
+                }else {
+                    message.success("发布成功");
+                    _this.loadData(this.state.ispage);
+                }
+
+            }.bind(this),
+        }).always(
+            function () {
+                this.setState({
+                    loading: false,
+                });
+            }.bind(this)
+        );
+    }
+
+    render() {
+        return(
+            <div className="user-content">
+                <div className="content-title">
+                    <span>客戶跟进管理</span>
+                </div>
+                <div className="user-search">
+                    <Tabs
+                        defaultActiveKey="1"
+                        onChange={this.callback}
+                        className="test"
+                    >
+                        <TabPane tab="搜索" key="1">
+                            <Input
+                                placeholder="客户名称"
+                                value={this.state.nameSearch}
+                                style={{ width: 150, marginRight: 10, marginLeft: 10 }}
+                                onChange={(e) => {
+                                    this.setState({ nameSearch: e.target.value });
+                                }}
+                            />
+                            <Select
+                                placeholder="省"
+                                style={{ width: 80 }}
+                                value={this.state.provinceSearch}
+                                onChange={(e) => {
+                                    this.setState({ provinceSearch: e });
+                                }}
+                            >
+                                {this.state.provinces}
+                            </Select>
+                            <span style={{ marginRight: "10px" }}>
+                              <Cascader
+                                  options={citySelect()}
+                                  value={this.state.addressSearch}
+                                  placeholder="选择城市"
+                                  onChange={(e, pre) => {
+                                      this.setState({ addressSearch: e });
+                                  }}
+                              />
+                            </span>
+                            <Select
+                                style={{ width: 120 }}
+                                value={this.state.level}
+                                onChange={(e) => {
+                                    this.setState({ level: e });
+                                }}
+                                placeholder="请选择客户等级"
+                            >
+                                <Select.Option value="0">一般客户</Select.Option>
+                                <Select.Option value="1">意向客户</Select.Option>
+                                <Select.Option value="2">重点客户</Select.Option>
+                            </Select>
+                            <RangePicker
+                                value={[
+                                    this.state.releaseDate[0]
+                                        ? moment(this.state.releaseDate[0])
+                                        : null,
+                                    this.state.releaseDate[1]
+                                        ? moment(this.state.releaseDate[1])
+                                        : null,
+                                ]}
+                                onChange={(data, dataString) => {
+                                    this.setState({ releaseDate: dataString });
+                                }}
+                            />
+                            <Button
+                                type="primary"
+                                style={{ marginLeft: "10px", marginRight: 10 }}
+                                onClick={()=>{
+                                    this.loadData();
+                                }}
+                            >
+                                搜索
+                            </Button>
+                            <Button onClick={this.reset}>重置</Button>
+                        </TabPane>
+                    </Tabs>
+                </div>
+                <div className="patent-table">
+                    <Spin spinning={this.state.loading}>
+                        <Table
+                            columns={this.state.columns}
+                            dataSource={this.state.dataSource}
+                            // rowSelection={rowSelection}
+                            pagination={this.state.pagination}
+                            onRowClick={this.tableRowClick}
+                        />
+                    </Spin>
+                </div>
+                <IntentionDetail
+                    isGuidanceLv={this.props.isGuidanceLv}
+                    categoryArr={this.state.categoryArr}
+                    detailApi={this.props.detailApi}
+                    IntentionData={this.state.rowData}
+                    modalVisible={this.state.modalVisible}
+                    name={this.state.modalName}
+                    closeDesc={this.closeDesc}
+                    basicState={this.state.basicState}
+                    contactState={this.state.contactState}
+                />
+                <Modal
+                    className="customeDetails"
+                    title="指导意见"
+                    width='500px'
+                    visible={this.state.guidanceVisible}
+                    onOk={()=>{
+                        this.setState({
+                            guidanceVisible: false,
+                            guidance: '',
+                        },()=>{
+                            this.loadData(this.state.ispage);
+                        })
+                    }}
+                    onCancel={()=>{
+                        this.setState({
+                            guidanceVisible: false,
+                            guidance: '',
+                        },()=>{
+                            this.loadData(this.state.ispage);
+                        })
+                    }}
+                    footer=''
+                >
+                    <Spin spinning={this.state.loading}>
+                        <div style={{
+                            display:'flex',
+                            flexFlow:'column',
+                        }}>
+                            <Input
+                                style={{ width: '400px',height:'50px' }}
+                                placeholder="请输入指导意见"
+                                type={'textarea'}
+                                onChange={(e)=>{
+                                    this.setState({
+                                        guidance: e.target.value,
+                                    })
+                                }}
+                            />
+                            <Button
+                                type="primary"
+                                style={{ marginTop: "10px", marginBottom: '10px' }}
+                                onClick={()=>{
+                                    this.releaseGuidance();
+                                }}
+                            >
+                                确定
+                            </Button>
+                        </div>
+                    </Spin>
+                </Modal>
+            </div>
+        )
+    }
+}
+
+export default CustomerFollow;

+ 6 - 6
js/component/manageCenter/order/orderNew/billing.jsx

@@ -506,8 +506,8 @@ const MyService = Form.create()(
                         background: record.processStatus == 0 ? "#ccc" : "red"
                       }}
                       onClick={e => {
-                        //   console.log("2221", record);
-                        e.stopPropagation(), this.visit(record, index);
+                        e.stopPropagation();
+                        this.visit(record, index);
                       }}
                     >
                       开票
@@ -914,7 +914,7 @@ const MyService = Form.create()(
       this.setState({
         remarks: "",
         type: undefined,
-        orgCodeUrl: "",
+        orgCodeUrl: [],
         invoiceType: undefined,
         taxNumber: "",
         unitName: "",
@@ -1019,7 +1019,7 @@ const MyService = Form.create()(
           if (data.error.length) {
             message.warning(data.error[0].message)
           } else if (data.data) {
-            const thisdata = data.data
+            const thisdata = data.data;
             this.setState({
               contractNo: thisdata.contractNo,
               orderNo: thisdata.orderNo,
@@ -1912,7 +1912,7 @@ const MyService = Form.create()(
               closeDesc={this.closeDesc}
             />
 
-            <Modal
+            {this.state.avisible ? <Modal
               className="admin-desc-content"
               footer=""
               title="开具发票申请单"
@@ -2425,7 +2425,7 @@ const MyService = Form.create()(
                   {/*<Button className="cancel" type="primary" style={{marginRight:"50px",float:'right',background:'deepskyblue',border:'none'}} size="large" onClick={this.saveApp}>保存</Button>*/}
                 </Spin>
               </Form>
-            </Modal>
+            </Modal> : <div/>}
             <Modal
               visible={this.state.bvisible}
               footer=""

+ 12 - 12
js/component/manageCenter/order/orderNew/examine.jsx

@@ -91,7 +91,7 @@ const PicturesWall = React.createClass({
         >
           {uploadButton}
         </Upload>
-        <Modal
+        {previewVisible ? <Modal
           maskClosable={false}
           width={"70px"}
           visible={previewVisible}
@@ -99,7 +99,7 @@ const PicturesWall = React.createClass({
           onCancel={this.handleCancel}
         >
           <img alt="example" style={{ width: "100%" }} src={previewImage} />
-        </Modal>
+        </Modal> : <div/>}
       </div>
     );
   }
@@ -1589,7 +1589,7 @@ const IntentionCustomer = Form.create()(
                               <div style={{paddingTop:'10px',paddingBottom:'10px'}}>
                                 {this.state.orgCodeUrl && this.state.visible ? <ImgList fileList={this.state.orgCodeUrl} ItemWidth={'96px'}/> : <div/>}
                               </div>
-                              <Modal
+                              {this.state.previewVisible ? <Modal
                                 maskClosable={false}
                                 footer={null}
                                 width={"50%"}
@@ -1641,7 +1641,7 @@ const IntentionCustomer = Form.create()(
                                 >
                                   下一张
                                 </Button>
-                              </Modal>
+                              </Modal> : <div/>}
                               <Button
                                 style={{
                                   float: "right",
@@ -1672,7 +1672,7 @@ const IntentionCustomer = Form.create()(
                               <div style={{paddingTop:'10px',paddingBottom:'10px'}}>
                                 {this.state.replenishUrl && this.state.visible ? <ImgList domId={'examine1'} fileList={this.state.replenishUrl} ItemWidth={'96px'}/> : <div/>}
                               </div>
-                              <Modal
+                              {this.state.previewVisibles ? <Modal
                                 maskClosable={false}
                                 footer={null}
                                 width={"50%"}
@@ -1724,7 +1724,7 @@ const IntentionCustomer = Form.create()(
                                 >
                                   下一张
                                 </Button>
-                              </Modal>
+                              </Modal> : <div/>}
                             </FormItem>
                           </div>
                         </div>
@@ -2087,7 +2087,7 @@ const IntentionCustomer = Form.create()(
                 </TabPane> */}
               </Tabs>
             </Modal> : <div/>}
-            <Modal
+            {this.state.addnextVisible ? <Modal
               maskClosable={false}
               visible={this.state.addnextVisible}
               onOk={this.nextCancel}
@@ -2161,8 +2161,8 @@ const IntentionCustomer = Form.create()(
                   </div>
                 </Spin>
               </Form>
-            </Modal>
-            <Modal
+            </Modal> : <div/>}
+            {this.state.noVisible ? <Modal
               maskClosable={false}
               visible={this.state.noVisible}
               onOk={this.handleOk}
@@ -2214,8 +2214,8 @@ const IntentionCustomer = Form.create()(
                   </div>
                 </Spin>
               </Form>
-            </Modal>
-            <Modal
+            </Modal> : <div/>}
+            {this.state.agreeVisible ? <Modal
               maskClosable={false}
               visible={this.state.agreeVisible}
               onOk={(e) => {
@@ -2285,7 +2285,7 @@ const IntentionCustomer = Form.create()(
                   </div>
                 </Spin>
               </Form>
-            </Modal>
+            </Modal> : <div/>}
             {/* <Modal
               visible={this.state.rizhivisible}
               className="admin-desc-content"

+ 3 - 3
package.json

@@ -1,6 +1,6 @@
 {
   "name": "afanti",
-  "version": "1.1.50",
+  "version": "1.1.51",
   "description": "",
   "main": "index.js",
   "scripts": {
@@ -9,9 +9,9 @@
     "dlltest": "webpack --progress --colors --config ./webpack-dll.config.js --env.deploy test --env.host 'http://static.jishutao.com'",
     "dllpro": "webpack --progress --colors --config ./webpack-dll.config.js --env.deploy prod --env.host 'http://s.jishutao.com'",
     "build": "node bin/clean.js && webpack --progress --colors --env.deploy dev",
-    "buildtest": "node bin/clean.js && webpack --progress --colors --env.deploy test",
+    "buildtest": "node --max-old-space-size=8192 bin/clean.js && webpack --progress --colors --env.deploy test",
     "buildstage": "node bin/clean.js && webpack --progress --colors --env.deploy stage",
-    "pro": "node bin/clean.js && webpack --progress --colors --env.deploy prod",
+    "pro": "node --max-old-space-size=8192 bin/clean.js && webpack --progress --colors --env.deploy prod",
     "dev": "webpack-dev-server --port 8080 --devtool eval --progress --colors --hot --content-base build --env.deploy dev --env.watch watch"
   },
   "repository": {