From def7a94103b1c68110dcfc2a7ceba3021a22a24f Mon Sep 17 00:00:00 2001 From: Mr.Zhang <710666463@qq.com> Date: 星期四, 07 九月 2023 15:35:34 +0800 Subject: [PATCH] 小程序 --- minipro_standard/pages/selectWorkOrder/selectWorkOrder.vue | 437 ++++++++++++++++++++++++++---------------------------- 1 files changed, 213 insertions(+), 224 deletions(-) diff --git a/minipro_standard/pages/selectWorkOrder/selectWorkOrder.vue b/minipro_standard/pages/selectWorkOrder/selectWorkOrder.vue index e6800a4..74ba8b9 100644 --- a/minipro_standard/pages/selectWorkOrder/selectWorkOrder.vue +++ b/minipro_standard/pages/selectWorkOrder/selectWorkOrder.vue @@ -8,10 +8,12 @@ <div class="Search_item_label">璁″垝鏃ユ湡</div> <div class="Search_item_content" @click="isOpenDate=true"> <div class="Search_item_content_a" :style="form.startDate ? 'color: #000;' : ''"> - {{ form.startDate ? form.startDate : '寮�濮嬫棩鏈�'}}</div> + {{ form.startDate ? form.startDate : '寮�濮嬫棩鏈�'}} + </div> <span>-</span> <div class="Search_item_content_a" :style="form.endDate ? 'color: #000;' : ''"> - {{ form.endDate ? form.endDate : '缁撴潫鏃ユ湡'}}</div> + {{ form.endDate ? form.endDate : '缁撴潫鏃ユ湡'}} + </div> </div> </div> </template> @@ -19,239 +21,226 @@ <div class="content_search_x"></div> <v-LableSelection :TagList="tagList" :isShow="true" @change="clickTag"></v-LableSelection> </div> - <div class="content_total">鍏眥{page.total}}鏉℃暟鎹�</div> - <div class="content_list"> - <u-list @scrolltolower="scrolltolower" @scrolltoupper="scrolltoupper"> - <u-list-item v-for="(item, i) in list" :key="i"> - <div class="content_list_item" @click="jump(item)"> - <div class="content_list_item_top"> - <div class="content_list_item_top_left"> - <span v-if="item.mmodel">{{item.mmodel.name}} | {{item.procedureName}}</span> - <div class="content_list_item_top_left_tag" v-if="item.urgent">浼樺厛{{item.urgent}}</div> - <div class="content_list_item_top_left_tagW" v-if="item.paused === 1">鍋�</div> - </div> - <div class="content_list_item_top_right"> - <span class="yellow" v-if="item.status === 0">宸插垱寤�</span> - <span class="green" v-if="item.status === 1">宸插鏂�</span> - <span v-if="item.status === 2">宸插畬宸�</span> - <span class="purple" v-if="item.status === 3">宸叉楠�</span> - <span v-if="item.status === 4">宸叉姤宸�</span> - <span v-if="item.status === 5">宸插叆搴�</span> - <span v-if="item.status === 6">宸插彇娑�</span> - </div> - </div> - <span>宸ュ崟缂栫爜: {{item.code}}</span> - <div class="content_list_item_content"> - <div class="content_list_item_content_item"> - <div class="content_list_item_content_item_label">鐗╂枡缂栫爜锛�</div> - <div class="content_list_item_content_item_nr" v-if="item.mmodel">{{item.mmodel.code}} - </div> - </div> - <div class="content_list_item_content_item"> - <div class="content_list_item_content_item_label">璁″垝寮�宸ワ細</div> - <div class="content_list_item_content_item_nr">{{item.planDate}}</div> - </div> - <div class="content_list_item_content_item"> - <div class="content_list_item_content_item_label">鐢熶骇鎵规锛�</div> - <div class="content_list_item_content_item_nr">{{item.batch}}</div> - </div> - <div class="content_list_item_content_item"> - <div class="content_list_item_content_item_label">璁″垝鏁伴噺锛�</div> - <div class="content_list_item_content_item_nr" v-if="item.umodel"> - {{item.planNum}}{{item.umodel.name}}</div> - </div> - <div class="content_list_item_content_item"> - <div class="content_list_item_content_item_label">鐢熶骇璁惧锛�</div> - <div class="content_list_item_content_item_nr" v-if="item.pgmodel">{{item.pgmodel.name}} - </div> - </div> - <div class="content_list_item_content_item" v-if="item.status === 5"> - <div class="content_list_item_content_item_label">瀹屽伐鏁伴噺锛�</div> - <div class="content_list_item_content_item_nr">{{item.proNum}}</div> - </div> - </div> - </div> - </u-list-item> - </u-list> + <div class="content_total">鍏眥{page.total}}鏉℃暟鎹�</div> + <div class="content_list"> + <scroll-view scroll-y="true" refresher-enabled="true" :refresher-triggered="refreshing" + @scrolltolower="loadMore" @refresherrefresh="onRefresh" :style="{height: height}"> + <div class="content_list_item" v-for="(item, i) in list" :key="i" @click="jump(item)"> + <div class="content_list_item_top"> + <div class="content_list_item_top_left"> + <span v-if="item.mmodel">{{item.mmodel.name}} | {{item.procedureName}}</span> + <div class="content_list_item_top_left_tag" v-if="item.urgent">浼樺厛{{item.urgent}}</div> + <div class="content_list_item_top_left_tagW" v-if="item.paused === 1">鍋�</div> + </div> + <div class="content_list_item_top_right"> + <span class="yellow" v-if="item.status === 0">宸插垱寤�</span> + <span class="green" v-if="item.status === 1">宸插鏂�</span> + <span v-if="item.status === 2">宸插畬宸�</span> + <span class="purple" v-if="item.status === 3">宸叉楠�</span> + <span v-if="item.status === 4">宸叉姤宸�</span> + <span v-if="item.status === 5">宸插叆搴�</span> + <span v-if="item.status === 6">宸插彇娑�</span> + </div> + </div> + <span>宸ュ崟缂栫爜: {{item.code}}</span> + <div class="content_list_item_content"> + <div class="content_list_item_content_item"> + <div class="content_list_item_content_item_label">鐗╂枡缂栫爜锛�</div> + <div class="content_list_item_content_item_nr" v-if="item.mmodel">{{item.mmodel.code}} + </div> + </div> + <div class="content_list_item_content_item"> + <div class="content_list_item_content_item_label">璁″垝寮�宸ワ細</div> + <div class="content_list_item_content_item_nr">{{item.planDate}}</div> + </div> + <div class="content_list_item_content_item"> + <div class="content_list_item_content_item_label">鐢熶骇鎵规锛�</div> + <div class="content_list_item_content_item_nr">{{item.batch}}</div> + </div> + <div class="content_list_item_content_item"> + <div class="content_list_item_content_item_label">璁″垝鏁伴噺锛�</div> + <div class="content_list_item_content_item_nr" v-if="item.umodel"> + {{item.planNum}}{{item.umodel.name}} + </div> + </div> + <div class="content_list_item_content_item"> + <div class="content_list_item_content_item_label">鐢熶骇璁惧锛�</div> + <div class="content_list_item_content_item_nr" v-if="item.pgmodel">{{item.pgmodel.name}} + </div> + </div> + <div class="content_list_item_content_item" v-if="item.status === 5"> + <div class="content_list_item_content_item_label">瀹屽伐鏁伴噺锛�</div> + <div class="content_list_item_content_item_nr">{{item.proNum}}</div> + </div> + </div> + </div> + </scroll-view> </div> <!-- <van-pull-refresh v-model="refreshing" @refresh="onRefresh"> <van-list v-model:loading="loading" :finished="finished" finished-text="娌℃湁鏇村浜唦" @load="onLoad"> </van-list> - </van-pull-refresh> --> - <u-calendar :show="isOpenDate" mode="range" @close="isOpenDate=false" @confirm="onConfirm"></u-calendar> - <!-- <van-calendar v-model:show="isOpenDate" type="range" :min-date="minDate" :max-date="maxDate" color="#4275FC" - @confirm="onConfirm" /> --> - <!-- <v-ScanCode - :openCode="openCode" - :infos="['绗竴娆℃壂鐮�']" - @closePopup="closePopup" - @onDecode="onDecode"> - </v-ScanCode> --> + </van-pull-refresh> --> + + <l-calendar :lunar="false" v-model="isOpenDate" @change="onConfirm" :isRange="true" activeBgColor="#305ED5" + rangeColor="#305ED5" rangeBgColor="rgba(48, 80, 213, 0.1)"></l-calendar> + </view> </template> -<script> - import vSearch from '@/components/Search.vue' - import vLableSelection from '@/components/LabelSelection.vue' - import { gsdate } from '@/util/utils' - export default { - components: { - vSearch, - vLableSelection +<script> + import vSearch from '@/components/Search.vue' + import vLableSelection from '@/components/LabelSelection.vue' + import { + gsdate + } from '@/util/utils' + import { + getList, + pageCount + } from '@/util/api/WorkOrderAPI' + export default { + components: { + vSearch, + vLableSelection }, data() { return { - status: true, - isOpenDate: false, - // tagList: [1,2,3], - form: { - startDate: '', - endDate: '' - }, - list: [ - { - mmodel: { name: 'adsa', }, - mmodel: { code: 'wl-001' }, - umodel: { name: '鍚�' }, - pgmodel: { name: '娑插帇鏈�' }, - procedureName: '鍘嬪埗', - urgent: 10, - paused: 0, - status: 0, - code: '00100', - planDate: '2023-08-30', - batch: 'kk-yw', - planNum: 300, - proNum: 100, - }, - { - mmodel: { name: 'adsa', }, - mmodel: { code: 'wl-001' }, - umodel: { name: '鍚�' }, - pgmodel: { name: '娑插帇鏈�' }, - procedureName: '鍘嬪埗', - urgent: 10, - paused: 0, - status: 1, - code: '00100', - planDate: '2023-08-30', - batch: 'kk-yw', - planNum: 300, - proNum: 100 - }, - { - mmodel: { name: 'adsa', }, - mmodel: { code: 'wl-001' }, - umodel: { name: '鍚�' }, - pgmodel: { name: '娑插帇鏈�' }, - procedureName: '鍘嬪埗', - urgent: 10, - paused: 0, - status: 2, - code: '00100', - planDate: '2023-08-30', - batch: 'kk-yw', - planNum: 300, - proNum: 100, - }, - { - mmodel: { name: 'adsa', }, - mmodel: { name: '鐗╂枡001', code: 'wl-001' }, - umodel: { name: '鍚�' }, - pgmodel: { name: '娑插帇鏈�' }, - procedureName: '鍘嬪埗', - urgent: 10, - paused: 0, - status: 3, - code: '00100', - planDate: '2023-08-30', - batch: 'kk-yw', - planNum: 300, - proNum: 100, - }, - { - mmodel: { name: 'adsa', }, - mmodel: { code: 'wl-001' }, - umodel: { name: '鍚�' }, - pgmodel: { name: '娑插帇鏈�' }, - procedureName: '鍘嬪埗', - urgent: 10, - paused: 0, - status: 4, - code: '00100', - planDate: '2023-08-30', - batch: 'kk-yw', - planNum: 300, - proNum: 100, - }, - { - mmodel: { name: 'adsa', }, - mmodel: { code: 'wl-001' }, - umodel: { name: '鍚�' }, - pgmodel: { name: '娑插帇鏈�' }, - procedureName: '鍘嬪埗', - urgent: 10, - paused: 0, - status: 5, - code: '00100', - planDate: '2023-08-30', - batch: 'kk-yw', - planNum: 300, - proNum: 100, - }, - { - mmodel: { name: 'adsa', }, - mmodel: { code: 'wl-001' }, - umodel: { name: '鍚�' }, - pgmodel: { name: '娑插帇鏈�' }, - procedureName: '鍘嬪埗', - urgent: 10, - paused: 0, - status: 6, - code: '00100', - planDate: '2023-08-30', - batch: 'kk-yw', - planNum: 300, - proNum: 100, - }, - { - mmodel: { name: 'adsa', }, - mmodel: { code: 'wl-001' }, - umodel: { name: '鍚�' }, - pgmodel: { name: '娑插帇鏈�' }, - procedureName: '鍘嬪埗', - urgent: 10, - paused: 0, - status: 7, - code: '00100', - planDate: '2023-08-30', - batch: 'kk-yw', - planNum: 300, - proNum: 100, - }, - ], - page: { - size: 10, - index: 1, - total: 0 + height: '', + status: true, + isOpenDate: false, + refreshing: false, + // tagList: [1,2,3], + tagList: [{ + id: [2,3,7], + name: '鐢熶骇涓�', + num: '' + }], + minDate: '2021-01-01', + maxDate: '', + form: { + startDate: '', + endDate: '', + mixParam: '', + statusList: [] + }, + list: [], + page: { + capacity: 10, + index: 1, + total: 0 } }; - }, - methods: { - reset() {}, - submit() {}, - onConfirm(value) { - const [start, end] = value - this.form.startDate = gsdate(start) - this.form.endDate = gsdate(end) - this.isOpenDate = false - }, - scrolltolower() {}, - scrolltoupper() {}, - jump(item) { - uni.$emit('workOrder', item) - uni.navigateBack() - } + }, + onLoad(opt) { + this.$nextTick(() => { + uni.createSelectorQuery().in(this).select('.content_search').boundingClientRect((rect) => { + this.height = `calc(100vh - ${rect.height + 80}px)` + }).exec() + }) + if (opt.type == '1') { + this.tagList = [{ + id: [0, 1], + name: '寰呯敓浜�', + num: '' + }, + { + id: [2, 3, 7], + name: '鐢熶骇涓�', + num: '' + } + ] + } else { + this.tagList = [{ + id: [2, 3, 7], + name: '鐢熶骇涓�', + num: '' + }] + } + this.maxDate = gsdate(new Date(`${new Date().getFullYear() + 1}-12-30`)) + this.pageCounts() + this.loadData() + }, + methods: { + reset() { + this.form.startDate = '' + this.form.endDate = '' + this.search() + }, + searchInput(val) { + this.form.mixParam = val; + this.search() + }, + clickTag(v) { + this.form.statusList = v + this.search() + }, + submit() { + this.search() + }, + onConfirm(value) { + this.form.startDate = value.startDate + this.form.endDate = value.endDate + this.isOpenDate = false + }, + onRefresh() { + if (this.refreshing) return + this.refreshing = true; + this.search() + }, + loadMore() { + this.page.page += 1 + this.loadData() + }, + search() { + this.page.page = 1 + this.loadData() + }, + loadData() { + getList({ + ...this.page, + model: { + ...this.form, + statusList: this.form.statusList.length === 0 ? this.tagList[0].id : this.form.statusList + } + }) + .then(res => { + let { + data + } = res + if (data.page == 1) { + this.list = [] + } + this.list.push(...data.records) + this.page.total = data.total + this.page.page = data.page + }) + .catch(err => { + + }) + .finally(() => { + this.refreshing = false + }) + }, + pageCounts() { + pageCount({}).then(res => { + if (res.code === 200) { + this.tagList.forEach(item => { + if (item.name == '寰呯敓浜�') { + item.num = res.data.startNum + } + if (item.name == '鐢熶骇涓�') { + item.num = res.data.ingNum + } + if (item.name == '宸插畬鎴�') { + item.num = res.data.endNum + } + }) + } + }) + }, + jump(item) { + uni.$emit('workOrder', item) + uni.navigateBack() + } } } </script> @@ -363,7 +352,7 @@ .content_list { width: 100%; - height: 100%; + // height: 100%; display: flex; flex-direction: column; -- Gitblit v1.9.3