Browse Source

采购上架弹出扫描页面2024/7/8 14:26:20

hella_vue3
zhang_li 3 months ago
parent
commit
48e2bd6cbc
  1. 4
      src/mycomponents/scan/winScanPackAndLocation.vue
  2. 2
      src/pages/index/index.vue
  3. 7
      src/pages/issue/coms/comScanIssuePack.vue
  4. 18
      src/pages/login/index.vue
  5. 4
      src/pages/package/record/overPackageRecord.vue
  6. 11
      src/pages/purchaseReceipt/job/receiptDetail.vue
  7. 1
      src/pages/putaway/job/putawayJob.vue
  8. 139
      src/pages/query/location.vue
  9. 546
      src/uni_modules/uni-combox/components/uni-combox/uni-combox.vue

4
src/mycomponents/scan/winScanPackAndLocation.vue

@ -10,7 +10,7 @@
</view> </view>
</view> </view>
<view class="uni-flex uni-row" style="align-items: center; background-color: #fff; margin-left: 20rpx; margin-right: 20rpx; border-radius: 8rpx; height: 30px"> <view class="uni-flex uni-row" style="align-items: center; background-color: #fff; margin-left: 20rpx; margin-right: 20rpx; border-radius: 8rpx; height: 30px">
<view class="uni-center" style="width: 25%"> 来源库位 </view> <view class="uni-center" style="width: 25%; font-size: 40rpx"> 来源库位 </view>
<!-- style="width: 75%;padding: 8rpx" --> <!-- style="width: 75%;padding: 8rpx" -->
<view class=""> <view class="">
<!-- <input v-model="fromLocationCode" placeholder="请扫描来源库位" :focus="locationOnFocus" <!-- <input v-model="fromLocationCode" placeholder="请扫描来源库位" :focus="locationOnFocus"
@ -20,7 +20,7 @@
<uni-combox :candidates="fromLocationList" v-model="fromLocationCode" placeholder="请扫描来源库位" @confirm="handleConfirm" style="height: 30rpx; border: 1px solid #fff"></uni-combox> <uni-combox :candidates="fromLocationList" v-model="fromLocationCode" placeholder="请扫描来源库位" @confirm="handleConfirm" style="height: 30rpx; border: 1px solid #fff"></uni-combox>
</view> </view>
<view v-else> <view v-else>
<text style="padding: 5px"> <text style="padding: 5px; font-size: 50rpx">
{{ fromLocationCode }} {{ fromLocationCode }}
</text> </text>
</view> </view>

2
src/pages/index/index.vue

