Commit 76062105 authored by Facius's avatar Facius

Merge branch 'dev-1.5.3' into test

parents 2c439c19 6434480e
<!-- ******************* 输入框 ******************* --> <!-- ******************* 输入框 ******************* -->
<template> <template>
<view :style="{'width': fieldsWidth}"> <view :style="{ width: fieldsWidth }" class="input-view-class">
<u-input :type="type" class="input-item" v-model="dataValue" @input="valueChange" :placeholder="placeholder" :placeholder-style="placeholderStyle" <view class="tip-span" v-if="showTip">({{placeholderText}})</view>
:custom-style="customStyle" :clearable="false" :border="border" border-color="#ECECEC" :maxlength="maxlength" :cursor-spacing="10" :disabled="isDisabled" hold-keyboard/> <u-input
:type="type"
class="input-item"
v-model="dataValue"
@input="valueChange"
:placeholder="placeholderText"
:placeholder-style="placeholderStyle"
:custom-style="customStyle"
:clearable="false"
:border="border"
border-color="#ECECEC"
:maxlength="maxlength"
:cursor-spacing="10"
:disabled="isDisabled"
hold-keyboard
@blur="showTip=isESerialNum && dataValue.length < maxlength"
/>
<view class="content" v-if="slotContent"> <view class="content" v-if="slotContent">
<text class="txt">{{ slotContent }}</text> <text class="txt">{{ slotContent }}</text>
</view> </view>
...@@ -10,42 +26,46 @@ ...@@ -10,42 +26,46 @@
</template> </template>
<script> <script>
import stringMixin from './stringMixin' import stringMixin from './stringMixin'
export default { export default {
name: 'XhInput', // 新建 input name: 'XhInput', // 新建 input
components: {}, components: {},
mixins: [stringMixin], mixins: [stringMixin],
props: { props: {
placeholder: { placeholder: {
type: String, type: String,
default: '请输入' default: '请输入',
}, },
item: { item: {
type: Object, type: Object,
default() { default() {
return {} return {}
} },
}, },
type: { type: {
type: String, type: String,
default: 'text' default: 'text',
}, },
slotContent: { slotContent: {
type: String, type: String,
default: '' default: '',
} },
}, },
data() { data() {
return { return {
inputType: 'text' inputType: 'text',
showTip: false,
} }
}, },
computed: { computed: {
isDigit() {
return this.type == 'digit'
},
maxlength() { maxlength() {
return this.type == 'digit' ? 9 : 140 return this.isDigit ? 9 : (this.isESerialNum ? 8 : 140)
}, },
fieldsWidth() { fieldsWidth() {
return this.item.fieldsWidth ? (this.item.fieldsWidth + 'rpx') : '100%' return this.item.fieldsWidth ? this.item.fieldsWidth + 'rpx' : '100%'
}, },
placeholderStyle() { placeholderStyle() {
return 'color:#999999;font-size:26rpx' return 'color:#999999;font-size:26rpx'
...@@ -54,10 +74,10 @@ ...@@ -54,10 +74,10 @@
return { return {
'background-color': this.backgroundColor, 'background-color': this.backgroundColor,
'border-radius': '12rpx', 'border-radius': '12rpx',
'color': '#333333', color: '#333333',
'padding-left': this.textarea ? '0rpx' : '20rpx', 'padding-left': this.textarea ? '0rpx' : '20rpx',
'font-size':'26rpx', 'font-size': '26rpx',
'height': '76rpx' height: '76rpx',
} }
}, },
border() { border() {
...@@ -70,25 +90,44 @@ ...@@ -70,25 +90,44 @@
return this.textarea ? 'transparent' : '#F4F5F7' return this.textarea ? 'transparent' : '#F4F5F7'
}, },
isDisabled() { isDisabled() {
return this.item.fieldsName === 'pipeAmount' || this.disabled ? true : false return this.item.fieldsName === 'pipeAmount' || this.disabled
? true
: false
},
isESerialNum() { // 输入框是交易流水号
return this.item.fieldsName === 'eSerialNum'
},
placeholderText() {
return this.isESerialNum ? '请填写交易流水号后8位数字' : this.placeholder
} }
}, },
watch: {}, watch: {},
mounted() {}, mounted() {},
methods: {} methods: {},
} }
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
.input-item{ .input-view-class {
background: #F4F5F7; position: relative;
} .input-item {
.content { background: #f4f5f7;
}
.content {
padding-top: 20rpx; padding-top: 20rpx;
line-height: 45rpx; line-height: 45rpx;
.txt { .txt {
font-size: 24rpx; font-size: 24rpx;
color: #999; color: #999;
} }
} }
.tip-span {
position: absolute;
font-size: 28rpx;
color: #FA5A49;
left: 190rpx;
top: -74rpx;
}
}
</style> </style>
...@@ -41,6 +41,10 @@ export default { ...@@ -41,6 +41,10 @@ export default {
this.dataValue = val this.dataValue = val
}) })
} }
// 交易流水号到8位就取消提示
if (this.isESerialNum && val.length >= this.maxlength) {
this.showTip = false
}
const data = { const data = {
groupIndex: this.groupIndex, // 左侧菜单下标 groupIndex: this.groupIndex, // 左侧菜单下标
itemIndex: this.itemIndex, //右侧某一项下标 itemIndex: this.itemIndex, //右侧某一项下标
......
...@@ -2,43 +2,55 @@ ...@@ -2,43 +2,55 @@
<view class="card base-item"> <view class="card base-item">
<view class="top-item"> <view class="top-item">
<view class="left"> <view class="left">
<view :class="['tag', {'active': order.orderServiceType == '安装'}]">{{ order.orderServiceType }}</view> <view :class="['tag', { active: order.orderServiceType == '安装' }]">{{
order.orderServiceType
}}</view>
<text class="title">{{ order.categoryName }}</text> <text class="title">{{ order.categoryName }}</text>
</view> </view>
<view class="right">{{ order.orderBusinessTypeText }}</view> <view class="right">{{ order.orderBusinessTypeText }}</view>
</view> </view>
<view class="order-cell"> <view class="order-cell">
<text>工单编号:</text> <text>订单编号:</text>
<text @longpress="handleLongpress(order.orderNumber)">{{ order.orderNumber }}</text> <text @longpress="handleLongpress(order.partnerSerialNumber)">{{
order.partnerSerialNumber
}}</text>
</view> </view>
<view class="order-cell"> <view class="order-cell">
<text>合作厂商:</text> <text>合作厂商:</text>
<text>{{ order.partnerCompanyName }}</text> <text>{{ order.partnerCompanyName }}</text>
</view> </view>
<view class="order-cell">
<text>厂商编号:</text>
<text>{{ order.partnerSerialNumber }}</text>
</view>
<view class="order-cell between-cell"> <view class="order-cell between-cell">
<view class="left"> <view class="left">
<text>客户信息:</text> <text>客户信息:</text>
<text>{{ order.contactName }}</text> <text>{{ order.contactName }}</text>
</view> </view>
<image v-if="showOperate" style="width: 84rpx;height: 56rpx;" :src="phoneIcon" <image
@click="phoneToCustomer(order.contactPhone)"> v-if="showOperate"
style="width: 84rpx;height: 56rpx;"
:src="phoneIcon"
@click="phoneToCustomer(order.contactPhone)"
>
</image> </image>
</view> </view>
<view class="order-cell"> <view class="order-cell">
<text>联系方式:</text> <text>联系方式:</text>
<text>{{ order.contactPhone }}</text> <text>{{ order.contactPhone }}</text>
</view> </view>
<view class="order-cell">
<text>扳手会工单:</text>
<text>{{ order.orderNumber }}</text>
</view>
<view class="between-cell address-cell"> <view class="between-cell address-cell">
<view class="left-address"> <view class="left-address">
<u-icon name="map" size="28"></u-icon> <u-icon name="map" size="28"></u-icon>
<text class="address-txt">{{ formatAddress }}</text> <text class="address-txt">{{ order.customerAddress }}</text>
</view> </view>
<image v-if="showOperate" style="width: 84rpx;height: 56rpx;" :src="navigationIcon" <image
@click="openLocation(order.contactAddress)"></image> v-if="showOperate"
style="width: 84rpx;height: 56rpx;"
:src="navigationIcon"
@click="openLocation(order.contactAddress)"
></image>
</view> </view>
<view v-if="readMore" @click="handleClick(false)" class="read-more-toggle"> <view v-if="readMore" @click="handleClick(false)" class="read-more-toggle">
<u-icon name="arrow-down"></u-icon> <u-icon name="arrow-down"></u-icon>
...@@ -67,48 +79,48 @@ ...@@ -67,48 +79,48 @@
</template> </template>
<script> <script>
export default { export default {
props: { props: {
// 履约记录 // 履约记录
order: { order: {
type: Object, type: Object,
default () { default() {
return {} return {}
} },
}, },
// true 显示「查看更多」按钮, false 显示「点击收起」按钮 // true 显示「查看更多」按钮, false 显示「点击收起」按钮
readMore: { readMore: {
type: Boolean, type: Boolean,
default: true default: true,
}, },
// 可以点击电话和地址 // 可以点击电话和地址
operate: { operate: {
type: Boolean, type: Boolean,
default: true default: true,
}, },
// 显示点击电话和地址 // 显示点击电话和地址
showOperate: { showOperate: {
type: Boolean, type: Boolean,
default: true default: true,
} },
}, },
data() { data() {
return {} return {}
}, },
computed: { computed: {
formatAddress() { // formatAddress() {
let self = this // let self = this
let address = "" // let address = ''
if (self.order) { // if (self.order) {
address = self.order.contactProvinceText || "" // address = self.order.contactProvinceText || ''
address += self.order.contactCityText || "" // address += self.order.contactCityText || ''
address += self.order.contactCommunityText || "" // address += self.order.contactCommunityText || ''
address += self.order.contactStreetText || "" // address += self.order.contactStreetText || ''
address += self.order.contactAddress || "" // address += self.order.contactAddress || ''
} // }
return address // return address
}, // },
phoneIcon() { phoneIcon() {
//self-support/icon/dianhua-0@2x.png //self-support/icon/dianhua-0@2x.png
if (this.operate) { if (this.operate) {
...@@ -131,30 +143,31 @@ ...@@ -131,30 +143,31 @@
if (this.operate) { if (this.operate) {
const latitude = this.order.contactAddressLatitud //res.latitude; const latitude = this.order.contactAddressLatitud //res.latitude;
const longitude = this.order.contactAddressLongitud //res.longitude; const longitude = this.order.contactAddressLongitud //res.longitude;
getApp().track("order_open_location", { address: address }); getApp().track('order_open_location', { address: address })
uni.openLocation({ uni.openLocation({
latitude: Number(latitude), latitude: Number(latitude),
longitude: Number(longitude), longitude: Number(longitude),
success: function() { success: function() {
console.log('success'); console.log('success')
} },
}); })
} }
}, },
phoneToCustomer(phone) { // 联系客户 phoneToCustomer(phone) {
// 联系客户
if (this.operate) { if (this.operate) {
getApp().track("order_make_phone_call", { phone: phone }); getApp().track('order_make_phone_call', { phone: phone })
uni.makePhoneCall({ uni.makePhoneCall({
phoneNumber: phone, //仅为示例 phoneNumber: phone, //仅为示例
complete() {} complete() {},
}); })
this.contactTime() this.contactTime()
} }
}, },
contactTime() { contactTime() {
let self = this let self = this
var data = {} var data = {}
if (this.submitType === "workerAppointment") { if (this.submitType === 'workerAppointment') {
self.$u.api.contactTime(data, this.order.orderId) self.$u.api.contactTime(data, this.order.orderId)
} }
}, },
...@@ -164,19 +177,19 @@ ...@@ -164,19 +177,19 @@
handleLongpress(text) { handleLongpress(text) {
uni.setClipboardData({ uni.setClipboardData({
data: text, data: text,
success: function () { success: function() {
console.log('success'); console.log('success')
} },
}); })
} },
} },
} }
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
.base-item { .base-item {
padding-bottom: 6rpx; padding-bottom: 6rpx;
background-color: #FFFFFF; background-color: #ffffff;
margin-bottom: 20rpx; margin-bottom: 20rpx;
// padding: 30rpx 30rpx 0 30rpx; // padding: 30rpx 30rpx 0 30rpx;
border-radius: 6px; border-radius: 6px;
...@@ -197,12 +210,12 @@ ...@@ -197,12 +210,12 @@
border-radius: 8rpx; border-radius: 8rpx;
font-size: 22rpx; font-size: 22rpx;
font-weight: 500; font-weight: 500;
color: #FFFFFF; color: #ffffff;
line-height: 40rpx; line-height: 40rpx;
background-image: linear-gradient(to right, #FF930D, #FFC174); background-image: linear-gradient(to right, #ff930d, #ffc174);
&.active { &.active {
background-image: linear-gradient(to right, #2272FF, #47ABFF); background-image: linear-gradient(to right, #2272ff, #47abff);
} }
} }
...@@ -220,7 +233,7 @@ ...@@ -220,7 +233,7 @@
text-align: center; text-align: center;
width: 100rpx; width: 100rpx;
height: 40rpx; height: 40rpx;
background: #F4F5F7; background: #f4f5f7;
border-radius: 22rpx; border-radius: 22rpx;
font-size: 22rpx; font-size: 22rpx;
font-weight: 400; font-weight: 400;
...@@ -251,54 +264,52 @@ ...@@ -251,54 +264,52 @@
} }
} }
} }
} }
.read-more-toggle { .read-more-toggle {
text-align: center; text-align: center;
color: #2272FF; color: #2272ff;
font-size: 26rpx; font-size: 26rpx;
margin-top: 30rpx; margin-top: 30rpx;
padding-bottom: 30rpx; padding-bottom: 30rpx;
} }
.read-more-text { .read-more-text {
padding-left: 8rpx; padding-left: 8rpx;
} }
.order-item-more { .order-item-more {
font-size: 26rpx; font-size: 26rpx;
color: #333333; color: #333333;
text-align: right; text-align: right;
.line-view { .line-view {
background-color: #F4F5F7; background-color: #f4f5f7;
height: 2rpx; height: 2rpx;
margin-bottom: 20rpx; margin-bottom: 20rpx;
} }
}
} .order-cell {
.order-cell {
font-size: 26rpx; font-size: 26rpx;
font-weight: 400; font-weight: 400;
color: #333333; color: #333333;
line-height: 48rpx; line-height: 48rpx;
margin-bottom: 10rpx; margin-bottom: 10rpx;
}
} .between-cell {
.between-cell {
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
align-items: center; align-items: center;
} }
.display-cell { .display-cell {
display: flex; display: flex;
} }
.cell-title { .cell-title {
text-align: left; text-align: left;
flex-shrink: 0; flex-shrink: 0;
} }
</style> </style>
...@@ -45,7 +45,7 @@ ...@@ -45,7 +45,7 @@
:src="dizhiImage" :src="dizhiImage"
mode="widthFix" mode="widthFix"
></image> ></image>
<text>{{ formatAddress(orderData) }}</text> <text>{{ orderData.customerAddress }}</text>
</view> </view>
<view v-if="showDistance" class="address-right-view"> <view v-if="showDistance" class="address-right-view">
{{ orderDistance }}km {{ orderDistance }}km
...@@ -128,6 +128,8 @@ export default { ...@@ -128,6 +128,8 @@ export default {
auditResults: {}, // 审核结果 auditResults: {}, // 审核结果
orderBusinessType: 'R', // 业务类型 R 为抢单 orderBusinessType: 'R', // 业务类型 R 为抢单
orderId: '0', // 订单id orderId: '0', // 订单id
partnerSerialNumber: '', // 上游单号
customerAddress: '', // 上游地址
} }
}, },
}, },
...@@ -209,16 +211,16 @@ export default { ...@@ -209,16 +211,16 @@ export default {
infoTexts() { infoTexts() {
return this.isSimple return this.isSimple
? { ? {
orderNumber: { partnerSerialNumber: {
symbol: true, symbol: true,
name: '单编号', name: '单编号',
style: 'font-weight: 450;font-size: 28rpx', style: 'font-weight: 450;font-size: 28rpx',
icon: 'arrow-right', icon: 'arrow-right',
}, },
contactName: { name: '客户信息', content: 'contactPhone' }, contactName: { name: '客户信息', content: 'contactPhone' },
} }
: { : {
orderNumber: { name: '工单编号' }, partnerSerialNumber: { name: '订单编号' },
partnerCompanyName: { name: '合作厂商' }, partnerCompanyName: { name: '合作厂商' },
contactName: { name: '客户信息', content: 'contactPhone' }, contactName: { name: '客户信息', content: 'contactPhone' },
} }
...@@ -497,17 +499,17 @@ export default { ...@@ -497,17 +499,17 @@ export default {
}, 1000) }, 1000)
} }
}, },
formatAddress(order) { // formatAddress(order) {
let address = '' // let address = ''
if (order) { // if (order) {
address = order.contactProvinceText || '' // address = order.contactProvinceText || ''
address += order.contactCityText || '' // address += order.contactCityText || ''
address += order.contactCommunityText || '' // address += order.contactCommunityText || ''
address += order.contactStreetText || '' // address += order.contactStreetText || ''
address += order.contactAddress || '' // address += order.contactAddress || ''
} // }
return address // return address
}, // },
/** /**
* echo distance(116.3896,39.91917,116.3940,39.91726); * echo distance(116.3896,39.91917,116.3940,39.91726);
* 计算两点之间直线距离 * 计算两点之间直线距离
...@@ -549,7 +551,7 @@ export default { ...@@ -549,7 +551,7 @@ export default {
}, },
handleLongpress(key, text) { handleLongpress(key, text) {
// 长按复制单号 // 长按复制单号
if (key == 'orderNumber') { if (key == 'partnerSerialNumber') {
uni.setClipboardData({ uni.setClipboardData({
data: text, data: text,
success: function() { success: function() {
......
<template> <template>
<view class="upload-progress"> <view class="upload-progress">
<view :class="['u-flex', 'suspension', {'error': uploadStatus === 3}]" @click="openpRrogress"> <view :class="['u-flex', 'suspension', {'error': uploadStatus === 3, 'no-active': clicked <= 0}]" @click="openpRrogress">
<view class="progress" v-if="taskCount > 0">{{ uploadPercentage }}%</view> <view class="progress" v-if="taskCount > 0">{{ uploadPercentage }}%</view>
<view class="upload-img" v-if="taskCount === 0"> <view class="upload-img" v-else>
<image class="icon" :src="icon"></image> <image class="icon" :src="icon"></image>
</view> </view>
</view> </view>
...@@ -66,11 +66,13 @@ ...@@ -66,11 +66,13 @@
data() { data() {
return { return {
open: false, open: false,
progressStatus: false progressStatus: false,
clicked: 1
} }
}, },
computed: { computed: {
icon() { icon() {
console.log(process.uniEnv.qn_base_url + 'upload-photo.png')
return process.uniEnv.qn_base_url + 'upload-photo.png' return process.uniEnv.qn_base_url + 'upload-photo.png'
}, },
defaultImg() { defaultImg() {
...@@ -101,7 +103,7 @@ ...@@ -101,7 +103,7 @@
const num = this.uploadSuccess const num = this.uploadSuccess
const total = this.uploadTotal const total = this.uploadTotal
return total > 0 ? Math.floor(Math.round(num / total * 10000) / 100.00) : 0 return total > 0 ? Math.floor(Math.round(num / total * 10000) / 100.00) : 0
} },
}, },
watch: { watch: {
uploadStatus(newValue) { uploadStatus(newValue) {
...@@ -109,13 +111,22 @@ ...@@ -109,13 +111,22 @@
this.$nextTick(() => { this.$nextTick(() => {
this.progressStatus = true this.progressStatus = true
}) })
},
open(val) {
if (val == false) {
this.changeActive()
} }
}, },
},
created() {
this.changeActive()
},
methods: { methods: {
closePopup() { closePopup() {
this.progressStatus = false this.progressStatus = false
}, },
openpRrogress() { openpRrogress() {
this.clicked += 1
this.open = true this.open = true
this.progressStatus = false this.progressStatus = false
setTimeout(() => { setTimeout(() => {
...@@ -124,6 +135,12 @@ ...@@ -124,6 +135,12 @@
}, },
retry() { retry() {
if(this.uploadStatus !== 2) upload.uploadImageTask(this) if(this.uploadStatus !== 2) upload.uploadImageTask(this)
},
changeActive() {
setTimeout(() => {
// 三秒不点击,算失去活跃
this.clicked = Math.max(0, this.clicked - 1)
}, 3000)
} }
} }
} }
...@@ -135,16 +152,20 @@ ...@@ -135,16 +152,20 @@
height: 100%; height: 100%;
.suspension { .suspension {
position: fixed; position: fixed;
right: 5%; right: 20rpx;
bottom: 20%; bottom: 20%;
width: 80rpx; width: 80rpx;
height: 80rpx; height: 80rpx;
border-radius: 50%; border-radius: 50%;
background: #2272FF; background: #2272FF;
z-index: 999; z-index: 999;
opacity: 1;
&.error { &.error {
background: #FA5A49; background: #FA5A49;
} }
&.no-active {
opacity: 0.6;
}
.progress { .progress {
font-size: 24rpx; font-size: 24rpx;
color: #fff; color: #fff;
......
...@@ -236,7 +236,8 @@ export default { ...@@ -236,7 +236,8 @@ export default {
const callBack = (vm, result) => { const callBack = (vm, result) => {
// 后台自动判断入驻流程是否完成,前台通过status确定状态 // 后台自动判断入驻流程是否完成,前台通过status确定状态
if (result && result.record) { if (result && result.record) {
vm.needSettled = result.needSettled // 不返回该字段或返回true代表需要入驻
vm.needSettled = result.needSettled == undefined ? true : result.needSettled
vm.status = Number(result.record.status || '0') vm.status = Number(result.record.status || '0')
// vm.status = 8 // vm.status = 8
} }
......
...@@ -254,7 +254,11 @@ ...@@ -254,7 +254,11 @@
}, },
handleSuperButton() { handleSuperButton() {
if(this.vuex_token) {
this.$u.route({url: 'pages/mine/superLogin/index'}) this.$u.route({url: 'pages/mine/superLogin/index'})
} else {
this.$u.route({url: "pages/login/index"})
}
} }
} }
} }
......
...@@ -318,7 +318,7 @@ ...@@ -318,7 +318,7 @@
.fixed-button { .fixed-button {
position: fixed; position: fixed;
right: 10rpx; right: 20rpx;
bottom: 64rpx; bottom: 64rpx;
} }
......
...@@ -349,7 +349,7 @@ const formType = new Map([ ...@@ -349,7 +349,7 @@ const formType = new Map([
['decimal', ['input', 'digit']], ['decimal', ['input', 'digit']],
['double', ['input', 'digit']], ['double', ['input', 'digit']],
['integer', ['input', 'digit']], ['integer', ['input', 'digit']],
['string', ['input', 'text']], ['string', ['input', 'number']],
['jscode', ['input', 'text']], ['jscode', ['input', 'text']],
['multiinput', ['multiinput', 'text']], ['multiinput', ['multiinput', 'text']],
['select', ['select', 'text']], ['select', ['select', 'text']],
...@@ -833,7 +833,8 @@ export default { ...@@ -833,7 +833,8 @@ export default {
if (ele.required) { if (ele.required) {
panelResult.required++ panelResult.required++
let value = this.form[ele.fieldsName] let value = this.form[ele.fieldsName]
if (value && !Array.isArray(value)) { // "ele.fieldsName != 'eSerialNum' || value.length == 8" 意思是: "非付款流水号 || 8位付款流水号"
if (value && !Array.isArray(value) && (ele.fieldsName != 'eSerialNum' || value.length == 8)) {
panelResult.submitted++ panelResult.submitted++
} else if (value && Array.isArray(value) && value.length > 0) { } else if (value && Array.isArray(value) && value.length > 0) {
if (ele.fieldsName === 'materialList') { if (ele.fieldsName === 'materialList') {
...@@ -1145,12 +1146,12 @@ export default { ...@@ -1145,12 +1146,12 @@ export default {
const actualPaid = groupItem.items.find( const actualPaid = groupItem.items.find(
(v) => v.fieldsName === 'actualPaid' (v) => v.fieldsName === 'actualPaid'
) )
actualPaid.required = data.value != '03' if (actualPaid) actualPaid.required = data.value != '03'
const eSerialNum = groupItem.items.find( const eSerialNum = groupItem.items.find(
(v) => v.fieldsName === 'eSerialNum' (v) => v.fieldsName === 'eSerialNum'
) )
eSerialNum.required = data.value != '03' if (eSerialNum) eSerialNum.required = data.value != '03'
} }
if ( if (
......
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
<u-search <u-search
v-model="search.keyword" v-model="search.keyword"
bg-color="#FFFFFF" bg-color="#FFFFFF"
placeholder="搜索:工单号·用户姓名·手机号·地址" placeholder="扳手会工单·用户姓名·手机号·地址"
search-icon-color="#999999" search-icon-color="#999999"
color="#333333" color="#333333"
placeholder-color="#999999" placeholder-color="#999999"
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment