Bladeren bron

Merge branch 'wsm' of http://139.196.39.194:9021/chenc/cd-work-flow-web into wsm

jbb 2 jaren geleden
bovenliggende
commit
232a2d60be
4 gewijzigde bestanden met toevoegingen van 196 en 144 verwijderingen
  1. 77 20
      src/views/oa/CarList.vue
  2. 87 52
      src/views/oa/modules/CarModal.vue
  3. 3 45
      src/views/oa/my-plan/add/savePlan.vue
  4. 29 27
      src/views/oa/my-plan/calTable.vue

+ 77 - 20
src/views/oa/CarList.vue

@@ -4,12 +4,62 @@
     <div class="table-page-search-wrapper">
       <a-form layout="inline" @keyup.enter.native="searchQuery">
         <a-row :gutter="24">
-
+          <a-col :xl="6" :lg="7" :md="8" :sm="24">
+            <a-form-item label="登记人" >
+              <a-input v-model="queryParam.registrantPerson" placeholder="请输入登记人"></a-input>
+            </a-form-item>
+          </a-col>
+          <a-col :xl="6" :lg="7" :md="8" :sm="24">
+            <a-form-item label="车牌号" >
+              <a-input v-model="queryParam.number" placeholder="请输入车牌号"></a-input>
+            </a-form-item>
+          </a-col>
+          <template v-if="toggleSearchStatus">
+          <a-col :xl="6" :lg="7" :md="8" :sm="24">
+            <a-form-item label="车辆型号" >
+              <a-select placeholder="请选择车辆型号" v-model="queryParam.carType" >
+                <a-select-option value="轿车">轿车</a-select-option>
+                <a-select-option value="SUV">SUV</a-select-option>
+                <a-select-option value="货车">货车</a-select-option>
+              </a-select>
+            </a-form-item>
+          </a-col>
+          <a-col :xl="6" :lg="7" :md="8" :sm="24">
+            <a-form-item label="品牌" >
+              <a-input v-model="queryParam.carBrand" placeholder="请输入品牌"></a-input>
+            </a-form-item>
+          </a-col>
+          <a-col :xl="6" :lg="7" :md="8" :sm="24">
+            <a-form-item label="发动机号" >
+              <a-input v-model="queryParam.engineNum"  placeholder="请输入发动机号"></a-input>
+            </a-form-item>
+          </a-col>
+          <a-col :xl="6" :lg="7" :md="8" :sm="24">
+            <a-form-item label="车架号" >
+              <a-input v-model="queryParam.vin" placeholder="请输入车架号"></a-input>
+            </a-form-item>
+          </a-col>
+          <a-col :xl="6" :lg="7" :md="8" :sm="24">
+            <a-form-item label="购车时间" >
+              <j-date placeholder="请选择购车时间" v-model="queryParam.purchaseDate"  :trigger-change="true" style="width: 100%"/>
+            </a-form-item>
+          </a-col>
+          </template>
+          <a-col :xl="6" :lg="7" :md="8" :sm="24">
+            <span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
+              <a-button type="primary" @click="searchQuery" icon="search">查询</a-button>
+              <a-button type="primary" @click="searchReset" icon="reload" style="margin-left: 8px">重置</a-button>
+              <a @click="handleToggleSearch" style="margin-left: 8px">
+                {{ toggleSearchStatus ? '收起' : '展开' }}
+                <a-icon :type="toggleSearchStatus ? 'up' : 'down'"/>
+              </a>
+            </span>
+          </a-col>
         </a-row>
       </a-form>
     </div>
     <!-- 查询区域-END -->
-    
+
     <!-- 操作按钮区域 -->
     <div class="table-operator">
       <a-button @click="handleAdd" type="primary" icon="plus">新增</a-button>
@@ -42,7 +92,7 @@
         :pagination="ipagination"
         :loading="loading"
         :rowSelection="{fixed:true,selectedRowKeys: selectedRowKeys, onChange: onSelectChange}"
-        
+
         @change="handleTableChange">
 
         <template slot="htmlSlot" slot-scope="text">
@@ -92,16 +142,18 @@
 
   import { JeecgListMixin } from '@/mixins/JeecgListMixin'
   import CarModal from './modules/CarModal'
