Shannon_mu 3 năm trước cách đây
mục cha
commit
a39a925a15

+ 5 - 1
operationSupport/src/views/patrolManagement/popups/scheduling.vue

@@ -33,7 +33,11 @@
                     </template>
                     <div
                         class="pointSet"
-                        v-if="date.getTime() >= new Date(new Date().toLocaleDateString()).getTime() && !trueArr.includes(data.day)"
+                        v-if="
+                            date.getTime() <= $moment($parent.thisObj.endDate).valueOf() &&
+                            date.getTime() >= new Date(new Date().toLocaleDateString()).getTime() &&
+                            !trueArr.includes(data.day)
+                        "
                         @click="add(data)"
                     >
                         点击设置

+ 32 - 20
operationSupport/src/views/patrolManagement/popups/schedulingAdd.vue

@@ -1,11 +1,5 @@
 <template>
-    <el-form
-        class="timeNewStyle"
-        label-width="100px"
-        :model="formData"
-        :rules="formRules"
-        ref="formRu"
-    >
+    <el-form class="timeNewStyle" label-width="100px" :model="formData" :rules="formRules" ref="formRu">
         <el-form-item label="巡更日期" v-if="!params.isSingle" prop="partrolDate">
             <el-date-picker
                 v-model="formData.partrolDate"
@@ -13,10 +7,11 @@
                 type="daterange"
                 start-placeholder="开始日期"
                 end-placeholder="结束日期"
+                :picker-options="pickerOptions"
             ></el-date-picker>
         </el-form-item>
         <el-form-item label="巡更日期" v-else>{{ thisDay.day | dateText }}</el-form-item>
-        <template v-for="(item,index) in timePeriod">
+        <template v-for="(item, index) in timePeriod">
             <el-form-item :label="item.partrolTime" :key="index">
                 <el-cascader
                     :ref="`userName${index}`"
@@ -33,6 +28,7 @@
 export default {
     props: ['params'],
     data() {
+        const _this = this;
         return {
             timePeriod: [],
             findUser: [],
@@ -48,6 +44,13 @@ export default {
             },
             formRules: {
                 partrolDate: [this.$valid.selectRequired('时间段')]
+            },
+            pickerOptions: {
+                disabledDate(time) {
+                    let startDate = _this.$moment(_this.params.thisObj.startDate).valueOf();
+                    let endDate = _this.$moment(_this.params.thisObj.endDate).valueOf();
+                    return time.getTime() > endDate || time.getTime() < startDate;
+                }
             }
         };
     },
@@ -68,7 +71,7 @@ export default {
         },
         submit() {
             if (!this.params.isSingle) {
-                this.$refs['formRu'].validate(valid => {
+                this.$refs['formRu'].validate((valid) => {
                     if (valid) {
                         this.add();
                     }
@@ -85,21 +88,30 @@ export default {
                 periodType: data.periodType,
                 periodValue: data.periodValue,
                 rosterUserDtos: this.timePeriod,
-                partrolDate: this.thisDay.day
+                partrolDate: this.thisDay.day,
+                startDate: data.startDate,
+                endDate: data.endDate
             };
             if (!this.params.isSingle) {
                 initData.partrolDate = this.formData.partrolDate[0];
                 initData.partrolEndDate = this.formData.partrolDate[1];
             }
-            this.$http.post('/sc-community/patrolRoute/roster', initData).then(({ data, status, msg }) => {
-                if (status == 0) {
-                    this.$message.success(msg);
-                    this.params.callback();
-                    this.$emit('close');
-                } else {
-                    this.$message.error(msg);
-                }
-            });
+            var loading = this.$loading();
+            this.$http
+                .post('/sc-community/patrolRoute/roster', initData)
+                .then(({ data, status, msg }) => {
+                    if (status == 0) {
+                        this.$message.success(msg);
+                        this.params.callback();
+                        this.$emit('close');
+                    } else {
+                        this.$message.error(msg);
+                    }
+                    loading.close();
+                })
+                .catch(() => {
+                    loading.close();
+                });
         }
     },
     created() {
@@ -112,7 +124,7 @@ export default {
         }
         if (!!this.params.thisObj) {
             let arrs = this.params.thisObj.timePeriod.split(',');
-            arrs.map(item => {
+            arrs.map((item) => {
                 this.timePeriod.push({
                     partolName: '',
                     partolUserId: '',

+ 1 - 1
operationSupport/src/views/workOrders/records.vue

@@ -13,7 +13,7 @@
             </el-select>
             <el-date-picker
                 v-model="times"
-                value-format="yyyy-MM-dd"
+                value-format="yyyyMMdd"
                 type="daterange"
                 range-separator="至"
                 start-placeholder="报修开始日期"