Browse Source

Merge branch 'dev' of ssh://10.10.100.21/source/smartschool-platform into dev

guq 7 years ago
parent
commit
471411297a
28 changed files with 209 additions and 141 deletions
  1. 3 3
      frontend/wechat-web/src/components/HomeWorkItem.jsx
  2. 2 1
      frontend/wechat-web/src/components/MeetingSignItem.jsx
  3. 4 1
      frontend/wechat-web/src/index.css
  4. 7 1
      frontend/wechat-web/src/modules/announce/AnnounceRelease.jsx
  5. 2 1
      frontend/wechat-web/src/modules/hiPages/approvel-detail/ApprovelDetail.js
  6. 2 2
      frontend/wechat-web/src/modules/hiPages/approvel/Approvel.css
  7. 50 21
      frontend/wechat-web/src/modules/hiPages/approvel/Approvel.js
  8. 18 16
      frontend/wechat-web/src/modules/hiPages/approvel/ApprovelItem.js
  9. 2 1
      frontend/wechat-web/src/modules/hiPages/changephonenumber/ChangePhoneNumber.js
  10. 1 1
      frontend/wechat-web/src/modules/hiPages/field-trip/FieldTrip.js
  11. 2 11
      frontend/wechat-web/src/modules/hiPages/res_apply/ResApply.js
  12. 21 7
      frontend/wechat-web/src/modules/hiPages/res_apply/UserItem.js
  13. 2 2
      frontend/wechat-web/src/modules/hiPages/send-vote/SendVote.js
  14. 17 12
      frontend/wechat-web/src/modules/hiPages/sendMeetting/SendMeet.js
  15. 1 1
      frontend/wechat-web/src/modules/homework/AssignmentDetailPage.js
  16. 7 1
      frontend/wechat-web/src/modules/homework/ReleaseAssignmentPage.js
  17. 1 1
      frontend/wechat-web/src/modules/leave/LeaveAddCPage.js
  18. 1 1
      frontend/wechat-web/src/modules/leave/LeaveAddPage.js
  19. 1 1
      frontend/wechat-web/src/modules/leave/LeaveItem.css
  20. 13 16
      frontend/wechat-web/src/modules/leave/LeaveItem.js
  21. 10 7
      frontend/wechat-web/src/modules/leave/LeaveListPage.js
  22. 4 3
      frontend/wechat-web/src/modules/meeting/MeetingSignIn.jsx
  23. 1 1
      frontend/wechat-web/src/modules/phonesBook/PhonesList.jsx
  24. 1 1
      frontend/wechat-web/src/modules/phonesBook/PhonesSearch.jsx
  25. 1 1
      frontend/wechat-web/src/modules/vote/VoteDetailPage.js
  26. 2 2
      frontend/wechat-web/src/style/css/consume-re.css
  27. 1 1
      frontend/wechat-web/src/style/css/payment.css
  28. 32 24
      frontend/wechat-web/src/utils/common.js

+ 3 - 3
frontend/wechat-web/src/components/HomeWorkItem.jsx

