工单分配,维修人员,报修详情
This commit is contained in:
@@ -6,44 +6,41 @@
|
||||
<view
|
||||
@click="handleClick"
|
||||
class="search_view flex-center"
|
||||
v-if="!queryParmas.value.trim() && Searching"
|
||||
v-if="!queryParmas.keyword.trim() && Searching"
|
||||
>
|
||||
<uni-icons type="search" size="34rpx" color="rgba(0,0,0,0.26)"></uni-icons>
|
||||
<text>请输入关键字进行搜索</text>
|
||||
</view>
|
||||
<uni-easyinput
|
||||
@blur="handleInput"
|
||||
@change="handleSearch"
|
||||
@confirm="handleSearch"
|
||||
@clear="handleClear"
|
||||
@input="handleClear"
|
||||
:focus="true"
|
||||
ref="inputRef"
|
||||
v-model="queryParmas.value"
|
||||
v-model="queryParmas.keyword"
|
||||
v-else
|
||||
/>
|
||||
</view>
|
||||
<!-- 已经选择人数 -->
|
||||
<view class="checkoutedUser_box">
|
||||
<text>已选({{ checkoutUserid ? 1 : 0 }}/1)</text>
|
||||
<text class="checkoutUseName" v-if="checkoutInfo">{{ checkoutInfo.name }}</text>
|
||||
<text class="checkoutUseName" v-if="checkoutInfo">{{ checkoutInfo.nickName }}</text>
|
||||
</view>
|
||||
<!-- srcoll -->
|
||||
<scroll-view
|
||||
scroll-y="true"
|
||||
class="flex-1 overflow-auto"
|
||||
lower-threshold="60"
|
||||
@scrolltolower="scrolltolower"
|
||||
>
|
||||
<scroll-view scroll-y="true" class="flex-1 overflow-auto">
|
||||
<radio-group @change="radioChange">
|
||||
<label v-for="(item, index) in searchlist" :key="index">
|
||||
<view
|
||||
class="item flex items-center justify-between"
|
||||
:class="{
|
||||
active: checkoutUserid === item.id
|
||||
active: checkoutUserid === item.userId
|
||||
}"
|
||||
>
|
||||
<view class="">
|
||||
<view class="info">
|
||||
<text>姓名:</text>
|
||||
<text>{{ item.name }}</text>
|
||||
<text>{{ item.nickName }}</text>
|
||||
</view>
|
||||
<view class="info">
|
||||
<text>角色:</text>
|
||||
@@ -51,10 +48,10 @@
|
||||
</view>
|
||||
<view class="info">
|
||||
<text>手机号码:</text>
|
||||
<text>{{ item.phone }}</text>
|
||||
<text>{{ item.phonenumber }}</text>
|
||||
</view>
|
||||
</view>
|
||||
<radio color="#4d5dfa" :value="item.id" />
|
||||
<radio color="#4d5dfa" :value="item.userId" />
|
||||
</view>
|
||||
</label>
|
||||
</radio-group>
|
||||
@@ -71,6 +68,9 @@
|
||||
<script setup>
|
||||
import { ref, onMounted, getCurrentInstance } from 'vue'
|
||||
import navBar from '@/components/navbar/navbar.vue'
|
||||
import { getSystemUsers_employee } from '@/api/common.js'
|
||||
import { onShow } from '@dcloudio/uni-app'
|
||||
|
||||
const Searching = ref(true)
|
||||
/** 点击时切换到input,并聚焦 */
|
||||
function handleClick() {
|
||||
@@ -78,73 +78,74 @@ function handleClick() {
|
||||
}
|
||||
/** 判断 失去焦点时 切换回 view */
|
||||
function handleInput() {
|
||||
if (queryParmas.value.value.trim()) {
|
||||
if (queryParmas.value.keyword.trim()) {
|
||||
Searching.value = true
|
||||
resetList()
|
||||
} else {
|
||||
queryParmas.value.keyword = ''
|
||||
Searching.value = false
|
||||
resetList()
|
||||
}
|
||||
}
|
||||
function handleSearch() {
|
||||
if (queryParmas.value.keyword.trim()) {
|
||||
resetList()
|
||||
}
|
||||
}
|
||||
function handleClear() {
|
||||
if (queryParmas.value.keyword.trim() === '') {
|
||||
queryParmas.value.keyword = ''
|
||||
Searching.value = true
|
||||
resetList()
|
||||
}
|
||||
}
|
||||
function handleSearch() {}
|
||||
// -----------------------------------------
|
||||
/* 选择列表 */
|
||||
const searchlist = ref([])
|
||||
|
||||
const queryParmas = ref({
|
||||
pageNum: 1,
|
||||
pageSize: 10,
|
||||
value: ''
|
||||
keyword: '',
|
||||
roleKey: 'repair'
|
||||
})
|
||||
const isLoading = ref(false) // 加载锁
|
||||
const hasMore = ref(true) // 是否还有更多数据
|
||||
const total = ref(21)
|
||||
function scrolltolower() {
|
||||
// 必须加这两个判断!
|
||||
if (isLoading.value || !hasMore.value) {
|
||||
return
|
||||
}
|
||||
queryParmas.value.pageNum += 1
|
||||
getlist()
|
||||
}
|
||||
|
||||
function getlist() {
|
||||
// 1. 如果正在加载或没有更多数据,直接返回
|
||||
if (isLoading.value || !hasMore.value) return
|
||||
if (isLoading.value) return
|
||||
// 2. 开启锁
|
||||
isLoading.value = true
|
||||
uni.showLoading({
|
||||
title: '加载中',
|
||||
mask: true
|
||||
})
|
||||
const { pageNum, pageSize } = queryParmas.value
|
||||
|
||||
const startId = (pageNum - 1) * pageSize + 1
|
||||
const arr = Array.from({ length: pageSize }).map((_, index) => {
|
||||
const realId = startId + index
|
||||
const randomStatus = Math.floor(Math.random() * 3)
|
||||
return {
|
||||
name: '张三' + realId,
|
||||
roleName: '维修人员',
|
||||
phone: '19578012123',
|
||||
id: realId
|
||||
}
|
||||
})
|
||||
// 追加数据(正确方式)
|
||||
searchlist.value = [...searchlist.value, ...arr]
|
||||
// 判断是否还有更多
|
||||
hasMore.value = searchlist.value.length < total.value
|
||||
isLoading.value = false
|
||||
uni.hideLoading()
|
||||
const { keyword, roleKey } = queryParmas.value
|
||||
getSystemUsers_employee(roleKey, keyword)
|
||||
.then(res => {
|
||||
searchlist.value = res.data
|
||||
})
|
||||
.finally(() => {
|
||||
isLoading.value = false
|
||||
uni.hideLoading()
|
||||
})
|
||||
}
|
||||
getlist()
|
||||
|
||||
onShow(() => {
|
||||
resetList()
|
||||
})
|
||||
|
||||
function resetList() {
|
||||
reportRecords.value = []
|
||||
searchlist.value = []
|
||||
queryParmas.value.pageNum = 1
|
||||
hasMore.value = true
|
||||
getlist()
|
||||
}
|
||||
//searchlist----------------------
|
||||
const checkoutUserid = ref(null)
|
||||
const checkoutInfo = ref(null)
|
||||
function radioChange(val) {
|
||||
checkoutUserid.value = Number(val.detail.value)
|
||||
const find = searchlist.value.find(item => item.id === Number(val.detail.value))
|
||||
checkoutUserid.value = val.detail.value
|
||||
const find = searchlist.value.find(item => item.userId === val.detail.value)
|
||||
if (find) {
|
||||
checkoutInfo.value = find
|
||||
}
|
||||
@@ -161,11 +162,13 @@ onMounted(() => {
|
||||
/* 确定派单 */
|
||||
function handleSelecthouse() {
|
||||
// api
|
||||
eventChannel.emit('backData', {
|
||||
checkoutUserid: checkoutUserid.value
|
||||
})
|
||||
// 3. 返回上一页
|
||||
uni.navigateBack()
|
||||
if (eventChannel) {
|
||||
eventChannel.emit('backData', {
|
||||
checkoutUserid: checkoutUserid.value
|
||||
})
|
||||
// 3. 返回上一页
|
||||
uni.navigateBack()
|
||||
}
|
||||
}
|
||||
// ===========================================
|
||||
</script>
|
||||
|
||||
Reference in New Issue
Block a user