首页下载bug,首页文本广告替换,完成商城

This commit is contained in:
itgaojian163 2025-06-23 15:48:49 +08:00
parent 28fd551699
commit 38a5bcbe8d
58 changed files with 1375 additions and 380 deletions

View File

@ -57,10 +57,10 @@
<scroll-view scroll-y style="height: 580rpx;" :lower-threshold="10" @doRefresh="doRefreshList"
refresher-background="#FFFFFF00" @scrolltolower="doLoadMore">
<view class="pro-list-box">
<radio-group>
<radio-group @change="bindChangeSelPro">
<view v-for="(item,index) in proList" :key="index" class="pro-list-item"
:data-value="item">
<radio
<radio :value="item.projId"
:checked="tempSelPro != null && tempSelPro.projId==item.projId"></radio>
<view class="pro-list-item-left" @click="choosePro" :data-value="item">
<view class="pro-list-item-left-title">
@ -102,7 +102,7 @@
get
} from '../../../common/js/cache/storage'
import {
uploadImgUrl,
uploadImgUrl,
previewUrl
} from '../../../common/js/net/mainUrl'
export default {
@ -239,6 +239,11 @@
_self.hasMore = 'more'
})
},
bindChangeSelPro(e) {
const id = e.detail.value
const item = this.proList.find(item => item.projId == id)
this.tempSelPro = item
},
choosePro(e) {
this.tempSelPro = e.currentTarget.dataset.value
},
@ -287,11 +292,11 @@
}
});
});
//
//
result.url = previewUrl + result.fileId
result.name = result.fileName
let lastDot = result.fileName.lastIndexOf('.')
//
//
result.url = previewUrl + result.fileId
result.name = result.fileName
let lastDot = result.fileName.lastIndexOf('.')
result.extname = result.fileName.substring(lastDot + 1);
results.push(result);
}

View File

@ -63,11 +63,12 @@
<scroll-view scroll-y style="height: 580rpx;" :lower-threshold="10" @doRefresh="doRefreshList"
refresher-background="#FFFFFF00" @scrolltolower="doLoadMore">
<view class="pro-list-box">
<radio-group>
<radio-group @change="bindChangeSelPro">
<view v-for="(item,index) in proList" :key="index" class="pro-list-item"
:data-value="item">
<radio
:checked="tempSelPro != null && tempSelPro.projId==item.projId"></radio>
<radio :value="item.projId"
:checked="tempSelPro != null && tempSelPro.projId==item.projId">
</radio>
<view class="pro-list-item-left" @click="choosePro" :data-value="item">
<view class="pro-list-item-left-title">
<view class="pro-list-name single-line">{{item.projName}}</view>
@ -88,7 +89,7 @@
</scroll-view>
</containerLoadingVue>
</view>
<view class="bottom-btn-green" @click="confirmSelPro">确定</view>
<view class="bottom-btn-green mb-20" @click="confirmSelPro">确定</view>
</view>
</uni-popup>
<!-- 类型 -->
@ -103,8 +104,7 @@
<radio-group>
<block v-for="(item,index) in typeList" :key="index">
<view class="pro-list-item">
<radio
:checked="tempSelType != null&& tempSelType.value==item.value"></radio>
<radio :checked="tempSelType != null&& tempSelType.value==item.value"></radio>
<view class="pro-list-item-left" @click="chooseType" :data-value="item">
<view class="pro-list-item-left-title">
<view class="pro-list-name">{{item.title}}</view>
@ -227,7 +227,7 @@
},
confirmSelPro() {
if (this.tempSelPro == null) {
this.msgHint = '请选择退款项目'
this.msgHint = '请选择补正项目'
this.msgType = 'error'
this.$refs.msg.open()
} else {
@ -288,6 +288,11 @@
_self.hasMore = 'more'
})
},
bindChangeSelPro(e) {
const id = e.detail.value;
const selectedItem = this.proList.find(item => item.projId === id);
this.tempSelPro = selectedItem
},
choosePro(e) {
this.tempSelPro = e.currentTarget.dataset.value
},

View File

@ -18,11 +18,9 @@
<view class="buy-btn" @click="goPayment">充值</view>
</view>
<!-- 通知信息 -->
<view class="notice-box">
<view class="icon icon-horn-ind"></view>
<view class="marquee-container">
<view class="marquee-text">{{noticeContent}}</view>
</view>
<view class="mt-20">
<uni-notice-bar :speed="30" background-color="#FFE5BC" color="#42210B" scrollable single showIcon
:text="noticeContent"></uni-notice-bar>
</view>
<!-- 内容tab -->
<view class="content-up">
@ -103,13 +101,13 @@
<rich-text v-else class="project-status single-line"
:nodes="moneyTxt(8,12,(item.pay.payment/100))"></rich-text>
<view v-if="item.btnStatus=='DOWNLOAD'" class="project-btn"
@click="doShowDownload(item)">下载</view>
@click="doShowDownload" :data-value="item">下载</view>
<view v-else-if="item.btnStatus=='AIGEN'" class="project-btn"
@click="doCreatePro(item)">生成</view>
@click="doCreatePro" :data-value="item">生成</view>
<view v-else-if="item.btnStatus=='RELOAD'" class="project-re-btn"
@click="doReCreate(item)">重新生成</view>
@click="doReCreate" :data-value="item">重新生成</view>
<view v-else-if="item.btnStatus=='GEN'" class="project-btn"
@click="doCreatePro(item)">生成</view>
@click="doCreatePro" :data-value="item">生成</view>
</view>
</view>
</view>
@ -563,7 +561,8 @@
});
},
//
doShowDownload(item) {
doShowDownload(e) {
const item= e.currentTarget.dataset.value
console.log('点击了下载')
this.$refs.downloadPopup.open()
this.sysPreviewUrl = `${this.cUrl}/${item.previewUrl}`
@ -601,12 +600,13 @@
this.$refs.downloadPopup.close() //
const path = e.currentTarget.dataset.path
const url = this.cUrl + path + _self.tempItem.projId
const fileName = 'bdfile://usr/' + 'apply.' + postfix
const fileName = 'bdfile://usr/' + _self.tempItem.projId + '.' + postfix
const token = get('token')
const header = {}
if (token) {
header.Auth = `Bearer ${token}`;
}
}
console.log('下载路径',url)
const downloadRes = await _self.doDownload(url, header, fileName)
console.log('下载完成的文件', downloadRes)
if (downloadRes && downloadRes.statusCode == 200) {
@ -1180,6 +1180,7 @@
color: white;
padding: 2px 5px;
border-radius: 5px;
white-space: nowrap;
}
.project-re-btn:active {

View File

@ -117,12 +117,10 @@
// )
// set('userId', '776864b2-f9d5-49eb-9ea9-db6c862ea10b')
//156
// set('token',
// 'NjBIOFRORDcraDc4U1RsUTI4a3B5em50VVVzclp2QjdFWDV2dVJJc0VLL3Fhazd0bjZPaU9Tc3E1cHc2cmYyZTc0Y2FITTdRR0pMTk1xaVRHM0I1d0NiTnJ4b1BVSVNtUFl4SlFtR1g2M0tCQTc2TXM4L3d4ZVhwM09VREN0bDMrTXNoa0trWDR1eG5PdG84OXZ4UVE0dDhRUDdQRk1Qd2N0ZWVLSzJaZzBkRXRJMFE0NDZpVUp0azVyUHRkekJrWXU2SlJFNE1VWHJVNWozazJ2cHJtK241TDhhYWhnNHRkM1ZHR1g5MVd4aDFRMkgyS1BrSWo2RmlUZk5nQW1scm5Xd0NlNUs4S1cwZ2VjYURodEsraGEyYk8vSDlXYk0zRXkzTG5XYnBac1BrN0ZTTGdyR21XMkM2bUhEUzhBQ1RHVWh6YnFjVkJKNFlDcXpqZVM0THhHNG5hR3ZtWDQxY1dobnk1OWpVcEtzPQ=='
// )
// set('userId', '3e256f41-d838-40ac-acbc-ada0ef039cbd')
//158
set('token','aGh2UkUyWTBMbFh5dlV2WXJRci9pQ3hFVEpweGF4MjZiNjdIbVBjOFNkc0Q0Y2dEYTVMa29naU1pdS9Kb1dmZEc5d2w5cEdkSTJWNnFZdkZVYUtkaUhVck1RbWtCK0Rpa3NRT0w3N3RVenMwcUliK3IvZ1BFa2lQR2REZ3FZaHE5Sm1QdkJHWTJMRmFZQzBmQmVpTERFL3ZrM0phUE1icy80THJrM3BkRU9qU0xzakVJQ1IzN0xGbHA2SzFIcktnQk1oZFVpR3M4Qy96Q2o2VDJQZjdacW9SL01qQTNLcDRpemdsSXc4Y1RpYjNKS3NOamRPZitCSlE3akRjN3FnSWcxUmVuSktRSWhzZzNUT1I3R0luVm1CaWN3Uzg0cTJUdTJudm9Xdk5GNlhCbXdxc1hBT3d4VGxEQll4MGRDSzJpaG9FT014bzcrNnV1SVc3NkxXcGNCNm51dDVJWG5YRnE4bjMxRUxqdnIwPQ==')
// set('token','NjBIOFRORDcraDc4U1RsUTI4a3B5em50VVVzclp2QjdFWDV2dVJJc0VLL3Fhazd0bjZPaU9Tc3E1cHc2cmYyZTc0Y2FITTdRR0pMTk1xaVRHM0I1d0NiTnJ4b1BVSVNtUFl4SlFtR1g2M0tCQTc2TXM4L3d4ZVhwM09VREN0bDMrTXNoa0trWDR1eG5PdG84OXZ4UVE0dDhRUDdQRk1Qd2N0ZWVLSzJaZzBkRXRJMFE0NDZpVUp0azVyUHRkekJrWXU2SlJFNE1VWHJVNWozazJ2cHJtK241TDhhYWhnNHRkM1ZHR1g5MVd4aDFRMkgyS1BrSWo2RmlUZk5nQW1scm5Xd0NlNUs4S1cwZ2VjYURodEsraGEyYk8vSDlXYk0zRXkzTG5XYnBac1BrN0ZTTGdyR21XMkM2bUhEUzhBQ1RHVWh6YnFjVkJKNFlDcXpqZVM0THhHNG5hR3ZtWDQxY1dobnk1OWpVcEtzPQ==')
// set('userId', '3e256f41-d838-40ac-acbc-ada0ef039cbd')
//158
set('token','aGh2UkUyWTBMbFh5dlV2WXJRci9pQ3hFVEpweGF4MjZiNjdIbVBjOFNkc0Q0Y2dEYTVMa29naU1pdS9Kb1dmZEc5d2w5cEdkSTJWNnFZdkZVYUtkaUhVck1RbWtCK0Rpa3NRT0w3N3RVenMwcUliK3IvZ1BFa2lQR2REZ3FZaHE5Sm1QdkJHWTJMRmFZQzBmQmVpTERFL3ZrM0phUE1icy80THJrM3BkRU9qU0xzakVJQ1IzN0xGbHA2SzFIcktnQk1oZFVpR3M4Qy96Q2o2VDJQZjdacW9SL01qQTNLcDRpemdsSXc4Y1RpYjNKS3NOamRPZitCSlE3akRjN3FnSWcxUmVuSktRSWhzZzNUT1I3R0luVm1CaWN3Uzg0cTJUdTJudm9Xdk5GNlhCbXdxc1hBT3d4VGxEQll4MGRDSzJpaG9FT014bzcrNnV1SVc3NkxXcGNCNm51dDVJWG5YRnE4bjMxRUxqdnIwPQ==')
set('userId','8ed7c4f7-1ddf-4618-aa6b-0e08cbd2ec1b')
// setTimeout(() => {
// uni.switchTab({

View File

@ -33,8 +33,13 @@
<radio-group class="form-radio_wrap">
<view class="pay-option-item mt-20" @click="doChangePayWay" data-value="1">
<view class="option-type">
<view class="icon icon-bd"></view>
<view>在线支付</view>
<view class="icon icon-bd"></view>
<!-- #ifdef MP-BAIDU -->
<view>百度支付</view>
<!-- #endif -->
<!-- #ifdef MP-TOUTIAO -->
<view>抖音支付</view>
<!-- #endif -->
</view>
<radio :checked="payWay==1" value="1"></radio>
</view>

View File

@ -365,7 +365,7 @@
{
field: 'orgPhone',
message: '请输入合法的联系电话',
validator: v => typeof v === 'string' && v.trim().length > 0 && this.isValidPhone(v.trim())
validator: v => typeof v === 'string' && v.trim().length > 0 && isValidPhone(v.trim())
},
{
field: 'selCreType',
@ -434,6 +434,7 @@
});
const data = this.buildParams();
console.log(data)
await Shop.doSaveBuyPersonInfo(this.orderId, data);
uni.hideLoading();
@ -445,6 +446,7 @@
}, 1200);
}
} catch (err) {
console.log(err)
uni.hideLoading();
this.msgHint = err.msg || '网络错误,请稍后重试';
this.msgType = 'error';
@ -628,8 +630,8 @@
}
.area-picker-item {
text-align: center;
align-items: center;
text-align: center;
align-items: center;
font-size: 28rpx;
}

View File

@ -4,7 +4,7 @@
<view class="content-container">
<view class="info-title">平台需要您补充的内容说明</view>
<!-- 第一部分 -->
<view class="section">
<view class="section" v-if="replenish != null">
<view class="item">
<text class="label">主题</text>
<view class="select-content-item">
@ -47,7 +47,7 @@
<!-- 第一部分 -->
<view class="section">
<view class="item">
<text class="label star">内容</text>
<text class="label">内容</text>
<view class="textarea-content">
<textarea style="height: 120rpx;width: 100%;" @input="inputRemark" :value="remark"
placeholder="请输入要补充的内容"
@ -55,22 +55,16 @@
</view>
</view>
<view class="item">
<text class="label star">附件</text>
<text class="label">附件</text>
<view class="upload-file-box">
<view v-for="(item, index) in files" :key="index" class="upload-file-item">
<block v-if="tools.isImg(item.fileName)">
<image @click="doPreImg" :data-value="item.netUrl" class="accessory-img"
:src="item.netUrl" mode="scaleToFill"></image>
<view class="file-name">{{item.fileName}}</view>
</block>
<block v-else>
<view class="icon-source"></view>
<view class="file-name">{{item.fileName}}</view>
</block>
<image @click="doPreImg" :data-value="item.netUrl" class="accessory-img"
:src="item.netUrl" mode="scaleToFill"></image>
<view class="file-name">{{item.fileName}}</view>
<view @click="doDelFile" :data-value="item" :data-index="index"
class="upload-file-del icon-clear"></view>
</view>
<view v-if="files.length < maxCount" @click="bindChooseFile" class="upload-file-item">
<view v-if="maxCount>0" @click="bindChooseFile" class="upload-file-item">
<view class="icon-add-line size-64"></view>
</view>
</view>
@ -112,6 +106,7 @@
msgShow: false,
files: [],
maxCount: 4,
maxFixedCount: 4,
replenishId: '',
replenish: null,
replenishFiles: [],
@ -165,7 +160,6 @@
uni.hideLoading();
this.replenish = res;
console.log('详情', res);
//
if (this.replenish.correctionFiles) {
@ -202,7 +196,7 @@
},
inputRemark(e) {
this.remark = e.detail.value;
this.remark = e.detail.value
},
// baseUrl
@ -213,14 +207,16 @@
});
},
doPreImg(url) {
doPreImg(e) {
const url = e.currentTarget.dataset.value
uni.previewImage({
urls: [url]
});
},
//
doDownloadFile(item) {
doDownloadFile(e) {
const item = e.currentTarget.dataset.value
//
if (this.isImageFile(item.fileName)) {
this.doPreImg(item.netUrl);
@ -240,17 +236,24 @@
this.downloadProgress = 0;
this.downloading = true;
const token = uni.getStorageSync('token');
const token = get('token');
const header = token ? {
'Auth': `Bearer ${token}`
} : {};
const downloadTask = uni.downloadFile({
url: item.netUrl,
url: item.netUrl + '.' + item.fileType,
header,
success: (res) => {
if (res.statusCode === 200) {
this.saveAndOpenFile(res.tempFilePath, item.fileName);
console.log('下载文件成功', res)
var path = ''
if (res.tempFilePath.endsWith('.' + item.fileType)) {
path = res.tempFilePath
} else {
path = res.tempFilePath + '.' + item.fileType
}
this.saveAndOpenFile(path, item.fileType);
} else {
throw new Error('下载失败');
}
@ -258,7 +261,7 @@
});
downloadTask.onProgressUpdate((res) => {
this.downloadProgress = res.progress;
this.downloadProgress = Number(res.progress);
});
await new Promise((resolve, reject) => {
@ -274,20 +277,20 @@
}
},
saveAndOpenFile(tempFilePath, fileName) {
uni.saveFile({
tempFilePath,
success: (res) => {
uni.openDocument({
filePath: res.savedFilePath,
showMenu: true
});
saveAndOpenFile(path, fileType) {
console.log('打开文件', path, fileType)
const that = this
uni.openDocument({
filePath: path,
fileType: fileType,
showMenu: true,
success(res) {
that.showMessage('下载成功', 'success');
},
fail: (err) => {
console.error('文件保存失败', err);
this.showMessage('很抱歉,文件下载出现问题。建议您稍作等待,之后再尝试下载。', 'error');
fail(err) {
that.showMessage('很抱歉,文件下载出现问题。建议您稍作等待,之后再尝试下载。', 'error');
}
});
})
},
backPageRefresh() {
@ -349,25 +352,36 @@
},
bindChooseFile() {
this.showActionsheet = true;
const that = this
uni.chooseImage({
count: that.maxCount,
success(res) {
if (res.tempFilePaths && res.tempFilePaths.length > 0) {
that.doUploadFile(res.tempFilePaths)
}
},
fail(err) {
that.showMessage('选择图片失败,请稍后重试', 'error')
}
})
},
// type=1 =2
async doUploadFile(type, files) {
async doUploadFile(files) {
try {
uni.showLoading({
title: '上传中...'
});
const upUrl = type === 1 ? upShopImgUrl : upShopFileUrl;
const upType = type === 1 ? 'image' : 'file';
const token = uni.getStorageSync('token');
const upUrl = upShopImgUrl;
const upType = 'image';
const token = get('token');
const header = token ? {
'Auth': `Bearer ${token}`
} : {};
const uploadPromises = files.map((file, index) => {
const filePath = type === 1 ? file.tempFilePath : file.path;
const filePath = file
return new Promise((resolve, reject) => {
uni.uploadFile({
@ -377,10 +391,13 @@
name: upType,
success: (res) => {
try {
const result = JSON.parse(res.data);
result.data.netUrl = sImgPrefix + result.data
let data = res.data;
if (typeof data === 'string') {
data = JSON.parse(data);
}
data.data.netUrl = sImgPrefix + data.data
.fileId;
resolve(result.data);
resolve(data.data);
} catch (err) {
reject(new Error('解析上传结果失败'));
}
@ -392,6 +409,8 @@
const results = await Promise.all(uploadPromises);
this.files = [...this.files, ...results];
//files
this.maxCount = this.maxFixedCount - this.files.length
uni.hideLoading();
} catch (err) {
console.error('上传失败', err);
@ -400,9 +419,12 @@
}
},
doDelFile(item, index) {
doDelFile(e) {
const item = e.currentTarget.dataset.value
const index = e.currentTarget.dataset.index
if (index >= 0 && index < this.files.length) {
this.files.splice(index, 1);
this.maxCount = this.maxFixedCount - this.files.length
}
},
@ -650,7 +672,7 @@
.upload-file-item {
width: 20%;
height: 150rpx;
height: 180rpx;
display: flex;
flex-direction: column;
justify-content: center;
@ -699,7 +721,7 @@
.accessory-img {
width: 100%;
height: 100rpx;
height: 160rpx;
}
.file-name {
@ -707,6 +729,7 @@
font-size: 20rpx;
white-space: nowrap;
overflow: hidden;
line-height: 20rpx;
text-overflow: ellipsis;
}

View File

@ -21,6 +21,7 @@
<view v-if="order.waitCorrectionCount>0" class="info-tag">{{order.waitCorrectionCount}}
</view>
</view>
<view v-if="order.buyUserDTO != null && kind=='buy'" @click="bindChangeTab" :data-value="3"
:class="[curTab==3? 'tab-item-active':'tab-item-inactive']">受让人信息</view>
<view v-if="kind=='buy' && order.orderStatus=='过户已完成'" @click="bindChangeTab" :data-value="4"
@ -128,37 +129,38 @@
<view class="list-box">
<block v-for="(item,index) in replenlishList" :key="index">
<view class="list-item">
<view style="display: flex;flex-direction: column;" @click="doShowReplishDetail"
:data-item="item">
<view style="display: flex;flex-direction: column;">
<view class="item-content">
<view class="item-title">
<view class="item-title" @click="doShowReplishDetail" :data-item="item">
{{item.correctionTitle}}
</view>
<!-- 卖家 -->
<block v-if="kind=='sell'">
<view
:class="['status-tag' ,item.sellId==''? 'col-primary':'col-green']">
{{item.sellId==''?'待补充':'已补充'}}
</view>
</block>
<!-- 买家 -->
<block v-if="kind=='buy'">
<view
:class="['status-tag',item.buyId=='' ? 'col-primary' :'col-green']">
{{item.buyId==''?'待补充':'已补充'}}
</view>
</block>
<view class="item-btns">
<view :data-value="item" @click="goReplenish" class="btn-blue"
v-if="kind=='buy' && item.buyId==''">去补充</view>
<view :data-value="item" @click="goReplenish" class="btn-blue"
v-if="kind=='sell' && item.sellId==''">去补充</view>
</view>
</view>
<view class="item-desc" @click="doShowReplishDetail" :data-item="item">
{{item.correctionRemark}}
</view>
<view class="item-desc">{{item.correctionRemark}}</view>
</view>
<view class="item-bottom">
<!-- 卖家 -->
<block v-if="kind=='sell'">
<view
:class="['status-tag' ,item.sellId==''? 'col-primary':'col-green']">
{{item.sellId==''?'待补充':'已补充'}}
</view>
</block>
<!-- 买家 -->
<block v-if="kind=='buy'">
<view
:class="['status-tag',item.buyId=='' ? 'col-primary' :'col-green']">
{{item.buyId==''?'待补充':'已补充'}}
</view>
</block>
<view class="item-time">{{item.createTime}}</view>
<view class="item-btns">
<view :data-value="item" @click="goReplenish" class="btn-blue"
v-if="kind=='buy' && item.buyId==''">去补充</view>
<view :data-value="item" @click="goReplenish" class="btn-blue"
v-if="kind=='sell' && item.sellId==''">去补充</view>
</view>
</view>
</view>
</block>
@ -433,7 +435,6 @@
const _self = this
Shop.doGetReplenishList(_self.kind, _self.pageData)
.then(res => {
console.log(res)
var status = 'success'
status = res.rows && res.rows.length > 0 ? 'success' : 'empty'
_self.loadingState = isRefresh ? status : ''
@ -458,7 +459,6 @@
Shop.doGetOrderDetail(_self.orderId)
.then(res => {
uni.hideLoading()
console.log('订单详情', res)
res.goodsDTO.goodsPhoto = sImgPrefix + res.goodsDTO.goodsPhoto
_self.order = res
if (res.orderStatus == '过户已完成' && res.producePhoto != '') {
@ -518,7 +518,7 @@
backPageRefresh() {
let pages = getCurrentPages();
let beforePage = pages[pages.length - 2];
beforePage.$vm.needRefresh=true
beforePage.$vm.needRefresh = true
uni.navigateBack()
},
//
@ -557,7 +557,7 @@
upPageNeedRefresh() {
let pages = getCurrentPages();
let beforePage = pages[pages.length - 2];
beforePage.$vm.needRefresh=true
beforePage.$vm.needRefresh = true
},
//
async doPayOrder() {
@ -578,9 +578,9 @@
}, 1500);
} catch (err) {
uni.hideLoading();
_self.msgHint = err.msg ? err.msg : '网络错误,请稍后重试'
_self.msgType = 'error'
_self.$refs.msg.open()
this.msgHint = err.msg ? err.msg : '网络错误,请稍后重试'
this.msgType = 'error'
this.$refs.msg.open()
}
},
//
@ -593,7 +593,7 @@
goReplenish(e) {
const item = e.currentTarget.dataset.value
uni.navigateTo({
url: '/pages/shop/reportReplenish/reportReplenish?id=' + item.correctionId,
url: '/pages/shop/addReplenishStuff/addReplenishStuff?id=' + item.correctionId
})
},
doPreImg: function(e) {
@ -630,7 +630,7 @@
const _self = this
_self.downloadProgress = 0 //
_self.downloading = true //
const url = item.netUrl
const url = item.netUrl + '.' + item.fileType
const fileName = item.fileName
const token = get('token')
const header = {}
@ -654,6 +654,7 @@
} else {
uni.openDocument({
filePath: downloadRes.tempFilePath,
fileType: item.fileType,
showMenu: true,
success(res) {
console.log(res)
@ -976,13 +977,14 @@
background-color: $bg-red-color;
position: absolute;
color: $white-color;
top: -15rpx;
right: -20rpx;
top: 0rpx;
right: 0rpx;
border-radius: 50%;
font-size: 24rpx;
width: 40rpx;
text-align: center;
height: 40rpx;
line-height: 40rpx;
}
@ -1142,7 +1144,7 @@
.tab-item-active {
color: $blue-color;
padding: 10rpx 5rpx;
padding: 20rpx 5rpx;
font-size: 24rpx;
position: relative;
flex: auto;
@ -1164,7 +1166,7 @@
.tab-item-inactive {
color: $text-gray-desc-color;
padding: 10rpx 5rpx;
padding: 20rpx 5rpx;
font-size: 24rpx;
transition: color 0.3s;
position: relative;

View File

@ -14,7 +14,8 @@
<view style="display: flex;flex-direction: column;width: 100%;" v-if="goodsList.length>0">
<view class="list-container">
<block v-for="(item,index) in goodsList" :key="index">
<view class="list-item" @click="goDetail" :data-value="item" v-if="item.goodsDTO && item.goodsDTO != null">
<view class="list-item" @click="goDetail" :data-value="item"
v-if="item.goodsDTO && item.goodsDTO != null">
<view class="item-img-box">
<image :src="item.goodsDTO.preImg" mode="scaleToFill" class="item-img"></image>
<view v-if="item.waitCorrectionCount>0" class="count-tag">
@ -88,7 +89,8 @@
listRefreshTrig: false,
isLoadMore: false,
hasMore: 'more',
goodsList: []
goodsList: [],
needRefresh: false
};
},
onLoad(options) {
@ -105,6 +107,12 @@
});
this.doRefreshList()
},
onShow() {
if (this.needRefresh) {
this.needRefresh = false
this.doRefreshList()
}
},
onPullDownRefresh() {
this.doRefreshList()
},
@ -171,7 +179,6 @@
},
//
addPrefixToPreviewImgs(data) {
console.log(data)
const prefix = sImgPrefix
return data.map(item => {
if (item.goodsDTO && item.goodsDTO != null && item.goodsDTO.goodsPhoto != '') {
@ -276,7 +283,8 @@
font-size: 24rpx;
width: 40rpx;
text-align: center;
height: 40rpx;
height: 40rpx;
line-height: 40rpx;
}
.item-img {

View File

@ -249,7 +249,7 @@
this.listRefreshTrig = true
this.pageData.page = 1
this.pageData.keywords = this.keywords
this.pageData.priceOrder = this.selOwner
this.pageData.goodsLeaderType = this.selOwner
this.pageData.priceRangeStart = this.priceStart
this.pageData.priceRangeEnd = this.priceEnd
this.pageData.goodsType = this.selType

View File

@ -290,7 +290,8 @@
font-size: 24rpx;
width: 40rpx;
text-align: center;
height: 40rpx;
height: 40rpx;
line-height: 40rpx;
}

View File

@ -0,0 +1,22 @@
## 1.2.32025-04-14
- 新增 左侧自定义插槽,可自定义文字或图标
## 1.2.22023-12-20
- 修复动态绑定title时滚动速度不一致的问题
## 1.2.12022-09-05
- 新增 属性 fontSize可修改文字大小。
## 1.2.02021-11-19
- 优化 组件UI并提供设计资源详见:[https://uniapp.dcloud.io/component/uniui/resource](https://uniapp.dcloud.io/component/uniui/resource)
- 文档迁移,详见:[https://uniapp.dcloud.io/component/uniui/uni-notice-bar](https://uniapp.dcloud.io/component/uniui/uni-notice-bar)
## 1.1.12021-11-09
- 新增 提供组件设计资源,组件样式调整
## 1.1.02021-07-30
- 组件兼容 vue3如何创建vue3项目详见 [uni-app 项目支持 vue3 介绍](https://ask.dcloud.net.cn/article/37834)
## 1.0.92021-05-12
- 新增 组件示例地址
## 1.0.82021-04-21
- 优化 添加依赖 uni-icons, 导入后自动下载依赖
## 1.0.72021-02-05
- 优化 组件引用关系通过uni_modules引用组件
## 1.0.62021-02-05
- 调整为uni_modules目录规范

View File

@ -0,0 +1,430 @@
<template>
<view v-if="show" class="uni-noticebar" :style="{ backgroundColor }" @click="onClick">
<slot v-if="showIcon === true || showIcon === 'true'" name="noticebarIcon">
<!-- <uni-icons class="uni-noticebar-icon" type="sound" :color="color" :size="fontSize * 1.5" /> -->
<view class="uni-noticebar-icon"></view>
</slot>
<view ref="textBox" class="uni-noticebar__content-wrapper" :class="{
'uni-noticebar__content-wrapper--scrollable': scrollable,
'uni-noticebar__content-wrapper--single': !scrollable && (single || moreText)
}" :style="{ height: scrollable ? fontSize * 1.5 + 'px' : 'auto' }">
<view :id="elIdBox" class="uni-noticebar__content" :class="{
'uni-noticebar__content--scrollable': scrollable,
'uni-noticebar__content--single': !scrollable && (single || moreText)
}">
<text :id="elId" ref="animationEle" class="uni-noticebar__content-text" :class="{
'uni-noticebar__content-text--scrollable': scrollable,
'uni-noticebar__content-text--single': !scrollable && (single || showGetMore)
}" :style="{
color: color,
fontSize: fontSize + 'px',
lineHeight: fontSize * 1.5 + 'px',
width: wrapWidth + 'px',
'animationDuration': animationDuration,
'-webkit-animationDuration': animationDuration,
animationPlayState: webviewHide ? 'paused' : animationPlayState,
'-webkit-animationPlayState': webviewHide ? 'paused' : animationPlayState,
animationDelay: animationDelay,
'-webkit-animationDelay': animationDelay
}">{{text}}</text>
</view>
</view>
<view v-if="isShowGetMore" class="uni-noticebar__more uni-cursor-point" @click="clickMore">
<text v-if="moreText.length > 0" :style="{ color: moreColor, fontSize: fontSize + 'px' }">{{ moreText }}</text>
<uni-icons v-else type="right" :color="moreColor" :size="fontSize * 1.1" />
</view>
<view class="uni-noticebar-close uni-cursor-point" v-if="isShowClose">
<uni-icons type="closeempty" :color="color" :size="fontSize * 1.1" @click="close" />
</view>
</view>
</template>
<script>
// #ifdef APP-NVUE
const dom = weex.requireModule('dom');
const animation = weex.requireModule('animation');
// #endif
/**
* NoticeBar 自定义导航栏
* @description 通告栏组件
* @tutorial https://ext.dcloud.net.cn/plugin?id=30
* @property {Number} speed 文字滚动的速度默认100px/
* @property {String} text 显示文字
* @property {String} backgroundColor 背景颜色
* @property {String} color 文字颜色
* @property {String} moreColor 查看更多文字的颜色
* @property {String} moreText 设置查看更多的文本
* @property {Boolean} single = [true|false] 是否单行
* @property {Boolean} scrollable = [true|false] 是否滚动为true时NoticeBar为单行
* @property {Boolean} showIcon = [true|false] 是否显示左侧喇叭图标
* @property {Boolean} showClose = [true|false] 是否显示左侧关闭按钮
* @property {Boolean} showGetMore = [true|false] 是否显示右侧查看更多图标为true时NoticeBar为单行
* @event {Function} click 点击 NoticeBar 触发事件
* @event {Function} close 关闭 NoticeBar 触发事件
* @event {Function} getmore 点击查看更多时触发事件
*/
export default {
name: 'UniNoticeBar',
emits: ['click', 'getmore', 'close'],
props: {
text: {
type: String,
default: ''
},
moreText: {
type: String,
default: ''
},
backgroundColor: {
type: String,
default: '#FFF9EA'
},
speed: {
// 1s100px
type: Number,
default: 100
},
color: {
type: String,
default: '#FF9A43'
},
fontSize: {
type: Number,
default: 14
},
moreColor: {
type: String,
default: '#FF9A43'
},
single: {
//
type: [Boolean, String],
default: false
},
scrollable: {
//
type: [Boolean, String],
default: false
},
showIcon: {
// icon
type: [Boolean, String],
default: false
},
showGetMore: {
//
type: [Boolean, String],
default: false
},
showClose: {
//
type: [Boolean, String],
default: false
}
},
data() {
const elId = `Uni_${Math.ceil(Math.random() * 10e5).toString(36)}`
const elIdBox = `Uni_${Math.ceil(Math.random() * 10e5).toString(36)}`
return {
textWidth: 0,
boxWidth: 0,
wrapWidth: '',
webviewHide: false,
// #ifdef APP-NVUE
stopAnimation: false,
// #endif
elId: elId,
elIdBox: elIdBox,
show: true,
animationDuration: 'none',
animationPlayState: 'paused',
animationDelay: '0s'
}
},
watch: {
text(newValue, oldValue) {
this.initSize();
}
},
computed: {
isShowGetMore() {
return this.showGetMore === true || this.showGetMore === 'true'
},
isShowClose() {
return (this.showClose === true || this.showClose === 'true') &&
(this.showGetMore === false || this.showGetMore === 'false')
}
},
mounted() {
// #ifdef APP-PLUS
var pages = getCurrentPages();
var page = pages[pages.length - 1];
var currentWebview = page.$getAppWebview();
currentWebview.addEventListener('hide', () => {
this.webviewHide = true
})
currentWebview.addEventListener('show', () => {
this.webviewHide = false
})
// #endif
this.$nextTick(() => {
this.initSize()
})
},
// #ifdef APP-NVUE
beforeDestroy() {
this.stopAnimation = true
},
// #endif
methods: {
initSize() {
if (this.scrollable) {
// #ifndef APP-NVUE
let query = [],
boxWidth = 0,
textWidth = 0;
let textQuery = new Promise((resolve, reject) => {
uni.createSelectorQuery()
// #ifndef MP-ALIPAY
.in(this)
// #endif
.select(`#${this.elId}`)
.boundingClientRect()
.exec(ret => {
this.textWidth = ret[0].width
resolve()
})
})
let boxQuery = new Promise((resolve, reject) => {
uni.createSelectorQuery()
// #ifndef MP-ALIPAY
.in(this)
// #endif
.select(`#${this.elIdBox}`)
.boundingClientRect()
.exec(ret => {
this.boxWidth = ret[0].width
resolve()
})
})
query.push(textQuery)
query.push(boxQuery)
Promise.all(query).then(() => {
this.animationDuration = `${this.textWidth / this.speed}s`
this.animationDelay = `-${this.boxWidth / this.speed}s`
setTimeout(() => {
this.animationPlayState = 'running'
}, 1000)
})
// #endif
// #ifdef APP-NVUE
dom.getComponentRect(this.$refs['animationEle'], (res) => {
let winWidth = uni.getSystemInfoSync().windowWidth
this.textWidth = res.size.width
animation.transition(this.$refs['animationEle'], {
styles: {
transform: `translateX(-${winWidth}px)`
},
duration: 0,
timingFunction: 'linear',
delay: 0
}, () => {
if (!this.stopAnimation) {
animation.transition(this.$refs['animationEle'], {
styles: {
transform: `translateX(-${this.textWidth}px)`
},
timingFunction: 'linear',
duration: (this.textWidth - winWidth) / this.speed * 1000,
delay: 1000
}, () => {
if (!this.stopAnimation) {
this.loopAnimation()
}
});
}
});
})
// #endif
}
// #ifdef APP-NVUE
if (!this.scrollable && (this.single || this.moreText)) {
dom.getComponentRect(this.$refs['textBox'], (res) => {
this.wrapWidth = res.size.width
})
}
// #endif
},
loopAnimation() {
// #ifdef APP-NVUE
animation.transition(this.$refs['animationEle'], {
styles: {
transform: `translateX(0px)`
},
duration: 0
}, () => {
if (!this.stopAnimation) {
animation.transition(this.$refs['animationEle'], {
styles: {
transform: `translateX(-${this.textWidth}px)`
},
duration: this.textWidth / this.speed * 1000,
timingFunction: 'linear',
delay: 0
}, () => {
if (!this.stopAnimation) {
this.loopAnimation()
}
});
}
});
// #endif
},
clickMore() {
this.$emit('getmore')
},
close() {
this.show = false;
this.$emit('close')
},
onClick() {
this.$emit('click')
}
}
}
</script>
<style lang="scss" scoped>
.uni-noticebar {
/* #ifndef APP-NVUE */
display: flex;
width: 100%;
box-sizing: border-box;
/* #endif */
flex-direction: row;
align-items: center;
padding: 5px 12px;
margin-bottom: 10px;
border-radius: 8rpx;
}
.uni-cursor-point {
/* #ifdef H5 */
cursor: pointer;
/* #endif */
}
.uni-noticebar-close {
margin-left: 8px;
margin-right: 5px;
}
.uni-noticebar-icon {
margin-right: 5px;
background-image: url('data:image/svg+xml;charset=utf-8;base64,PHN2ZyB0PSIxNzQyOTYwNzQxMTM4IiBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHAtaWQ9IjIxOTIzIiB3aWR0aD0iMTYiIGhlaWdodD0iMTYiPjxwYXRoIGQ9Ik04OTIuNTU2OCAxMjYuOTQ0YTM4LjQgMzguNCAwIDAgMSAzLjQ0MzIgMTUuODkxMnY3MzguMzI5NmEzOC40IDM4LjQgMCAwIDEtNTQuMjkxMiAzNC45NTY4bC0yNzIuMTQwOC0xMjMuNjkyOGMtMzcuMjYwOCA2Mi4wMTYtMTEyLjMyIDk0LjU4NTYtMTg1LjY4OTYgNzQuOTI0OC04MS42ODk2LTIxLjg4OC0xMzIuODEyOC0xMDAuOTA4OC0xMjEuOTEzNi0xODIuNTUzNkgxNjYuNGEzOC40IDM4LjQgMCAwIDEtMzguNC0zOC40VjM3Ny42YTM4LjQgMzguNCAwIDAgMSAzOC40LTM4LjRoMTY2LjRsNTA4LjkwODgtMjMxLjMyMTZhMzguNCAzOC40IDAgMCAxIDUwLjg0OCAxOS4wNzJ6TTQwMy43NTY4IDc5My4xNzEyYzM2LjQ3MzYgOS43NzI4IDczLjcxNTItNC40MjI0IDk1LjAwOC0zMi45MzQ0bC0xNTkuNDExMi03Mi40NjA4Yy0xMC4wMjI0IDQ2LjQgMTguMDQ4IDkyLjk3MjggNjQuNDAzMiAxMDUuMzk1MnoiIGZpbGw9IiM1NTAwMDAiIHAtaWQ9IjIxOTI0Ij48L3BhdGg+PC9zdmc+');
background-repeat: no-repeat;
background-size: contain;
width: 42rpx;
height: 42rpx;
}
.uni-noticebar__content-wrapper {
flex: 1;
flex-direction: column;
overflow: hidden;
}
.uni-noticebar__content-wrapper--single {
/* #ifndef APP-NVUE */
line-height: 18px;
/* #endif */
}
.uni-noticebar__content-wrapper--single,
.uni-noticebar__content-wrapper--scrollable {
flex-direction: row;
}
/* #ifndef APP-NVUE */
.uni-noticebar__content-wrapper--scrollable {
position: relative;
}
/* #endif */
.uni-noticebar__content--scrollable {
/* #ifdef APP-NVUE */
flex: 0;
/* #endif */
/* #ifndef APP-NVUE */
flex: 1;
display: block;
overflow: hidden;
/* #endif */
}
.uni-noticebar__content--single {
/* #ifndef APP-NVUE */
display: flex;
flex: none;
width: 100%;
justify-content: center;
/* #endif */
}
.uni-noticebar__content-text {
font-size: 14px;
line-height: 18px;
/* #ifndef APP-NVUE */
word-break: break-all;
/* #endif */
}
.uni-noticebar__content-text--single {
/* #ifdef APP-NVUE */
lines: 1;
/* #endif */
/* #ifndef APP-NVUE */
display: block;
width: 100%;
white-space: nowrap;
/* #endif */
overflow: hidden;
text-overflow: ellipsis;
}
.uni-noticebar__content-text--scrollable {
/* #ifdef APP-NVUE */
lines: 1;
padding-left: 750rpx;
/* #endif */
/* #ifndef APP-NVUE */
position: absolute;
display: block;
height: 18px;
line-height: 18px;
white-space: nowrap;
padding-left: 100%;
animation: notice 10s 0s linear infinite both;
animation-play-state: paused;
/* #endif */
}
.uni-noticebar__more {
/* #ifndef APP-NVUE */
display: inline-flex;
/* #endif */
flex-direction: row;
flex-wrap: nowrap;
align-items: center;
padding-left: 5px;
}
@keyframes notice {
100% {
transform: translate3d(-100%, 0, 0);
}
}
</style>

View File

@ -0,0 +1,90 @@
{
"id": "uni-notice-bar",
"displayName": "uni-notice-bar 通告栏",
"version": "1.2.3",
"description": "NoticeBar 通告栏组件,常用于展示公告信息,可设为滚动公告",
"keywords": [
"uni-ui",
"uniui",
"通告栏",
"公告",
"跑马灯"
],
"repository": "https://github.com/dcloudio/uni-ui",
"engines": {
"HBuilderX": ""
},
"directories": {
"example": "../../temps/example_temps"
},
"dcloudext": {
"sale": {
"regular": {
"price": "0.00"
},
"sourcecode": {
"price": "0.00"
}
},
"contact": {
"qq": ""
},
"declaration": {
"ads": "无",
"data": "无",
"permissions": "无"
},
"npmurl": "https://www.npmjs.com/package/@dcloudio/uni-ui",
"type": "component-vue"
},
"uni_modules": {
"dependencies": [
"uni-scss",
"uni-icons"
],
"encrypt": [],
"platforms": {
"cloud": {
"tcb": "y",
"aliyun": "y",
"alipay": "n"
},
"client": {
"App": {
"app-vue": "y",
"app-nvue": "y",
"app-harmony": "u",
"app-uvue": "u"
},
"H5-mobile": {
"Safari": "y",
"Android Browser": "y",
"微信浏览器(Android)": "y",
"QQ浏览器(Android)": "y"
},
"H5-pc": {
"Chrome": "y",
"IE": "y",
"Edge": "y",
"Firefox": "y",
"Safari": "y"
},
"小程序": {
"微信": "y",
"阿里": "y",
"百度": "y",
"字节跳动": "y",
"QQ": "y"
},
"快应用": {
"华为": "u",
"联盟": "u"
},
"Vue": {
"vue2": "y",
"vue3": "y"
}
}
}
}
}

View File

@ -0,0 +1,13 @@
## NoticeBar 通告栏
> **组件名uni-notice-bar**
> 代码块: `uNoticeBar`
通告栏组件 。
### [查看文档](https://uniapp.dcloud.io/component/uniui/uni-notice-bar)
#### 如使用过程中有任何问题或者您对uni-ui有一些好的建议欢迎加入 uni-ui 交流群871950839

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -7331,9 +7331,9 @@ function isConsoleWritable() {
return isWritable;
}
function initRuntimeSocketService() {
const hosts = "127.0.0.1,192.168.0.98";
const hosts = "127.0.0.1,192.168.0.132";
const port = "8090";
const id2 = "mp-baidu_uBKlXF";
const id2 = "mp-baidu_l0ZcfF";
const lazy = typeof swan !== "undefined";
let restoreError = lazy ? () => {
} : initOnError();

View File

@ -139,12 +139,17 @@ const _sfc_main = {
_self.hasMore = "more";
});
},
bindChangeSelPro(e) {
const id = e.detail.value;
const item = this.proList.find((item2) => item2.projId == id);
this.tempSelPro = item;
},
choosePro(e) {
this.tempSelPro = e.currentTarget.dataset.value;
},
//删除图片
delImgs(e) {
common_vendor.index.__f__("log", "at pages/copyright/applyRefund/applyRefund.vue:247", "删除凭证", e);
common_vendor.index.__f__("log", "at pages/copyright/applyRefund/applyRefund.vue:252", "删除凭证", e);
this.files.splice(e.index, 1);
},
//上传图片
@ -198,7 +203,7 @@ const _sfc_main = {
that.msgType = "error";
that.$refs.msg.open();
that.$refs.imgPicker.clearFiles();
common_vendor.index.__f__("error", "at pages/copyright/applyRefund/applyRefund.vue:308", "上传错误:", error);
common_vendor.index.__f__("error", "at pages/copyright/applyRefund/applyRefund.vue:313", "上传错误:", error);
}
},
//提交
@ -309,37 +314,39 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
p: common_vendor.f($data.proList, (item, index, i0) => {
return {
a: index,
b: $data.tempSelPro != null && $data.tempSelPro.projId == item.projId,
c: common_vendor.t(item.projName),
d: common_vendor.t(item.authorName),
e: common_vendor.t(item.gmtCreate),
f: item,
g: item
b: item.projId,
c: $data.tempSelPro != null && $data.tempSelPro.projId == item.projId,
d: common_vendor.t(item.projName),
e: common_vendor.t(item.authorName),
f: common_vendor.t(item.gmtCreate),
g: item,
h: item
};
}),
q: common_vendor.o((...args) => $options.choosePro && $options.choosePro(...args)),
r: common_vendor.p({
r: common_vendor.o((...args) => $options.bindChangeSelPro && $options.bindChangeSelPro(...args)),
s: common_vendor.p({
status: $data.hasMore
}),
s: common_vendor.o((...args) => $options.doRefreshList && $options.doRefreshList(...args)),
t: common_vendor.o((...args) => $options.doLoadMore && $options.doLoadMore(...args)),
v: common_vendor.p({
t: common_vendor.o((...args) => $options.doRefreshList && $options.doRefreshList(...args)),
v: common_vendor.o((...args) => $options.doLoadMore && $options.doLoadMore(...args)),
w: common_vendor.p({
loadingVisible: $data.loadingState
}),
w: common_vendor.o((...args) => $options.confirmSelPro && $options.confirmSelPro(...args)),
x: common_vendor.sr("proDialog", "8fd51228-1"),
y: common_vendor.p({
x: common_vendor.o((...args) => $options.confirmSelPro && $options.confirmSelPro(...args)),
y: common_vendor.sr("proDialog", "8fd51228-1"),
z: common_vendor.p({
type: "bottom",
["background-color"]: "#fff",
["border-radius"]: "15rpx 15rpx 0rpx 0rpx"
}),
z: common_vendor.p({
A: common_vendor.p({
type: $data.msgType,
message: $data.msgHint,
duration: 2e3
}),
A: common_vendor.sr("msg", "8fd51228-4"),
B: common_vendor.p({
B: common_vendor.sr("msg", "8fd51228-4"),
C: common_vendor.p({
type: "message"
})
};

View File

@ -1 +1 @@
<view class="page-container data-v-8fd51228"><swiper class="data-v-8fd51228" indicator-dots style="height:120rpx" autoplay indicator-active-color="#fff"><swiper-item class="data-v-8fd51228"><image class="data-v-8fd51228" src="{{a}}" style="width:100vw;height:120rpx"></image></swiper-item><swiper-item class="data-v-8fd51228"><image class="data-v-8fd51228" src="{{b}}" style="width:100vw;height:120rpx"></image></swiper-item></swiper><view class="apply-box data-v-8fd51228"><text class="label data-v-8fd51228">申请退款</text><view class="apply-item-row mt-20 ml-10 data-v-8fd51228"><view class="apply-title star data-v-8fd51228" style="align-self:center">退款软著</view><view class="apply-content data-v-8fd51228" bindtap="{{e}}"><view class="{{['data-v-8fd51228', d]}}">{{c}}</view><view class="icon-arrow-solid data-v-8fd51228"></view></view></view><view class="apply-item-column mt-20 ml-10 data-v-8fd51228"><view class="apply-title star data-v-8fd51228">退款原因</view><textarea bindinput="{{f}}" value="{{g}}" placeholder="请输入退款原因" placeholder-style="font-size:28rpx;color:$text-gray-hint-color" class="reason-content mt-10 data-v-8fd51228"></textarea></view><view class="apply-item-column mt-20 ml-10 data-v-8fd51228"><view class="apply-title star data-v-8fd51228">退款凭证</view><view class="mt-10 data-v-8fd51228"><uni-file-picker s-if="{{j}}" class="r data-v-8fd51228" u-r="imgPicker" binddelete="__e" bindselect="__e" u-i="8fd51228-0" eO="{{i}}" u-p="{{j}}"></uni-file-picker></view><view class="hint data-v-8fd51228"> *上传完整的补正通知书或者完整的补正通知书的截图,要求右上方的流水号和右下方的补正通知书的日期都得完整显示 </view></view></view><view class="bottom-fixed-footer data-v-8fd51228"><view class="bottom-btn-green data-v-8fd51228" bindtap="{{k}}">提交</view></view><uni-popup s-if="{{y}}" class="r data-v-8fd51228" u-s="{{['d']}}" u-r="proDialog" u-i="8fd51228-1" u-p="{{y}}"><view class="bottom-dialog-container data-v-8fd51228"><view class="dialog-title-box data-v-8fd51228"><view class="search-container data-v-8fd51228"><input placeholder="请输入项目名称" class="search-input data-v-8fd51228" value="{{l}}" bindinput="{{m}}" type="text" bindconfirm="{{n}}" confirm-type="search"/></view><view class="icon-close size-48 data-v-8fd51228" bindtap="{{o}}"></view></view><view style="height:600rpx" class="mt-10 data-v-8fd51228"><container-loading-vue s-if="{{v}}" class="data-v-8fd51228" u-s="{{['d']}}" u-i="8fd51228-2,8fd51228-1" u-p="{{v}}"><scroll-view class="data-v-8fd51228" scroll-y style="height:580rpx" lower-threshold="{{10}}" binddoRefresh="{{s}}" refresher-background="#FFFFFF00" bindscrolltolower="{{t}}"><view class="pro-list-box data-v-8fd51228"><radio-group class="data-v-8fd51228"><view s-for="item in p trackBy item.a" class="pro-list-item data-v-8fd51228" data-value="{{item.g}}"><radio class="data-v-8fd51228" checked="{{item.b}}"></radio><view class="pro-list-item-left data-v-8fd51228" bindtap="{{q}}" data-value="{{item.f}}"><view class="pro-list-item-left-title data-v-8fd51228"><view class="pro-list-name data-v-8fd51228">{{item.c}}</view></view><view class="pro-list-item-left-footer data-v-8fd51228"><view class="pro-list-item-left-tag mr-10 single-line data-v-8fd51228">{{item.d}}</view><view class="pro-list-item-left-tag data-v-8fd51228">{{item.e}}</view></view></view></view></radio-group><uni-load-more s-if="{{r}}" class="data-v-8fd51228" u-i="8fd51228-3,8fd51228-2" u-p="{{r}}"></uni-load-more></view></scroll-view></container-loading-vue></view><view class="bottom-btn-green data-v-8fd51228" bindtap="{{w}}">确定</view></view></uni-popup><uni-popup s-if="{{B}}" class="r data-v-8fd51228" u-s="{{['d']}}" u-r="msg" u-i="8fd51228-4" u-p="{{B}}"><uni-popup-message s-if="{{z}}" class="data-v-8fd51228" u-i="8fd51228-5,8fd51228-4" u-p="{{z}}"></uni-popup-message></uni-popup></view>
<view class="page-container data-v-8fd51228"><swiper class="data-v-8fd51228" indicator-dots style="height:120rpx" autoplay indicator-active-color="#fff"><swiper-item class="data-v-8fd51228"><image class="data-v-8fd51228" src="{{a}}" style="width:100vw;height:120rpx"></image></swiper-item><swiper-item class="data-v-8fd51228"><image class="data-v-8fd51228" src="{{b}}" style="width:100vw;height:120rpx"></image></swiper-item></swiper><view class="apply-box data-v-8fd51228"><text class="label data-v-8fd51228">申请退款</text><view class="apply-item-row mt-20 ml-10 data-v-8fd51228"><view class="apply-title star data-v-8fd51228" style="align-self:center">退款软著</view><view class="apply-content data-v-8fd51228" bindtap="{{e}}"><view class="{{['data-v-8fd51228', d]}}">{{c}}</view><view class="icon-arrow-solid data-v-8fd51228"></view></view></view><view class="apply-item-column mt-20 ml-10 data-v-8fd51228"><view class="apply-title star data-v-8fd51228">退款原因</view><textarea bindinput="{{f}}" value="{{g}}" placeholder="请输入退款原因" placeholder-style="font-size:28rpx;color:$text-gray-hint-color" class="reason-content mt-10 data-v-8fd51228"></textarea></view><view class="apply-item-column mt-20 ml-10 data-v-8fd51228"><view class="apply-title star data-v-8fd51228">退款凭证</view><view class="mt-10 data-v-8fd51228"><uni-file-picker s-if="{{j}}" class="r data-v-8fd51228" u-r="imgPicker" binddelete="__e" bindselect="__e" u-i="8fd51228-0" eO="{{i}}" u-p="{{j}}"></uni-file-picker></view><view class="hint data-v-8fd51228"> *上传完整的补正通知书或者完整的补正通知书的截图,要求右上方的流水号和右下方的补正通知书的日期都得完整显示 </view></view></view><view class="bottom-fixed-footer data-v-8fd51228"><view class="bottom-btn-green data-v-8fd51228" bindtap="{{k}}">提交</view></view><uni-popup s-if="{{z}}" class="r data-v-8fd51228" u-s="{{['d']}}" u-r="proDialog" u-i="8fd51228-1" u-p="{{z}}"><view class="bottom-dialog-container data-v-8fd51228"><view class="dialog-title-box data-v-8fd51228"><view class="search-container data-v-8fd51228"><input placeholder="请输入项目名称" class="search-input data-v-8fd51228" value="{{l}}" bindinput="{{m}}" type="text" bindconfirm="{{n}}" confirm-type="search"/></view><view class="icon-close size-48 data-v-8fd51228" bindtap="{{o}}"></view></view><view style="height:600rpx" class="mt-10 data-v-8fd51228"><container-loading-vue s-if="{{w}}" class="data-v-8fd51228" u-s="{{['d']}}" u-i="8fd51228-2,8fd51228-1" u-p="{{w}}"><scroll-view class="data-v-8fd51228" scroll-y style="height:580rpx" lower-threshold="{{10}}" binddoRefresh="{{t}}" refresher-background="#FFFFFF00" bindscrolltolower="{{v}}"><view class="pro-list-box data-v-8fd51228"><radio-group class="data-v-8fd51228" bindchange="{{r}}"><view s-for="item in p trackBy item.a" class="pro-list-item data-v-8fd51228" data-value="{{item.h}}"><radio class="data-v-8fd51228" value="{{item.b}}" checked="{{item.c}}"></radio><view class="pro-list-item-left data-v-8fd51228" bindtap="{{q}}" data-value="{{item.g}}"><view class="pro-list-item-left-title data-v-8fd51228"><view class="pro-list-name data-v-8fd51228">{{item.d}}</view></view><view class="pro-list-item-left-footer data-v-8fd51228"><view class="pro-list-item-left-tag mr-10 single-line data-v-8fd51228">{{item.e}}</view><view class="pro-list-item-left-tag data-v-8fd51228">{{item.f}}</view></view></view></view></radio-group><uni-load-more s-if="{{s}}" class="data-v-8fd51228" u-i="8fd51228-3,8fd51228-2" u-p="{{s}}"></uni-load-more></view></scroll-view></container-loading-vue></view><view class="bottom-btn-green data-v-8fd51228" bindtap="{{x}}">确定</view></view></uni-popup><uni-popup s-if="{{C}}" class="r data-v-8fd51228" u-s="{{['d']}}" u-r="msg" u-i="8fd51228-4" u-p="{{C}}"><uni-popup-message s-if="{{A}}" class="data-v-8fd51228" u-i="8fd51228-5,8fd51228-4" u-p="{{A}}"></uni-popup-message></uni-popup></view>

View File

@ -92,7 +92,7 @@ const _sfc_main = {
},
confirmSelPro() {
if (this.tempSelPro == null) {
this.msgHint = "请选择退款项目";
this.msgHint = "请选择补正项目";
this.msgType = "error";
this.$refs.msg.open();
} else {
@ -150,12 +150,17 @@ const _sfc_main = {
_self.hasMore = "more";
});
},
bindChangeSelPro(e) {
const id = e.detail.value;
const selectedItem = this.proList.find((item) => item.projId === id);
this.tempSelPro = selectedItem;
},
choosePro(e) {
this.tempSelPro = e.currentTarget.dataset.value;
},
//删除图片
delImgs(e) {
common_vendor.index.__f__("log", "at pages/copyright/applyRepair/applyRepair.vue:296", "删除凭证", e);
common_vendor.index.__f__("log", "at pages/copyright/applyRepair/applyRepair.vue:301", "删除凭证", e);
this.files.splice(e.index, 1);
},
//上传图片
@ -209,7 +214,7 @@ const _sfc_main = {
that.msgType = "error";
that.$refs.msg.open();
that.$refs.imgPicker.clearFiles();
common_vendor.index.__f__("error", "at pages/copyright/applyRepair/applyRepair.vue:356", "上传错误:", error);
common_vendor.index.__f__("error", "at pages/copyright/applyRepair/applyRepair.vue:361", "上传错误:", error);
}
},
//提交申请
@ -329,33 +334,35 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
s: common_vendor.f($data.proList, (item, index, i0) => {
return {
a: index,
b: $data.tempSelPro != null && $data.tempSelPro.projId == item.projId,
c: common_vendor.t(item.projName),
d: "已通过补正<span style=color:red;font-size:28rpx;font-weight:bold;>" + item.approvedCount + "</span>次",
e: common_vendor.t(item.authorName),
f: common_vendor.t(item.gmtCreate),
g: item,
h: item
b: item.projId,
c: $data.tempSelPro != null && $data.tempSelPro.projId == item.projId,
d: common_vendor.t(item.projName),
e: "已通过补正<span style=color:red;font-size:28rpx;font-weight:bold;>" + item.approvedCount + "</span>次",
f: common_vendor.t(item.authorName),
g: common_vendor.t(item.gmtCreate),
h: item,
i: item
};
}),
t: common_vendor.o((...args) => $options.choosePro && $options.choosePro(...args)),
v: common_vendor.p({
v: common_vendor.o((...args) => $options.bindChangeSelPro && $options.bindChangeSelPro(...args)),
w: common_vendor.p({
status: $data.hasMore
}),
w: common_vendor.o((...args) => $options.doRefreshList && $options.doRefreshList(...args)),
x: common_vendor.o((...args) => $options.doLoadMore && $options.doLoadMore(...args)),
y: common_vendor.p({
x: common_vendor.o((...args) => $options.doRefreshList && $options.doRefreshList(...args)),
y: common_vendor.o((...args) => $options.doLoadMore && $options.doLoadMore(...args)),
z: common_vendor.p({
loadingVisible: $data.loadingState
}),
z: common_vendor.o((...args) => $options.confirmSelPro && $options.confirmSelPro(...args)),
A: common_vendor.sr("proDialog", "4a9d8e58-1"),
B: common_vendor.p({
A: common_vendor.o((...args) => $options.confirmSelPro && $options.confirmSelPro(...args)),
B: common_vendor.sr("proDialog", "4a9d8e58-1"),
C: common_vendor.p({
type: "bottom",
["background-color"]: "#fff",
["border-radius"]: "15rpx 15rpx 0rpx 0rpx"
}),
C: common_vendor.o((...args) => $options.closeDialog && $options.closeDialog(...args)),
D: common_vendor.f($data.typeList, (item, index, i0) => {
D: common_vendor.o((...args) => $options.closeDialog && $options.closeDialog(...args)),
E: common_vendor.f($data.typeList, (item, index, i0) => {
return {
a: index,
b: $data.tempSelType != null && $data.tempSelType.value == item.value,
@ -363,21 +370,21 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
d: item
};
}),
E: common_vendor.o((...args) => $options.chooseType && $options.chooseType(...args)),
F: common_vendor.o((...args) => $options.confirmSelType && $options.confirmSelType(...args)),
G: common_vendor.sr("typeDialog", "4a9d8e58-4"),
H: common_vendor.p({
F: common_vendor.o((...args) => $options.chooseType && $options.chooseType(...args)),
G: common_vendor.o((...args) => $options.confirmSelType && $options.confirmSelType(...args)),
H: common_vendor.sr("typeDialog", "4a9d8e58-4"),
I: common_vendor.p({
type: "bottom",
["background-color"]: "#fff",
["border-radius"]: "15rpx 15rpx 0rpx 0rpx"
}),
I: common_vendor.p({
J: common_vendor.p({
type: $data.msgType,
message: $data.msgHint,
duration: 2e3
}),
J: common_vendor.sr("msg", "4a9d8e58-5"),
K: common_vendor.p({
K: common_vendor.sr("msg", "4a9d8e58-5"),
L: common_vendor.p({
type: "message"
})
};

File diff suppressed because one or more lines are too long

View File

@ -367,6 +367,7 @@ scroll-view ::-webkit-scrollbar {
color: white;
padding: 2px 5px;
border-radius: 5px;
white-space: nowrap;
}
.project-re-btn:active {
background-color: rgba(255, 0, 0, 0.301);

View File

@ -98,17 +98,17 @@ const _sfc_main = {
//计算状态栏等高度
countBarHeight() {
const deviceInfo = common_vendor.index.getSystemInfoSync();
common_vendor.index.__f__("log", "at pages/index/home.vue:339", "设备信息", deviceInfo);
common_vendor.index.__f__("log", "at pages/index/home.vue:337", "设备信息", deviceInfo);
this.statusBarHeight = deviceInfo.statusBarHeight;
this.totalHeight = deviceInfo.osName.toLowerCase() == "ios" ? 48 : 50;
common_vendor.index.__f__("log", "at pages/index/home.vue:342", "系统平台", deviceInfo.osName);
common_vendor.index.__f__("log", "at pages/index/home.vue:340", "系统平台", deviceInfo.osName);
},
//获取我的个人信息
getMineInfo() {
common_js_net_UserApi.UserApi.doGetMineAccount().then((res) => {
common_js_cache_storage.set("userId", res.userId);
}).catch((err) => {
common_vendor.index.__f__("log", "at pages/index/home.vue:352", err);
common_vendor.index.__f__("log", "at pages/index/home.vue:350", err);
});
},
//获取可以申领的优惠卷
@ -119,18 +119,18 @@ const _sfc_main = {
this.showAd = true;
}
}).catch((err) => {
common_vendor.index.__f__("log", "at pages/index/home.vue:366", err);
common_vendor.index.__f__("log", "at pages/index/home.vue:364", err);
});
},
// 获取通知信息
doGetNotice() {
const _self = this;
common_vendor.index.__f__("log", "at pages/index/home.vue:372", _self.defaultNotice);
common_vendor.index.__f__("log", "at pages/index/home.vue:370", _self.defaultNotice);
common_js_net_projectApi.ProApi.doGetNotice().then((res) => {
common_vendor.index.__f__("log", "at pages/index/home.vue:375", res);
common_vendor.index.__f__("log", "at pages/index/home.vue:373", res);
_self.noticeContent = res.data && res.data != "" ? res.data : _self.defaultNotice;
}).catch((err) => {
common_vendor.index.__f__("log", "at pages/index/home.vue:379", err);
common_vendor.index.__f__("log", "at pages/index/home.vue:377", err);
});
},
//去创建项目
@ -157,7 +157,7 @@ const _sfc_main = {
common_js_net_projectApi.ProApi.doGetTagList().then((res) => {
_self.tagList = res;
}).catch((err) => {
common_vendor.index.__f__("log", "at pages/index/home.vue:408", err);
common_vendor.index.__f__("log", "at pages/index/home.vue:406", err);
});
},
//切换type
@ -206,7 +206,7 @@ const _sfc_main = {
const _self = this;
_self.listLoading = isRefresh ? "loading" : "";
common_js_net_projectApi.ProApi.doGetSelfProjectList(params).then((res) => {
common_vendor.index.__f__("log", "at pages/index/home.vue:455", res);
common_vendor.index.__f__("log", "at pages/index/home.vue:453", res);
var status = "success";
status = res.rows && res.rows.length > 0 ? "success" : "empty";
const list = _self.addPrefixToPreviewImgs(res.rows);
@ -230,7 +230,7 @@ const _sfc_main = {
},
//刷新列表
doRefreshList() {
common_vendor.index.__f__("log", "at pages/index/home.vue:480", "页面刷新...");
common_vendor.index.__f__("log", "at pages/index/home.vue:478", "页面刷新...");
const _self = this;
_self.listRefreshTrig = true;
_self.listLoading = "loading";
@ -255,22 +255,22 @@ const _sfc_main = {
const windowHeight = systemInfo.windowHeight;
const screenHeight = systemInfo.screenHeight;
const screenWidth = systemInfo.screenWidth;
common_vendor.index.__f__("log", "at pages/index/home.vue:507", "系统属性", systemInfo);
common_vendor.index.__f__("log", "at pages/index/home.vue:505", "系统属性", systemInfo);
const query = common_vendor.index.createSelectorQuery().in(this);
query.select("#up-box").boundingClientRect((data) => {
if (data) {
const occupiedHeight = data.height;
let tabbarHeight = screenHeight - windowHeight;
this.contentHeight = windowHeight - occupiedHeight - tabbarHeight - 10;
common_vendor.index.__f__("log", "at pages/index/home.vue:522", "计算前内容高度", this.contentHeight);
common_vendor.index.__f__("log", "at pages/index/home.vue:520", "计算前内容高度", this.contentHeight);
let coverHeight = common_js_util.pxToRpx(this.contentHeight, screenWidth);
this.contentHeight = coverHeight;
common_vendor.index.__f__("log", "at pages/index/home.vue:525", "头布局高度", occupiedHeight);
common_vendor.index.__f__("log", "at pages/index/home.vue:526", "屏幕高度", screenHeight);
common_vendor.index.__f__("log", "at pages/index/home.vue:527", "窗口高度", windowHeight);
common_vendor.index.__f__("log", "at pages/index/home.vue:528", "计算内容高度", this.contentHeight);
common_vendor.index.__f__("log", "at pages/index/home.vue:523", "头布局高度", occupiedHeight);
common_vendor.index.__f__("log", "at pages/index/home.vue:524", "屏幕高度", screenHeight);
common_vendor.index.__f__("log", "at pages/index/home.vue:525", "窗口高度", windowHeight);
common_vendor.index.__f__("log", "at pages/index/home.vue:526", "计算内容高度", this.contentHeight);
} else {
common_vendor.index.__f__("log", "at pages/index/home.vue:530", "未获取到高度");
common_vendor.index.__f__("log", "at pages/index/home.vue:528", "未获取到高度");
}
}).exec();
},
@ -302,8 +302,9 @@ const _sfc_main = {
});
},
//显示下载弹窗
doShowDownload(item) {
common_vendor.index.__f__("log", "at pages/index/home.vue:567", "点击了下载");
doShowDownload(e) {
const item = e.currentTarget.dataset.value;
common_vendor.index.__f__("log", "at pages/index/home.vue:566", "点击了下载");
this.$refs.downloadPopup.open();
this.sysPreviewUrl = `${this.cUrl}/${item.previewUrl}`;
this.tempItem = item;
@ -313,7 +314,7 @@ const _sfc_main = {
common_vendor.index.setClipboardData({
data: this.sysPreviewUrl,
success: function() {
common_vendor.index.__f__("log", "at pages/index/home.vue:577", "success");
common_vendor.index.__f__("log", "at pages/index/home.vue:576", "success");
}
});
},
@ -334,18 +335,19 @@ const _sfc_main = {
try {
const _self = this;
const postfix = e.currentTarget.dataset.type;
common_vendor.index.__f__("log", "at pages/index/home.vue:598", "文件后缀", postfix);
common_vendor.index.__f__("log", "at pages/index/home.vue:597", "文件后缀", postfix);
_self.downloadProgress = 0;
_self.downloading = true;
this.$refs.downloadPopup.close();
const path = e.currentTarget.dataset.path;
const url = this.cUrl + path + _self.tempItem.projId;
const fileName = "bdfile://usr/apply." + postfix;
const fileName = "bdfile://usr/" + _self.tempItem.projId + "." + postfix;
const token = common_js_cache_storage.get("token");
const header = {};
if (token) {
header.Auth = `Bearer ${token}`;
}
common_vendor.index.__f__("log", "at pages/index/home.vue:609", "下载路径", url);
const downloadRes = await _self.doDownload(url, header, fileName);
common_vendor.index.__f__("log", "at pages/index/home.vue:611", "下载完成的文件", downloadRes);
if (downloadRes && downloadRes.statusCode == 200) {
@ -503,19 +505,21 @@ const _sfc_main = {
}
};
if (!Array) {
const _easycom_uni_notice_bar2 = common_vendor.resolveComponent("uni-notice-bar");
const _easycom_uni_load_more2 = common_vendor.resolveComponent("uni-load-more");
const _component_ContainerLoading = common_vendor.resolveComponent("ContainerLoading");
const _easycom_uni_popup2 = common_vendor.resolveComponent("uni-popup");
const _component_DownloadProgress = common_vendor.resolveComponent("DownloadProgress");
const _component_AdPopup = common_vendor.resolveComponent("AdPopup");
const _easycom_uni_popup_message2 = common_vendor.resolveComponent("uni-popup-message");
(_easycom_uni_load_more2 + _component_ContainerLoading + _easycom_uni_popup2 + _component_DownloadProgress + _component_AdPopup + _easycom_uni_popup_message2)();
(_easycom_uni_notice_bar2 + _easycom_uni_load_more2 + _component_ContainerLoading + _easycom_uni_popup2 + _component_DownloadProgress + _component_AdPopup + _easycom_uni_popup_message2)();
}
const _easycom_uni_notice_bar = () => "../../uni_modules/uni-notice-bar/components/uni-notice-bar/uni-notice-bar.js";
const _easycom_uni_load_more = () => "../../uni_modules/uni-load-more/components/uni-load-more/uni-load-more.js";
const _easycom_uni_popup = () => "../../uni_modules/uni-popup/components/uni-popup/uni-popup.js";
const _easycom_uni_popup_message = () => "../../uni_modules/uni-popup/components/uni-popup-message/uni-popup-message.js";
if (!Math) {
(_easycom_uni_load_more + _easycom_uni_popup + _easycom_uni_popup_message)();
(_easycom_uni_notice_bar + _easycom_uni_load_more + _easycom_uni_popup + _easycom_uni_popup_message)();
}
function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
return {
@ -523,7 +527,15 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
b: $data.statusBarHeight + "px",
c: common_vendor.o((...args) => $options.createCopy && $options.createCopy(...args)),
d: common_vendor.o((...args) => $options.goPayment && $options.goPayment(...args)),
e: common_vendor.t($data.noticeContent),
e: common_vendor.p({
speed: 30,
["background-color"]: "#FFE5BC",
color: "#42210B",
scrollable: true,
single: true,
showIcon: true,
text: $data.noticeContent
}),
f: common_vendor.o(($event) => $options.doChangeStatus("PROCESSING")),
g: common_vendor.n($data.currentStatus == "PROCESSING" ? "btn-select" : "btn-normal"),
h: common_vendor.o(($event) => $options.doChangeStatus("COMPLETE")),
@ -571,17 +583,21 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
}, {
i: item.btnStatus == "DOWNLOAD"
}, item.btnStatus == "DOWNLOAD" ? {
j: common_vendor.o(($event) => $options.doShowDownload(item))
j: common_vendor.o((...args) => $options.doShowDownload && $options.doShowDownload(...args)),
k: item
} : item.btnStatus == "AIGEN" ? {
l: common_vendor.o(($event) => $options.doCreatePro(item))
m: common_vendor.o((...args) => $options.doCreatePro && $options.doCreatePro(...args)),
n: item
} : item.btnStatus == "RELOAD" ? {
n: common_vendor.o(($event) => $options.doReCreate(item))
p: common_vendor.o((...args) => $options.doReCreate && $options.doReCreate(...args)),
q: item
} : item.btnStatus == "GEN" ? {
p: common_vendor.o(($event) => $options.doCreatePro(item))
s: common_vendor.o((...args) => $options.doCreatePro && $options.doCreatePro(...args)),
t: item
} : {}, {
k: item.btnStatus == "AIGEN",
m: item.btnStatus == "RELOAD",
o: item.btnStatus == "GEN"
l: item.btnStatus == "AIGEN",
o: item.btnStatus == "RELOAD",
r: item.btnStatus == "GEN"
});
}),
n: common_vendor.p({
@ -605,7 +621,7 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
z: common_vendor.o((...args) => $options.download && $options.download(...args)),
A: common_vendor.o((...args) => $options.download && $options.download(...args)),
B: common_vendor.o((...args) => $options.download && $options.download(...args)),
C: common_vendor.sr("downloadPopup", "7b6d5f55-2"),
C: common_vendor.sr("downloadPopup", "7b6d5f55-3"),
D: common_vendor.p({
type: "bottom",
["border-radius"]: "15rpx 15rpx 0rpx 0rpx"
@ -628,7 +644,7 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
message: $data.msgTxt,
duration: 2e3
}),
I: common_vendor.sr("msg", "7b6d5f55-5"),
I: common_vendor.sr("msg", "7b6d5f55-6"),
J: common_vendor.p({
type: "message"
})

View File

@ -6,6 +6,7 @@
"ad-popup": "../../components/ad-popup",
"container-loading": "../../components/container-loading",
"download-progress": "../../components/download-progress",
"uni-notice-bar": "../../uni_modules/uni-notice-bar/components/uni-notice-bar/uni-notice-bar",
"uni-load-more": "../../uni_modules/uni-load-more/components/uni-load-more/uni-load-more",
"uni-popup": "../../uni_modules/uni-popup/components/uni-popup/uni-popup",
"uni-popup-message": "../../uni_modules/uni-popup/components/uni-popup-message/uni-popup-message"

File diff suppressed because one or more lines are too long

View File

@ -33,7 +33,7 @@ const _sfc_main = {
this.phoneNumber = common_js_cache_storage.get("loginPhone", "");
},
onUnload() {
common_vendor.index.__f__("log", "at pages/login/login.vue:136", "页面卸载");
common_vendor.index.__f__("log", "at pages/login/login.vue:134", "页面卸载");
if (this.timer != null) {
clearInterval(this.timer);
}
@ -102,9 +102,9 @@ const _sfc_main = {
_self.msgType = "success";
_self.$refs.msg.open();
_self.timer = setInterval(_self.startCountDown, 1e3);
common_vendor.index.__f__("log", "at pages/login/login.vue:207", res);
common_vendor.index.__f__("log", "at pages/login/login.vue:205", res);
}).catch((err) => {
common_vendor.index.__f__("log", "at pages/login/login.vue:210", err);
common_vendor.index.__f__("log", "at pages/login/login.vue:208", err);
common_vendor.index.hideLoading();
_self.msgHint = err.msg ? err.msg : "获取验证码失败,请稍后重试";
_self.msgType = "error";
@ -188,7 +188,7 @@ const _sfc_main = {
}
}).catch((err) => {
common_vendor.index.hideLoading();
common_vendor.index.__f__("log", "at pages/login/login.vue:299", err);
common_vendor.index.__f__("log", "at pages/login/login.vue:297", err);
_self.msgHint = err.msg ? err.msg : "登录失败,请稍后重试";
_self.msgType = "error";
_self.$refs.msg.open();

View File

@ -71,11 +71,11 @@ const _sfc_main = {
rows: 20
};
common_js_net_payApi.PayApi.doGetBuyPackageList(path, data).then((res) => {
common_vendor.index.__f__("log", "at pages/pay/payment/payment.vue:155", res);
common_vendor.index.__f__("log", "at pages/pay/payment/payment.vue:160", res);
_self.listLoading = res.rows && res.rows.length > 0 ? "success" : "empty";
_self.bagList = res.rows;
}).catch((err2) => {
common_vendor.index.__f__("log", "at pages/pay/payment/payment.vue:160", err2);
common_vendor.index.__f__("log", "at pages/pay/payment/payment.vue:165", err2);
_self.listLoading = "error";
_self.msgType = "error";
_self.msgTxt = "不好意思,没能获取到套餐数据。请您再试一次,相信马上就能看到啦。";
@ -146,7 +146,7 @@ const _sfc_main = {
});
common_js_net_payApi.PayApi.doGetBdPayParams(data).then((res) => {
common_vendor.index.hideLoading();
common_vendor.index.__f__("log", "at pages/pay/payment/payment.vue:235", "获取支付参数成功", res);
common_vendor.index.__f__("log", "at pages/pay/payment/payment.vue:240", "获取支付参数成功", res);
if (res && res.tpOrderId) {
const orderInfoRes = {
dealId: res.dealId,
@ -162,7 +162,7 @@ const _sfc_main = {
provider: "baidu",
orderInfo: orderInfoRes,
success: (succRes) => {
common_vendor.index.__f__("log", "at pages/pay/payment/payment.vue:251", "支付成功", succRes);
common_vendor.index.__f__("log", "at pages/pay/payment/payment.vue:256", "支付成功", succRes);
_self.msgTxt = "恭喜,您的充值已成功到账!";
_self.msgType = "success";
_self.$refs.msg.open();
@ -171,21 +171,21 @@ const _sfc_main = {
}, 1800);
},
fail: (failErr) => {
common_vendor.index.__f__("log", "at pages/pay/payment/payment.vue:260", "调用支付函数失败", failErr);
common_vendor.index.__f__("log", "at pages/pay/payment/payment.vue:265", "调用支付函数失败", failErr);
_self.msgTxt = failErr.errMsg ? failErr.errMsg : "很抱歉,本次充值失败,可能是网络不稳定或支付信息有误,请检查后重试。";
_self.msgType = "error";
_self.$refs.msg.open();
}
});
} else {
common_vendor.index.__f__("log", "at pages/pay/payment/payment.vue:269", "获取支付参数失败", res);
common_vendor.index.__f__("log", "at pages/pay/payment/payment.vue:274", "获取支付参数失败", res);
_self.msgType = "error";
_self.msgTxt = err.msg ? err.msg : "很抱歉,本次充值失败,可能是网络不稳定或支付信息有误,请检查后重试。";
_self.$refs.msg.open();
}
}).catch((err2) => {
common_vendor.index.hideLoading();
common_vendor.index.__f__("log", "at pages/pay/payment/payment.vue:277", "获取支付参数失败Fail", err2);
common_vendor.index.__f__("log", "at pages/pay/payment/payment.vue:282", "获取支付参数失败Fail", err2);
_self.msgType = "error";
_self.msgTxt = err2.msg ? err2.msg : "很抱歉,本次充值失败,可能是网络不稳定或支付信息有误,请检查后重试。";
_self.$refs.msg.open();

View File

@ -1 +1 @@
<view class="page-container"><swiper indicator-dots style="height:120rpx" autoplay indicator-active-color="#fff"><swiper-item><image src="{{a}}" style="width:100vw;height:120rpx"></image></swiper-item><swiper-item><image src="{{b}}" style="width:100vw;height:120rpx"></image></swiper-item></swiper><view class="card-box sum-input-box mt-20"><view class="mt-20">充值金额</view><view class="sum-input mt-20"><text style="font-size:12px;margin-bottom:6px">¥</text><input class="input-money" type="digit" placeholder-style="font-size:23px;" placeholder="请输入金额" bindinput="{{c}}" value="{{d}}"/></view><scroll-view scroll-x class="mt-20"><view class="list-tabs"><block s-for="item in e trackBy item.a"><view class="{{[item.c, 'item-margin']}}" bindtap="{{f}}" data-value="{{item.d}}" data-index="{{item.e}}"><text>{{item.b}}</text></view></block></view></scroll-view></view><view class="card-box mt-20"><view>付款方式</view><radio-group class="form-radio_wrap"><view class="pay-option-item mt-20" bindtap="{{h}}" data-value="1"><view class="option-type"><view class="icon icon-bd"></view><view>在线支付</view></view><radio checked="{{g}}" value="1"></radio></view><view class="pay-option-item" bindtap="{{j}}" data-value="2"><view class="option-type"><view class="icon icon-card"></view><view>对公转账</view></view><radio checked="{{i}}" value="2"></radio></view></radio-group></view><view class="card-box mt-20"><view class="bag-box"><view class="{{[k, 'border-left']}}" bindtap="{{l}}" data-value="MATERIAL">写材料套餐包</view><view class="{{[m, 'border-right']}}" bindtap="{{n}}" data-value="ALL">全托管套餐包</view></view><container-loading s-if="{{r}}" u-s="{{['d']}}" style="min-height:40vh" binddoRefresh="__e" u-i="6e10c4e6-0" eO="{{q}}" u-p="{{r}}"><view class="bag-list" style="min-height:40vh"><block s-for="item in o trackBy item.a"><view class="bag-item"><view class="bag-item-title-box"><view class="bag-title">{{item.b}}</view><view class="bag-desc">{{item.c}}</view></view><view class="bag-item-desc-box"><rich-text nodes="{{item.d}}"></rich-text><view class="bag-btn" bindtap="{{p}}" data-value="{{item.e}}">选购</view></view></view></block></view></container-loading></view><view class="bottom-fixed-footer"><view class="bottom-btn-green" bindtap="{{s}}">确认充值</view></view></view><view><uni-popup s-if="{{w}}" class="r" u-s="{{['d']}}" u-r="msg" u-i="6e10c4e6-1" u-p="{{w}}"><uni-popup-message s-if="{{t}}" u-i="6e10c4e6-2,6e10c4e6-1" u-p="{{t}}"></uni-popup-message></uni-popup></view>
<view class="page-container"><swiper indicator-dots style="height:120rpx" autoplay indicator-active-color="#fff"><swiper-item><image src="{{a}}" style="width:100vw;height:120rpx"></image></swiper-item><swiper-item><image src="{{b}}" style="width:100vw;height:120rpx"></image></swiper-item></swiper><view class="card-box sum-input-box mt-20"><view class="mt-20">充值金额</view><view class="sum-input mt-20"><text style="font-size:12px;margin-bottom:6px">¥</text><input class="input-money" type="digit" placeholder-style="font-size:23px;" placeholder="请输入金额" bindinput="{{c}}" value="{{d}}"/></view><scroll-view scroll-x class="mt-20"><view class="list-tabs"><block s-for="item in e trackBy item.a"><view class="{{[item.c, 'item-margin']}}" bindtap="{{f}}" data-value="{{item.d}}" data-index="{{item.e}}"><text>{{item.b}}</text></view></block></view></scroll-view></view><view class="card-box mt-20"><view>付款方式</view><radio-group class="form-radio_wrap"><view class="pay-option-item mt-20" bindtap="{{h}}" data-value="1"><view class="option-type"><view class="icon icon-bd"></view><view>百度支付</view></view><radio checked="{{g}}" value="1"></radio></view><view class="pay-option-item" bindtap="{{j}}" data-value="2"><view class="option-type"><view class="icon icon-card"></view><view>对公转账</view></view><radio checked="{{i}}" value="2"></radio></view></radio-group></view><view class="card-box mt-20"><view class="bag-box"><view class="{{[k, 'border-left']}}" bindtap="{{l}}" data-value="MATERIAL">写材料套餐包</view><view class="{{[m, 'border-right']}}" bindtap="{{n}}" data-value="ALL">全托管套餐包</view></view><container-loading s-if="{{r}}" u-s="{{['d']}}" style="min-height:40vh" binddoRefresh="__e" u-i="6e10c4e6-0" eO="{{q}}" u-p="{{r}}"><view class="bag-list" style="min-height:40vh"><block s-for="item in o trackBy item.a"><view class="bag-item"><view class="bag-item-title-box"><view class="bag-title">{{item.b}}</view><view class="bag-desc">{{item.c}}</view></view><view class="bag-item-desc-box"><rich-text nodes="{{item.d}}"></rich-text><view class="bag-btn" bindtap="{{p}}" data-value="{{item.e}}">选购</view></view></view></block></view></container-loading></view><view class="bottom-fixed-footer"><view class="bottom-btn-green" bindtap="{{s}}">确认充值</view></view></view><view><uni-popup s-if="{{w}}" class="r" u-s="{{['d']}}" u-r="msg" u-i="6e10c4e6-1" u-p="{{w}}"><uni-popup-message s-if="{{t}}" u-i="6e10c4e6-2,6e10c4e6-1" u-p="{{t}}"></uni-popup-message></uni-popup></view>

View File

@ -1,6 +1,7 @@
"use strict";
const common_vendor = require("../../../common/vendor.js");
const common_js_net_shop = require("../../../common/js/net/shop.js");
const common_js_validator = require("../../../common/js/validator.js");
const _sfc_main = {
setup() {
},
@ -237,7 +238,7 @@ const _sfc_main = {
{
field: "orgPhone",
message: "请输入合法的联系电话",
validator: (v) => typeof v === "string" && v.trim().length > 0 && this.isValidPhone(v.trim())
validator: (v) => typeof v === "string" && v.trim().length > 0 && common_js_validator.isValidPhone(v.trim())
},
{
field: "selCreType",
@ -296,6 +297,7 @@ const _sfc_main = {
title: "上报中..."
});
const data = this.buildParams();
common_vendor.index.__f__("log", "at pages/shop/addAssigneeInfo/addAssigneeInfo.vue:437", data);
await common_js_net_shop.Shop.doSaveBuyPersonInfo(this.orderId, data);
common_vendor.index.hideLoading();
this.msgHint = "上报成功";
@ -306,6 +308,7 @@ const _sfc_main = {
}, 1200);
}
} catch (err) {
common_vendor.index.__f__("log", "at pages/shop/addAssigneeInfo/addAssigneeInfo.vue:449", err);
common_vendor.index.hideLoading();
this.msgHint = err.msg || "网络错误,请稍后重试";
this.msgType = "error";

View File

@ -174,7 +174,7 @@
}
.upload-file-item.data-v-0ecbe332 {
width: 20%;
height: 150rpx;
height: 180rpx;
display: flex;
flex-direction: column;
justify-content: center;
@ -217,13 +217,14 @@
}
.accessory-img.data-v-0ecbe332 {
width: 100%;
height: 100rpx;
height: 160rpx;
}
.file-name.data-v-0ecbe332 {
width: 100%;
font-size: 20rpx;
white-space: nowrap;
overflow: hidden;
line-height: 20rpx;
text-overflow: ellipsis;
}
.icon-source.data-v-0ecbe332 {

View File

@ -2,6 +2,7 @@
const common_vendor = require("../../../common/vendor.js");
const common_js_net_shop = require("../../../common/js/net/shop.js");
const common_js_net_mainUrl = require("../../../common/js/net/mainUrl.js");
const common_js_cache_storage = require("../../../common/js/cache/storage.js");
const DownProgress = () => "../../../components/download-progress.js";
const _sfc_main = {
components: {
@ -16,6 +17,7 @@ const _sfc_main = {
msgShow: false,
files: [],
maxCount: 4,
maxFixedCount: 4,
replenishId: "",
replenish: null,
replenishFiles: [],
@ -68,7 +70,6 @@ const _sfc_main = {
const res = await common_js_net_shop.Shop.doGetReplenishDetail(this.replenishId);
common_vendor.index.hideLoading();
this.replenish = res;
common_vendor.index.__f__("log", "at pages/shop/addReplenishStuff/addReplenishStuff.vue:168", "详情", res);
if (this.replenish.correctionFiles) {
await this.doGetFileInfo(this.replenish.correctionFiles);
}
@ -109,13 +110,15 @@ const _sfc_main = {
return item;
});
},
doPreImg(url) {
doPreImg(e) {
const url = e.currentTarget.dataset.value;
common_vendor.index.previewImage({
urls: [url]
});
},
// 下载文件
doDownloadFile(item) {
doDownloadFile(e) {
const item = e.currentTarget.dataset.value;
if (this.isImageFile(item.fileName)) {
this.doPreImg(item.netUrl);
} else {
@ -130,48 +133,55 @@ const _sfc_main = {
try {
this.downloadProgress = 0;
this.downloading = true;
const token = common_vendor.index.getStorageSync("token");
const token = common_js_cache_storage.get("token");
const header = token ? {
"Auth": `Bearer ${token}`
} : {};
const downloadTask = common_vendor.index.downloadFile({
url: item.netUrl,
url: item.netUrl + "." + item.fileType,
header,
success: (res) => {
if (res.statusCode === 200) {
this.saveAndOpenFile(res.tempFilePath, item.fileName);
common_vendor.index.__f__("log", "at pages/shop/addReplenishStuff/addReplenishStuff.vue:249", "下载文件成功", res);
var path = "";
if (res.tempFilePath.endsWith("." + item.fileType)) {
path = res.tempFilePath;
} else {
path = res.tempFilePath + "." + item.fileType;
}
this.saveAndOpenFile(path, item.fileType);
} else {
throw new Error("下载失败");
}
}
});
downloadTask.onProgressUpdate((res) => {
this.downloadProgress = res.progress;
this.downloadProgress = Number(res.progress);
});
await new Promise((resolve, reject) => {
downloadTask.onSuccess(resolve);
downloadTask.onFail(reject);
});
} catch (err) {
common_vendor.index.__f__("log", "at pages/shop/addReplenishStuff/addReplenishStuff.vue:269", "下载失败", err);
common_vendor.index.__f__("log", "at pages/shop/addReplenishStuff/addReplenishStuff.vue:272", "下载失败", err);
this.showMessage("很抱歉,文件下载出现问题。建议您稍作等待,之后再尝试下载。", "error");
} finally {
this.downloadProgress = 0;
this.downloading = false;
}
},
saveAndOpenFile(tempFilePath, fileName) {
common_vendor.index.saveFile({
tempFilePath,
success: (res) => {
common_vendor.index.openDocument({
filePath: res.savedFilePath,
showMenu: true
});
saveAndOpenFile(path, fileType) {
common_vendor.index.__f__("log", "at pages/shop/addReplenishStuff/addReplenishStuff.vue:281", "打开文件", path, fileType);
const that = this;
common_vendor.index.openDocument({
filePath: path,
fileType,
showMenu: true,
success(res) {
that.showMessage("下载成功", "success");
},
fail: (err) => {
common_vendor.index.__f__("error", "at pages/shop/addReplenishStuff/addReplenishStuff.vue:287", "文件保存失败", err);
this.showMessage("很抱歉,文件下载出现问题。建议您稍作等待,之后再尝试下载。", "error");
fail(err) {
that.showMessage("很抱歉,文件下载出现问题。建议您稍作等待,之后再尝试下载。", "error");
}
});
},
@ -228,22 +238,33 @@ const _sfc_main = {
}
},
bindChooseFile() {
this.showActionsheet = true;
const that = this;
common_vendor.index.chooseImage({
count: that.maxCount,
success(res) {
if (res.tempFilePaths && res.tempFilePaths.length > 0) {
that.doUploadFile(res.tempFilePaths);
}
},
fail(err) {
that.showMessage("选择图片失败,请稍后重试", "error");
}
});
},
// 上传文件 type=1 图片 =2文件
async doUploadFile(type, files) {
async doUploadFile(files) {
try {
common_vendor.index.showLoading({
title: "上传中..."
});
const upUrl = type === 1 ? common_js_net_mainUrl.upShopImgUrl : common_js_net_mainUrl.upShopFileUrl;
const upType = type === 1 ? "image" : "file";
const token = common_vendor.index.getStorageSync("token");
const upUrl = common_js_net_mainUrl.upShopImgUrl;
const upType = "image";
const token = common_js_cache_storage.get("token");
const header = token ? {
"Auth": `Bearer ${token}`
} : {};
const uploadPromises = files.map((file, index) => {
const filePath = type === 1 ? file.tempFilePath : file.path;
const filePath = file;
return new Promise((resolve, reject) => {
common_vendor.index.uploadFile({
url: upUrl,
@ -252,9 +273,12 @@ const _sfc_main = {
name: upType,
success: (res) => {
try {
const result = JSON.parse(res.data);
result.data.netUrl = common_js_net_mainUrl.sImgPrefix + result.data.fileId;
resolve(result.data);
let data = res.data;
if (typeof data === "string") {
data = JSON.parse(data);
}
data.data.netUrl = common_js_net_mainUrl.sImgPrefix + data.data.fileId;
resolve(data.data);
} catch (err) {
reject(new Error("解析上传结果失败"));
}
@ -265,16 +289,20 @@ const _sfc_main = {
});
const results = await Promise.all(uploadPromises);
this.files = [...this.files, ...results];
this.maxCount = this.maxFixedCount - this.files.length;
common_vendor.index.hideLoading();
} catch (err) {
common_vendor.index.__f__("error", "at pages/shop/addReplenishStuff/addReplenishStuff.vue:397", "上传失败", err);
common_vendor.index.__f__("error", "at pages/shop/addReplenishStuff/addReplenishStuff.vue:416", "上传失败", err);
common_vendor.index.hideLoading();
this.showMessage("上传文件失败,请稍后重试", "error");
}
},
doDelFile(item, index) {
doDelFile(e) {
e.currentTarget.dataset.value;
const index = e.currentTarget.dataset.index;
if (index >= 0 && index < this.files.length) {
this.files.splice(index, 1);
this.maxCount = this.maxFixedCount - this.files.length;
}
},
// 校验参数
@ -339,11 +367,13 @@ if (!Math) {
}
function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
return common_vendor.e({
a: common_vendor.t($data.replenish.correctionTitle),
b: common_vendor.t($data.replenish.correctionRemark),
c: $data.replenish.correctionFiles !== ""
a: $data.replenish != null
}, $data.replenish != null ? common_vendor.e({
b: common_vendor.t($data.replenish.correctionTitle),
c: common_vendor.t($data.replenish.correctionRemark),
d: $data.replenish.correctionFiles !== ""
}, $data.replenish.correctionFiles !== "" ? {
d: common_vendor.f($data.replenishFiles, (item, index, i0) => {
e: common_vendor.f($data.replenishFiles, (item, index, i0) => {
return common_vendor.e({
a: index,
b: $options.isImageFile(item.fileType)
@ -356,42 +386,37 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
f: item
});
}),
e: common_vendor.o((...args) => $options.doDownloadFile && $options.doDownloadFile(...args))
} : {}, {
f: common_vendor.o((...args) => $options.inputRemark && $options.inputRemark(...args)),
g: $data.remark,
h: common_vendor.f($data.files, (item, index, i0) => {
return common_vendor.e({
f: common_vendor.o((...args) => $options.doDownloadFile && $options.doDownloadFile(...args))
} : {}) : {}, {
g: common_vendor.o((...args) => $options.inputRemark && $options.inputRemark(...args)),
h: $data.remark,
i: common_vendor.f($data.files, (item, index, i0) => {
return {
a: index,
b: _ctx.tools.isImg(item.fileName)
}, _ctx.tools.isImg(item.fileName) ? {
c: common_vendor.o((...args) => $options.doPreImg && $options.doPreImg(...args)),
d: item.netUrl,
e: item.netUrl,
f: common_vendor.t(item.fileName)
} : {
g: common_vendor.t(item.fileName)
}, {
h: item,
i: index
});
b: item.netUrl,
c: item.netUrl,
d: common_vendor.t(item.fileName),
e: item,
f: index
};
}),
i: common_vendor.o((...args) => $options.doDelFile && $options.doDelFile(...args)),
j: $data.files.length < $data.maxCount
}, $data.files.length < $data.maxCount ? {
k: common_vendor.o((...args) => $options.bindChooseFile && $options.bindChooseFile(...args))
j: common_vendor.o((...args) => $options.doPreImg && $options.doPreImg(...args)),
k: common_vendor.o((...args) => $options.doDelFile && $options.doDelFile(...args)),
l: $data.maxCount > 0
}, $data.maxCount > 0 ? {
m: common_vendor.o((...args) => $options.bindChooseFile && $options.bindChooseFile(...args))
} : {}, {
l: common_vendor.o((...args) => $options.doSubmit && $options.doSubmit(...args)),
m: common_vendor.p({
n: common_vendor.o((...args) => $options.doSubmit && $options.doSubmit(...args)),
o: common_vendor.p({
type: $data.msgType,
message: $data.msgHint,
duration: 2e3
}),
n: common_vendor.sr("msg", "0ecbe332-0"),
o: common_vendor.p({
p: common_vendor.sr("msg", "0ecbe332-0"),
q: common_vendor.p({
type: "message"
}),
p: common_vendor.p({
r: common_vendor.p({
progress: $data.downloadProgress,
isShow: $data.downloading
})

View File

@ -1 +1 @@
<view class="page-container page-gray-color data-v-0ecbe332"><view class="content-box data-v-0ecbe332"><view class="content-container data-v-0ecbe332"><view class="info-title data-v-0ecbe332">平台需要您补充的内容说明</view><view class="section data-v-0ecbe332"><view class="item data-v-0ecbe332"><text class="label data-v-0ecbe332">主题</text><view class="select-content-item data-v-0ecbe332"><view class="value v-select data-v-0ecbe332">{{a}}</view></view></view><view class="item data-v-0ecbe332"><text class="label data-v-0ecbe332">内容</text><view class="select-content-no-h data-v-0ecbe332"><view class="select-item-box data-v-0ecbe332"><view class="value v-select data-v-0ecbe332">{{b}}</view></view></view></view><view s-if="{{c}}" class="item data-v-0ecbe332"><text class="label data-v-0ecbe332">附件</text><view class="select-content-no-h data-v-0ecbe332"><view class="select-item-box data-v-0ecbe332"><view class="value v-select data-v-0ecbe332"><view class="accessory-box data-v-0ecbe332"><view s-for="item in d trackBy item.a" class="accessory-item data-v-0ecbe332" bindtap="{{e}}" data-value="{{item.f}}"><block s-if="{{item.b}}"><image class="accessory-img data-v-0ecbe332" src="{{item.c}}" mode="scaleToFill"></image><view class="file-name data-v-0ecbe332">{{item.d}}</view></block><block s-else><view class="icon-source data-v-0ecbe332"></view><view class="file-name data-v-0ecbe332">{{item.e}}</view></block></view></view></view></view></view></view></view><view class="info-title data-v-0ecbe332">在下面填写您补充的内容</view><view class="section data-v-0ecbe332"><view class="item data-v-0ecbe332"><text class="label star data-v-0ecbe332">内容</text><view class="textarea-content data-v-0ecbe332"><textarea class="data-v-0ecbe332" style="height:120rpx;width:100%" bindinput="{{f}}" value="{{g}}" placeholder="请输入要补充的内容" placeholder-style="font-size:28rpx;color:$text-gray-hint-color"></textarea></view></view><view class="item data-v-0ecbe332"><text class="label star data-v-0ecbe332">附件</text><view class="upload-file-box data-v-0ecbe332"><view s-for="item in h trackBy item.a" class="upload-file-item data-v-0ecbe332"><block s-if="{{item.b}}"><image bindtap="{{item.c}}" data-value="{{item.d}}" class="accessory-img data-v-0ecbe332" src="{{item.e}}" mode="scaleToFill"></image><view class="file-name data-v-0ecbe332">{{item.f}}</view></block><block s-else><view class="icon-source data-v-0ecbe332"></view><view class="file-name data-v-0ecbe332">{{item.g}}</view></block><view bindtap="{{i}}" data-value="{{item.h}}" data-index="{{item.i}}" class="upload-file-del icon-clear data-v-0ecbe332"></view></view><view s-if="{{j}}" bindtap="{{k}}" class="upload-file-item data-v-0ecbe332"><view class="icon-add-line size-64 data-v-0ecbe332"></view></view></view></view></view></view></view><view class="bottom-fixed-footer data-v-0ecbe332"><view class="bottom-btn-blue data-v-0ecbe332" bindtap="{{l}}">提交</view></view><uni-popup s-if="{{o}}" class="r data-v-0ecbe332" u-s="{{['d']}}" u-r="msg" u-i="0ecbe332-0" u-p="{{o}}"><uni-popup-message s-if="{{m}}" class="data-v-0ecbe332" u-i="0ecbe332-1,0ecbe332-0" u-p="{{m}}"></uni-popup-message></uni-popup><down-progress s-if="{{p}}" class="data-v-0ecbe332" u-i="0ecbe332-2" u-p="{{p}}"></down-progress></view>
<view class="page-container page-gray-color data-v-0ecbe332"><view class="content-box data-v-0ecbe332"><view class="content-container data-v-0ecbe332"><view class="info-title data-v-0ecbe332">平台需要您补充的内容说明</view><view s-if="{{a}}" class="section data-v-0ecbe332"><view class="item data-v-0ecbe332"><text class="label data-v-0ecbe332">主题</text><view class="select-content-item data-v-0ecbe332"><view class="value v-select data-v-0ecbe332">{{b}}</view></view></view><view class="item data-v-0ecbe332"><text class="label data-v-0ecbe332">内容</text><view class="select-content-no-h data-v-0ecbe332"><view class="select-item-box data-v-0ecbe332"><view class="value v-select data-v-0ecbe332">{{c}}</view></view></view></view><view s-if="{{d}}" class="item data-v-0ecbe332"><text class="label data-v-0ecbe332">附件</text><view class="select-content-no-h data-v-0ecbe332"><view class="select-item-box data-v-0ecbe332"><view class="value v-select data-v-0ecbe332"><view class="accessory-box data-v-0ecbe332"><view s-for="item in e trackBy item.a" class="accessory-item data-v-0ecbe332" bindtap="{{f}}" data-value="{{item.f}}"><block s-if="{{item.b}}"><image class="accessory-img data-v-0ecbe332" src="{{item.c}}" mode="scaleToFill"></image><view class="file-name data-v-0ecbe332">{{item.d}}</view></block><block s-else><view class="icon-source data-v-0ecbe332"></view><view class="file-name data-v-0ecbe332">{{item.e}}</view></block></view></view></view></view></view></view></view><view class="info-title data-v-0ecbe332">在下面填写您补充的内容</view><view class="section data-v-0ecbe332"><view class="item data-v-0ecbe332"><text class="label data-v-0ecbe332">内容</text><view class="textarea-content data-v-0ecbe332"><textarea class="data-v-0ecbe332" style="height:120rpx;width:100%" bindinput="{{g}}" value="{{h}}" placeholder="请输入要补充的内容" placeholder-style="font-size:28rpx;color:$text-gray-hint-color"></textarea></view></view><view class="item data-v-0ecbe332"><text class="label data-v-0ecbe332">附件</text><view class="upload-file-box data-v-0ecbe332"><view s-for="item in i trackBy item.a" class="upload-file-item data-v-0ecbe332"><image bindtap="{{j}}" data-value="{{item.b}}" class="accessory-img data-v-0ecbe332" src="{{item.c}}" mode="scaleToFill"></image><view class="file-name data-v-0ecbe332">{{item.d}}</view><view bindtap="{{k}}" data-value="{{item.e}}" data-index="{{item.f}}" class="upload-file-del icon-clear data-v-0ecbe332"></view></view><view s-if="{{l}}" bindtap="{{m}}" class="upload-file-item data-v-0ecbe332"><view class="icon-add-line size-64 data-v-0ecbe332"></view></view></view></view></view></view></view><view class="bottom-fixed-footer data-v-0ecbe332"><view class="bottom-btn-blue data-v-0ecbe332" bindtap="{{n}}">提交</view></view><uni-popup s-if="{{q}}" class="r data-v-0ecbe332" u-s="{{['d']}}" u-r="msg" u-i="0ecbe332-0" u-p="{{q}}"><uni-popup-message s-if="{{o}}" class="data-v-0ecbe332" u-i="0ecbe332-1,0ecbe332-0" u-p="{{o}}"></uni-popup-message></uni-popup><down-progress s-if="{{r}}" class="data-v-0ecbe332" u-i="0ecbe332-2" u-p="{{r}}"></down-progress></view>

View File

@ -201,13 +201,14 @@
background-color: #F7312A6B;
position: absolute;
color: #FFFFFF;
top: -15rpx;
right: -20rpx;
top: 0rpx;
right: 0rpx;
border-radius: 50%;
font-size: 24rpx;
width: 40rpx;
text-align: center;
height: 40rpx;
line-height: 40rpx;
}
.box.data-v-564ec1bd {
margin-top: 30rpx;
@ -343,7 +344,7 @@
}
.tab-nav .tab-item-active.data-v-564ec1bd {
color: #3270FF;
padding: 10rpx 5rpx;
padding: 20rpx 5rpx;
font-size: 24rpx;
position: relative;
flex: auto;
@ -363,7 +364,7 @@
}
.tab-nav .tab-item-inactive.data-v-564ec1bd {
color: #5c5c5c;
padding: 10rpx 5rpx;
padding: 20rpx 5rpx;
font-size: 24rpx;
transition: color 0.3s;
position: relative;

View File

@ -152,7 +152,6 @@ const _sfc_main = {
doGetReplenish(isRefresh) {
const _self2 = this;
common_js_net_shop.Shop.doGetReplenishList(_self2.kind, _self2.pageData).then((res) => {
common_vendor.index.__f__("log", "at pages/shop/orderDetail/orderDetail.vue:436", res);
var status = "success";
status = res.rows && res.rows.length > 0 ? "success" : "empty";
_self2.loadingState = isRefresh ? status : "";
@ -175,7 +174,6 @@ const _sfc_main = {
const _self2 = this;
common_js_net_shop.Shop.doGetOrderDetail(_self2.orderId).then((res) => {
common_vendor.index.hideLoading();
common_vendor.index.__f__("log", "at pages/shop/orderDetail/orderDetail.vue:461", "订单详情", res);
res.goodsDTO.goodsPhoto = common_js_net_mainUrl.sImgPrefix + res.goodsDTO.goodsPhoto;
_self2.order = res;
if (res.orderStatus == "过户已完成" && res.producePhoto != "") {
@ -288,9 +286,9 @@ const _sfc_main = {
}, 1500);
} catch (err) {
common_vendor.index.hideLoading();
_self.msgHint = err.msg ? err.msg : "网络错误,请稍后重试";
_self.msgType = "error";
_self.$refs.msg.open();
this.msgHint = err.msg ? err.msg : "网络错误,请稍后重试";
this.msgType = "error";
this.$refs.msg.open();
}
},
//填报受让人信息
@ -303,7 +301,7 @@ const _sfc_main = {
goReplenish(e) {
const item = e.currentTarget.dataset.value;
common_vendor.index.navigateTo({
url: "/pages/shop/reportReplenish/reportReplenish?id=" + item.correctionId
url: "/pages/shop/addReplenishStuff/addReplenishStuff?id=" + item.correctionId
});
},
doPreImg: function(e) {
@ -333,7 +331,7 @@ const _sfc_main = {
const _self2 = this;
_self2.downloadProgress = 0;
_self2.downloading = true;
const url = item.netUrl;
const url = item.netUrl + "." + item.fileType;
const fileName = item.fileName;
const token = common_js_cache_storage.get("token");
const header = {};
@ -355,9 +353,10 @@ const _sfc_main = {
} else {
common_vendor.index.openDocument({
filePath: downloadRes.tempFilePath,
fileType: item.fileType,
showMenu: true,
success(res) {
common_vendor.index.__f__("log", "at pages/shop/orderDetail/orderDetail.vue:659", res);
common_vendor.index.__f__("log", "at pages/shop/orderDetail/orderDetail.vue:660", res);
_self2.showDownload = false;
_self2.downloading = false;
_self2.downloadProgress = 0;
@ -467,53 +466,56 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
K: common_vendor.f($data.replenlishList, (item, index, i0) => {
return common_vendor.e({
a: index,
b: common_vendor.t(item.correctionTitle)
}, $data.kind == "sell" ? {
c: common_vendor.t(item.sellId == "" ? "待补充" : "已补充"),
d: common_vendor.n(item.sellId == "" ? "col-primary" : "col-green")
} : {}, $data.kind == "buy" ? {
e: common_vendor.t(item.buyId == "" ? "待补充" : "已补充"),
f: common_vendor.n(item.buyId == "" ? "col-primary" : "col-green")
} : {}, {
g: common_vendor.t(item.correctionRemark),
h: item,
i: common_vendor.t(item.createTime),
j: $data.kind == "buy" && item.buyId == ""
b: common_vendor.t(item.correctionTitle),
c: item,
d: $data.kind == "buy" && item.buyId == ""
}, $data.kind == "buy" && item.buyId == "" ? {
k: item,
l: common_vendor.o((...args) => $options.goReplenish && $options.goReplenish(...args))
e: item,
f: common_vendor.o((...args) => $options.goReplenish && $options.goReplenish(...args))
} : {}, {
m: $data.kind == "sell" && item.sellId == ""
g: $data.kind == "sell" && item.sellId == ""
}, $data.kind == "sell" && item.sellId == "" ? {
n: item,
o: common_vendor.o((...args) => $options.goReplenish && $options.goReplenish(...args))
} : {});
h: item,
i: common_vendor.o((...args) => $options.goReplenish && $options.goReplenish(...args))
} : {}, {
j: common_vendor.t(item.correctionRemark),
k: item
}, $data.kind == "sell" ? {
l: common_vendor.t(item.sellId == "" ? "待补充" : "已补充"),
m: common_vendor.n(item.sellId == "" ? "col-primary" : "col-green")
} : {}, $data.kind == "buy" ? {
n: common_vendor.t(item.buyId == "" ? "待补充" : "已补充"),
o: common_vendor.n(item.buyId == "" ? "col-primary" : "col-green")
} : {}, {
p: common_vendor.t(item.createTime)
});
}),
L: $data.kind == "sell",
M: $data.kind == "buy",
N: common_vendor.o((...args) => $options.doShowReplishDetail && $options.doShowReplishDetail(...args)),
O: common_vendor.p({
L: common_vendor.o((...args) => $options.doShowReplishDetail && $options.doShowReplishDetail(...args)),
M: common_vendor.o((...args) => $options.doShowReplishDetail && $options.doShowReplishDetail(...args)),
N: $data.kind == "sell",
O: $data.kind == "buy",
P: common_vendor.p({
status: $data.hasMore
}),
P: common_vendor.o((...args) => $options.doLoadMore && $options.doLoadMore(...args)),
Q: common_vendor.p({
Q: common_vendor.o((...args) => $options.doLoadMore && $options.doLoadMore(...args)),
R: common_vendor.p({
loadingVisible: $data.loadingState,
bindrefresh: "doRefreshList"
})
} : {}, {
R: $data.curTab == 3 && $data.kind == "buy"
S: $data.curTab == 3 && $data.kind == "buy"
}, $data.curTab == 3 && $data.kind == "buy" ? {
S: common_vendor.t($data.order.buyUserDTO.type != "" ? $data.order.buyUserDTO.type : "暂无"),
T: common_vendor.t($data.order.buyUserDTO.name != "" ? $data.order.buyUserDTO.name : "暂无"),
U: common_vendor.t($data.order.buyUserDTO.city != "" ? $data.order.buyUserDTO.city : "暂无"),
V: common_vendor.t($data.order.buyUserDTO.phone != "" ? $data.order.buyUserDTO.phone : "暂无"),
W: common_vendor.t($data.order.buyUserDTO.idcardType != "" ? $data.order.buyUserDTO.idcardType : "暂无"),
X: common_vendor.t($data.order.buyUserDTO.idcard != "" ? $data.order.buyUserDTO.idcardType : "暂无")
T: common_vendor.t($data.order.buyUserDTO.type != "" ? $data.order.buyUserDTO.type : "暂无"),
U: common_vendor.t($data.order.buyUserDTO.name != "" ? $data.order.buyUserDTO.name : "暂无"),
V: common_vendor.t($data.order.buyUserDTO.city != "" ? $data.order.buyUserDTO.city : "暂无"),
W: common_vendor.t($data.order.buyUserDTO.phone != "" ? $data.order.buyUserDTO.phone : "暂无"),
X: common_vendor.t($data.order.buyUserDTO.idcardType != "" ? $data.order.buyUserDTO.idcardType : "暂无"),
Y: common_vendor.t($data.order.buyUserDTO.idcard != "" ? $data.order.buyUserDTO.idcardType : "暂无")
} : {}, {
Y: $data.curTab == 4 && $data.kind == "buy" && $data.order.orderStatus == "过户已完成"
Z: $data.curTab == 4 && $data.kind == "buy" && $data.order.orderStatus == "过户已完成"
}, $data.curTab == 4 && $data.kind == "buy" && $data.order.orderStatus == "过户已完成" ? {
Z: common_vendor.t($data.order.produceTime),
aa: common_vendor.f($data.files, (item, index, i0) => {
aa: common_vendor.t($data.order.produceTime),
ab: common_vendor.f($data.files, (item, index, i0) => {
return common_vendor.e({
a: $options.isImg(item.fileType)
}, $options.isImg(item.fileType) ? {
@ -524,36 +526,36 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
e: item
});
}),
ab: common_vendor.p({
ac: common_vendor.p({
["wx:else"]: ""
}),
ac: common_vendor.o((...args) => $options.doDownloadFile && $options.doDownloadFile(...args))
ad: common_vendor.o((...args) => $options.doDownloadFile && $options.doDownloadFile(...args))
} : {}) : {}, {
ad: $data.order != null
ae: $data.order != null
}, $data.order != null ? common_vendor.e({
ae: $data.order.orderStatus == "买家待付款" || $data.order.orderStatus == "待填写资料"
af: $data.order.orderStatus == "买家待付款" || $data.order.orderStatus == "待填写资料"
}, $data.order.orderStatus == "买家待付款" || $data.order.orderStatus == "待填写资料" ? {
af: common_vendor.o((...args) => $options.doCancelOrder && $options.doCancelOrder(...args))
ag: common_vendor.o((...args) => $options.doCancelOrder && $options.doCancelOrder(...args))
} : {}, {
ag: $data.order.orderStatus == "买家待付款" && $data.kind == "buy"
ah: $data.order.orderStatus == "买家待付款" && $data.kind == "buy"
}, $data.order.orderStatus == "买家待付款" && $data.kind == "buy" ? {
ah: common_vendor.o((...args) => $options.doPayOrder && $options.doPayOrder(...args))
ai: common_vendor.o((...args) => $options.doPayOrder && $options.doPayOrder(...args))
} : {}, {
ai: $data.order.orderStatus == "待填写资料" && $data.kind == "buy"
aj: $data.order.orderStatus == "待填写资料" && $data.kind == "buy"
}, $data.order.orderStatus == "待填写资料" && $data.kind == "buy" ? {
aj: common_vendor.o((...args) => $options.bindFill && $options.bindFill(...args))
ak: common_vendor.o((...args) => $options.bindFill && $options.bindFill(...args))
} : {}) : {}, {
ak: common_vendor.p({
al: common_vendor.p({
isShow: $data.downloading,
progress: $data.downloadProgress
}),
al: common_vendor.p({
am: common_vendor.p({
duration: 2e3,
type: $data.msgType,
message: $data.msgHint
}),
am: common_vendor.sr("msg", "564ec1bd-3"),
an: common_vendor.p({
an: common_vendor.sr("msg", "564ec1bd-3"),
ao: common_vendor.p({
type: "message"
})
});

File diff suppressed because one or more lines are too long

View File

@ -88,6 +88,7 @@
width: 40rpx;
text-align: center;
height: 40rpx;
line-height: 40rpx;
}
.item-img.data-v-15f896aa {
width: 68%;

View File

@ -27,7 +27,8 @@ const _sfc_main = {
listRefreshTrig: false,
isLoadMore: false,
hasMore: "more",
goodsList: []
goodsList: [],
needRefresh: false
};
},
onLoad(options) {
@ -44,6 +45,12 @@ const _sfc_main = {
});
this.doRefreshList();
},
onShow() {
if (this.needRefresh) {
this.needRefresh = false;
this.doRefreshList();
}
},
onPullDownRefresh() {
this.doRefreshList();
},
@ -87,7 +94,7 @@ const _sfc_main = {
this.goodsList = isRefresh ? [] : this.goodsList;
this.loadingState = isRefresh ? "loading" : "";
common_js_net_shop.Shop.doGetMineOrders(_self.pageData).then((res) => {
common_vendor.index.__f__("log", "at pages/shop/purchasedGoods/purchasedGoods.vue:153", res);
common_vendor.index.__f__("log", "at pages/shop/purchasedGoods/purchasedGoods.vue:161", res);
common_vendor.index.stopPullDownRefresh();
var status = res.rows && res.rows.length > 0 ? "success" : "empty";
const list = _self.addPrefixToPreviewImgs(res.rows);
@ -97,7 +104,7 @@ const _sfc_main = {
_self.isLoadMore = false;
_self.hasMore = _self.goodsList.length < res.total ? "more" : "noMore";
}).catch((err) => {
common_vendor.index.__f__("log", "at pages/shop/purchasedGoods/purchasedGoods.vue:164", "错误", err);
common_vendor.index.__f__("log", "at pages/shop/purchasedGoods/purchasedGoods.vue:172", "错误", err);
common_vendor.index.stopPullDownRefresh();
this.loadingState = "error";
this.listRefreshTrig = false;
@ -107,7 +114,6 @@ const _sfc_main = {
},
//为数据中图片添加前缀
addPrefixToPreviewImgs(data) {
common_vendor.index.__f__("log", "at pages/shop/purchasedGoods/purchasedGoods.vue:174", data);
const prefix = common_js_net_mainUrl.sImgPrefix;
return data.map((item) => {
if (item.goodsDTO && item.goodsDTO != null && item.goodsDTO.goodsPhoto != "") {

View File

@ -153,7 +153,7 @@ const _sfc_main = {
this.listRefreshTrig = true;
this.pageData.page = 1;
this.pageData.keywords = this.keywords;
this.pageData.priceOrder = this.selOwner;
this.pageData.goodsLeaderType = this.selOwner;
this.pageData.priceRangeStart = this.priceStart;
this.pageData.priceRangeEnd = this.priceEnd;
this.pageData.goodsType = this.selType;

View File

@ -86,6 +86,7 @@
width: 40rpx;
text-align: center;
height: 40rpx;
line-height: 40rpx;
}
.item-img.data-v-0c9f689e {
width: 68%;

View File

@ -1,19 +1,22 @@
{
"appid": "118838711",
"compilation-args": {
"common": {
"babelSetting": {
"ignore": []
},
"enhance": true,
"ignorePrefixCss": false
"appid": "118838711",
"compilation-args": {
"common": {
"babelSetting": {
"ignore": []
},
"enhance": true,
"ignorePrefixCss": false
},
"selected": -3
},
"selected": -3
},
"host": "baiduboxapp",
"projectname": "ts_aimz",
"setting": {
"autoAudits": false,
"urlCheck": false
}
"host": "baiduboxapp",
"projectname": "ts_aimz",
"setting": {
"autoAudits": false,
"urlCheck": false
},
"preview": {
"packageId": 1208021
}
}

View File

@ -0,0 +1,102 @@
/**
* 这里是uni-app内置的常用样式变量
*
* uni-app 官方扩展插件及插件市场https://ext.dcloud.net.cn上很多三方插件均使用了这些样式变量
* 如果你是插件开发者建议你使用scss预处理并在插件代码中直接使用这些变量无需 import 这个文件方便用户通过搭积木的方式开发整体风格一致的App
*
*/
/**
* 如果你是App开发者插件使用者你可以通过修改这些变量来定制自己的插件主题实现自定义主题功能
*
* 如果你的项目同样使用了scss预处理你也可以直接在你的 scss 代码中使用如下变量同时无需 import 这个文件
*/
/* 颜色变量 */
/* 底部tabbar */
/* 我的页面账户信息背景 */
/* 主题色 */
/* 页面背景色 */
/* 文字颜色 */
/* 背景棕色 */
/* 按钮颜色 */
.uni-noticebar.data-v-c3453ea3 {
display: flex;
width: 100%;
box-sizing: border-box;
flex-direction: row;
align-items: center;
padding: 5px 12px;
margin-bottom: 10px;
border-radius: 8rpx;
}
.uni-noticebar-close.data-v-c3453ea3 {
margin-left: 8px;
margin-right: 5px;
}
.uni-noticebar-icon.data-v-c3453ea3 {
margin-right: 5px;
background-image: url("data:image/svg+xml;charset=utf-8;base64,PHN2ZyB0PSIxNzQyOTYwNzQxMTM4IiBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHAtaWQ9IjIxOTIzIiB3aWR0aD0iMTYiIGhlaWdodD0iMTYiPjxwYXRoIGQ9Ik04OTIuNTU2OCAxMjYuOTQ0YTM4LjQgMzguNCAwIDAgMSAzLjQ0MzIgMTUuODkxMnY3MzguMzI5NmEzOC40IDM4LjQgMCAwIDEtNTQuMjkxMiAzNC45NTY4bC0yNzIuMTQwOC0xMjMuNjkyOGMtMzcuMjYwOCA2Mi4wMTYtMTEyLjMyIDk0LjU4NTYtMTg1LjY4OTYgNzQuOTI0OC04MS42ODk2LTIxLjg4OC0xMzIuODEyOC0xMDAuOTA4OC0xMjEuOTEzNi0xODIuNTUzNkgxNjYuNGEzOC40IDM4LjQgMCAwIDEtMzguNC0zOC40VjM3Ny42YTM4LjQgMzguNCAwIDAgMSAzOC40LTM4LjRoMTY2LjRsNTA4LjkwODgtMjMxLjMyMTZhMzguNCAzOC40IDAgMCAxIDUwLjg0OCAxOS4wNzJ6TTQwMy43NTY4IDc5My4xNzEyYzM2LjQ3MzYgOS43NzI4IDczLjcxNTItNC40MjI0IDk1LjAwOC0zMi45MzQ0bC0xNTkuNDExMi03Mi40NjA4Yy0xMC4wMjI0IDQ2LjQgMTguMDQ4IDkyLjk3MjggNjQuNDAzMiAxMDUuMzk1MnoiIGZpbGw9IiM1NTAwMDAiIHAtaWQ9IjIxOTI0Ij48L3BhdGg+PC9zdmc+");
background-repeat: no-repeat;
background-size: contain;
width: 42rpx;
height: 42rpx;
}
.uni-noticebar__content-wrapper.data-v-c3453ea3 {
flex: 1;
flex-direction: column;
overflow: hidden;
}
.uni-noticebar__content-wrapper--single.data-v-c3453ea3 {
line-height: 18px;
}
.uni-noticebar__content-wrapper--single.data-v-c3453ea3,
.uni-noticebar__content-wrapper--scrollable.data-v-c3453ea3 {
flex-direction: row;
}
.uni-noticebar__content-wrapper--scrollable.data-v-c3453ea3 {
position: relative;
}
.uni-noticebar__content--scrollable.data-v-c3453ea3 {
flex: 1;
display: block;
overflow: hidden;
}
.uni-noticebar__content--single.data-v-c3453ea3 {
display: flex;
flex: none;
width: 100%;
justify-content: center;
}
.uni-noticebar__content-text.data-v-c3453ea3 {
font-size: 14px;
line-height: 18px;
word-break: break-all;
}
.uni-noticebar__content-text--single.data-v-c3453ea3 {
display: block;
width: 100%;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.uni-noticebar__content-text--scrollable.data-v-c3453ea3 {
position: absolute;
display: block;
height: 18px;
line-height: 18px;
white-space: nowrap;
padding-left: 100%;
animation: notice-c3453ea3 10s 0s linear infinite both;
animation-play-state: paused;
}
.uni-noticebar__more.data-v-c3453ea3 {
display: inline-flex;
flex-direction: row;
flex-wrap: nowrap;
align-items: center;
padding-left: 5px;
}
@keyframes notice-c3453ea3 {
100% {
transform: translate3d(-100%, 0, 0);
}
}

View File

@ -0,0 +1,204 @@
"use strict";
const common_vendor = require("../../../../common/vendor.js");
const _sfc_main = {
name: "UniNoticeBar",
emits: ["click", "getmore", "close"],
props: {
text: {
type: String,
default: ""
},
moreText: {
type: String,
default: ""
},
backgroundColor: {
type: String,
default: "#FFF9EA"
},
speed: {
// 默认1s滚动100px
type: Number,
default: 100
},
color: {
type: String,
default: "#FF9A43"
},
fontSize: {
type: Number,
default: 14
},
moreColor: {
type: String,
default: "#FF9A43"
},
single: {
// 是否单行
type: [Boolean, String],
default: false
},
scrollable: {
// 是否滚动,添加后控制单行效果取消
type: [Boolean, String],
default: false
},
showIcon: {
// 是否显示左侧icon
type: [Boolean, String],
default: false
},
showGetMore: {
// 是否显示右侧查看更多
type: [Boolean, String],
default: false
},
showClose: {
// 是否显示左侧关闭按钮
type: [Boolean, String],
default: false
}
},
data() {
const elId = `Uni_${Math.ceil(Math.random() * 1e6).toString(36)}`;
const elIdBox = `Uni_${Math.ceil(Math.random() * 1e6).toString(36)}`;
return {
textWidth: 0,
boxWidth: 0,
wrapWidth: "",
webviewHide: false,
elId,
elIdBox,
show: true,
animationDuration: "none",
animationPlayState: "paused",
animationDelay: "0s"
};
},
watch: {
text(newValue, oldValue) {
this.initSize();
}
},
computed: {
isShowGetMore() {
return this.showGetMore === true || this.showGetMore === "true";
},
isShowClose() {
return (this.showClose === true || this.showClose === "true") && (this.showGetMore === false || this.showGetMore === "false");
}
},
mounted() {
this.$nextTick(() => {
this.initSize();
});
},
methods: {
initSize() {
if (this.scrollable) {
let query = [];
let textQuery = new Promise((resolve, reject) => {
common_vendor.index.createSelectorQuery().in(this).select(`#${this.elId}`).boundingClientRect().exec((ret) => {
this.textWidth = ret[0].width;
resolve();
});
});
let boxQuery = new Promise((resolve, reject) => {
common_vendor.index.createSelectorQuery().in(this).select(`#${this.elIdBox}`).boundingClientRect().exec((ret) => {
this.boxWidth = ret[0].width;
resolve();
});
});
query.push(textQuery);
query.push(boxQuery);
Promise.all(query).then(() => {
this.animationDuration = `${this.textWidth / this.speed}s`;
this.animationDelay = `-${this.boxWidth / this.speed}s`;
setTimeout(() => {
this.animationPlayState = "running";
}, 1e3);
});
}
},
loopAnimation() {
},
clickMore() {
this.$emit("getmore");
},
close() {
this.show = false;
this.$emit("close");
},
onClick() {
this.$emit("click");
}
}
};
if (!Array) {
const _easycom_uni_icons2 = common_vendor.resolveComponent("uni-icons");
_easycom_uni_icons2();
}
const _easycom_uni_icons = () => "../../../uni-icons/components/uni-icons/uni-icons.js";
if (!Math) {
_easycom_uni_icons();
}
function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
return common_vendor.e({
a: $data.show
}, $data.show ? common_vendor.e({
b: $props.showIcon === true || $props.showIcon === "true"
}, $props.showIcon === true || $props.showIcon === "true" ? {} : {}, {
c: common_vendor.t($props.text),
d: $data.elId,
e: $props.scrollable ? 1 : "",
f: !$props.scrollable && ($props.single || $props.showGetMore) ? 1 : "",
g: $props.color,
h: $props.fontSize + "px",
i: $props.fontSize * 1.5 + "px",
j: $data.wrapWidth + "px",
k: $data.animationDuration,
l: $data.animationDuration,
m: $data.webviewHide ? "paused" : $data.animationPlayState,
n: $data.webviewHide ? "paused" : $data.animationPlayState,
o: $data.animationDelay,
p: $data.animationDelay,
q: $data.elIdBox,
r: $props.scrollable ? 1 : "",
s: !$props.scrollable && ($props.single || $props.moreText) ? 1 : "",
t: $props.scrollable ? 1 : "",
v: !$props.scrollable && ($props.single || $props.moreText) ? 1 : "",
w: $props.scrollable ? $props.fontSize * 1.5 + "px" : "auto",
x: $options.isShowGetMore
}, $options.isShowGetMore ? common_vendor.e({
y: $props.moreText.length > 0
}, $props.moreText.length > 0 ? {
z: common_vendor.t($props.moreText),
A: $props.moreColor,
B: $props.fontSize + "px"
} : {
C: common_vendor.p({
type: "right",
color: $props.moreColor,
size: $props.fontSize * 1.1
})
}, {
D: common_vendor.o((...args) => $options.clickMore && $options.clickMore(...args))
}) : {}, {
E: $options.isShowClose
}, $options.isShowClose ? {
F: common_vendor.j({
"click": common_vendor.o($options.close)
}),
G: common_vendor.p({
type: "closeempty",
color: $props.color,
size: $props.fontSize * 1.1
})
} : {}, {
H: $props.backgroundColor,
I: common_vendor.o((...args) => $options.onClick && $options.onClick(...args))
}) : {});
}
const Component = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["render", _sfc_render], ["__scopeId", "data-v-c3453ea3"]]);
swan.createComponent(Component);
//# sourceMappingURL=../../../../../.sourcemap/mp-baidu/uni_modules/uni-notice-bar/components/uni-notice-bar/uni-notice-bar.js.map

View File

@ -0,0 +1,6 @@
{
"component": true,
"usingComponents": {
"uni-icons": "../../../uni-icons/components/uni-icons/uni-icons"
}
}

View File

@ -0,0 +1 @@
<view s-if="{{a}}" class="uni-noticebar data-v-c3453ea3" style="{{'background-color:' + H}}" bindtap="{{I}}"><slot s-if="{{b}}" name="noticebarIcon"><view class="uni-noticebar-icon data-v-c3453ea3"></view></slot><view ref="textBox" class="{{['uni-noticebar__content-wrapper', 'data-v-c3453ea3', t && 'uni-noticebar__content-wrapper--scrollable', v && 'uni-noticebar__content-wrapper--single']}}" style="{{'height:' + w}}"><view id="{{q}}" class="{{['uni-noticebar__content', 'data-v-c3453ea3', r && 'uni-noticebar__content--scrollable', s && 'uni-noticebar__content--single']}}"><text id="{{d}}" ref="animationEle" class="{{['uni-noticebar__content-text', 'data-v-c3453ea3', e && 'uni-noticebar__content-text--scrollable', f && 'uni-noticebar__content-text--single']}}" style="{{'color:' + g + ';' + ('font-size:' + h) + ';' + ('line-height:' + i) + ';' + ('width:' + j) + ';' + ('animation-duration:' + k) + ';' + ('-webkit-animation-duration:' + l) + ';' + ('animation-play-state:' + m) + ';' + ('-webkit-animation-play-state:' + n) + ';' + ('animation-delay:' + o) + ';' + ('-webkit-animation-delay:' + p)}}">{{c}}</text></view></view><view s-if="{{x}}" class="uni-noticebar__more uni-cursor-point data-v-c3453ea3" bindtap="{{D}}"><text s-if="{{y}}" class="data-v-c3453ea3" style="{{'color:' + A + ';' + ('font-size:' + B)}}">{{z}}</text><uni-icons s-else class="data-v-c3453ea3" u-i="c3453ea3-0" u-p="{{C||''}}"/></view><view s-if="{{E}}" class="uni-noticebar-close uni-cursor-point data-v-c3453ea3"><uni-icons s-if="{{G}}" class="data-v-c3453ea3" bindclick="__e" u-i="c3453ea3-1" eO="{{F}}" u-p="{{G}}"/></view></view>