123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167 |
- <template>
- <view class="content">
- <u-navbar title=" " @leftClick="leftClick" :placeholder="true" :autoBack="true">
- <view slot="center" class="hflex nav">
- <view class="nav_item" :class="nav_index == 1 ? 'nav_active' : ''" @click="changeNav(nav_index)">维修单</view>
- <view class="nav_item" :class="nav_index == 2 ? 'nav_active' : ''" @click="changeNav(nav_index)">维修工</view>
- </view>
- </u-navbar>
- <view v-if="nav_index == 1">
- <view class="search">
- <u-input v-model="serach_value" type="text" :border="true" placeholder="输入搜索关键词" shape="circle"
- prefixIcon="search" prefixIconStyle="font-size: 22px;color: #909399" @confirm="search">
- <template slot="suffix">
- <view @click="search">搜索</view>
- </template>
- </u-input>
- </view>
- <view class="top" style="margin-top: 120rpx;">
- <view class="top_title">快修订单</view>
- <view class="vflex dm_box">
- <block v-if="domWidth == 0">
- <view class="hflex dm_scroll" id="dm1" :style="'--dom-width:' + domWidth + ';' ">
- <view class="hflex acenter dm1">
- <block v-for="(item,index) in bullet_chat" :key="index">
- <view class="hflex acenter dm" @click="orderDetail(item.id)">
- <image :src="item.user.headimg" mode="aspectFill" class="dm_img"></image>
- <view class="dm_text hflex text_hide">{{item.describe}}</view>
- </view>
- </block>
- </view>
- </view>
- </block>
- <block v-else>
- <view class="hflex dm_scroll" id="dm1" :style="'--dom-width:' + domWidth + ';' ">
- <view class="hflex acenter dm1">
- <block v-for="(item,index) in bullet_chat" :key="index">
- <view class="hflex acenter dm" @click="orderDetail(item.id)">
- <image :src="item.user.headimg" mode="aspectFill" class="dm_img"></image>
- <view class="dm_text hflex text_hide">{{item.describe}}</view>
- </view>
- </block>
- </view>
- <view class="hflex acenter ">
- <block v-for="(item,index) in bullet_chat" :key="index">
- <view class="hflex acenter dm" @click="orderDetail(item.id)">
- <image :src="item.user.headimg" mode="aspectFill" class="dm_img"></image>
- <view class="dm_text hflex text_hide">{{item.describe}}</view>
- </view>
- </block>
- </view>
- </view>
- </block>
-
- <block v-if="domWidth == 0">
- <view class="hflex dm_scroll" :style="'--dom-width:' + domWidth + ';' ">
- <view class="hflex acenter dm1">
- <block v-for="(item,index) in bullet_chat" :key="index">
- <view class="hflex acenter dm" @click="orderDetail(item.id)">
- <image :src="item.user.headimg" mode="aspectFill" class="dm_img"></image>
- <view class="dm_text hflex text_hide">{{item.describe}}</view>
- </view>
- </block>
- </view>
- </view>
- </block>
- <block v-else>
- <view class="hflex dm_scroll1" :style="'--dom-width:' + domWidth + ';' ">
- <view class="hflex acenter dm1">
- <block v-for="(item,index) in bullet_chat" :key="index">
- <view class="hflex acenter dm" @click="orderDetail(item.id)">
- <image :src="item.user.headimg" mode="aspectFill" class="dm_img"></image>
- <view class="dm_text hflex text_hide">{{item.describe}}</view>
- </view>
- </block>
- </view>
- <view class="hflex acenter ">
- <block v-for="(item,index) in bullet_chat" :key="index">
- <view class="hflex acenter dm" @click="orderDetail(item.id)">
- <image :src="item.user.headimg" mode="aspectFill" class="dm_img"></image>
- <view class="dm_text hflex text_hide">{{item.describe}}</view>
- </view>
- </block>
- </view>
- </view>
- </block>
- </view>
-
- </view>
- <view class="box">
- <view class="hflex acenter jbetween">
- <block v-for="(item,index) in tabs" :key="index">
- <view class="tabs_item" @click="changeTab(item.index)" :class="tabs_active == item.index?'tabs_active':''">{{item.name}}</view>
- </block>
- </view>
- <view class="list">
- <block v-for="(item,index) in pageList" :key="index">
- <view class="list_item" @tap.stop="orderDetail(item.id)">
- <view class="item_top hflex acenter jbetween">
- <view class="hflex acenter" v-if="item.quick == 1">
- <image src="https://ship.shipcc.cn/common/repair1.png" class="top_img"></image>
- <view class="top_text">普修</view>
- </view>
- <view class="hflex acenter" v-if="item.quick == 2">
- <image src="https://ship.shipcc.cn/common/repair2.png" class="top_img"></image>
- <view class="">快修</view>
- </view>
- <view class="top_btn top_btn1" @click.stop="seeOffer(item.id,index)" v-if="item.offer && item.offer.length > 0">已接单</view>
- <view class="top_btn" @click.stop="meetOrder(item.id,index)" v-else>接单</view>
- </view>
- <view class="item_name cell text_hide">{{item.describe}}</view>
- <view class="hflex acenter cell">
- <u-icon name="map-fill" color="#888888" size="14"></u-icon>
- <view class="text_style1" style="padding-left: 16rpx;">{{item.area}} {{item.address}}</view>
- </view>
- <view class="hflex acenter cell">
- <u-icon name="clock-fill" color="#888888" size="14"></u-icon>
- <view class="text_style1" style="padding-left: 16rpx;">维修时间:{{item.start_time}}至{{item.end_time}}</view>
- </view>
- <view class="img_list cell" v-if="item.imgs.length > 1">
- <block v-for="(item2,index2) in item.imgs" :key="index2">
- <image :src="item2" mode="aspectFill" class="item_img" @tap.stop="perview(item.imgs)"></image>
- </block>
- </view>
- <view class="img_list cell" v-if="item.imgs.length == 1">
- <block v-for="(item2,index2) in item.imgs" :key="index2">
- <image :src="item2" mode="aspectFill" class="item_img2" @tap.stop="perview(item.imgs)"></image>
- </block>
- </view>
- <view class="item_bottom hflex acenter jbetween">
- <view class="hflex acenter">
- <image :src="item.user.headimg" class="bottom_img"></image>
- <view class="bottom_text text_hide" style="padding-left: 8rpx;">{{item.user.nickname}}</view>
- </view>
- <view class="bottom_text">发布于{{item.create_at}}</view>
- </view>
- </view>
- </block>
- </view>
- </view>
-
- </view>
- <view class="" v-if="nav_index == 2">
- <view class="search2">
- <u-input v-model="serach_value" type="text" :border="true" placeholder="输入搜索关键词" shape="circle"
- prefixIcon="search" prefixIconStyle="font-size: 22px;color: #909399" @confirm="search">
- <template slot="suffix">
- <view @click="search">搜索</view>
- </template>
- </u-input>
- </view>
- <block v-for="(item,index) in pageList2" :key="index">
- <view class="box1 hflex" @click="toDetail2(item.id)">
- <image :src="item.user.headimg" mode="aspectFill" class="item_avatar"></image>
- <view class="vflex" style="padding-left: 20rpx;">
- <view class="hflex aend">
- <view class="item_name">{{item.name}}</view>
- <view class="text_style1"style="padding-left: 8rpx;">{{item.phone}}</view>
- </view>
- <view class="hflex acenter cell">
- <image src="https://ship.shipcc.cn/common/company.png" class="item_icon"></image>
- <view class="text_style1" style="padding-left: 16rpx;">{{item.company_name}}</view>
- </view>
- <view class="hflex astart cell" v-if="item.address">
- <u-icon name="map-fill" color="#b8b8b8" size="14"></u-icon>
- <view class="text_style1" style="padding-left: 16rpx;">{{item.address}}</view>
- </view>
- </view>
- </view>
- </block>
- </view>
- <view class="add" v-show="!repair_show">
- <image src="https://ship.shipcc.cn/common/add.png" @click="openRelease" class="add_img"></image>
- </view>
- <view class="add2" v-show="repair_show">
- <view class="add vflex aend">
- <view class="hflex acenter jcenter release_box" @click="receivingOrder">
- <image src="https://ship.shipcc.cn/common/repair_icon1.png" class="box_img"></image>
- <view class="box_text">维修工发布接单需求</view>
- </view>
- <view class="hflex acenter jcenter release_box" @click="repairOrder">
- <image src="https://ship.shipcc.cn/common/repair_icon2.png" class="box_img"></image>
- <view class="box_text">船老板发布维修订单</view>
- </view>
- <image src="https://ship.shipcc.cn/common/close.png" @click="close" class="add_img"></image>
- </view>
- </view>
- <u-modal :show="show_tips" :closeOnClickOverlay="true" :showConfirmButton="false">
- <view class="popup1">
- <image src="https://ship.shipcc.cn/common/small-bell.png" class="popup_img"></image>
- <view class="popup1_title">温馨提示</view>
- <view class="popup1_text">您还不是维修工,不能参与报价,可立即申请成为维修工</view>
- <view class="popup1_btn" @click="toApply">立即申请</view>
- <view class="popup1_text" style="margin: 36rpx 0 0;" @click="close">暂不</view>
- </view>
- </u-modal>
- <u-popup :show="show_offer" mode="center" :round="10" :closeable="true" :safeAreaInsetBottom="false" @close="close">
- <view class="popup">
- <view class="popup_title">立即报价</view>
- <view class="input_bg hflex acenter">
- <view class="price">¥</view>
- <u-input v-model="offer" placeholder="填写你的报价" border="none"></u-input>
- </view>
- <view class="hflex acenter">
- <image src="https://ship.shipcc.cn/common/icon_tips.png" style="width: 24rpx;height: 24rpx;padding-right: 6rpx"></image>
- <view class="popup_info">报价可先不填,可等评估后再填写</view>
- </view>
- <view class="hflex acenter" style="padding:30rpx 0 20rpx;">
- <view class="price">上传图片及资质证明图</view>
- </view>
- <u-upload :fileList="fileList1" @afterRead="afterRead" @delete="deletePic" name="1" multiple :maxCount="9"></u-upload>
- <view class="popup_btn" @click="submit">提交</view>
- </view>
- </u-popup>
- <u-popup :show="see_offer" mode="center" :round="10" :closeable="true" :safeAreaInsetBottom="false" @close="close">
- <view class="popup" v-if="info">
- <view class="popup_title">报价信息</view>
- <view class="popup_name">当前报价</view>
- <view class="">
- <block v-for="(item,index) in list.slice(0,3)" :key="index">
- <view class="hflex acenter input_bg">
- <view class="popup_text">第{{list.length - index}}次报价</view>
- <view class="red">{{item.price == 0 ? '未报价' : item.price}}</view>
- </view>
- </block>
- </view>
- <!-- <view class="hflex acenter input_bg" v-if="info.list.length >= 2">
- <view class="popup_text">第二次报价</view>
- <view class="red">{{info.list[1].price}}</view>
- </view>
- <view class="hflex acenter input_bg" v-if="info.list.length >= 3">
- <view class="popup_text">第三次报价</view>
- <view class="red">{{info.list[2].price}}</view>
- </view> -->
- <view class="popup_name">图片及资质证明图片</view>
- <view>
- <block v-for="(item,index) in info.imgs" :key="index">
- <image :src="item" mode="aspectFill" style="width: 188rpx;height: 188rpx;margin: 0 14rpx 20rpx 0;border-radius: 16rpx;"></image>
- </block>
- </view>
- <view class="popup_btn" @click="tooffer()">查看详情</view>
- </view>
- </u-popup>
- </view>
- </template>
- <script>
- import $api from '@/static/js/api.js'
- var that = ''
- export default {
- data() {
- return {
- nav_index: 1,
- domWidth: 0,
- bullet_chat: [
- ],
- tabs: [
- {
- index: 0,
- name: '全部'
- },
- {
- index: 1,
- name: '快修'
- },
- {
- index: 2,
- name: '普修'
- }
- ],
- tabs_active: 0,
- pageList: [],
- page: 1,
- limit: 15,
- total: 1,
- temp: '',
- repair_show: false,
- serach_value: '',
- pageList2: [
- ],
- maintenance: false,
- show_tips: false,
- show_offer: false,
- offer: '',
- fileList1: [],
- imgs: '',
- id: '',
- info: {},
- see_offer: false,
- index: '',
- list: []
- }
- },
- onLoad() {
- that = this
- that.maintenance = uni.getStorageSync('maintenance')
- },
- onShow() {
- /* var token = uni.getStorageSync('token')
- if(!token) {
- $api.info('请先登录')
- setTimeout(() =>{
- $api.jump('/pages/login/password_login')
- }, 1000)
- } */
- that.getchatList()
- that.getList()
- // that.getList2()
- },
- mounted() {
-
-
- },
- onReachBottom() {
- if (that.page * that.limit >= that.total) {
- $api.info("没有更多了")
- } else {
- this.page++
- console.log(this.page,that.nav_index);
- if(that.nav_index == 1) {
- that.getList()
- console.log('1111111111');
- } else {
- that.getList2()
- console.log('222222222222');
- }
- }
-
- },
- methods: {
- // 返回
- leftClick() {
- $api.jump(-1)
- },
- getWidth() {
- const query = uni.createSelectorQuery().in(this);
- query.select('#dm1').boundingClientRect(data => {
- that.domWidth = `-${data.width}px`
- that.temp = `${that.domWidth};`
- }).exec();
- },
- getchatList() {
- $api.req({
- url: '/data/api.auth.ShipEngineMaintenance/quicklist',
- method: 'POST'
- }, function(res) {
- if(res.code == 1) {
- that.bullet_chat = res.data
- setTimeout(() => {
- that.getWidth()
- }, 500)
- }
- })
- },
- getList() {
- $api.req({
- url: '/data/api.auth.ShipEngineMaintenance/repairlist',
- method: 'POST',
- data: {
- type: that.tabs_active + 1,
- page: that.page,
- describe: that.serach_value
- }
- }, function(res) {
- if(res.code == 1) {
- if(that.page !== 1) {
- that.pageList = that.pageList.concat(res.data.data)
- } else {
- that.pageList = res.data.data
- }
- that.total = res.data.total
- that.limit = res.data.per_page
- }
- })
- },
- getList2() {
- $api.req({
- url: '/data/api.auth.ShipEngineMaintenance/acceptancelist',
- method: "POST",
- data: {
- keyword: that.serach_value,
- page: that.page
- }
- }, function(res) {
- if(res.code == 1) {
- if(that.page !== 1) {
- that.pageList2 = that.pageList2.concat(res.data.data)
- } else {
- that.pageList2 = res.data.data
- }
- that.total = res.data.total
- that.limit = res.data.per_page
- }
- })
- },
- // 切换导航栏
- changeNav(index) {
- if (index == 1) {
- that.nav_index = 2
- that.getList2()
- } else {
- that.nav_index = 1
- that.getList()
- }
- that.page = 1
- },
- // 切换tabs
- changeTab(index) {
- var token = uni.getStorageSync('token')
- if(!token) {
- $api.info('请先登录')
- setTimeout(() =>{
- $api.jump('/pages/login/password_login')
- }, 1000)
- } else {
- that.tabs_active = index
- that.page = 1
- that.getList()
- }
-
- },
- // 点击加号
- openRelease() {
- var token = uni.getStorageSync('token')
- if(!token) {
- $api.info('请先登录')
- setTimeout(() =>{
- $api.jump('/pages/login/password_login')
- }, 1000)
- } else {
- that.repair_show = true
- }
- },
- // 关闭
- close() {
- that.repair_show = false
- that.show_tips = false
- that.show_offer = false
- that.see_offer = false
- },
- perview(list) {
- uni.previewImage({
- urls: list
- })
- },
- // 发布接单需求
- receivingOrder() {
- var token = uni.getStorageSync('token')
- if(!token) {
- $api.info('请先登录')
- setTimeout(() =>{
- $api.jump('/pages/login/password_login')
- }, 1000)
- } else {
- if(that.maintenance) {
- $api.jump('/page_index/pages/repair/receivingOrder')
- that.close()
- } else {
- that.show_tips = true
- }
- }
-
-
- },
- // 去申请
- toApply() {
- var token = uni.getStorageSync('token')
- if(!token) {
- $api.info('请先登录')
- setTimeout(() =>{
- $api.jump('/pages/login/password_login')
- }, 1000)
- } else {
- that.close()
- $api.jump('/page_shop/pages/service/applyMaintenance')
- }
-
- },
- // 发布维修订单
- repairOrder() {
- var token = uni.getStorageSync('token')
- if(!token) {
- $api.info('请先登录')
- setTimeout(() =>{
- $api.jump('/pages/login/password_login')
- }, 1000)
- } else {
- $api.jump('/page_index/pages/repair/repairOrder')
- that.close()
- }
-
- },
- // 接单
- meetOrder(id,index) {
- var token = uni.getStorageSync('token')
- if(!token) {
- $api.info('请先登录')
- setTimeout(() =>{
- $api.jump('/pages/login/password_login')
- }, 1000)
- } else {
- that.index = index
- if(that.maintenance) {
- that.show_offer = true
- that.id = id
- } else {
- that.show_tips = true
- }
- }
-
- // that.show_tips = true
- // that.show_offer = true
- // that.id = id
- },
- seeOffer(id,index) {
- var token = uni.getStorageSync('token')
- if(!token) {
- $api.info('请先登录')
- setTimeout(() =>{
- $api.jump('/pages/login/password_login')
- }, 1000)
- } else {
- that.index = index
- if(!that.maintenance) {
- that.show_tips = true
- return
- }
- $api.req({
- url: '/data/api.auth.ShipEngineMaintenance/offerinfo',
- method: 'POST',
- data: {
- id: id
- }
- }, function(res) {
- if(res.code == 1) {
- that.see_offer = true
- that.id = id
- that.info = res.data
- let length = res.data.list.length
- let index = 0
- that.list = []
- for(var i=length-1;i>=0;i--) {
- that.list.push(that.info.list[i])
- }
- }
- })
- }
-
- },
- tooffer() {
- var token = uni.getStorageSync('token')
- if(!token) {
- $api.info('请先登录')
- setTimeout(() =>{
- $api.jump('/pages/login/password_login')
- }, 1000)
- } else {
- $api.jump('/page_shop/pages/order/offer2?id=' + that.id + '&status=' + that.pageList[that.index].status)
- that.close()
- }
-
- },
- submit() {
- $api.req({
- url: '/data/api.auth.ShipEngineMaintenance/repairoffer',
- method: 'POST',
- data: {
- id: that.id,
- price: that.offer,
- imgs: that.imgs
- }
- }, function(res) {
- if(res.code == 1) {
- $api.info(res.info)
- that.close()
- that.offer = ''
- that.imgs = ''
- that.fileList1 = []
- that.page = 1
- that.getList()
- }
- })
- },
- // 订单详情
- orderDetail(id) {
- var token = uni.getStorageSync('token')
- if(!token) {
- $api.info('请先登录')
- setTimeout(() =>{
- $api.jump('/pages/login/password_login')
- }, 1000)
- } else {
- $api.jump('/page_index/pages/repair/orderDetail?id=' + id)
- }
- },
- // 维修工详情
- toDetail2(id) {
- var token = uni.getStorageSync('token')
- if(!token) {
- $api.info('请先登录')
- setTimeout(() =>{
- $api.jump('/pages/login/password_login')
- }, 1000)
- } else {
- $api.jump('/page_index/pages/repair/repairDetail?id=' + id)
- }
- },
- // 删除图片
- deletePic(event) {
- this[`fileList${event.name}`].splice(event.index, 1)
- },
- // 新增图片
- async afterRead(event) {
- uni.showLoading({
- title: '上传中',
- mask: true
- })
- let lists = [].concat(event.file)
- let fileListLen = this[`fileList${event.name}`].length
- lists.map((item) => {
- this[`fileList${event.name}`].push({
- ...item,
- status: 'uploading',
- message: '上传中'
- })
- })
- for (let i = 0; i < lists.length; i++) {
- const result = await this.uploadFilePromise(lists[i].url)
- let item = this[`fileList${event.name}`][fileListLen]
- this[`fileList${event.name}`].splice(fileListLen, 1, Object.assign(item, {
- status: 'success',
- message: '',
- url: result.url
- }))
- fileListLen++
- if(lists.length - 1 == i) {
- uni.hideLoading()
- }
- }
- if(that[`fileList${event.name}`].length > 0) {
- for(var i=0;i<that[`fileList${event.name}`].length;i++) {
- if(i == that[`fileList${event.name}`].length -1) {
- that.imgs += that[`fileList${event.name}`][i].url
- } else {
- that.imgs += that[`fileList${event.name}`][i].url + ','
- }
- }
- }
- },
- // 上传图片
- uploadFilePromise(url) {
- return new Promise((resolve, reject) => {
- let a = uni.uploadFile({
- url: $api.config.baseUrl + '/data/api.auth.Center/upload',
- filePath: url,
- name: 'file',
- header: {
- 'content-type': 'application/x-www-form-urlencoded',
- 'api-token': uni.getStorageSync('token').token?uni.getStorageSync('token').token:'',
- 'api-name': 'wxapp'
- },
- formData: {
- user: 'test'
- },
- success: (res) => {
- setTimeout(() => {
- var data = JSON.parse(res.data)
- resolve(data.data)
- }, 1000)
- }
- });
- })
- },
- search() {
- if(that.nav_index == 1) {
- that.page = 1
- that.pageList = []
- that.getList()
- } else {
- that.page = 1
- that.pageList2 = []
- that.getList2()
- }
-
- },
-
- },
- }
- </script>
- <style lang="scss" scoped>
- .content::v-deep {
- background: #F4F4F4;
- .nav {
- width: 350rpx;
- height: 60rpx;
- background: #F4F4F4;
- border-radius: 30rpx;
- font-size: 28rpx;
- font-weight: 400;
- color: #020202;
- .nav_item {
- width: 50%;
- height: 60rpx;
- background: #F4F4F4;
- border-radius: 15px;
- text-align: center;
- line-height: 60rpx;
- }
- .nav_active {
- background: #506DFF;
- color: #FFFFFF;
- }
- }
- .top {
- width: 100%;
- background: #FFFFFF;
- box-sizing: border-box;
- padding: 20rpx 0 0;
- .top_title {
- width: 100%;
- padding-left: 20rpx;
- padding-bottom: 20rpx;
- border-bottom: 1rpx solid #F4F4F4;
- font-size: 26rpx;
- font-weight: 400;
- color: #222222;
- position: relative;
- }
- .top_title::before {
- content: '';
- width: 8rpx;
- height: 28rpx;
- background: #506DFF;
- position: absolute;
- left: 0;
- top: 5rpx;
- }
- .dm_box {
- width: 100%;
- height: 162rpx;
- overflow: hidden;
- position: relative;
-
- .dm {
- width: auto;
- height: 48rpx;
- background: #E7EBFF;
- border-radius: 36rpx;
- margin: 0 17rpx;
- padding: 0 20rpx 0 0;
-
- .dm_img {
- width: 44rpx;
- height: 44rpx;
- border-radius: 50%;
- flex: none;
- }
- .dm_text {
- max-width: 350rpx;
- margin-left: 12rpx;
- font-size: 24rpx;
- font-weight: 400;
- color: #222222;
- white-space: nowrap;
- }
-
- }
- }
- }
- .box {
- margin-top: 20rpx;
- width: 100%;
- box-sizing: border-box;
- background: linear-gradient(65deg, #FFFFFF 0%, #F4F4F4 100%);
-
- padding: 20rpx 30rpx 88rpx;
- .tabs_item {
- width: 33%;
- font-size: 32rpx;
- font-weight: 400;
- color: #666666;
- text-align: center;
- }
- .tabs_active {
- position: relative;
- font-weight: 500;
- color: #222222;
- }
- .tabs_active::after{
- content: "";
- position: absolute;
- width: 64rpx;
- height: 12rpx;
- background: linear-gradient(270deg, #F9F9F9 0%, #506DFF 100%);
- border-radius: 6rpx;
- opacity: 0.8;
- bottom: 0;
- left: 38%;
- }
- .list {
- .list_item {
- margin-top: 20rpx;
- background: #FFFFFF;
- border-radius: 16rpx;
- box-sizing: border-box;
- padding: 20rpx;
- .item_top {
- padding: 0 0 12rpx;
- border-bottom: 1rpx solid #F4F4F4;
- .top_img {
- width: 40rpx;
- height: 40rpx;
- margin-right: 8rpx;
- }
- .top_text {
- font-size: 28rpx;
- font-weight: 500;
- color: #222222;
- }
- .top_btn {
- text-align: center;
- width: 132rpx;
- height: 52rpx;
- line-height: 52rpx;
- background: #506DFF;
- box-shadow: 0px 0px 16rpx 0px rgba(80,109,255,0.42);
- border-radius: 26rpx;
- font-size: 26rpx;
- font-weight: 400;
- color: #FFFFFF;
- }
- .top_btn1 {
- background: rgba(80, 109, 255, .5);
- }
- }
- .item_name {
- font-size: 30rpx;
- font-weight: 500;
- color: #222222;
- }
- .cell {
- padding: 10rpx 0;
- }
- .text_style1 {
- font-size: 26rpx;
- font-weight: 400;
- color: #222222;
- }
- .img_list {
- .item_img {
- width: 210rpx;
- height: 160rpx;
- border-radius: 8rpx;
- margin: 0 8rpx 20rpx 0;
- }
- .item_img2 {
- width: 100%;
- height: 320rpx;
- }
- .item_img:nth-child(3n) {
- margin: 0 0 20rpx;
- }
- }
- .item_bottom {
- width: 100%;
- padding-top: 26rpx;
- border-top: 1rpx solid #F4F4F4;
- .bottom_img {
- width: 40rpx;
- height: 40rpx;
- border-radius: 50%;
- }
- .bottom_text {
-
- max-width: 300rpx;
- font-size: 24rpx;
- font-weight: 400;
- color: #999999;
- }
- }
-
- }
- }
- }
- .add {
- position: fixed;
- right: 30rpx;
- bottom: 186rpx;
- z-index: 99;
- .add_img {
- width: 96rpx;
- height: 96rpx;
- }
- }
- .add2 {
- position: fixed;
- left: 0;
- top: 0;
- width: 100%;
- height: 100%;
- background-color: rgba(0, 0, 0, .3);
- z-index: 99;
- .add {
- position: fixed;
- right: 30rpx;
- bottom: 186rpx;
- .release_box {
- width: 320rpx;
- height: 72rpx;
- opacity: 1;
- background: linear-gradient(270deg, #88A6FF 0%, #506DFF 100%);
- border-radius: 40rpx;
- margin-bottom: 40rpx;
- .box_img {
- width: 32rpx;
- height: 32rpx;
- }
- .box_text {
- font-size: 26rpx;
- font-weight: 400;
- color: #FFFFFF;
- padding-left: 10rpx;
- }
- }
- .add_img {
- width: 72rpx;
- height: 72rpx;
- }
- }
- }
- .search {
- position: fixed;
- // top: 170rpx;
- // background: #fff;
- width: 100%;
- height: 100rpx;
- box-sizing: border-box;
- padding: 12rpx 30rpx;
- background: #fff;
- z-index: 99;
- margin: 0 0 20rpx 0;
- .u-input {
- background-color: #fff;
- height: 64rpx;
- padding: 0 0 0 18rpx !important;
- border: 1rpx solid #506Dff;
- margin-bottom: 12rpx;
- }
- .u-input__content__subfix-icon {
- width: 128rpx;
- height: 64rpx;
- background-color: #506Dff;
- border-radius: 32rpx;
- color: #fff;
- font-size: 28rpx;
- text-align: center;
- line-height: 64rpx;
- }
- }
- .search2 {
- position: sticky;
- top: 170rpx;
- // background: #fff;
- width: 100%;
- height: 100rpx;
- box-sizing: border-box;
- padding: 12rpx 30rpx;
- // background: #fff;
- z-index: 99;
- margin: 20rpx 0;
- .u-input {
- background-color: #fff;
- height: 64rpx;
- padding: 0 0 0 18rpx !important;
- border: 1rpx solid #506Dff;
- margin-bottom: 12rpx;
- }
- .u-input__content__subfix-icon {
- width: 128rpx;
- height: 64rpx;
- background-color: #506Dff;
- border-radius: 32rpx;
- color: #fff;
- font-size: 28rpx;
- text-align: center;
- line-height: 64rpx;
- }
- }
- .box1 {
- // width: 100%;
- background: #FFFFFF;
- border-radius: 8px;
- box-sizing: border-box;
- padding: 24rpx 20rpx;
- margin: 20rpx 30rpx;
- .item_avatar {
- width: 84rpx;
- height: 84rpx;
- border-radius: 50%;
- }
- .cell {
- margin-top: 20rpx;
- }
- .item_icon {
- width: 28rpx;
- height: 28rpx;
- }
- .text_style1 {
- font-size: 24rpx;
- font-weight: 400;
- color: #555555;
- }
- .item_name {
- font-size: 30rpx;
- font-weight: 500;
- color: #222222;
- }
- }
- .u-popup__content {
- overflow: unset !important;
- }
- .u-modal__content {
- padding: 0 !important;
- }
- .u-modal {
- width: 530rpx !important;
- background: url('https://ship.shipcc.cn/common/eject.png') no-repeat;
- background-size: 100%;
- overflow: unset !important;
- }
- .popup1 {
- width: 530rpx;
- // height: 520rpx;
- border-radius: 40rpx;
- position: relative;
- box-sizing: border-box;
- padding: 0 40rpx 40rpx;
- .popup_img {
- width: 174rpx;
- height: 172rpx;
- position: absolute;
- top: -50rpx;
- left: 178rpx;
- z-index: 99;
- }
- .popup1_title {
- margin-top: 134rpx;
- text-align: center;
- font-size: 48rpx;
- font-weight: 400;
- color: #222222;
- }
-
- .popup1_text {
- width: 100%;
- text-align: center;
- font-size: 28rpx;
- font-weight: 400;
- color: #666666;
- margin: 44rpx auto 52rpx;
- }
- .popup1_btn {
- margin: 0 auto;
- width: 310rpx;
- height: 84rpx;
- background: linear-gradient(90deg, #506DFF 0%, #88A6FF 100%);
- box-shadow: 0px 4rpx 24rpx 0px rgba(90,119,255,0.36);
- border-radius: 42rpx;
- text-align: center;
- line-height: 84rpx;
- font-size: 32rpx;
- font-weight: 500;
- color: #FFFFFF;
- }
- }
- .popup {
- width: 670rpx;
- background: #FFFFFF;
- border-radius: 10px;
- box-sizing: border-box;
- padding: 36rpx 30rpx 24rpx;
- .popup_title {
- width: 100%;
- text-align: center;
- font-size: 32rpx;
- font-weight: 500;
- color: #222222;
- margin-bottom: 24rpx;
- }
- .popup_name {
- font-size: 26rpx;
- font-weight: 400;
- color: #222222;
- padding: 28rpx 0 20rpx;
- }
- .popup_text {
- font-size: 22rpx;
- font-weight: 500;
- color: #777777;
- padding-right: 60rpx;
- }
- .input_bg {
- background: #F4F4F4;
- border-radius: 8px;
- box-sizing: border-box;
- padding: 16rpx 20rpx;
- margin: 20rpx 0;
- .price {
- font-size: 32rpx;
- font-weight: 500;
- color: #222222;
- padding-right: 20rpx;
- }
- .u-textarea {
- background-color: #F4F4F4 !important;
- }
- .red {
- font-size: 28rpx;
- font-weight: bold;
- color: #FF3636;
- }
- }
- .popup_info {
- font-size: 20rpx;
- font-weight: 400;
- color: #C0C0C0;
- line-height: 28rpx;
- }
- .popup_btn {
- width: 610rpx;
- height: 80rpx;
- background: #506DFF;
- border-radius: 40rpx;
- font-size: 32rpx;
- font-weight: 500;
- color: #FFFFFF;
- text-align: center;
- line-height: 80rpx;
- margin: 20rpx 0;
- }
- }
- }
- .dm_scroll {
- position:absolute;
- top: 24rpx;
- left: 0%;
- animation: rowScrollTest 22s linear infinite;
- }
- .dm_scroll1 {
- position:absolute;
- top: 96rpx;
- left: 0%;
- animation: rowScrollTest 25s linear infinite;
- }
-
- @keyframes rowScrollTest {
- from {
- // left: 100%;
- transform: translateX(1);
- }
- to {
- // left: 0%;
- transform: translateX(var(--dom-width));
- }
-
- }
- </style>
|