@@ -26,9 +26,9 @@ export default class HomeWorkItem extends Component {
             <div style={{padding: '0 10px'}} onClick={this.onItemClick}>
                 <div className='recharge-item-root'>
                     <div className='common-flex-row homework-item-title-layout'>
-                        <div className='homework-item-title'>{homeWork.notifyName}</div>
-                        <span className={homeWork.taskStatus === 2 ? 'homework-item-done'
-                            : 'homework-item-todo'}>{homeWork.readStatus}</span>
+                        <div style={{width:'85%'}} className='homework-item-title'>{homeWork.notifyName}</div>
+                        <div style={{width:'15%',textAlign:'right'}} className={homeWork.taskStatus === 2 ? 'homework-item-done'
+                            : 'homework-item-todo'}>{homeWork.readStatus}</div>
                     </div>
                     <div className='gray-line' style={{height: '1px', marginBottom: '10px'}}></div>
                     <div className='recharge-item-line'>

+ 2 - 1
frontend/wechat-web/src/components/MeetingSignItem.jsx

@@ -30,7 +30,8 @@ export default class MeetingSignItem extends Component {
         const {meetingBean} = this.state
 
         return (
-            <div className='meet-signItemLayout' onClick={this.onItemClick}>
+            <div className='meet-signItemLayout' onClick={this.onItemClick}
+                 style={{paddingBottom: this.props.isLast ? '80px' : '10px'}}>
                 <div className='signCreateTime'>{meetingBean.createTime}</div>
                 <div className='signContentlayout'>
                     <div className='titleLayout'>

+ 4 - 1
frontend/wechat-web/src/index.css

@@ -126,6 +126,10 @@ span.ant-select-selection.ant-select-selection--multiple {
     background: white !important;
 }
 
+.am-list-item .am-list-line .am-list-extra {
+    flex-basis: 30% !important;
+}
+
 /***************************公共样式****************************************/
 .common-column-layout {
     width: 100%;
@@ -238,7 +242,6 @@ span.ant-select-selection.ant-select-selection--multiple {
 .common-flex-row {
     display: flex;
     flex-direction: row;
-    align-items: center;
 }
 
 .common-flex-row-10 {

+ 7 - 1
frontend/wechat-web/src/modules/announce/AnnounceRelease.jsx

@@ -169,6 +169,10 @@ class AnnounceRelease extends Component {
     }
 
     releaseAnnounce = () => {
+        if (this.isRequesting == true) {
+            return
+        }
+
         const {announceTitle, announceContent, fileList} = this.state
 
         if (isObjEmpty(announceTitle)) {
@@ -188,7 +192,6 @@ class AnnounceRelease extends Component {
             Toast.fail('通知标题过长')
             return
         }
-        Toast.loading('正在发布...', 0)
 
         const fileUrls = []
         if (fileList) {
@@ -221,6 +224,8 @@ class AnnounceRelease extends Component {
 
         console.log(paramObj)
 
+        this.isRequesting = true
+        Toast.loading('正在发布...', 0)
         fetchPost(API.NOTIFY_CREATE, {
             jsonNotify: JSON.stringify(paramObj)
         }).then(response => {
@@ -237,6 +242,7 @@ class AnnounceRelease extends Component {
                 this.props.history.goBack()
             }, 1000)
         }).catch(error => {
+            this.isRequesting = false
             Toast.hide()
             if (typeof error === 'string') {
                 Toast.fail(error, 2)

+ 2 - 1
frontend/wechat-web/src/modules/hiPages/approvel-detail/ApprovelDetail.js

@@ -182,7 +182,8 @@ class ApprovelDetail extends Component{
                     showButton:false
                 })
                 this.backTask = setTimeout(()=>{
-                    this.props.history.push("/approvel")
+                    // this.props.history.push("/approvel")
+                    this.props.history.goBack()
                 },1000)
             }
         }).catch((error) =>{

+ 2 - 2
frontend/wechat-web/src/modules/hiPages/approvel/Approvel.css

@@ -1,6 +1,6 @@
 .item-Style{
-    margin: 0px 10px;background-color: #FFFFFF;height: 76px;border-radius: 6px;
-    display: flex;flex-direction: row;width:50vh;
+    background-color: #FFFFFF;height: 76px;border-radius: 6px;
+    display: flex;flex-direction: row;width:100%;
 }
 .img_sty{
     height:45px;width: 45px;margin: 15px 10px;

+ 50 - 21
frontend/wechat-web/src/modules/hiPages/approvel/Approvel.js

@@ -21,7 +21,6 @@ import {Skeleton, List} from 'antd';
 import {getIntValue, getStrValue, isObjEmpty} from "../../../utils/common";
 import {saveListState} from "../../../redux/actions/listState";
 
-let mySwiper;
 let myApplypageIndex = 0;
 let myApprovepageIndex = 0;
 const mPageSize = 10
@@ -52,7 +51,7 @@ class Approvel extends Component {
         this.setState({
             height: hei
         })
-        mySwiper = new Swiper('.swiper-container', {
+      this.mySwiper = new Swiper('.swiper-container', {
             autoplay: false,
             loop: false,
             on: {
@@ -63,6 +62,14 @@ class Approvel extends Component {
                 }
             }
         })
+        console.log('listState', this.props.listState)
+        if (this.props.listState.tabIndex >= 0) {
+            this.setState({
+                selectIndex: this.props.listState.tabIndex
+            },function () {
+                this.mySwiper.slideTo(this.state.selectIndex, 0, false)
+            })
+        }
         if (this.props.listState && !isObjEmpty(this.props.listState.listData)) {
             console.log('11111')
             this.setState({
@@ -106,12 +113,17 @@ class Approvel extends Component {
                 onRefresh={this.getMyApplyData}
                 height={this.state.height}>
                 <Skeleton loading={this.state.isMyapplyding} active paragraph={{rows: 3}}>
-                    <List dataSource={this.state.applyList}
-                          renderItem={(applyListBean,index) => (
-                              <List.Item>
-                                  <ApprovelItem itemdata={applyListBean} isMyApply={true}   index={index} onItemClick={this.onItemClick.bind(this)}/>
-                              </List.Item>
-                          )}/>
+                    {
+                        this.state.applyList.map((itemdata,index) =>
+                            <ApprovelItem itemdata={itemdata} isMyApply={true}   index={index} onItemClick={this.onItemClick.bind(this)}/>
+                        )
+                    }
+                    {/*<List dataSource={this.state.applyList}*/}
+                          {/*renderItem={(applyListBean,index) => (*/}
+                              {/*<List.Item>*/}
+                                  {/*<ApprovelItem itemdata={applyListBean} isMyApply={true}   index={index} onItemClick={this.onItemClick.bind(this)}/>*/}
+                              {/*</List.Item>*/}
+                          {/*)}/>*/}
                 </Skeleton>
             </RefreshLayout>
 
@@ -124,12 +136,17 @@ class Approvel extends Component {
                 onRefresh={this.getMyApproveData}
                 height={this.state.height}>
                 <Skeleton loading={this.state.isMyapprovedload} active paragraph={{rows: 3}}>
-                    <List dataSource={this.state.approvelList}
-                          renderItem={(approvelListBean,index) => (
-                              <List.Item>
-                                  <ApprovelItem itemdata={approvelListBean}isMyApply={false}  index={index} onItemClick={this.onItemClick.bind(this)}/>
-                              </List.Item>
-                          )}/>
+                    {
+                        this.state.approvelList.map((itemdata,index) =>
+                            <ApprovelItem itemdata={itemdata}isMyApply={false}  index={index} onItemClick={this.onItemClick.bind(this)}/>
+                        )
+                    }
+                    {/*<List dataSource={this.state.approvelList}*/}
+                          {/*renderItem={(approvelListBean,index) => (*/}
+                              {/*<List.Item>*/}
+                                  {/*<ApprovelItem itemdata={approvelListBean}isMyApply={false}  index={index} onItemClick={this.onItemClick.bind(this)}/>*/}
+                              {/*</List.Item>*/}
+                          {/*)}/>*/}
                 </Skeleton>
             </RefreshLayout>
 
@@ -220,10 +237,15 @@ class Approvel extends Component {
                         applyList: response.data.proposes,
                     })
                 } else if(response.data.proposes.length > 0 && response.data.proposes != []){
-                    this.setState({
-                        applyList: this.state.applyList.push(response.data.proposes),
+                    var applyList = this.state.applyList
+                    response.data.proposes.forEach((itemdata,index) =>{
+                        applyList.push(itemdata)
+                    },() =>{
+                        this.setState({
+                            applyList: applyList,
+                        })
                     })
-                    console.log("proposes.length",response.data.proposes.length)
+                    console.log("applyList.length",applyList.length)
                 }
                 console.log("applyList",this.state.applyList)
                 console.log("myApplypageIndex",myApplypageIndex)
@@ -233,6 +255,7 @@ class Approvel extends Component {
                 isMyapplydload: false,
             })
         }).catch((error) => {
+            console.log('error',error)
             if (typeof error === 'string') {
                 Toast.fail(error, 2)
             } else {
@@ -267,9 +290,15 @@ class Approvel extends Component {
                         approvelList: response.data.approves
                     })
                 } else if(response.data.approves.length > 0){
-                    this.setState({
-                        approvelList: this.state.approvelList.push(response.data.approves)
+                    var approvelList = this.state.approvelList
+                    response.data.proposes.forEach((itemdata,index) =>{
+                        approvelList.push(itemdata)
+                    },() =>{
+                        this.setState({
+                            approvelList: approvelList,
+                        })
                     })
+                    console.log("approvelList.length",approvelList.length)
                 }
                 console.log("approvelList",this.state.approvelList)
             }
@@ -300,7 +329,7 @@ class Approvel extends Component {
         this.setState({
             selectIndex: 0
         }, () => {
-            mySwiper.slideTo(this.state.selectIndex, 300, false)
+            this.mySwiper.slideTo(this.state.selectIndex, 300, false)
         })
     }
 
@@ -308,7 +337,7 @@ class Approvel extends Component {
         this.setState({
             selectIndex: 1
         }, () => {
-            mySwiper.slideTo(this.state.selectIndex, 300, false)
+            this.mySwiper.slideTo(this.state.selectIndex, 300, false)
         })
     }
 

+ 18 - 16
frontend/wechat-web/src/modules/hiPages/approvel/ApprovelItem.js

@@ -36,25 +36,27 @@ export default class ApprovelItem extends Component{
 
         const {itemdata,isMyApply,approveId} = this.state
         return(
-                    <Link to={"/approvel-detail/" + approveId +"/"+isMyApply}>
-                        <div className="item-Style" onClick={this.ItemClick.bind(this,isMyApply,itemdata,this.props.index)}>
-                            <div style={{width:'20%'}}>
-                                <div style={{width:76,height:'100%'}}>
-                                    <img src={itemdata.approveType == 1 ? icon_trip : (itemdata.approveType == 2 ? icon_res : icon_leave)} className={isMyApply==true?'img_sty':"img_circle"}/>
+                    <div style={{padding:10}}>
+                        <Link to={"/approvel-detail/" + approveId +"/"+isMyApply}>
+                            <div className="item-Style" onClick={this.ItemClick.bind(this,isMyApply,itemdata,this.props.index)}>
+                                <div style={{width:'20%'}}>
+                                    <div style={{width:76,height:'100%'}}>
+                                        <img src={itemdata.approveType == 1 ? icon_trip : (itemdata.approveType == 2 ? icon_res : icon_leave)} className={isMyApply==true?'img_sty':"img_circle"}/>
+                                    </div>
                                 </div>
-                            </div>
-                            <div style={{width:'65%'}}>
-                                <div style={{color:"#333333",fontSize:15,marginTop:10}}>
-                                    {itemdata.approveType == 1 ? '出差申请' :  (itemdata.approveType == 2 ? '用品申请' : '请假申请' )}
+                                <div style={{width:'65%'}}>
+                                    <div style={{color:"#333333",fontSize:15,marginTop:10}}>
+                                        {itemdata.approveType == 1 ? '出差申请' :  (itemdata.approveType == 2 ? '用品申请' : '请假申请' )}
+                                    </div>
+                                    <div style={{color:"#666666",fontSize:12,marginTop:15}}>{this.props.itemdata.creatDate}</div>
+                                </div>
+                                <div className={itemdata.approveStatus==1?'doing':'done'}
+                                     style={{textAlign:'left',marginTop:10,fontSize:12,width:'15%'}}>
+                                    {itemdata.approveStatus == 1 ? "待审批" :"已审批"}
                                 </div>
-                                <div style={{color:"#666666",fontSize:12,marginTop:15}}>{this.props.itemdata.creatDate}</div>
-                            </div>
-                            <div className={itemdata.approveStatus==1?'doing':'done'}
-                                 style={{textAlign:'left',marginTop:10,fontSize:12,width:'15%'}}>
-                                {itemdata.approveStatus == 1 ? "待审批" :"已审批"}
                             </div>
-                        </div>
-                    </Link>
+                        </Link>
+                    </div>
         )
     }
     ItemClick =(isMyApply,data,index)=>{

+ 2 - 1
frontend/wechat-web/src/modules/hiPages/changephonenumber/ChangePhoneNumber.js

@@ -86,7 +86,8 @@ let mSeconds = 0;
                      this.setState({
                          changeSuccess:true
                      },function () {
-                         this.props.history.push('/homepage/')
+                         // this.props.history.push('/homepage/')
+                         this.props.history.goBack()
                      })
                  }
              })

+ 1 - 1
frontend/wechat-web/src/modules/hiPages/field-trip/FieldTrip.js

@@ -146,7 +146,7 @@ class FieldTrip extends Component {
                 <div className="comhline_sty"></div>
 
                 <textarea ref='tripsReason' className="form-control textarea_sty" rows="5" placeholder="请填写出差事由…"
-                          value={this.state.tripsReason}></textarea>
+                          value={this.state.tripsReason} maxLength={100}></textarea>
                 <div className="comhline_sty1"></div>
                 {this.state.targetData.length > 0 ? <TargetSelect {...targetProps}/>
                     : <TargetSelect {...defaultTargetProps}/>}

+ 2 - 11
frontend/wechat-web/src/modules/hiPages/res_apply/ResApply.js

@@ -87,7 +87,7 @@ class ResApply extends Component{
                 <div className="comhline_sty"></div>
                 <div className="item_sty">
                     <div className="left_title">物品用途</div>
-                    <input ref='resUser' className="text-right right_input" type="text" placeholder="请输入"  autoFocus="autoFocus" value={this.state.resUser}/>
+                    <input ref='resUser' className="text-right right_input" type="text" placeholder="请输入" maxLength={20} autoFocus="autoFocus" value={this.state.resUser}/>
                 </div>
 
                 <div >
@@ -95,19 +95,10 @@ class ResApply extends Component{
                     <div onClick={this.addUserItem} className="text-center" style={{color:"#0CE11D",fontSize:12,margin:10}}>+ <span style={{color:"#666666",borderBottom:"1px #000 solid"}}>添加物品明细</span></div>
                 </div>
 
-                <textarea ref='receivingSays' className="form-control textarea_sty" rows="5"  placeholder="领取说明"  value={this.state.receivingSays}  maxLength={400}></textarea>
+                <textarea ref='receivingSays' className="form-control textarea_sty" rows="5"  placeholder="领取说明"  value={this.state.receivingSays}  maxLength={100}></textarea>
                 <div className="comhline_sty1"></div>
 
 
-                {/*<div className="common-column-layout">*/}
-                {/*<Picker*/}
-                {/*data={this.state.receiverPerson} title='接收人' extra='请选择'*/}
-                {/*value={this.state.Receiver}*/}
-                {/*onChange={this.handleSelectChange}*/}
-                {/*onOk={this.handleSelectChange} cols={1}>*/}
-                {/*<List.Item arrow="horizontal" >接收人</List.Item>*/}
-                {/*</Picker>*/}
-                {/*</div>*/}
                 {this.state.targetData.length > 0 ? <TargetSelect {...targetProps}/>
                     : <TargetSelect {...defaultTargetProps}/>}
                 <div className="comhline_sty"></div>

+ 21 - 7
frontend/wechat-web/src/modules/hiPages/res_apply/UserItem.js

@@ -7,6 +7,8 @@ import React,{Component} from 'react';
 import './ResApply.css';
 import delete_img from '../../../style/imgs/delete.png';
 import {Icon} from 'antd';
+import {Toast} from 'antd-mobile';
+
 
 export default class UserItem extends Component{
     constructor(props){
@@ -23,7 +25,7 @@ export default class UserItem extends Component{
                 </div>
                 <div className="item_sty">
                     <div className="left_title">物品名称</div>
-                    <input  ref='itemuser'  className="text-right right_input" type="text" placeholder="请输入"  value={this.props.itemata.artName} />
+                    <input  ref='itemuser'  className="text-right right_input" type="text" placeholder="请输入"  maxLength={10} value={this.props.itemata.artName} />
                 </div>
                 <div className="comhline_sty1"></div>
                 <div className="item_sty">
@@ -42,11 +44,23 @@ export default class UserItem extends Component{
         //请输入选项内容
         let itemuser = this.refs.itemuser.value;
         let itemnumber = this.refs.itemnumber.value;
-        // console.log('itemuser',itemuser)
-        // console.log('itemnumber',itemnumber)
-        this.props.handelRItem({
-            artName:itemuser,
-            artCount:itemnumber
-        },this.props.index)
+        console.log('itemuser',itemuser)
+        console.log('itemnumber',itemnumber)
+        console.log('itemnumber%1 === 0',itemnumber%1 == 0)
+        if(itemnumber.length > 0){
+            if(itemnumber%1 == 0 && itemnumber > 0){
+                this.props.handelRItem({
+                    artName:itemuser,
+                    artCount:itemnumber
+                },this.props.index)
+            }else {
+                Toast.show('请输入正整数',1)
+                this.props.handelRItem({
+                    artName:itemuser,
+                    artCount:''
+                },this.props.index)
+                return
+            }
+        }
     }
 }

+ 2 - 2
frontend/wechat-web/src/modules/hiPages/send-vote/SendVote.js

@@ -269,7 +269,7 @@ class SendVote extends Component {
             return
         }
 
-        if (this.state.voteTitle.trim().length > 80) {
+        if (this.state.voteTitle.trim().length > 100) {
             Toast.fail('投票主题内容过长')
             return
         }
@@ -280,7 +280,7 @@ class SendVote extends Component {
                 return
             }
 
-            if (this.state.voteOptionss[i].trim().length > 80) {
+            if (this.state.voteOptionss[i].trim().length > 100) {
                 Toast.fail('选项' + (i + 1) + '内容过长...')
                 return
             }

+ 17 - 12
frontend/wechat-web/src/modules/hiPages/sendMeetting/SendMeet.js

@@ -64,7 +64,7 @@ class SendMeet extends Component {
                         title: `全体老师`,
                         value: `0`,
                         key: `0`,
-                        selectable:false,
+                        selectable: false,
                         children: teacherData,
                     })
                 }
@@ -138,12 +138,13 @@ class SendMeet extends Component {
             onTargetFocus: this.onTargetFocus.bind(this)
         }
         return (
-            <div onChange={this.handelValueCom} style={{fontFamily: "PingFangSC-Regular", letterSpacing: 2.5}} className='common-column-layout'>
+            <div onChange={this.handelValueCom} style={{fontFamily: "PingFangSC-Regular", letterSpacing: 2.5}}
+                 className='common-column-layout'>
                 {/*<p>{new Date().getTime()}</p>*/}
                 <textarea autoFocus="autoFocus" ref='meetTitle' className="form-control textarea_sty" rows="2"
-                          placeholder="请填写会议主题…"  maxLength={20}></textarea>
+                          placeholder="请填写会议主题…"  maxLength={50}></textarea>
                 <textarea ref='meetAddress' className="form-control textarea_sty" rows="3"
-                          placeholder="请填写会议地址…"  maxLength={50}></textarea>
+                          placeholder="请填写会议地址…"  maxLength={100}></textarea>
                 <div className="comhline_sty"></div>
                 <div className="common-column-layout" style={{fontSize: 15}}>
                     <DatePicker
@@ -179,7 +180,7 @@ class SendMeet extends Component {
                 {this.state.targetData.length > 0 ? <TargetSelect {...targetProps}/>
                     : <TargetSelect {...defaultTargetProps}/>}
                 {/*<center><Button type="button" className="btn btn-primary comBtn_sty"*/}
-                                {/*onClick={this.doSaveClick}>创建</Button></center>*/}
+                {/*onClick={this.doSaveClick}>创建</Button></center>*/}
 
                 <Button className='commonButton' type='primary' style={{margin: '35px'}}
                         onClick={this.doSaveClick}>创建</Button>
@@ -188,7 +189,7 @@ class SendMeet extends Component {
     }
 
     doSaveClick = (event) => {
-        if(this.isRequesting == true){
+        if (this.isRequesting == true) {
             return
         }
         console.log('state', this.state)
@@ -200,15 +201,15 @@ class SendMeet extends Component {
             Toast.fail('请填写会议地址...')
             return
         }
-        if (this.state.startValue == null ) {
+        if (this.state.startValue == null) {
             Toast.fail('请选择开始时间...')
             return
         }
-        if (this.state.endValue == null ) {
+        if (this.state.endValue == null) {
             Toast.fail('请选择结束时间...')
             return
         }
-        if (this.state.earlyTime == null ){
+        if (this.state.earlyTime == null) {
             Toast.fail('请选择提醒时间...')
             return
         }
@@ -221,6 +222,10 @@ class SendMeet extends Component {
             this.checkNodes.forEach((node, index) => {
                 userList.push(node.userId)
             })
+
+            if (!isObjEmpty(this.props.userInfo.user.userFunId) && userList.indexOf(this.props.userInfo.user.userFunId) === -1) {
+                userList.push(this.props.userInfo.user.userFunId)
+            }
         }
         var nowT = new Date().getTime()
         var startT = new Date(this.state.startValue).getTime()
@@ -245,7 +250,7 @@ class SendMeet extends Component {
         console.log('noticeT', new Date(noticeT))
 
         let params = {
-            meetingCreator:this.props.userInfo.user.userFunId,
+            meetingCreator: this.props.userInfo.user.userFunId,
             meetingStatus: 1,
             meetingName: this.state.titleValue,
             meetingAddress: this.state.meetAddress,
@@ -254,7 +259,7 @@ class SendMeet extends Component {
             reminderDate: moment(new Date(noticeT)).format('YYYY-MM-DD HH:mm:ss'),
             meetingNotifier: JSON.stringify(userList),
             meetingRemarks: "会议备注",
-            meetingFiles:"[]",
+            meetingFiles: "[]",
             meetingDetails: "一定要参加",
         }
 
@@ -263,7 +268,7 @@ class SendMeet extends Component {
         Toast.loading("会议创建中...", 0)
         this.isRequesting = true
         fetchPost(API.createMeeting, {
-            jsonMeeting:JSON.stringify(params)
+            jsonMeeting: JSON.stringify(params)
         }, {})
             .then((response) => {
                 this.isRequesting = false

+ 1 - 1
frontend/wechat-web/src/modules/homework/AssignmentDetailPage.js

@@ -209,7 +209,7 @@ class AssignmentDetailPage extends React.Component {
                     {this.state.files.length != 0 ? (<img onClick={this.onClickImage.bind(this)}
                                                           style={{margin: "0px"}}
                                                           src={this.state.files[0]}
-                                                          width={260} height={130}/>) : ("")}
+                                                          height={130}/>) : ("")}
 
                 </div>
                 <div className="margin_top_bottom_10 homework-detail-leave-caption">留言{this.state.data.length != 0 ? (

+ 7 - 1
frontend/wechat-web/src/modules/homework/ReleaseAssignmentPage.js

@@ -114,6 +114,11 @@ class ReleaseAssignmentPage extends React.Component {
             Toast.fail("请输入作业名称");
             return;
         }
+        if (taskTitle.length > 50) {
+            Toast.fail('作业名称过长')
+            return
+        }
+
         if (isObjEmpty(taskContent)) {
             Toast.fail('请输入作业内容')
             return;
@@ -138,8 +143,9 @@ class ReleaseAssignmentPage extends React.Component {
                 fileUrls.push(value.picUrl)
             })
         }
-        Toast.loading('正在发布...', 0)
 
+
+        Toast.loading('正在发布...', 0)
         const params = {
             subjectId: 1,
             taskTitle: taskTitle,

+ 1 - 1
frontend/wechat-web/src/modules/leave/LeaveAddCPage.js

@@ -114,7 +114,7 @@ class LeaveAddCPage extends Component {
                 <div className="comhline_sty"></div>
                 <div onChange={this.handelValueCom}>
                     <textarea  ref='leaveReason' className="form-control textarea_sty" rows="4"
-                               placeholder="请填写请假内容" maxLength={400}></textarea>
+                               placeholder="请填写请假内容" maxLength={100}></textarea>
                 </div>
                 <div className="comhline_sty"></div>
                 {this.state.targetData.length > 0 ? <TargetSelect {...targetProps}/>

+ 1 - 1
frontend/wechat-web/src/modules/leave/LeaveAddPage.js

@@ -93,7 +93,7 @@ class LeaveAddPage extends Component{
                 <div className="comhline_sty"></div>
                 <div onChange={this.handelValueCom}>
                     <textarea  ref='leaveReason' className="form-control textarea_sty" rows="4"
-                               placeholder="请填写请假事由" maxLength={400}></textarea>
+                               placeholder="请填写请假事由" maxLength={100}></textarea>
                 </div>
                 <div className="comhline_sty"></div>
                 {this.state.targetData.length > 0 ? <TargetSelect {...targetProps}/>

+ 1 - 1
frontend/wechat-web/src/modules/leave/LeaveItem.css

@@ -1,7 +1,7 @@
 .item_contain{
  height: 115px;background: #FFFFFF;  border-radius: 10px;text-align: center;padding: 10px;
 }
-.row_sty{
+.leave_row_sty{
     display: flex;flex-direction: row;
 }
 .title_sty{

+ 13 - 16
frontend/wechat-web/src/modules/leave/LeaveItem.js

@@ -5,6 +5,7 @@
 
 import React,{Component} from 'react';
 import {Link} from 'react-router-dom';
+import './LeaveItem.css';
 
 export default class LeaveItem extends Component {
     constructor(props) {
@@ -17,13 +18,12 @@ export default class LeaveItem extends Component {
     render() {
         const {item} = this.state;
         return (
-            <div>
+            <div style={{padding:10}}>
                 <Link to={'/leavedetail/' + this.props.role + '/' + item.lvId}>
-                    <div className="col-xs-12 " style={{backgroundColor: '#FFF', width: '53vh'}}
-                         onClick={this.ItemClick.bind(this, this.props.index)}>
-                        <div className="row flex">
-                            <div id="global_page_title" style={{fontSize: 15, color: "#333333"}}>  {item.title}</div>
-                            <div className="item_flex_1  flex_row_right margin_left_right_10">
+                    <div style={{backgroundColor:'#FFF',width:'100%',padding:10,borderRadius:10}}>
+                        <div className="leave_row_sty">
+                            <div style={{fontSize: 15, color: "#333333",width:'60%',textAlign:'left'}}> {item.title}</div>
+                            <div style={{width:'40%',textAlign:'right'}}>
                                 {
                                     this.state.role == "parent" ? '' :
                                         <div>
@@ -36,17 +36,14 @@ export default class LeaveItem extends Component {
                                 }
                             </div>
                         </div>
-                        <div className="row">
-                            <div className="col-xs-3" id="col-clear" style={{fontSize: 12, color: "#666666"}}>请假时间:
-                            </div>
-                            <div className="col-xs-9" id="col-clear-start"
-                                 style={{fontSize: 12, color: "#333333"}}>{item.startTime}—{item.endTime}</div>
+                        <div className="leave_row_sty" style={{marginTop:5}}>
+                            <div  style={{fontSize: 12, color: "#666666",width:'20%'}}>请假时间:</div>
+                            <div style={{fontSize: 12, color: "#333333",width:'80%'}}>{item.startTime}—{item.endTime}</div>
                         </div>
-                        <div className="row " style={{marginTop: 10, marginBottom: 10}}>
-                            <div className="col-xs-3" id="col-clear" style={{fontSize: 12, color: "#666666"}}>请假事由:
-                            </div>
-                            <div className="col-xs-9" id="col-clear-start"
-                                 style={{fontSize: 12, color: "#333333"}}>{item.content}</div>
+
+                        <div className="leave_row_sty" style={{marginTop:5}}>
+                            <div style={{fontSize: 12, color: "#666666",width:'20%'}}>请假事由:</div>
+                            <div style={{fontSize: 12, color: "#333333",width:'80%'}}>{item.content}</div>
                         </div>
                     </div>
                 </Link>

+ 10 - 7
frontend/wechat-web/src/modules/leave/LeaveListPage.js

@@ -66,7 +66,7 @@ class LeaveListPage extends React.Component{
 
 
     render(){
-        return <div  style={{background: '#F2F2F2'}}>
+        return <div   style={{background: '#F2F2F2'}}>
 
             <RefreshLayout
                         refreshing={this.state.isRefreshing}
@@ -75,12 +75,15 @@ class LeaveListPage extends React.Component{
                         }}
                         onRefresh={this.getListData}>
                         <Skeleton loading={this.state.isLoading} active paragraph={{rows: 3}}>
-                            <List dataSource={this.state.data}
-                                  renderItem={(itemdata,index) =>(
-                                      <List.Item   id="row_background"  >
-                                          <LeaveItem itemdata={itemdata} role={this.state.role} index = {index} onItemClick={this.onItemClick.bind(this)}></LeaveItem>
-                                      </List.Item>
-                                  )}/>
+                            {/*{this.state.selectContentArray.map((itemata,index) => <UserItem index ={index} itemata = {itemata} handelRItem={this.handelRItem} removeSItem={this.removeSItem}></UserItem>)}*/}
+                            {this.state.data.map((itemdata,index) =>  <LeaveItem itemdata={itemdata} role={this.state.role} index = {index} onItemClick={this.onItemClick.bind(this)}></LeaveItem>
+                            )}
+                            {/*<List dataSource={this.state.data}*/}
+                                  {/*renderItem={(itemdata,index) =>(*/}
+                                      {/*<List.Item  >*/}
+                                          {/*<LeaveItem itemdata={itemdata} role={this.state.role} index = {index} onItemClick={this.onItemClick.bind(this)}></LeaveItem>*/}
+                                      {/*</List.Item>*/}
+                                  {/*)}/>*/}
                         </Skeleton>
                     </RefreshLayout>
                     {

+ 4 - 3
frontend/wechat-web/src/modules/meeting/MeetingSignIn.jsx

@@ -66,6 +66,7 @@ class MeetingSignIn extends Component {
                                   <MeetingSignItem
                                       meetingBean={item}
                                       index={index}
+                                      isLast={index === (meetingSignList.length - 1)}
                                       onMeetingSign={this.onMeetingSign.bind(this)}
                                       onItemClick={this.onItemClick.bind(this)}/>
                               )}/>
@@ -167,8 +168,8 @@ class MeetingSignIn extends Component {
         const {meetingSignList} = this.state
 
         Toast.loading('', 0)
-        console.log("teacherId:",this.props.userInfo.user.userFunId)
-        console.log("meetingId:",meetingSignList[index].meetId)
+        console.log("teacherId:", this.props.userInfo.user.userFunId)
+        console.log("meetingId:", meetingSignList[index].meetId)
         fetchPost(API.MEETING_SIGN, {
             teacherId: this.props.userInfo.user.userFunId,
             meetingId: meetingSignList[index].meetId,
@@ -178,7 +179,7 @@ class MeetingSignIn extends Component {
             meetingSignList[index].signStatus = '已签到'
             meetingSignList[index].signStatusCode = 3
 
-            this.setState({meetingSignList},()=>{
+            this.setState({meetingSignList}, () => {
                 saveListState({
                     scrollTop: ReactDOM.findDOMNode(this.container).scrollTop,
                     listData: this.state.meetingSignList,

+ 1 - 1
frontend/wechat-web/src/modules/phonesBook/PhonesList.jsx

@@ -130,7 +130,7 @@ class PhonesList extends Component {
         this.setState({
             isLoading: true,
             isRefreshing: false,
-            searchKey: value
+            searchKey: value.trim()
         }, () => {
             this.loadPhones()
         })

+ 1 - 1
frontend/wechat-web/src/modules/phonesBook/PhonesSearch.jsx

@@ -110,7 +110,7 @@ class PhonesSearch extends Component {
         this.setState({
             isLoading: true,
             isRefreshing: false,
-            searchKey: value
+            searchKey: value.trim()
         }, () => {
             this.loadPhones()
         })

+ 1 - 1
frontend/wechat-web/src/modules/vote/VoteDetailPage.js

@@ -42,10 +42,10 @@ class VoteDetailPage extends React.Component {
 
     componentWillMount() {
         document.title = "投票";
+        role = this.props.match.params.role
     }
 
     componentDidMount() {
-        role = this.props.match.params.role
         this.getVoteDetail();
     }
 

+ 2 - 2
frontend/wechat-web/src/style/css/consume-re.css

@@ -219,8 +219,8 @@
     border-radius: 6px 6px 0 0;
     padding-bottom: 20px;
     text-align: left;
-    min-height: 250px;
-    max-height: 70vh;
+    /*min-height: 250px;*/
+    /*max-height: 70vh;*/
     overflow-y: scroll;
 }
 

+ 1 - 1
frontend/wechat-web/src/style/css/payment.css

@@ -112,10 +112,10 @@
     width: 100%;
     display: flex;
     padding: 5px 0 5px 20px;
-    align-items: center;
     font-family: PingFangSC-Regular;
     font-size: 13px;
     letter-spacing: 0;
+    flex-direction: row;
 }
 
 .recharge-item-caption {

+ 32 - 24
frontend/wechat-web/src/utils/common.js

@@ -330,24 +330,28 @@ export const getCheckedCount = (checkedNodes) => {
         let quantity = 0
         for (let i = 0; i < checkedNodes.length; i++) {
             let checkedNode = checkedNodes[i]
-            if (checkedNode.node) {
-                if (checkedNode.children) {
-                    checkedNode = checkedNode.children
-                    quantity = quantity + getCheckedCount(checkedNode)
-                } else {
-                    quantity = quantity + 1
-                    continue
-                }
-            } else {
-                if (checkedNode.props) {
-                    if (checkedNode.props.children.length > 0) {
-                        checkedNode = checkedNode.props.children
+            if (checkedNode) {
+                if (checkedNode.node) {
+                    if (checkedNode.children) {
+                        checkedNode = checkedNode.children
                         quantity = quantity + getCheckedCount(checkedNode)
                     } else {
                         quantity = quantity + 1
                         continue
                     }
+                } else {
+                    if (checkedNode.props) {
+                        if (checkedNode.props.children.length > 0) {
+                            checkedNode = checkedNode.props.children
+                            quantity = quantity + getCheckedCount(checkedNode)
+                        } else {
+                            quantity = quantity + 1
+                            continue
+                        }
+                    }
                 }
+            } else {
+                continue
             }
         }
         return quantity
@@ -361,18 +365,9 @@ export const getNodes = (checkedNodes) => {
         let childNodes = []
         for (let i = 0; i < checkedNodes.length; i++) {
             let checkedNode = checkedNodes[i]
-            if (checkedNode.node && checkedNode.node.props) {
-                const checkProps = checkedNode.node.props
-                if (!isObjEmpty(checkProps.children)) {
-                    checkedNode = checkProps.children
-                    childNodes = childNodes.concat(getNodes(checkedNode))
-                } else {
-                    childNodes.push(checkProps)
-                    continue
-                }
-            } else {
-                if (checkedNode.props) {
-                    const checkProps = checkedNode.props
+            if (checkedNode) {
+                if (checkedNode.node && checkedNode.node.props) {
+                    const checkProps = checkedNode.node.props
                     if (!isObjEmpty(checkProps.children)) {
                         checkedNode = checkProps.children
                         childNodes = childNodes.concat(getNodes(checkedNode))
@@ -380,7 +375,20 @@ export const getNodes = (checkedNodes) => {
                         childNodes.push(checkProps)
                         continue
                     }
+                } else {
+                    if (checkedNode.props) {
+                        const checkProps = checkedNode.props
+                        if (!isObjEmpty(checkProps.children)) {
+                            checkedNode = checkProps.children
+                            childNodes = childNodes.concat(getNodes(checkedNode))
+                        } else {
+                            childNodes.push(checkProps)
+                            continue
+                        }
+                    }
                 }
+            }else {
+                continue
             }
         }
         return childNodes