-
+  import JDate from '@/components/jeecg/JDate'
   export default {
     name: "CarList",
     mixins:[JeecgListMixin],
     components: {
-      CarModal
+      CarModal,
+      JDate
     },
     data () {
       return {
         description: '车辆信息管理页面',
+        queryParam:{},
         // 表头
         columns: [
           {
@@ -114,25 +166,40 @@
               return parseInt(index)+1;
             }
           },
+          {
+            title:'登记人',
+            align:"center",
+            dataIndex: 'registrantPerson'
+          },
+          {
+            title:'登记部门',
+            align:"center",
+            dataIndex: 'registrantDepart'
+          },
           {
             title:'车牌号',
             align:"center",
             dataIndex: 'number'
           },
           {
-            title:'车辆类型',
+            title:'车辆型',
             align:"center",
             dataIndex: 'carType'
           },
           {
-            title:'能源类型',
+            title:'品牌',
             align:"center",
-            dataIndex: 'energyType'
+            dataIndex: 'carBrand'
           },
           {
-            title:'座位数量',
+            title:'发动机号',
             align:"center",
-            dataIndex: 'seat'
+            dataIndex: 'engineNum'
+          },
+          {
+            title:'车架号',
+            align:"center",
+            dataIndex: 'vin'
           },
           {
             title:'购买价格',
@@ -147,16 +214,6 @@
               return !text?"":(text.length>10?text.substr(0,10):text)
             }
           },
-          {
-            title:'发动机号码',
-            align:"center",
-            dataIndex: 'engineNum'
-          },
-          {
-            title:'车架号',
-            align:"center",
-            dataIndex: 'vin'
-          },
           {
             title: '操作',
             dataIndex: 'action',

+ 87 - 52
src/views/oa/modules/CarModal.vue

@@ -9,39 +9,68 @@
     cancelText="关闭">
     <a-spin :spinning="confirmLoading">
       <a-form :form="form">
+        <a-col :span="8">
+          <a-form-item label="登记人" :labelCol="labelCol" :wrapperCol="wrapperCol">
+            <a-input :disabled=true v-decorator="[ 'registrantPerson', validatorRules.registrantPerson]" placeholder="请输入登记人"></a-input>
+          </a-form-item>
+        </a-col>
+        <a-col :span="8">
+          <a-form-item label="登记部门" :labelCol="labelCol" :wrapperCol="wrapperCol">
+            <a-input :disabled=true v-decorator="[ 'registrantDepart', validatorRules.registrantDepart]" placeholder="请输入登记部门"></a-input>
+          </a-form-item>
+        </a-col>
+        <a-col :span="8">
+          <a-form-item label="车牌号" :labelCol="labelCol" :wrapperCol="wrapperCol">
+            <a-input v-decorator="[ 'number', validatorRules.number]" placeholder="请输入车牌号"></a-input>
+          </a-form-item>
+        </a-col>
+        <a-col :span="8">
+          <a-form-item label="车辆型号" :labelCol="labelCol" :wrapperCol="wrapperCol">
+            <a-select placeholder="请选择车辆型号" v-decorator="[ 'carType', validatorRules.carType]" >
+              <a-select-option value="轿车">轿车</a-select-option>
+              <a-select-option value="SUV">SUV</a-select-option>
+              <a-select-option value="货车">货车</a-select-option>
+            </a-select>
+          </a-form-item>
+        </a-col>
+        <a-col :span="8">
+          <a-form-item label="品牌" :labelCol="labelCol" :wrapperCol="wrapperCol">
+            <a-input v-decorator="[ 'carBrand', validatorRules.carBrand]" placeholder="请输入品牌"></a-input>
+          </a-form-item>
+        </a-col>
+        <a-col :span="8">
+          <a-form-item label="发动机号" :labelCol="labelCol" :wrapperCol="wrapperCol">
+            <a-input v-decorator="[ 'engineNum', validatorRules.engineNum]" placeholder="请输入发动机号"></a-input>
+          </a-form-item>
+        </a-col>
+        <a-col :span="8">
+          <a-form-item label="车架号" :labelCol="labelCol" :wrapperCol="wrapperCol">
+            <a-input v-decorator="[ 'vin', validatorRules.vin]" placeholder="请输入车架号" ></a-input>
+          </a-form-item>
+        </a-col>
+        <a-col :span="8">
+          <a-form-item label="购车时间" :labelCol="labelCol" :wrapperCol="wrapperCol">
+            <j-date placeholder="请选择购车时间" v-decorator="[ 'purchaseDate', validatorRules.purchaseDate]" :trigger-change="true"></j-date>
+          </a-form-item>
+        </a-col>
+        <a-col :span="8">
+          <a-form-item label="购车价格" :labelCol="labelCol" :wrapperCol="wrapperCol">
+            <a-input-number v-decorator="[ 'price', validatorRules.price]" placeholder="请输入购车价格" style="width: 100%"></a-input-number>
+          </a-form-item>
+        </a-col>
 
-        <a-form-item label="车牌号" :labelCol="labelCol" :wrapperCol="wrapperCol">
-          <a-input v-decorator="[ 'number', validatorRules.number]" placeholder="请输入车牌号"></a-input>
-        </a-form-item>
-        <a-form-item label="车辆类型" :labelCol="labelCol" :wrapperCol="wrapperCol">
-          <a-select placeholder="请选择车辆类型" v-decorator="[ 'carType', validatorRules.carType]" >
-            <a-select-option value="中巴">中巴</a-select-option>
-            <a-select-option value="轿车">轿车</a-select-option>
-            <a-select-option value="大巴">大巴</a-select-option>
-          </a-select>
-        </a-form-item>
-        <a-form-item label="能源类型" :labelCol="labelCol" :wrapperCol="wrapperCol">
-          <a-select placeholder="请选择能源类型" v-decorator="[ 'energyType', validatorRules.energyType]" >
-            <a-select-option value="燃油">燃油</a-select-option>
-            <a-select-option value="电能源">电能源</a-select-option>
-          </a-select>
-        </a-form-item>
-        <a-form-item label="座位数量" :labelCol="labelCol" :wrapperCol="wrapperCol">
-          <a-input v-decorator="[ 'seat', validatorRules.seat]" placeholder="请输入座位数量"></a-input>
-        </a-form-item>
-        <a-form-item label="购买价格" :labelCol="labelCol" :wrapperCol="wrapperCol">
-          <a-input-number v-decorator="[ 'price', validatorRules.price]" placeholder="请输入购买价格" style="width: 100%"/>
-        </a-form-item>
-        <a-form-item label="购置日期" :labelCol="labelCol" :wrapperCol="wrapperCol">
-          <j-date placeholder="请选择购置日期" v-decorator="[ 'purchaseDate', validatorRules.purchaseDate]" :trigger-change="true" style="width: 100%"/>
-        </a-form-item>
-        <a-form-item label="发动机号码" :labelCol="labelCol" :wrapperCol="wrapperCol">
-          <a-input v-decorator="[ 'engineNum', validatorRules.engineNum]" placeholder="请输入发动机号码"></a-input>
-        </a-form-item>
-        <a-form-item label="车架号" :labelCol="labelCol" :wrapperCol="wrapperCol">
-          <a-input v-decorator="[ 'vin', validatorRules.vin]" placeholder="请输入车架号"></a-input>
-        </a-form-item>
 
+        <a-col :span="24">
+          <a-form-item label="备注" :labelCol="labelCol" :wrapperCol="wrapperCol">
+            <a-input v-decorator="[ 'remark', validatorRules.remark]" placeholder="请输入备注"></a-input>
+          </a-form-item>
+        </a-col>
+
+        <a-col :span="24">
+          <a-form-item label="文件" :labelCol="labelCol" :wrapperCol="wrapperCol">
+            <j-upload v-decorator="['accesory', validatorRules.accesory]" :trigger-change="true"></j-upload>
+          </a-form-item>
+        </a-col>
       </a-form>
     </a-spin>
   </a-modal>
@@ -52,18 +81,21 @@
   import { httpAction } from '@/api/manage'
   import pick from 'lodash.pick'
   import { validateDuplicateValue } from '@/utils/util'
-  import JDate from '@/components/jeecg/JDate'  
+  import JDate from '@/components/jeecg/JDate'
+  import {mapGetters} from 'vuex'
+  import JUpload from '@/components/jeecg/JUpload'
 
   export default {
     name: "CarModal",
-    components: { 
+    components: {
       JDate,
+      JUpload
     },
     data () {
       return {
         form: this.$form.createForm(this),
         title:"操作",
-        width:800,
+        width:1300,
         visible: false,
         model: {},
         labelCol: {
@@ -76,24 +108,28 @@
         },
         confirmLoading: false,
         validatorRules: {
-          number: {rules: [
-          ]},
-          carType: {rules: [
-          ]},
-          energyType: {rules: [
-          ]},
-          seat: {rules: [
+          registrantPerson: {rules: [{ required: true, message: '不能为空!' }
+            ]},
+          registrantDepart: {rules: [{ required: true, message: '不能为空!' }
+            ]},
+          carBrand: {rules: [{ required: true, message: '不能为空!' }
+            ]},
+          engineNum: {rules: [{ required: true, message: '不能为空!' }
+            ]},
+          number: {rules: [{ required: true, message: '不能为空!' }
           ]},
-          price: {rules: [
+          carType: {rules: [{ required: true, message: '不能为空!' }
           ]},
-          purchaseDate: {rules: [
+          price: {rules: [{ required: true, message: '不能为空!' }
           ]},
-          engineNum: {rules: [
+          purchaseDate: {rules: [{ required: true, message: '不能为空!' }
           ]},
-          vin: {rules: [
+          vin: {rules: [{ required: true, message: '不能为空!' }
           ]},
+          remark: {rules: [
+            ]},
           accesory: {rules: [
-          ]},
+            ]},
         },
         url: {
           add: "/oa/car/add",
@@ -104,15 +140,16 @@
     created () {
     },
     methods: {
+      ...mapGetters(["nickname", "avatar","userInfo"]),
       add () {
-        this.edit({});
+        this.edit({registrantPerson:this.userInfo().realname,registrantDepart:this.userInfo().deptName});
       },
       edit (record) {
         this.form.resetFields();
         this.model = Object.assign({}, record);
         this.visible = true;
         this.$nextTick(() => {
-          this.form.setFieldsValue(pick(this.model,'number','carType','energyType','seat','price','purchaseDate','engineNum','vin','accesory'))
+          this.form.setFieldsValue(pick(this.model,'registrantPerson','registrantDepart','carBrand','remark','number','carType','price','purchaseDate','engineNum','vin','accesory'))
         })
       },
       close () {
@@ -148,17 +185,15 @@
               that.close();
             })
           }
-         
+
         })
       },
       handleCancel () {
         this.close()
       },
       popupCallback(row){
-        this.form.setFieldsValue(pick(row,'number','carType','energyType','seat','price','purchaseDate','engineNum','vin','accesory'))
+        this.form.setFieldsValue(pick(row,'registrantPerson','registrantDepart','carBrand','remark','number','carType','price','purchaseDate','engineNum','vin','accesory'))
       },
-
-      
     }
   }
 </script>

+ 3 - 45
src/views/oa/my-plan/add/savePlan.vue

@@ -14,35 +14,6 @@
             />
           </a-form-item>
         </a-col>
-
-        <a-col :span="12">
-          <a-form-item label="类型">
-            <a-select
-              v-decorator="['type', { rules: [{ required: false, message: '请选择日程类型' }] }]"
-              placeholder="请选择日程类型"
-              width="100%"
-            >
-              <a-select-option value="日常记录">日常记录</a-select-option>
-              <a-select-option value="本周工作">本周工作</a-select-option>
-              <a-select-option value="下周计划">下周计划</a-select-option>
-            </a-select>
-          </a-form-item>
-        </a-col>
-      </a-row>
-      <!-- 紧急程度 日程时间 -->
-      <a-row :gutter="24">
-        <a-col :span="12">
-          <a-form-item label="紧急程度">
-            <a-select
-              v-decorator="['degreeOfUrgency', { rules: [{ required: false, message: '请选择紧急程度' }] }]"
-              placeholder="请选择紧急程度"
-            >
-              <a-select-option value="一般">一般</a-select-option>
-              <a-select-option value="重要">重要</a-select-option>
-              <a-select-option value="紧急">紧急</a-select-option>
-            </a-select>
-          </a-form-item>
-        </a-col>
         <a-col :span="12">
           <a-form-item label="日程时间">
             <!-- 有 时分秒 -->
@@ -50,7 +21,7 @@
               style="width:100%"
               v-if="isDate == true"
               showTime
-              format="YYYY-MM-DD HH:mm"
+              format="YYYY-MM-DD HH:mm:ss"
               @change="continueTimeChange"
               v-decorator="['continue', { rules: [{ required: true, message: '请选择日程时间' }] }]"
             >
@@ -66,18 +37,6 @@
             </a-range-picker>
           </a-form-item>
         </a-col>
-         <a-col :span="12">
-          <a-form-item label="时间">
-            <!-- 有 时分秒 -->
-            <a-time-picker
-              style="width:100%"
-              showTime
-              @change="continueTimeChange"
-              v-decorator="['planTime', {}]"
-            >
-            </a-time-picker>
-          </a-form-item>
-        </a-col>
       </a-row>
       <a-row :gutter="24">
         <!-- <a-col :span="12">
@@ -180,7 +139,7 @@ export default {
             addForm: this.$form.createForm(this, { name: 'coordinated' }),
             formData: {}, // 表单数据(回显)
             timeList: [], // 开始 + 结束时间
-            isDate: false, // 默认无时分秒
+            isDate: true, // 默认无时分秒
             smallText: '', // 富文本内容
             title: '' // 弹框头部
         }
@@ -235,7 +194,7 @@ export default {
                       ]
                   })
                 }
-                
+
                 this.$refs.JEditor.myValue = this.formData.memo
                 console.log('走到这')
             })
@@ -342,7 +301,6 @@ export default {
                 })
             })
         },
-
         // 日程时间
         continueTimeChange (date, dateString) {
             console.log('date>>>>>>>>>>>>>>>', date)

+ 29 - 27
src/views/oa/my-plan/calTable.vue

@@ -9,17 +9,16 @@
               <a-input placeholder="请输入标题查询" v-model="queryParam.title" />
             </a-form-item>
           </a-col>
-
-          <a-col :md="6" :sm="8">
-            <a-form-item label="类型">
-              <a-select v-model="queryParam.type" placeholder="请选择类型">
-                <a-select-option value="">请选择</a-select-option>
-                <a-select-option value="日常记录">日常记录</a-select-option>
-                <a-select-option value="本周工作">本周工作</a-select-option>
-                <a-select-option value="下周计划">下周计划</a-select-option>
-              </a-select>
-            </a-form-item>
-          </a-col>
+<!--          <a-col :md="6" :sm="8">-->
+<!--            <a-form-item label="类型">-->
+<!--              <a-select v-model="queryParam.type" placeholder="请选择类型">-->
+<!--                <a-select-option value="">请选择</a-select-option>-->
+<!--                <a-select-option value="日常记录">日常记录</a-select-option>-->
+<!--                <a-select-option value="本周工作">本周工作</a-select-option>-->
+<!--                <a-select-option value="下周计划">下周计划</a-select-option>-->
+<!--              </a-select>-->
+<!--            </a-form-item>-->
+<!--          </a-col>-->
 
           <a-col :md="6" :sm="8">
             <span style="float: left;overflow: hidden;">
@@ -115,6 +114,7 @@ export default {
     name: 'CalTable',
     components: { JEllipsis, SavePlan },
     data () {
+      let ellipsis = (v, l = 10) => (<j-ellipsis value={v} length={l}/>)
         return {
             tokenHeader: {},
             pagination: {
@@ -135,31 +135,33 @@ export default {
                     dataIndex: 'title',
                     align: 'center'
                 },
-                {
-                    title: '类型',
-                    dataIndex: 'type',
-                    align: 'center'
-                },
-                {
-                    title: '紧急程度',
-                    dataIndex: 'degreeOfUrgency',
-                    align: 'center'
-                },
                 {
                     title: '开始时间',
                     dataIndex: 'startTime',
-                    align: 'center'
+                    align: 'center',
+                    customRender:function (text) {
+                      return !text?"":(text.length>10?text.substr(0,17):text)
+                    },
                 },
                 {
                     title: '结束时间',
                     dataIndex: 'endTime',
-                    align: 'center'
+                    align: 'center',
+                    customRender:function (text) {
+                      return !text?"":(text.length>10?text.substr(0,17):text)
+                    },
                 },
                 {
-                    title: '操作',
-                    dataIndex: 'operation',
-                    scopedSlots: { customRender: 'operationSlot' },
-                    align: 'center'
+                  title: '事项内容',
+                  dataIndex: 'memo',
+                  customRender: (l) => ellipsis(l),
+                  align: 'center'
+                },
+                {
+                  title: '操作',
+                  dataIndex: 'operation',
+                  scopedSlots: { customRender: 'operationSlot' },
+                  align: 'center'
                 }
             ]
             // selectedRowKeys: ''