@ -351,7 +351,7 @@ const getDictory = () => {
console.log('包装规格获取失败', res) console.log('包装规格获取失败', res)
}) })
const switchCode = 'FgPutawayLocationCodeValidate,SemiPutawayLocationCodeValidate,PurchasePutawayToLocationCodeValidate,IssueToLocationCodeValidate,fgProductReceipCommitValidate,purchasereceiptPrintPDA' const switchCode = 'FgPutawayLocationCodeValidate,SemiPutawayLocationCodeValidate,PurchasePutawayToLocationCodeValidate,IssueToLocationCodeValidate,fgProductReceipCommitValidate,purchasereceiptPrintPDA,purchaseReceiptLocationCodeValidate'
getSwitchByCode(switchCode) getSwitchByCode(switchCode)
.then((res) => { .then((res) => {

7
src/pages/issue/coms/comScanIssuePack.vue

@ -11,9 +11,9 @@
</view> </view>
</view> </view>
<view class="uni-flex uni-row" style="align-items: center; background-color: #fff; margin-left: 20rpx; margin-right: 20rpx; margin-top: 8rpx; border-radius: 8rpx"> <view class="uni-flex uni-row" style="align-items: center; background-color: #fff; margin-left: 20rpx; margin-right: 20rpx; margin-top: 8rpx; border-radius: 8rpx">
<view class="uni-center" style="width: 25%"> 来源库位 </view> <view class="uni-center" style="width: 25%; font-size: 35rpx"> 来源库位 </view>
<view class="" style="width: 75%; padding: 8rpx"> <view class="" style="width: 75%; padding: 8rpx">
<uni-combox :candidates="fromLocationList" v-model="fromLocationCode" placeholder="请选择库位" @confirm="fromLocationUpdate"></uni-combox> <uni-combox class="my-combox" :candidates="fromLocationList" v-model="fromLocationCode" placeholder="请选择库位" @confirm="fromLocationUpdate" :inputStyle="inputStyleObject"></uni-combox>
</view> </view>
</view> </view>
@ -94,6 +94,9 @@ const defaultValueList = ref([])
const fromInventoryStatuses = ref('') const fromInventoryStatuses = ref('')
const packageInfo = ref({}) const packageInfo = ref({})
const label = ref({}) const label = ref({})
const inputStyleObject = ref({
fontSize: '100rpx'
})
const toLocationCombox = ref() const toLocationCombox = ref()
const comscansimulate = ref() const comscansimulate = ref()
const comMessageRef = ref() const comMessageRef = ref()

18
src/pages/login/index.vue

@ -3,7 +3,8 @@
<image mode="widthFix" class="loginimg" src="../../static/icons_ui/login_bg.png"></image> <image mode="widthFix" class="loginimg" src="../../static/icons_ui/login_bg.png"></image>
<view class="login_title"> <view class="login_title">
<text>您好欢迎使用</text><br /> <text>您好欢迎使用</text><br />
WMS仓库管理系统 WMS仓库管理系统<br />
版本: {{ version }}
</view> </view>
<view class="bgf login_wrap"> <view class="bgf login_wrap">
<view class="loginbox"> <view class="loginbox">
@ -83,6 +84,7 @@ const showPassword = ref(true)
const imageSrc = ref('') const imageSrc = ref('')
const code = ref('') const code = ref('')
const uuid = ref('') const uuid = ref('')
const version = ref('')
const comMessageRef = ref('') const comMessageRef = ref('')
// //
onNavigationBarButtonTap((e) => { onNavigationBarButtonTap((e) => {
@ -186,6 +188,18 @@ const getCode = () => {
.catch((error) => { .catch((error) => {
showErrorMessage(error) showErrorMessage(error)
}) })
getAppVersion()
}
const getAppVersion = () => {
const systemInfo = uni.getSystemInfoSync()
// #ifdef H5
version.value = systemInfo.appVersion
console.log(systemInfo.appVersion, '版本号')
// #endif
// #ifdef APP
version.value = systemInfo.appWgtVersion
// #endif
} }
</script> </script>
@ -214,7 +228,7 @@ page {
.mytabline { .mytabline {
flex: 1; flex: 1;
text-align: center; text-align: center;
padding: 20rpx 0; padding: 10rpx 0;
color: #666; color: #666;
position: relative; position: relative;
font-size: 0.875rem; font-size: 0.875rem;

4
src/pages/package/record/overPackageRecord.vue

@ -52,7 +52,7 @@
</view> </view>
<win-scan-button @goScan="openScanPopup"></win-scan-button> <win-scan-button @goScan="openScanPopup"></win-scan-button>
</view> </view>
<winComScanBalance ref="scanPopup" @getBalance="getScanResult" businesstypeCode="OverPackage"> </winComScanBalance> <winComScanBalance ref="scanPopup" @getBalance="getScanResult" bussinessCode="OverPackage"> </winComScanBalance>
<com-message ref="comMessageRef" /> <com-message ref="comMessageRef" />
</view> </view>
</template> </template>
@ -413,7 +413,7 @@ const showCommitSuccessMessage = (hint, pointData) => {
fromLocationCode.value = '' fromLocationCode.value = ''
dataContent.value = {} dataContent.value = {}
if (pointData.length > 0) { if (pointData.length > 0) {
uni.redirectTo({ uni.navigateTo({
url: `/pages/point/index?points=${JSON.stringify(pointData)}` url: `/pages/point/index?points=${JSON.stringify(pointData)}`
}) })
} }

11
src/pages/purchaseReceipt/job/receiptDetail.vue

@ -36,7 +36,7 @@
<view style="background-color: ghostwhite; width: 100%"> <view style="background-color: ghostwhite; width: 100%">
<view v-if="operation == 'receipt'" class="uni-flex u-col-center space-between padding_10"> <view v-if="operation == 'receipt'" class="uni-flex u-col-center space-between padding_10">
<view> <view>
<locationCompare ref="locationCompareRef" title="收货库位" :recommendLocationCode="jobToLocationCode" :locationCode="toLocationCode" @getLocation="scanLocationCode" :locationAreaTypeList="toLocationAreaTypeList"> </locationCompare> <locationCompare ref="locationCompareRef" title="收货库位" :recommendLocationCode="jobToLocationCode" :locationCode="toLocationCode" :locationAreaTypeList="toLocationAreaTypeList"> </locationCompare>
</view> </view>
<view> <view>
<button class="btn_single_commit" hover-class="btn_commit_after" @click="commit">提交</button> <button class="btn_single_commit" hover-class="btn_commit_after" @click="commit">提交</button>
@ -97,6 +97,7 @@ const operation = ref('')
const scanedPackingNumber = ref('') const scanedPackingNumber = ref('')
const status = ref('') const status = ref('')
const switchCode = ref('') const switchCode = ref('')
const isCheckLocation = ref('purchaseReceiptLocationCodeValidate') //
const reasonText = ref('') const reasonText = ref('')
const comMessageRef = ref() const comMessageRef = ref()
const locationCompareRef = ref() const locationCompareRef = ref()
@ -108,7 +109,7 @@ onLoad((option) => {
scanedPackingNumber.value = option.scaned || '' scanedPackingNumber.value = option.scaned || ''
status.value = option.status || '' status.value = option.status || ''
operation.value = option.operation operation.value = option.operation
switchCode.value = 'purchasereceiptPrintPDA' switchCode.value = 'purchasereceiptPrintPDA' // pda
}) })
onShow(() => { onShow(() => {
@ -181,6 +182,12 @@ const getDetail = () => {
jobStatus.value = res.data.status jobStatus.value = res.data.status
jobToLocationCode.value = subList.value[0].toLocationCode jobToLocationCode.value = subList.value[0].toLocationCode
detailSource.value = getTreeDataSource(subList.value) detailSource.value = getTreeDataSource(subList.value)
isCheckLocation.value = getSwitchInfoByCode(isCheckLocation.value)
if (isCheckLocation.value) {
toLocationCode.value = ''
} else {
toLocationCode.value = jobToLocationCode.value
}
isAllReceived.value = false isAllReceived.value = false
nextTick(() => { nextTick(() => {
detailSource.value.forEach((r) => { detailSource.value.forEach((r) => {

1
src/pages/putaway/job/putawayJob.vue

@ -134,6 +134,7 @@ const getList = (type) => {
uni.hideLoading() uni.hideLoading()
if (type === 'refresh') { if (type === 'refresh') {
uni.stopPullDownRefresh() uni.stopPullDownRefresh()
openScanPopup()
} }
const { list } = res.data const { list } = res.data

139
src/pages/query/location.vue

@ -1,12 +1,12 @@
<template> <template>
<!-- <page-meta root-font-size="18px"></page-meta> --> <!-- <page-meta root-font-size="18px"></page-meta> -->
<view class=""> <view class="uni-flex" style="flex-direction: column">
<view class="" style="width: 100%; position: fixed; top: 20rpx; right: 0"> <view class="" style="width: 100%; position: fixed; top: 0; right: 0">
<com-blank-view @goScan="openScanPopup" v-if="locationCode == ''"></com-blank-view> <com-blank-view @goScan="openScanPopup" v-if="locationCode == ''"></com-blank-view>
<location-info :locationDetail="locationDetail" v-if="locationCode"></location-info> <location-info :locationDetail="locationDetail" v-if="locationCode"></location-info>
<z-tabs v-if="locationCode" :list="tabList" @change="tabChange" /> <z-tabs v-if="locationCode" :list="tabList" @change="tabChange" />
</view> </view>
<view style="margin-top: 200rpx; width: 100%"> <view style="padding-top: 200rpx; width: 100%">
<view v-if="totalCount > 0" style="margin: 10rpx; font-size: 35rpx; font-weight: bold">总数 : {{ totalCount }} </view> <view v-if="totalCount > 0" style="margin: 10rpx; font-size: 35rpx; font-weight: bold">总数 : {{ totalCount }} </view>
<view v-for="(item, index) in dataList" style="width: 100%"> <view v-for="(item, index) in dataList" style="width: 100%">
<view class="uni-flex uni-row" style="align-items: center; background-color: #fff; border-radius: 10rpx; margin: 10rpx"> <view class="uni-flex uni-row" style="align-items: center; background-color: #fff; border-radius: 10rpx; margin: 10rpx">
@ -175,56 +175,104 @@ const getDetailList = (pageNo, pageSize, type) => {
showMessage(error) showMessage(error)
}) })
} }
const getExpectin = (pageNo, pageSize, type) => {
uni.showLoading({
title: '加载中...',
mask: true
})
if (type === 'refresh') {
pageNo.value = 1
dataList.value = []
}
const setShowList = (list) => { const params = {
const resultlist = [] pageNo: pageNo.value,
list.forEach((res) => { pageSize,
const temp = resultlist.find((res1) => res1.itemCode == res.itemCode) filters: [
if (temp == undefined) { {
const data = { column: 'locationCode',
itemCode: res.itemCode, action: '==',
qty: Number(res.qty), value: locationCode.value
uom: res.uom,
list: []
} }
var item = { ]
packingNumber: res.packingNumber, }
batch: res.batch,
uom: res.uom, getExpectInByLocationCode(params)
qty: Number(res.qty), .then((res) => {
inventoryStatus: res.inventoryStatus uni.hideLoading()
if (type === 'refresh') {
uni.stopPullDownRefresh()
} }
data.list.push(item) const { list } = res.data
resultlist.push(data) totalCount.value = res.data.total
} else { loadingType.value = 'loadmore'
temp.qty = calc.add(temp.qty, res.qty) if (list == null || list.length == 0) {
var item = { loadingType.value = 'nomore'
packingNumber: res.packingNumber, return
batch: res.batch,
uom: res.uom,
qty: Number(res.qty),
inventoryStatus: res.inventoryStatus
} }
temp.list.push(item) dataList.value = type === 'refresh' ? list : dataList.value.concat(list)
} pageNo.value++
}) })
return resultlist .catch((error) => {
uni.hideLoading()
showMessage(error)
})
} }
const ontabtap = (e) => { const getExpectOut = (pageNo, pageSize, type) => {
const index = e.target.dataset.current || e.currentTarget.dataset.current uni.showLoading({
tabIndex.value = index title: '加载中...',
getContentByTab(tabIndex.value) mask: true
})
if (type === 'refresh') {
pageNo.value = 1
dataList.value = []
}
const params = {
pageNo: pageNo.value,
pageSize,
filters: [
{
column: 'locationCode',
action: '==',
value: locationCode.value
}
]
}
getExpectOutByLocationCode(params)
.then((res) => {
uni.hideLoading()
if (type === 'refresh') {
uni.stopPullDownRefresh()
}
const { list } = res.data
totalCount.value = res.data.total
loadingType.value = 'loadmore'
if (list == null || list.length == 0) {
loadingType.value = 'nomore'
return
}
dataList.value = type === 'refresh' ? list : dataList.value.concat(list)
pageNo.value++
})
.catch((error) => {
uni.hideLoading()
showMessage(error)
})
} }
const getContentByTab = (index, pageNo, pageSize) => { const getContentByTab = (index, pageNo, pageSize, type) => {
if (index === 0) { if (index === 0) {
getSummary(pageNo, pageSize) getSummary(pageNo, pageSize, type)
} else if (index === 1) { } else if (index === 1) {
getDetailList(pageNo, pageSize) getDetailList(pageNo, pageSize, type)
} else if (index === 2) { } else if (index === 2) {
dataIn.value = balances.value getExpectin(pageNo, pageSize, type)
} else if (index == 3) { } else if (index == 3) {
dataOut.value = balances.value getExpectin(pageNo, pageSize, type)
} }
} }
@ -242,12 +290,7 @@ const afterCloseMessage = () => {
} }
const tabChange = (index) => { const tabChange = (index) => {
tabIndex.value = index tabIndex.value = index
paging.value.reload(true) getContentByTab(index, pageNo.value, pageSize.value, 'refresh')
}
const queryList = (pageNo, pageSize) => {
if (locationCode.value != '') {
getContentByTab(tabIndex.value, pageNo, pageSize)
}
} }
</script> </script>

546
src/uni_modules/uni-combox/components/uni-combox/uni-combox.vue

@ -1,297 +1,295 @@
<template> <template>
<view class="uni-combox" :class="border ? '' : 'uni-combox__no-border'"> <view class="uni-combox" :class="border ? '' : 'uni-combox__no-border'">
<view v-if="label" class="uni-combox__label" :style="labelStyle"> <view v-if="label" class="uni-combox__label" :style="labelStyle">
<text>{{label}}</text> <text>{{ label }}</text>
</view> </view>
<view class="uni-combox__input-box" :style="inputStyle"> <view class="uni-combox__input-box" :style="inputStyle">
<input class="uni-combox__input " type="text" :placeholder="placeholder" <input class="uni-combox__input" type="text" :placeholder="placeholder" placeholder-class="uni-combox__input-plac" v-model="inputVal" @input="onInput" @focus="onFocus" @blur="onBlur" @confirm="confirm" />
placeholder-class="uni-combox__input-plac" v-model="inputVal" @input="onInput" @focus="onFocus" <uni-icons :type="showSelector ? 'top' : 'bottom'" size="14" color="#999" @click="toggleSelector"> </uni-icons>
@blur="onBlur" @confirm ="confirm"/> </view>
<uni-icons :type="showSelector? 'top' : 'bottom'" size="14" color="#999" @click="toggleSelector"> <view class="uni-combox__selector" v-if="showSelector">
</uni-icons> <view class="uni-popper__arrow"></view>
</view> <scroll-view scroll-y="true" class="uni-combox__selector-scroll">
<view class="uni-combox__selector" v-if="showSelector"> <view class="uni-combox__selector-empty" v-if="filterCandidatesLength === 0">
<view class="uni-popper__arrow"></view> <text>{{ emptyTips }}</text>
<scroll-view scroll-y="true" class="uni-combox__selector-scroll"> </view>
<view class="uni-combox__selector-empty" v-if="filterCandidatesLength === 0"> <view class="uni-combox__selector-item" v-for="(item, index) in filterCandidates" :key="index" @click="onSelectorClick(index)">
<text>{{emptyTips}}</text> <text>{{ item }}</text>
</view> </view>
<view class="uni-combox__selector-item" v-for="(item,index) in filterCandidates" :key="index" </scroll-view>
@click="onSelectorClick(index)"> </view>
<text>{{item}}</text> </view>
</view>
</scroll-view>
</view>
</view>
</template> </template>
<script> <script>
/** /**
* Combox 组合输入框 * Combox 组合输入框
* @description 组合输入框一般用于既可以输入也可以选择的场景 * @description 组合输入框一般用于既可以输入也可以选择的场景
* @tutorial https://ext.dcloud.net.cn/plugin?id=1261 * @tutorial https://ext.dcloud.net.cn/plugin?id=1261
* @property {String} label 左侧文字 * @property {String} label 左侧文字
* @property {String} labelWidth 左侧内容宽度 * @property {String} labelWidth 左侧内容宽度
* @property {String} placeholder 输入框占位符 * @property {String} placeholder 输入框占位符
* @property {Array} candidates 候选项列表 * @property {Array} candidates 候选项列表
* @property {String} emptyTips 筛选结果为空时显示的文字 * @property {String} emptyTips 筛选结果为空时显示的文字
* @property {String} value 组合框的值 * @property {String} value 组合框的值
*/ */
export default { export default {
name: 'uniCombox', name: 'uniCombox',
emits: ['input', 'update:modelValue','confirm'], emits: ['input', 'update:modelValue', 'confirm'],
props: { props: {
border: { border: {
type: Boolean, type: Boolean,
default: true default: true
}, },
label: { label: {
type: String, type: String,
default: '' default: ''
}, },
labelWidth: { labelWidth: {
type: String, type: String,
default: 'auto' default: 'auto'
}, },
inputWidth:{ inputWidth: {
type: String, type: String,
default: 'auto' default: 'auto'
}, },
placeholder: { placeholder: {
type: String, type: String,
default: '' default: ''
}, },
candidates: { candidates: {
type: Array, type: Array,
default () { default() {
return [] return []
} }
}, },
emptyTips: { emptyTips: {
type: String, type: String,
default: '无匹配项' default: '无匹配项'
}, },
// #ifndef VUE3 // #ifndef VUE3
value: { value: {
type: [String, Number], type: [String, Number],
default: '' default: ''
}, },
// #endif // #endif
// #ifdef VUE3 // #ifdef VUE3
modelValue: { modelValue: {
type: [String, Number], type: [String, Number],
default: '' default: ''
}, }
// #endif // #endif
}, },
data() { data() {
return { return {
showSelector: false, showSelector: false,
inputVal: '' inputVal: ''
} }
}, },
computed: { computed: {
labelStyle() { labelStyle() {
if (this.labelWidth === 'auto') { if (this.labelWidth === 'auto') {
return "" return ''
} }
return `width: ${this.labelWidth}` return `width: ${this.labelWidth}`
}, },
inputStyle(){ inputStyle() {
if (this.inputWidth === 'auto') { if (this.inputWidth === 'auto') {
return "" return ''
} }
return `width: ${this.inputWidth}` return `width: ${this.inputWidth}`
}, },
filterCandidates() { filterCandidates() {
// return this.candidates.filter((item) => { // return this.candidates.filter((item) => {
// return item.toString().indexOf(this.inputVal) > -1 // return item.toString().indexOf(this.inputVal) > -1
// }) // })
return this.candidates; return this.candidates
}, },
filterCandidatesLength() { filterCandidatesLength() {
return this.filterCandidates.length return this.filterCandidates.length
} }
}, },
watch: { watch: {
// #ifndef VUE3 // #ifndef VUE3
value: { value: {
handler(newVal) { handler(newVal) {
this.inputVal = newVal this.inputVal = newVal
}, },
immediate: true immediate: true
}, },
// #endif // #endif
// #ifdef VUE3 // #ifdef VUE3
modelValue: { modelValue: {
handler(newVal) { handler(newVal) {
this.inputVal = newVal this.inputVal = newVal
}, },
immediate: true immediate: true
}, }
// #endif // #endif
}, },
methods: { methods: {
toggleSelector() { toggleSelector() {
this.showSelector = !this.showSelector this.showSelector = !this.showSelector
}, },
onFocus() { onFocus() {
this.showSelector = true this.showSelector = true
}, },
onBlur() { onBlur() {
setTimeout(() => { setTimeout(() => {
this.showSelector = false this.showSelector = false
}, 153) }, 153)
}, },
onSelectorClick(index) { onSelectorClick(index) {
this.inputVal = this.filterCandidates[index] this.inputVal = this.filterCandidates[index]
this.showSelector = false this.showSelector = false
this.$emit('input', this.inputVal) this.$emit('input', this.inputVal)
this.$emit('update:modelValue', this.inputVal) this.$emit('update:modelValue', this.inputVal)
}, },
onInput() { onInput() {
setTimeout(() => { setTimeout(() => {
this.$emit('input', this.inputVal) this.$emit('input', this.inputVal)
this.$emit('update:modelValue', this.inputVal) this.$emit('update:modelValue', this.inputVal)
}) })
}, },
confirm(){ confirm() {
setTimeout(() => { setTimeout(() => {
this.$emit('confirm', this.inputVal) this.$emit('confirm', this.inputVal)
this.$emit('update:modelValue', this.inputVal) this.$emit('update:modelValue', this.inputVal)
}) })
} }
}
} }
}
</script> </script>
<style lang="scss" scoped> <style lang="scss">
.uni-combox { .uni-combox {
font-size: 14px; font-size: 14px;
border: 1px solid #DCDFE6; border: 1px solid #dcdfe6;
border-radius: 4px; border-radius: 4px;
padding: 6px 10px; padding: 6px 10px;
position: relative; position: relative;
/* #ifndef APP-NVUE */ /* #ifndef APP-NVUE */
display: flex; display: flex;
/* #endif */ /* #endif */
// height: 40px; // height: 40px;
flex-direction: row; flex-direction: row;
align-items: center; align-items: center;
// border-bottom: solid 1px #DDDDDD; // border-bottom: solid 1px #DDDDDD;
} }
.uni-combox__label { .uni-combox__label {
font-size: 16px; font-size: 16px;
line-height: 22px; line-height: 22px;
padding-right: 10px; padding-right: 10px;
color: #999999; color: #999999;
} }
.uni-combox__input-box { .uni-combox__input-box {
position: relative; position: relative;
/* #ifndef APP-NVUE */ /* #ifndef APP-NVUE */
display: flex; display: flex;
/* #endif */ /* #endif */
flex: 1; flex: 1;
flex-direction: row; flex-direction: row;
align-items: center; align-items: center;
} }
.uni-combox__input { .uni-combox__input {
flex: 1; flex: 1;
font-size: 14px; font-size: 14px;
height: 22px; height: 26px;
line-height: 22px; line-height: 26px;
} }
.uni-combox__input-plac { .uni-combox__input-plac {
font-size: 14px; font-size: 14px;
color: #999; color: #999;
} }
.uni-combox__selector { .uni-combox__selector {
/* #ifndef APP-NVUE */ /* #ifndef APP-NVUE */
box-sizing: border-box; box-sizing: border-box;
/* #endif */ /* #endif */
position: absolute; position: absolute;
top: calc(100% + 12px); top: calc(100% + 12px);
left: 0; left: 0;
width: 100%; width: 100%;
background-color: #FFFFFF; background-color: #ffffff;
border: 1px solid #EBEEF5; border: 1px solid #ebeef5;
border-radius: 6px; border-radius: 6px;
box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1); box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1);
z-index: 2; z-index: 2;
padding: 4px 0; padding: 4px 0;
} }
.uni-combox__selector-scroll { .uni-combox__selector-scroll {
/* #ifndef APP-NVUE */ /* #ifndef APP-NVUE */
max-height: 200px; max-height: 200px;
height: 200rpx; height: 200rpx;
box-sizing: border-box; box-sizing: border-box;
/* #endif */ /* #endif */
} }
.uni-combox__selector-empty, .uni-combox__selector-empty,
.uni-combox__selector-item { .uni-combox__selector-item {
/* #ifndef APP-NVUE */ /* #ifndef APP-NVUE */
display: flex; display: flex;
cursor: pointer; cursor: pointer;
/* #endif */ /* #endif */
line-height: 36px; line-height: 36px;
font-size: 14px; font-size: 60rpx;
text-align: center; text-align: center;
// border-bottom: solid 1px #DDDDDD; // border-bottom: solid 1px #DDDDDD;
padding: 0px 10px; padding: 0px 10px;
} }
.uni-combox__selector-item:hover { .uni-combox__selector-item:hover {
background-color: #f9f9f9; background-color: #f9f9f9;
} }
.uni-combox__selector-empty:last-child, .uni-combox__selector-empty:last-child,
.uni-combox__selector-item:last-child { .uni-combox__selector-item:last-child {
/* #ifndef APP-NVUE */ /* #ifndef APP-NVUE */
border-bottom: none; border-bottom: none;
/* #endif */ /* #endif */
} }
// picker // picker
.uni-popper__arrow, .uni-popper__arrow,
.uni-popper__arrow::after { .uni-popper__arrow::after {
position: absolute; position: absolute;
display: block; display: block;
width: 0; width: 0;
height: 0; height: 0;
border-color: transparent; border-color: transparent;
border-style: solid; border-style: solid;
border-width: 6px; border-width: 6px;
} }
.uni-popper__arrow { .uni-popper__arrow {
filter: drop-shadow(0 2px 12px rgba(0, 0, 0, 0.03)); filter: drop-shadow(0 2px 12px rgba(0, 0, 0, 0.03));
top: -6px; top: -6px;
left: 10%; left: 10%;
margin-right: 3px; margin-right: 3px;
border-top-width: 0; border-top-width: 0;
border-bottom-color: #EBEEF5; border-bottom-color: #ebeef5;
} }
.uni-popper__arrow::after { .uni-popper__arrow::after {
content: " "; content: ' ';
top: 1px; top: 1px;
margin-left: -6px; margin-left: -6px;
border-top-width: 0; border-top-width: 0;
border-bottom-color: #fff; border-bottom-color: #fff;
} }
.uni-combox__no-border { .uni-combox__no-border {
border: none; border: none;
} }
.uni-input-input {
font-size: 60rpx;
}
</style> </style>

Loading…
Cancel
Save