@@ -0,0 +1,381 @@ | |||||
// pages/bank/bank.js | |||||
import * as UTIL from '../../utils/util.js'; | |||||
import * as API from '../../utils/API.js'; | |||||
let EVN_CONFIG = require('../../env/env'); | |||||
const DISTRIBUTE_ENVIROMENT = 'IMGURL'; | |||||
let { | |||||
URL_PREFIX, | |||||
} = EVN_CONFIG[DISTRIBUTE_ENVIROMENT]; | |||||
const app = getApp(); | |||||
Page({ | |||||
/** | |||||
* 页面的初始数据 | |||||
*/ | |||||
data: { | |||||
isIPX: app.globalData.isIPX, | |||||
list:[], | |||||
isLoading:false, | |||||
pageNums:1, | |||||
scrollHeight:"", | |||||
name:"", | |||||
showUpload:false, | |||||
uploadOptions:[], | |||||
fileList:[], | |||||
showPopup:false, | |||||
fileEvent:{}, | |||||
itemId:"", | |||||
assetTypeOptions:[] | |||||
}, | |||||
goAdd(){ | |||||
wx.navigateTo({ | |||||
url: 'add/add', | |||||
}) | |||||
}, | |||||
back:function(){ | |||||
wx.navigateBack({ | |||||
delta: 1 | |||||
}) | |||||
}, | |||||
assetTypeDict(val){ | |||||
this.data.assetTypeOptions.map(res => { | |||||
if(res.dictValue == val){ | |||||
return res.dictLabel | |||||
} | |||||
}) | |||||
}, | |||||
/** | |||||
* 生命周期函数--监听页面加载 | |||||
*/ | |||||
onLoad(options) { | |||||
var that = this; | |||||
let qu = wx.createSelectorQuery() | |||||
qu.select("#top_view").boundingClientRect() | |||||
qu.select("#top_ban").boundingClientRect() | |||||
qu.exec(res => { | |||||
that.setData({ | |||||
scrollHeight:wx.getSystemInfoSync().windowHeight-res[0].height-res[0].top | |||||
}) | |||||
}) | |||||
this.setData({'itemId':options.id}) | |||||
}, | |||||
/** | |||||
* 生命周期函数--监听页面初次渲染完成 | |||||
*/ | |||||
onReady() { | |||||
//获取附件字典 | |||||
UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'common_attach', {method:'GET'}, { | |||||
success: (res) => { | |||||
if(res.data.length>0){ | |||||
this.setData({ | |||||
uploadOptions:res.data, | |||||
}) | |||||
} | |||||
} | |||||
}) | |||||
this.getList(); | |||||
}, | |||||
getList:function(){ | |||||
let params = { | |||||
pageNum:this.data.pageNums, | |||||
pageSize:10, | |||||
name:this.data.name, | |||||
isMin:"Y", | |||||
useType:'2', | |||||
operationType:'1', | |||||
assetStatus:'1' | |||||
} | |||||
UTIL.httpRequest(API.URL_GET_PERMANENTLIST,params,{ | |||||
success: (res) => { | |||||
console.log(res); | |||||
let _this = this | |||||
if(res.code == 200){ | |||||
if(this.data.pageNums!=1&&this.data.list.length<res.total){ | |||||
let lists = this.data.list.concat(res.rows) | |||||
//获取资产类别 | |||||
UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'asset_type', {method:'GET'}, { | |||||
success: (r) => { | |||||
if(r.data.length>0){ | |||||
let li = lists.map( res => { | |||||
r.data.map(rr => { | |||||
if(res.assetType == rr.dictValue){ | |||||
res.assetType = rr.dictLabel | |||||
} | |||||
}) | |||||
return res | |||||
}) | |||||
_this.setData({list:li}) | |||||
}else{ | |||||
_this.setData({list:lists}) | |||||
} | |||||
} | |||||
}) | |||||
}else if(this.data.pageNums==1){ | |||||
//获取资产类别 | |||||
UTIL.httpRequest(API.URL_GET_GETDICTTYPE + 'asset_type', {method:'GET'}, { | |||||
success: (r) => { | |||||
if(r.data.length>0){ | |||||
let li = res.rows.map( ress => { | |||||
r.data.map(rr => { | |||||
if(ress.assetType == rr.dictValue){ | |||||
ress.assetType = rr.dictLabel | |||||
} | |||||
}) | |||||
return ress | |||||
}) | |||||
_this.setData({list:li}) | |||||
}else{ | |||||
_this.setData({list:res.rows}) | |||||
} | |||||
} | |||||
}) | |||||
} | |||||
}else{ | |||||
UTIL.showToastNoneIcon(res.msg); | |||||
} | |||||
} | |||||
}) | |||||
}, | |||||
paging(){ | |||||
this.setData({ | |||||
pageNums:this.data.pageNums+1, | |||||
}) | |||||
this.getList(); | |||||
}, | |||||
goSearch(e){ | |||||
this.setData({name:e.detail}); | |||||
this.setData({pageNums:1}); | |||||
this.getList(); | |||||
}, | |||||
goUpdate(e){ | |||||
let data = e.currentTarget.dataset.item; | |||||
data.method = "POST"; | |||||
data.assetTable = "t_asset_permanent" | |||||
data.assetId = e.currentTarget.dataset.item.id | |||||
data.contractionId = this.data.itemId | |||||
data.num = e.currentTarget.dataset.item.quantity | |||||
UTIL.httpRequest(API.URL_GET_ASSETADD,data,{ | |||||
success: (res) => { | |||||
if(res.code == 200){ | |||||
UTIL.showToastNoneIcon(res.msg); | |||||
wx.navigateBack({ | |||||
delta: 1 | |||||
}) | |||||
}else{ | |||||
UTIL.showToastNoneIcon(res.msg); | |||||
} | |||||
} | |||||
}) | |||||
}, | |||||
delete(e){ | |||||
UTIL.httpRequest(API.URL_GET_PERMANENTDELETE + e.currentTarget.dataset.id, {method:'GET'}, { | |||||
success: (res) => { | |||||
if(res.code==200){ | |||||
let new_list = this.data.list | |||||
new_list.splice(e.currentTarget.dataset.index,1) | |||||
this.setData({'list':new_list}) | |||||
UTIL.showToastNoneIcon('删除成功!'); | |||||
}else{ | |||||
UTIL.showToastNoneIcon('删除失败!'); | |||||
} | |||||
} | |||||
}) | |||||
}, | |||||
upload(e){ | |||||
this.setData({itemId:e.currentTarget.dataset.id}); | |||||
this.asyncFun(e.currentTarget.dataset.id) | |||||
}, | |||||
asyncFun(id){ | |||||
this.setData({"fileList":[]}) | |||||
let uploadList = this.data.uploadOptions | |||||
let newList = [] | |||||
let _this = this | |||||
uploadList.map( res => { | |||||
let oData = { | |||||
tableId: id, | |||||
tableName: "t_asset_permanent", //上传表 | |||||
bizPath: "asset", | |||||
fileType: res.dictValue, //附件类型 1原始发票 2会议纪要 3会议照片 4 参会人员签字 | |||||
method:'GET' | |||||
} | |||||
UTIL.httpRequest(API.URL_GET_ATTACHMENTLIST, oData, { | |||||
success: (rr) => { | |||||
if(rr.rows.length>0){ | |||||
rr.rows.map((rrr,index) => { | |||||
rrr.url = URL_PREFIX + rrr.fileUrl | |||||
if(index==rr.rows.length-1){ | |||||
newList.push(Object.assign({},res,{"list":rr.rows})) | |||||
_this.setData({"fileList":_this.data.fileList.concat(newList)}); | |||||
_this.setData({"showUpload":true}) | |||||
} | |||||
}) | |||||
}else{ | |||||
let newuploadList = uploadList | |||||
newuploadList.map(rd => { | |||||
rd.list = newList | |||||
}) | |||||
_this.setData({"fileList":newuploadList}); | |||||
_this.setData({"showUpload":true}) | |||||
} | |||||
}, | |||||
fail:(rr) =>{ | |||||
console.log(rr); | |||||
}, | |||||
complete:(rr) => { | |||||
console.log(rr); | |||||
} | |||||
}) | |||||
}) | |||||
}, | |||||
closeBox(){ | |||||
this.setData({"showUpload":false}) | |||||
}, | |||||
deleteImg(event){ | |||||
this.setData({"fileEvent":event}) | |||||
this.setData({"showPopup":true}); | |||||
}, | |||||
cancelTem:function(e){ | |||||
this.setData({"fileEvent":"{}"}); | |||||
this.setData({"showPopup":false}); | |||||
}, | |||||
confirmTem:function(e){ | |||||
let event = this.data.fileEvent | |||||
console.log(event); | |||||
UTIL.httpRequest(API.URL_GET_GETFILEREMOVE+event.detail.file.id , {method:'GET'}, { | |||||
success: (res) => { | |||||
if(res.code==200){ | |||||
let ll = this.data.fileList | |||||
var jsonlist = ll[event.target.dataset.idx].list; | |||||
jsonlist.splice(event.detail.index, 1) | |||||
ll[event.target.dataset.idx].list = jsonlist | |||||
this.setData({"fileList":ll}) | |||||
this.setData({showPopup:false}); | |||||
wx.showToast({ | |||||
title: '删除成功!', | |||||
icon: 'success', | |||||
duration: 2000, | |||||
}) | |||||
} | |||||
} | |||||
}) | |||||
}, | |||||
uploadFile(uploadFile,event) { | |||||
let _this = this | |||||
return new Promise((resolve, reject) => { | |||||
wx.uploadFile({ | |||||
url: API.URL_GET_UPLOAD, | |||||
filePath: uploadFile.file.file[0].url, | |||||
name: 'file', | |||||
header: { | |||||
"Content-Type": "multipart/form-data",//记得设置 | |||||
"chartset":"utf-8", | |||||
'Authorization':'Bearer '+getApp().globalData.userInfo.token | |||||
}, | |||||
formData:uploadFile, | |||||
success: (res) => { | |||||
res.data = JSON.parse(res.data); | |||||
if(res.statusCode == 200){ | |||||
let files = _this.data.fileList | |||||
let fName = res.data.fileUrl.split('/') | |||||
let fLength = fName.length | |||||
files[event.currentTarget.dataset.idx].list.push({ | |||||
"fileName": fName[fLength-1], | |||||
"fileType": "0", | |||||
"fileUrl":res.data.fileUrl , | |||||
"id": res.data.id, | |||||
"tableId": 6, | |||||
"url":URL_PREFIX+res.data.fileUrl | |||||
}) | |||||
_this.setData({"fileList":files}) | |||||
wx.hideLoading() | |||||
} | |||||
}, | |||||
fail: (err) => { | |||||
//上传失败:修改pedding为reject | |||||
reject(err) | |||||
} | |||||
}); | |||||
}) | |||||
}, | |||||
afterRead(event) { | |||||
let _this = this | |||||
wx.showLoading({ | |||||
title: '上传中...' | |||||
}) | |||||
let fileForm={ | |||||
file: event.detail, | |||||
fileType:event.currentTarget.dataset.idx, | |||||
tableName: "t_asset_permanent", //上传表 | |||||
bizPath: "asset", | |||||
tableId:_this.data.itemId | |||||
} | |||||
this.uploadFile(fileForm,event) | |||||
}, | |||||
lookDown(file,detail){ | |||||
// 获取指定字符串最后一次出现的位置,返回index | |||||
var index1 = file.detail.url.lastIndexOf('.'); | |||||
// substr(start, length) 抽取从start下标开始的length个字符,返回新的字符串; | |||||
var style = file.detail.url.substr(index1 + 1) | |||||
//判断图片类型,不需要下载,不做处理 | |||||
if(style=='png'||style=='jpg'||style=='jpeg'||style=='bmp'||style=='gif'||style=='webp'||style=='psd'||style== 'svg'||style=='tiff'){ | |||||
//判断非图片类型 | |||||
}else{ | |||||
wx.downloadFile({ | |||||
url: file.detail.url, | |||||
success(data){ | |||||
wx.openDocument({ | |||||
filePath: data.tempFilePath, | |||||
fileType: style, | |||||
showMenu:true, | |||||
success(res){ | |||||
} | |||||
}) | |||||
} | |||||
}) | |||||
} | |||||
}, | |||||
/** | |||||
* 生命周期函数--监听页面显示 | |||||
*/ | |||||
onShow() { | |||||
}, | |||||
/** | |||||
* 生命周期函数--监听页面隐藏 | |||||
*/ | |||||
onHide() { | |||||
}, | |||||
/** | |||||
* 生命周期函数--监听页面卸载 | |||||
*/ | |||||
onUnload() { | |||||
}, | |||||
/** | |||||
* 页面相关事件处理函数--监听用户下拉动作 | |||||
*/ | |||||
onPullDownRefresh() { | |||||
}, | |||||
/** | |||||
* 页面上拉触底事件的处理函数 | |||||
*/ | |||||
onReachBottom() { | |||||
}, | |||||
/** | |||||
* 用户点击右上角分享 | |||||
*/ | |||||
onShareAppMessage() { | |||||
} | |||||
}) |
@@ -0,0 +1,14 @@ | |||||
{ | |||||
"usingComponents": { | |||||
"van-checkbox": "@vant/weapp/checkbox/index", | |||||
"van-checkbox-group": "@vant/weapp/checkbox-group/index", | |||||
"van-cell": "@vant/weapp/cell/index", | |||||
"van-cell-group": "@vant/weapp/cell-group/index", | |||||
"van-search": "@vant/weapp/search/index", | |||||
"van-radio": "@vant/weapp/radio/index", | |||||
"van-radio-group": "@vant/weapp/radio-group/index", | |||||
"van-swipe-cell": "@vant/weapp/swipe-cell/index", | |||||
"van-action-sheet": "@vant/weapp/action-sheet/index", | |||||
"van-upload": "@vant/weapp/uploader/index" | |||||
} | |||||
} |
@@ -0,0 +1,52 @@ | |||||
<!--pages/fixedAssets/fixedAssets.wxml--> | |||||
<view class="ns" id="top_ban" style="height:{{isIPX?'88px':'64px'}};"> | |||||
<image src="../../image/apply/back.png" style="top:{{isIPX?'54px':'30px'}};" mode="widthFix" bindtap="back" referrer="no-referrer|origin|unsafe-url"></image> | |||||
<text style="top:{{isIPX?'54px':'30px'}};">可关联固定资产</text> | |||||
</view> | |||||
<view class="search_box" id="top_view" style="margin-top:{{isIPX?'100px':'75px'}};"> | |||||
<van-search | |||||
value="{{ name }}" | |||||
shape="round" | |||||
background="transparent" | |||||
placeholder="请输入搜索关键词" | |||||
clearable | |||||
bind:change="goSearch" | |||||
/> | |||||
</view> | |||||
<scroll-view scroll-y refresher-threshold="0" style="height:{{scrollHeight}}px" bindscrolltolower="paging" lower-threshold="100"> | |||||
<van-swipe-cell class="workflow" wx:for="{{list}}" wx:key="index" wx:for-item="item" > | |||||
<view class="li" bindtap="goUpdate" data-item="{{item}}"> | |||||
<view class="tit_box"> | |||||
<image src="/image/icon/fixedAssets_icon.png" style="width: 15px;height: 15px;margin-right: 10px;" referrer="no-referrer|origin|unsafe-url"></image> | |||||
<text class="tit">{{item.name}}</text> | |||||
<view style="flex:1;"> | |||||
<text wx:if="{{item.useType=='1'}}" style="text-align: center;float:right;font-size:12px;background:rgb(235, 154, 4,0.2);color:rgb(235, 154, 4);width:50px;line-height: 20px;">自用</text> | |||||
<text wx:if="{{item.useType=='2'}}" style="text-align: center;float:right;font-size:12px;background:rgb(235, 154, 4,0.2);color:rgb(235, 154, 4);width:50px;line-height: 20px;">闲置</text> | |||||
<text wx:if="{{item.useType=='3'}}" style="text-align: center;float:right;font-size:12px;background:rgb(235, 154, 4,0.2);color:rgb(235, 154, 4);width:70px;line-height: 20px;">出租或出借</text> | |||||
<text wx:if="{{item.useType=='4'}}" style="text-align: center;float:right;font-size:12px;background:rgb(235, 4, 4,0.2);color:rgb(235, 4, 4);width:50px;line-height: 20px;">其他</text> | |||||
</view> | |||||
</view> | |||||
<view class="detail_box"> | |||||
<view style="width: 55%;margin-left:5%;">{{item.code}}</view> | |||||
<view style="width: 40%;"> | |||||
{{item.assetType}} | |||||
</view> | |||||
</view> | |||||
<view class="detail_box"> | |||||
<view style="width: 60%;"> | |||||
<image src="/image/icon/clock_icon.png" style="width: 15px;height: 15px;border-radius:5px;margin-right: 5px;"></image> | |||||
<text>{{item.buildTime}}</text> | |||||
</view> | |||||
<view style="width: 40%;text-align: right;"> | |||||
原值: | |||||
<text style="color:red">¥{{item.originalValue}}</text> | |||||
</view> | |||||
</view> | |||||
</view> | |||||
</van-swipe-cell> | |||||
</scroll-view> | |||||
<modal hidden="{{!showPopup}}" title="是否删除?" confirm-text="是" cancel-text="否" bindcancel="cancelTem" bindconfirm="confirmTem"> | |||||
</modal> |
@@ -0,0 +1,272 @@ | |||||
/* pages/bank/bank.wxss */ | |||||
.van-search__content { | |||||
border: 1px solid #5CAE77!important; | |||||
background: #fff!important; | |||||
} | |||||
van-search { | |||||
flex: 1; | |||||
} | |||||
.search_box{ | |||||
display: flex; | |||||
} | |||||
.add_btn{ | |||||
flex: 0.2; | |||||
padding: var(--search-padding,10px 12px); | |||||
padding-left: 0; | |||||
} | |||||
.add_btn text{ | |||||
background-color: #62AD66; | |||||
display: block; | |||||
height: 100%; | |||||
text-align: center; | |||||
line-height: 36px; | |||||
color: #fff; | |||||
border-radius: 36px; | |||||
box-shadow: 0px 5px 5px #ddd; | |||||
} | |||||
text{display: block;} | |||||
.work_plan{ | |||||
padding: 40rpx 32.5rpx 30rpx; | |||||
display: flex; | |||||
} | |||||
.work_plan .menu_item{ | |||||
background-color: #fff; | |||||
box-shadow: 2px 5px 5px #ddd; | |||||
border-radius: 60rpx; | |||||
text-align: center; | |||||
position: relative; | |||||
margin-right: 20px; | |||||
padding: 8px 10px; | |||||
} | |||||
.work_plan .menu_item.active{ | |||||
background-color: #2C8E68; | |||||
color: #fff; | |||||
} | |||||
.work_plan .menu_item .remind{ | |||||
height: 30rpx; | |||||
background: #e90101; | |||||
color: #fff; | |||||
font-size: 26rpx; | |||||
position: absolute; | |||||
line-height: 30rpx; | |||||
padding:0 10rpx; | |||||
border-radius: 25px; | |||||
top: -10rpx; | |||||
right: -10rpx; | |||||
} | |||||
.work_plan .more{ | |||||
flex: 1; | |||||
text-align: center; | |||||
line-height: 60rpx; | |||||
font-size: 36rpx; | |||||
color: #31936c; | |||||
} | |||||
.deleteBox{ | |||||
width: 130px; | |||||
text-align: center; | |||||
height: 100%; | |||||
background: #F6F6F6; | |||||
align-items: center; | |||||
display: flex; | |||||
} | |||||
.workflow .workflow_list{ | |||||
height: 150rpx; | |||||
background-color: #fff; | |||||
border-radius: 24rpx; | |||||
box-shadow:0rpx 0rpx 10rpx rgba(0,0,0,.1); | |||||
margin-bottom: 20rpx; | |||||
padding:15rpx 25rpx 10rpx 35rpx; | |||||
} | |||||
.workflow .workflow_list .process_intro{ | |||||
display: flex; | |||||
height: 62rpx; | |||||
align-items: center; | |||||
} | |||||
.workflow .process_intro .name{ | |||||
width: 390rpx; | |||||
font-size: 34rpx; | |||||
margin-right: 30rpx; | |||||
display: flex; | |||||
justify-content: space-between; | |||||
align-items: center; | |||||
} | |||||
.workflow .process_intro .name .name_tit{ | |||||
width: 290rpx; | |||||
overflow: hidden; | |||||
text-overflow: ellipsis; | |||||
white-space: nowrap; | |||||
} | |||||
.van-swipe-cell { | |||||
width: 94%; | |||||
background: #fff; | |||||
border-radius: 10px; | |||||
box-shadow: 2px 5px 5px #ddd; | |||||
margin: 0 auto; | |||||
margin-bottom: 15px; | |||||
} | |||||
.li{ | |||||
width: 100%; | |||||
padding: 14px; | |||||
} | |||||
.tit_box{ | |||||
display: flex; | |||||
} | |||||
.detail_box{ | |||||
margin-top: 10px; | |||||
display: flex; | |||||
justify-content: space-between; | |||||
} | |||||
.li view text{ | |||||
/* margin-top: 15px; */ | |||||
} | |||||
.li .detail_box view{ | |||||
display: flex; | |||||
align-items: center; | |||||
} | |||||
.li .detail_box view text{ | |||||
color: #666666; | |||||
font-size: 12px; | |||||
} | |||||
.li view text:nth-child(1){ | |||||
margin-top: 0px; | |||||
} | |||||
.li .fksr{ | |||||
display: flex; | |||||
align-items: center; | |||||
margin-top: 15px; | |||||
color: #2C8E68; | |||||
font-size: 16px; | |||||
} | |||||
.li .wtj{ | |||||
display: flex; | |||||
align-items: center; | |||||
justify-content: center; | |||||
padding: 3px 8px; | |||||
border-radius: 5px; | |||||
font-size: 14px; | |||||
} | |||||
.no{ | |||||
background-color:#fbe3e3; | |||||
color: #e90000; | |||||
} | |||||
.white{ | |||||
background-color:#feeadc; | |||||
color: #fc9a55; | |||||
} | |||||
.yes{ | |||||
background-color:#ddeee3; | |||||
color: #5cae77; | |||||
} | |||||
.other{ | |||||
background-color:#f0f1f6; | |||||
color: #878787; | |||||
} | |||||
.li .tit{ | |||||
font-size: 14px; | |||||
color: #444444; | |||||
line-height: 14px; | |||||
display: -webkit-box; | |||||
-webkit-box-orient: vertical; | |||||
-webkit-line-clamp: 1; | |||||
word-break: break-all; | |||||
overflow: hidden; | |||||
} | |||||
.li .fj_name{ | |||||
font-size: 14px; | |||||
color: #B3DB62; | |||||
line-height: 25px; | |||||
} | |||||
.li .time{ | |||||
font-size: 14px; | |||||
color: #9B9CAA; | |||||
} | |||||
.li .money{ | |||||
font-size: 18px; | |||||
color: #5CAE77; | |||||
} | |||||
.van-checkbox__label { | |||||
display: flex; | |||||
justify-content: space-between; | |||||
width: 100%; | |||||
} | |||||
.van-checkbox__icon-wrap { | |||||
border-radius: 5px; | |||||
} | |||||
.van-checkbox__icon { | |||||
border-radius: 5px; | |||||
border: 2px solid #2C8E68!important; | |||||
background-color: rgba(44, 142, 104, 0.2); | |||||
} | |||||
.bottom{ | |||||
width: 100%; | |||||
margin: 0 auto; | |||||
text-align: center; | |||||
padding: 15px 0; | |||||
display: flex; | |||||
position: fixed; | |||||
bottom: 0%; | |||||
background: #fff; | |||||
box-shadow: 0 0 5px #ddd; | |||||
} | |||||
.bottom view { | |||||
width: 47%; | |||||
margin: 0 auto; | |||||
border-radius: 30px; | |||||
display: inline-block; | |||||
} | |||||
.bottom .btn2{ | |||||
border: 1px solid transparent; | |||||
padding: 10px 0px; | |||||
background-image: linear-gradient(to right, #2C8E68, #5CAE77); | |||||
color: #fff; | |||||
} | |||||
.downView{ | |||||
display: flex; | |||||
justify-content: center; | |||||
align-items: center; | |||||
padding: 0 20px; | |||||
border: 1px solid #5CAE77; | |||||
border-radius: 50px; | |||||
background: #fff; | |||||
margin-left: auto; | |||||
} | |||||
.downView image{ | |||||
width: 10px; | |||||
height: 8px; | |||||
margin-left: 10px; | |||||
} | |||||
.fj-box text{ | |||||
background-color: #5CAE77; | |||||
color: #ffffff; | |||||
text-align: center; | |||||
border-radius: 5px; | |||||
white-space:pre-wrap; | |||||
padding: 5rpx 8rpx; | |||||
width: 50rpx; | |||||
margin: 0px 14px; | |||||
font-size: 24rpx; | |||||
} | |||||
.fj-li{ | |||||
margin-top: 20px; | |||||
display: flex; | |||||
/* flex-wrap: wrap; */ | |||||
} | |||||
.fj-li .img_li{ | |||||
width: 100%; | |||||
height: 18.5vw; | |||||
} | |||||
.fj-li .img_add{ | |||||
overflow: hidden; | |||||
} | |||||
.van-icon-description{ | |||||
font-size: 60px; | |||||
} |