Selaa lähdekoodia

Merge branch 'innterfaceUpdate' into groupType

luolei 5 vuotta sitten
vanhempi
commit
c75d535338

+ 69 - 24
src/common/components/NumberUnitPan/index.jsx

@@ -15,6 +15,7 @@ class NumberUnitPan extends Component{
       value:''
     }
     this.handleSelect = this.handleSelect.bind(this);
+    this.getUnitTable = this.getUnitTable.bind(this);
   }
   handleSelect(e){
     e.stopPropagation();
@@ -66,48 +67,40 @@ class NumberUnitPan extends Component{
       display:show?'table':'none'
     }
   }
-  componentWillReceiveProps(nextProps){
-    //重新选择的值替换 不追加
-     if(!nextProps.show){
-      this.setState({
-        value:''
-      });
-     }
-  }
-  render(){
-    const domNode = document.getElementById('root');
-    return <div className={style['panBox']} onBlur={(e)=>e.stopPropagation()} style={this.getStyle()}>
-        <table className={style['pan']} >
+  getUnitTable(){
+    const {unitType} = this.props;
+    if(unitType == 8){
+      return <table className={style['pan']} >
         <tr>
           <td><span onClick={this.handleSelect}>1</span></td>
           <td><span onClick={this.handleSelect}>2</span></td>
           <td><span onClick={this.handleSelect}>3</span></td>
-          <td><span onClick={this.handleSelect}>分钟</span></td>
-          <td><span onClick={this.handleSelect}></span></td>
-          <td><span onClick={this.handleSelect}>余</span></td>
+          <td><span onClick={this.handleSelect}>ml</span></td>
+          <td><span onClick={this.handleSelect}>qd</span></td>
+          <td><span onClick={this.handleClose.bind(this)} className={style.borderNone}>.</span></td>
         </tr>
         <tr>
           <td><span onClick={this.handleSelect}>4</span></td>
           <td><span onClick={this.handleSelect}>5</span></td>
           <td><span onClick={this.handleSelect}>6</span></td>
-          <td><span onClick={this.handleSelect}>小时</span></td>
-          <td><span onClick={this.handleSelect}></span></td>
-          <td><span onClick={this.handleSelect}>次</span></td> 
+          <td><span onClick={this.handleSelect}>mg</span></td>
+          <td><span onClick={this.handleSelect}>bid</span></td>
+          <td><span onClick={this.handleClose.bind(this)} className={style.borderNone}></span></td>
         </tr>
         <tr>
           <td><span onClick={this.handleSelect}>7</span></td>
           <td><span onClick={this.handleSelect}>8</span></td>
           <td><span onClick={this.handleSelect}>9</span></td>
-          <td><span onClick={this.handleSelect}></span></td>
-          <td><span onClick={this.handleSelect}></span></td>
-          <td><span onClick={this.handleSelect}>岁</span></td> 
+          <td><span onClick={this.handleSelect}>g</span></td>
+          <td><span onClick={this.handleSelect}>tid</span></td>
+          <td><span onClick={this.handleClose.bind(this)} className={style.borderNone}></span></td>
         </tr>
         <tr>
           <td><span onClick={this.handleSelect}>.</span></td>
           <td><span onClick={this.handleSelect}>0</span></td>
-          <td><span onClick={this.handleSelect}></span></td>
-          <td><span onClick={this.handleSelect}>/</span></td>
-          <td><span onClick={this.handleSelect}></span></td>
+          <td><span onClick={this.handleSelect}></span></td>
+          <td><span onClick={this.handleSelect}></span></td>
+          <td><span onClick={this.handleSelect}>qid</span></td>
           <td className={style['imgN']}><img src={backspace} onClick={this.handleBack.bind(this)} /></td>
         </tr>
         <tr>
@@ -115,6 +108,58 @@ class NumberUnitPan extends Component{
           <td colspan="3"><span onClick={this.handleClose.bind(this)} className={style['comf']}>确定</span></td>
         </tr>
       </table>
+    }
+    return <table className={style['pan']} >
+      <tr>
+        <td><span onClick={this.handleSelect}>1</span></td>
+        <td><span onClick={this.handleSelect}>2</span></td>
+        <td><span onClick={this.handleSelect}>3</span></td>
+        <td><span onClick={this.handleSelect}>分钟</span></td>
+        <td><span onClick={this.handleSelect}>周</span></td>
+        <td><span onClick={this.handleSelect}>余</span></td>
+      </tr>
+      <tr>
+        <td><span onClick={this.handleSelect}>4</span></td>
+        <td><span onClick={this.handleSelect}>5</span></td>
+        <td><span onClick={this.handleSelect}>6</span></td>
+        <td><span onClick={this.handleSelect}>小时</span></td>
+        <td><span onClick={this.handleSelect}>年</span></td>
+        <td><span onClick={this.handleSelect}>次</span></td>
+      </tr>
+      <tr>
+        <td><span onClick={this.handleSelect}>7</span></td>
+        <td><span onClick={this.handleSelect}>8</span></td>
+        <td><span onClick={this.handleSelect}>9</span></td>
+        <td><span onClick={this.handleSelect}>天</span></td>
+        <td><span onClick={this.handleSelect}>月</span></td>
+        <td><span onClick={this.handleSelect}>岁</span></td> 
+      </tr>
+      <tr>
+        <td><span onClick={this.handleSelect}>.</span></td>
+        <td><span onClick={this.handleSelect}>0</span></td>
+        <td><span onClick={this.handleSelect}>~</span></td>
+        <td><span onClick={this.handleSelect}>/</span></td>
+        <td><span onClick={this.handleSelect}>秒</span></td>
+        <td className={style['imgN']}><img src={backspace} onClick={this.handleBack.bind(this)} /></td>
+      </tr>
+      <tr>
+        <td colspan="3"><span onClick={this.handleClear.bind(this)} className={style['clearN']}>清空</span></td>
+        <td colspan="3"><span onClick={this.handleClose.bind(this)} className={style['comf']}>确定</span></td>
+      </tr>
+    </table>
+  }
+  componentWillReceiveProps(nextProps){
+    //重新选择的值替换 不追加
+     if(!nextProps.show){
+      this.setState({
+        value:''
+      });
+     }
+  }
+  render(){
+    const domNode = document.getElementById('root');
+    return <div className={style['panBox']} onBlur={(e)=>e.stopPropagation()} style={this.getStyle()}>
+        {this.getUnitTable()}
       </div>
   }
 }

+ 17 - 1
src/common/components/NumberUnitPan/index.less

@@ -5,9 +5,16 @@
 .pan{
   width: 280px;
   font-weight: normal;
+  tr {
+    overflow: hidden;
+    height:44px;
+    padding: 0;
+  }
   td{
-    width: 68px;
+    width: 49px;
     height:44px;
+    padding: 0;
+    overflow: hidden;
   }
   span{
     border:1px #fff solid;
@@ -17,7 +24,10 @@
     width: 100%;
     height: 100%;
     text-align: center;
+    height: 44px;
     line-height: 44px;
+    padding: 0;
+    margin: 0;
     color: #333;
     cursor: pointer;
   }
@@ -48,4 +58,10 @@
   .clearN:hover{
     border-color: #fff;
   }
+  .borderNone {
+    opacity: 0;
+  }
+  .borderNone:hover {
+    border: none !important;
+  }
 }

+ 2 - 2
src/components/NumberUnitDrop/index.jsx

@@ -96,7 +96,7 @@ class NumberUnitDrop extends Component{
   }
 
   render(){
-    const {placeholder,prefix,suffix,show,value,handleHide,select_start,i,boxMark} = this.props;
+    const {placeholder,prefix,suffix,show,value,handleHide,select_start,i,boxMark,unitType} = this.props;
     const {editable,hasSelect} = this.state;
     return <div className={this.getClasses()}
                 ref={this.$cont}
@@ -111,7 +111,7 @@ class NumberUnitDrop extends Component{
       <span ref = {this.$suf} className="prefixUnset">{suffix?' '+suffix:suffix}</span>
       <NumberUnitPan handleSelect={(obj)=>this.select(obj)}
                  onClose={handleHide}
-                 show={show} toClear={!hasSelect} value={value}/>
+                 show={show} toClear={!hasSelect} unitType={unitType} value={value}/>
     </div>
   }
 }

+ 12 - 5
src/components/TemplateItems/index.jsx

@@ -166,7 +166,7 @@ class TemplateItems extends React.Component {
                     <div className={style.comAdminWrp}>
                         <div className={`${style.tempLists} ${style.tempListsP}`} ref={this.$cont} style={{display:admin?'none':'block',border:'1px solid #EAEDF1'}}>
                             {//个人
-                                allCheckShow&&!admin ?<div className={`${style.wrapperTop} ${style.wrapperTopM} ${style.personalTmp}`}>
+                                allCheckShow ?<div className={`${style.wrapperTop} ${style.wrapperTopM} ${style.personalTmp}`}>
                                     <i></i>
                                     <i></i>
                                     <div className={style['check-wrap']} onClick={handleAllCheckbox}>
@@ -181,11 +181,18 @@ class TemplateItems extends React.Component {
                                 </div>:null
                             }
                             {
-                                !allCheckShow&&<div className={`${style.personalTmp} clearfix`}>
-                                    <span className={style.tip}>个人模板</span>
-                                    <i></i>
+                                <div className="clearfix">
+                                    {
+                                        !allCheckShow&&<div className={`${style.personalTmp} ${style.personalTmpOwn} clearfix`}>
+                                            <span className={style.tip}>个人模板</span>
+                                            <i></i>
+                                            {
+                                                items.length > 0&&<span className={`${style['fr-element']} ${style['manger']}`} onClick={handleMangerTemplate}>管理</span>
+                                            }
+                                        </div>
+                                    }
                                     {
-                                        items.length > 0&&<span className={`${style['fr-element']} ${style['manger']}`} onClick={handleMangerTemplate}>管理</span>
+                                        !admin?!allCheckShowAdmin&&<div className={`${style.personalTmp} ${style.personalTmpStatand}`}>标准模板</div>:''
                                     }
                                 </div>
                             }

+ 8 - 1
src/components/TemplateItems/index.less

@@ -121,21 +121,28 @@
 .fr-element {
     // float: right;
     color: #3B9ED0;
+    color: #fff;
     display: inline-block;
     height: 36px;
     line-height: 36px;
 }
 .personalTmp {
-    width: 100%;
+    width: 50%;
+    float: left;
     height: 40px !important;
     line-height: 40px !important;
     background-color: #EDF8FF;
     padding: 0 10px;
     box-sizing: border-box;
+    cursor: pointer;
     .tip {
 
     }
     .manger {
         float: right;
     }
+}
+.personalTmpOwn {
+    background-color: #2A9BD5;
+    color: #fff;
 }

+ 17 - 0
src/containers/eleType.js

@@ -79,6 +79,7 @@ export function singleRadio(params){
                          show={showArr&&showArr[showInx]}
                          ikey={showInx}
                          value={data.value}
+                         unitType={data.controlType}
                          hideTag={hideTag}></NumberUnitDrop>;
     case 6:
       return <InlineTag prefix={data.labelPrefix}
@@ -113,6 +114,22 @@ export function singleRadio(params){
                          ikey={showInx}
                          value={data.value}
                          hideTag={hideTag}></NumberDrop>;
+    case 8://带单位数字键盘
+      return <NumberUnitDrop prefix={data.labelPrefix}
+                         suffix={data.labelSuffix}
+                         placeholder={data.name}
+                         mouseSelect={params.mouseSelected}
+                         i={i}
+                         isExtBlue={data.specFlag===4?true:false}
+                         formulaCode={data.formulaCode}
+                         boxMark={boxMark}
+                         id={data.id}
+                         isImports={boxMark==1 ?NumberUnitDropIsHigh: isHigh}
+                         show={showArr&&showArr[showInx]}
+                         ikey={showInx}
+                         unitType={data.controlType}
+                         value={data.value}
+                         hideTag={hideTag}></NumberUnitDrop>;
     case 11:
       return <RadioInpDrop data={data.questionDetailList}
                            vals={data.vals}