ymy 2 anni fa
parent
commit
06d29f2a00

+ 29 - 3
src/benyun/components/byDatePicker/byDatePicker.vue

@@ -71,6 +71,7 @@ export default class ByDatePicker extends VueViews {
     if(!v){
       return v;
     }
+    let val:any = '';
     let type = 'yyyy-MM-dd';
     if(this.attrs.type == 'date'){
       type = 'yyyy-MM-dd'
@@ -80,11 +81,36 @@ export default class ByDatePicker extends VueViews {
       type = 'yyyy'
     }else if(this.attrs.type == 'month'){
       type = 'yyyy-MM'
+    }else if(this.attrs.type == 'dates'){
+      type = 'yyyy-MM-dd'
+    }else if(this.attrs.type == 'week'){
+      type = 'yyyy 第 WW 周'
+    }else if(this.attrs.type == 'datetimerange'){
+      type = 'yyyy-MM-dd HH:mm:ss'
+    }else if(this.attrs.type == 'daterange'){
+      type = 'yyyy-MM-dd'
+    }else if(this.attrs.type == 'monthrange'){
+      type = 'yyyy-MM'
     }
-    if(this.attrs.format){
-      type = this.attrs.format;
+
+    if(this.attrs.type == 'dates' 
+    || this.attrs.type == 'datetimerange' 
+    || this.attrs.type == 'daterange' 
+    || this.attrs.type == 'monthrange'){
+      if(v && v.constructor == Array){
+        val = []
+        for(const item of v){
+          val.push(Format(item,type))
+        }
+      }else{
+        val = Format(v,type);
+      }
+      
+    }else{
+      val = Format(v,type)
     }
-    return Format(this.value,type)
+    
+    return val;
   }
 
   onChange(){

+ 8 - 5
src/benyun/components/byTool/byTool.vue

@@ -7,15 +7,15 @@
         :key="index" 
         size="small" 
         v-hasPermi="[item.audit]" 
-        @click="clickBtn(item)">
+        @click="clickHandle(item)">
         {{ item.name }}
       </el-button>
       <slot name="tool-left" />
     </div>
     
     <div class="tool-right">
-      <el-tooltip class="item" effect="dark" :content="!openSearch ? '隐藏搜索' : '显示搜索'" placement="top">
-        <el-button :icon="openSearch?'el-icon-search':'el-icon-zoom-out'" size="small" circle v-if="propTools.search" @click="toggleSearch"></el-button>
+      <el-tooltip class="item" effect="dark" :content="openSearch ? '隐藏搜索' : '显示搜索'" placement="top">
+        <el-button :icon="openSearch?'el-icon-search':'el-icon-minus'" size="small" circle v-if="propTools.search" @click="toggleSearch"></el-button>
       </el-tooltip>
       <el-tooltip class="item" effect="dark" content="刷新" placement="top">
         <el-button icon="el-icon-refresh" size="small" circle v-if="propTools.refresh" @click="refresh"></el-button>
@@ -51,7 +51,7 @@ export default class GmTools extends Vue {
     { name: '修改', icon: 'el-icon-edit', clickName: 'onUpdate', _class: 'edit' },
     { name: '删除', icon: 'el-icon-delete', clickName: 'onDelete', _class: 'delete' },
     { name: '导出', icon: 'el-icon-download', clickName: 'onExport', _class: 'export' },
-    { name: '刷新', icon: 'el-icon-refresh', clickName: 'onRefresh', _class: 'refresh' }
+    // { name: '刷新', icon: 'el-icon-refresh', clickName: 'onRefresh', _class: 'refresh' }
   ]
   showTools:Array<any>=[]
 
@@ -88,10 +88,11 @@ export default class GmTools extends Vue {
   }
   //点击搜索
   toggleSearch(){
+    this.openSearch = !this.openSearch;
     this.$emit('searchHandle')
   }
 
-  clickBtn(item:any){
+  clickHandle(item:any){
     if(item?.event?.click){
       item.event.click()
     }else{
@@ -113,6 +114,8 @@ export default class GmTools extends Vue {
   }
   .tool-right{
     flex-shrink: 0;
+    display: flex;
+    align-items: center;
   }
 }
 </style>

+ 4 - 3
src/views/demo/form.vue

@@ -94,8 +94,8 @@ export default class DemoForm extends Vue {
         ],
         component:'by-date-picker',
         compConfig:{
-          format:'yyyy-MM-dd',
-          type:'date'
+          format:'yyyy-MM-dd HH:mm:ss',
+          type:'datetime'
         }
       },{
         span:6,
@@ -112,7 +112,8 @@ export default class DemoForm extends Vue {
       edit:true,
       delete:true,
       export:true,
-      search:true
+      search:true,
+      refresh:true
     },
     audit:{
       add:'audit:collaborationLog:add',