index.vue 22 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066
  1. <template name="apps">
  2. <view>
  3. <view :class="['custom-header', { 'is-back': isBack }, bgColor]">
  4. <view class="back-container" @click="handleBack">
  5. <view class="back-text">返回</view>
  6. </view>
  7. <view class="content-container">
  8. <view class="content-text">都企供需</view>
  9. </view>
  10. </view>
  11. <swiper class="swiper" circular :indicator-dots="true" :autoplay="true" :interval="3000" :duration="800">
  12. <swiper-item v-for="(item, index) in picture" :key="index">
  13. <image :src="item" class="swiper-item"></image>
  14. </swiper-item>
  15. </swiper>
  16. <view class="line-box">
  17. <view class="center-box">
  18. <view class="center-left-box">
  19. <view class="btn-box-1 mart-t">
  20. {{pageInfo.enterprisec}}
  21. </view>
  22. <view class="btn-box-2 mart-t" @click="totongxunlu22">
  23. {{pageInfo.todayc}}
  24. </view>
  25. <view class="btn-box-3 mart-t" @click="totongxunlu23">
  26. {{pageInfo.samemonthc}}
  27. </view>
  28. <view class="btn-box-4 mart-t">
  29. {{pageInfo.industryc}}
  30. </view>
  31. </view>
  32. <view class="center-left-box">
  33. <view class="btn-box-text mart-t">
  34. 平台企业数
  35. </view>
  36. <view class="btn-box-text mart-t">
  37. 当日活跃数
  38. </view>
  39. <view class="btn-box-text mart-t">
  40. 当月活跃数
  41. </view>
  42. <view class="btn-box-text mart-t">
  43. 细分行业数
  44. </view>
  45. </view>
  46. </view>
  47. <view class="center-box">
  48. <view class="kuai-text">快捷入口</view>
  49. <view class="center-left-box">
  50. <view class="btn-Imbox" @click="totongxunlu">
  51. <image class="center-img" src="/static/img/icon1.png"></image>
  52. <p>重点园区</p>
  53. </view>
  54. <view class="btn-Imbox" @click="totongxunlu2">
  55. <image class="center-img" src="/static/img/icon2.png"></image>
  56. <p>产业图谱</p>
  57. </view>
  58. <view class="btn-Imbox" @click="totongxunlu6">
  59. <image class="center-img" src="/static/img/icon4.png"></image>
  60. <p>产品分布</p>
  61. </view>
  62. </view>
  63. <view class="center-left-box">
  64. <view class="btn-Imbox" @click="totongxunlu7">
  65. <image class="center-img" src="/static/img/icon9.png"></image>
  66. <p>双50强企业</p>
  67. </view>
  68. <view class="btn-Imbox" @click="totongxunlu3">
  69. <image class="center-img" src="/static/img/icon3.png"></image>
  70. <p>链主企业</p>
  71. </view>
  72. <view class="btn-Imbox" @click="totongxunlu4">
  73. <image class="center-img" src="/static/img/icon8.png"></image>
  74. <p>产品供需</p>
  75. </view>
  76. <!-- <view class="btn-Imbox" v-if="isLogin!=null" @click="outlogin">
  77. <image class="center-img" src="/static/img/icon7.png"></image>
  78. <p>退出登录</p>
  79. </view>
  80. <view class="btn-Imbox" v-if="isLogin==null" @click="outlogin">
  81. <image class="center-img" src="/static/img/icon6.png"></image>
  82. <p>立即登录</p>
  83. </view> -->
  84. </view>
  85. <view class="center-left-box">
  86. <view class="btn-Imbox" @click="totongxunlu5">
  87. <image class="center-img" src="/static/img/icon5.png"></image>
  88. <p>我的发布</p>
  89. </view>
  90. <!-- <view class="btn-Imbox" @click="totongxunlu3">
  91. <image class="center-img" src="/static/img/icon3.png"></image>
  92. <p>链主企业</p>
  93. </view>
  94. <view class="btn-Imbox" @click="totongxunlu4">
  95. <image class="center-img" src="/static/img/icon8.png"></image>
  96. <p>产品供需</p>
  97. </view> -->
  98. <view class="btn-Imbox" v-if="isLogin!=null" @click="outlogin">
  99. <image class="center-img" src="/static/img/icon7.png"></image>
  100. <p>退出登录</p>
  101. </view>
  102. <view class="btn-Imbox" v-if="isLogin==null" @click="outlogin">
  103. <image class="center-img" src="/static/img/icon6.png"></image>
  104. <p>立即登录</p>
  105. </view>
  106. <view class="btn-Imbox" >
  107. </view>
  108. </view>
  109. </view>
  110. <!-- <view :style="[{top:CustomBar + 'px'}]">
  111. <view class="search-box">
  112. <view class="search-box1">
  113. <view class="choose-box">
  114. <input type="text" placeholder="输入或选择属地" v-model="searchForm.des1" confirm-type="search" style="padding-left: 28rpx;"
  115. ></input>
  116. <jp-picker class="choose-boxp" v-model="searchForm.des1" rangeKey="label" rangeValue="value"
  117. :range="parkList2" >
  118. </jp-picker>
  119. </view>
  120. <view class="choose-box">
  121. <input type="text" placeholder="输入或选择行业" v-model="searchForm.industry" confirm-type="search" style="padding-left: 28rpx;"
  122. ></input>
  123. <jp-picker class="choose-boxp" v-model="searchForm.industry" rangeKey="label" rangeValue="value"
  124. :range="parkList" >
  125. </jp-picker>
  126. </view>
  127. </view>
  128. <view class="choose-box2" style="margin-top: 20rpx;">
  129. <view class="choose-box3">
  130. <view style="width: 300rpx;display: flex;align-items: center;color: #666666;font-size: 33rpx;">
  131. 产业链环节:
  132. </view>
  133. <DoublePicker
  134. :column1Label="''"
  135. :column2Label="''"
  136. :column1Data="parkList3"
  137. :column2Data="parkList4"
  138. v-model="ddd1"
  139. @update:column2Data="updateCities"
  140. />
  141. </view>
  142. </view>
  143. <view class="choose-box2" style="margin-top: 20rpx;">
  144. <view style="width: 520rpx;">
  145. <input type="text" placeholder="输入关键词产品或企业名称" v-model="searchForm.name" confirm-type="search"
  146. ></input>
  147. </view>
  148. <text style="padding-left: 40rpx;flex: 1;" class="cuIcon-search color-white" @click="doSearch"></text>
  149. </view>
  150. </view>
  151. <mescroll-body ref="mescrollRef" @init="mescrollInit" @down="downCallback" :up="upOption" @up="upCallback">
  152. <view class="cu-item" :class="modalName=='move-box-'+ index?'move-cur':''"
  153. v-for="(item, index) in dataList" :key="index" @touchstart="ListTouchStart"
  154. @touchmove="ListTouchMove" @touchend="ListTouchEnd" :data-target="'move-box-' + index">
  155. <view class="item-box" @click="gotoBuildInfo(item.id)">
  156. <view class="item-title">
  157. <view>
  158. {{item.name}}
  159. </view>
  160. </view>
  161. <view class="item-line">
  162. <view v-if="item.bz3!=''&&item.bz3!=undefined" class="item-name">{{item.bz1}}、{{item.bz3}}</view>
  163. <view v-if="item.bz3==''||item.bz3==undefined" class="item-name">{{item.bz1}}</view>
  164. </view>
  165. <view class="item-line">
  166. <view class="item-name2">{{item.industry}}</view>
  167. <view class="item-name3">{{item.des1}}</view>
  168. </view>
  169. </view>
  170. </view>
  171. </mescroll-body>
  172. <uni-fab :pattern=" {
  173. color: '#7A7E83',
  174. backgroundColor: '#fff',
  175. selectedColor: '#007AFF',
  176. buttonColor: '#007AFF'
  177. }" horizontal="right" vertical="bottom" @fabClick="add" v-if="stype == 5"></uni-fab>
  178. </view> -->
  179. <view @click="outlogin" class="fixed-bottom-right" v-if="isLogin!=null">
  180. <image class="center-img2" src="/static/img/icon_logout.png"></image>
  181. </view>
  182. </view>
  183. </view>
  184. </template>
  185. <script>
  186. import loginService from "@/api/auth/loginService";
  187. import uniFab from '@/components/uni-fab/uni-fab.vue';
  188. import DoublePicker from '@/components/DoublePicker/DoublePicker.vue'
  189. import MescrollMixin from "@/components/mescroll-uni/mescroll-mixins.js";
  190. import MescrollMoreItemMixin from "@/components/mescroll-uni/mixins/mescroll-more-item.js";
  191. import {mapActions} from 'vuex'
  192. export default {
  193. mixins: [MescrollMixin, MescrollMoreItemMixin], // 使用mixin (在main.js注册全局组件)
  194. name: "apps",
  195. components: {
  196. uniFab,
  197. DoublePicker
  198. },
  199. data() {
  200. return {
  201. isBack: true, // 是否显示返回按钮
  202. backText: '返回', // 返回按钮的文本
  203. bgColor: 'bg-blue', // 背景颜色
  204. isLogin:"",
  205. pageInfo: {},
  206. loginid:"",
  207. stype: "", // 企业 => 3 楼宇 => 2 园区 => 1 zfadmin => 4 admin=> 5
  208. searchForm: {
  209. des1:"",
  210. industry:"",
  211. name:"",
  212. },
  213. picture:["https://miniapp.huidutech.com.cn/yd_qycpfbH5/bg1.jpg",
  214. "https://miniapp.huidutech.com.cn/yd_qycpfbH5/bg2.jpg",
  215. "https://miniapp.huidutech.com.cn/yd_qycpfbH5/bg3.jpg",
  216. "https://miniapp.huidutech.com.cn/yd_qycpfbH5/bg4.jpg"],
  217. curWord: "", //当前搜索关键词
  218. dataList: [], // 数据列表
  219. modalName: null,
  220. tablePage: {
  221. total: 0,
  222. currentPage: 1,
  223. pageSize: 10,
  224. orders: []
  225. },
  226. loading: false,
  227. parkId: '',
  228. parkList: [],
  229. parkList2: [],
  230. parkList3: [],
  231. parkList4: [],
  232. ddd1:"" ,
  233. };
  234. },
  235. onLoad(query) {
  236. if(query!=undefined&&query!=null&&query!=''){
  237. if(query.loginid!=undefined){
  238. this.loginid=query.loginid
  239. this.autoLogin();
  240. }
  241. }
  242. },
  243. onShow() {
  244. this.isLogin=this.$auth.checkisLogin();
  245. },
  246. created() {
  247. this.getPageInfo();
  248. this.getParkList()
  249. this.getParkList2()
  250. this.getParkList3()
  251. },
  252. methods: {
  253. ...mapActions(['refreshUserInfo']),
  254. //选择产业链环节
  255. getParkList3() {
  256. loginService.getIndustryChainList({
  257. }).then(({
  258. data
  259. }) => {
  260. // this.parkList3 = data.map((item) => {
  261. // return {
  262. // label: item.bz2,
  263. // value: item.bz2
  264. // }
  265. // });
  266. this.parkList3=[{label: '上游',value: '上游'},{label: '中游',value: '中游'},{label: '下游',value: '下游'}]
  267. this.parkList4 = data
  268. .map((item) => {
  269. const match = item.bz2.match(/\((.*?)\)/); // 匹配括号内的内容
  270. if (match) {
  271. return {
  272. label: match[1], // 括号内的内容
  273. value: match[1] // 括号内的内容
  274. };
  275. }
  276. return null; // 如果没有括号,返回 null
  277. })
  278. .filter((item) => item !== null) // 过滤掉 null 值
  279. .reduce((acc, current) => {
  280. // 使用 Set 去重
  281. const existingItem = acc.find((item) => item.value === current.value);
  282. if (!existingItem) {
  283. acc.push(current);
  284. }
  285. return acc;
  286. }, []);
  287. this.parkList3.unshift({
  288. label: "全部",
  289. value: ""
  290. });
  291. this.parkList4.unshift({
  292. label: "全部",
  293. value: ""
  294. });
  295. }).catch(e => {
  296. console.log(e)
  297. })
  298. },
  299. //选择属地
  300. getParkList2() {
  301. loginService.getAreaList({
  302. }).then(({
  303. data
  304. }) => {
  305. this.parkList2 = data.map((item) => {
  306. return {
  307. label: item.des1,
  308. value: item.des1
  309. }
  310. })
  311. this.parkList2.unshift({
  312. label: "盐都区",
  313. value: ""
  314. });
  315. }).catch(e => {
  316. console.log(e)
  317. })
  318. },
  319. //选择行业
  320. getParkList() {
  321. loginService.getHyList({
  322. }).then(({
  323. data
  324. }) => {
  325. this.parkList = data.map((item) => {
  326. return {
  327. label: item.industry,
  328. value: item.industry
  329. }
  330. })
  331. this.parkList.unshift({
  332. label: "全部",
  333. value: ""
  334. });
  335. }).catch(e => {
  336. console.log(e)
  337. })
  338. },
  339. /*获取数据列表 */
  340. upCallback(page) {
  341. this.loading = true
  342. loginService.comlist({
  343. current: page.num,
  344. size: page.size,
  345. name: this.curWord,
  346. des1: this.parkId,
  347. orders: [{ column: 'a.create_date', asc: false }],
  348. ...this.searchForm
  349. }).then(({
  350. data
  351. }) => {
  352. let curPageData = data.records
  353. this.mescroll.endBySize(curPageData.length, data.total);
  354. //如果是第一页需手动制空列表
  355. if (page.num == 1)
  356. this.dataList = [];
  357. //追加新数据
  358. this.dataList = this.dataList.concat(curPageData);
  359. }).catch(e => {
  360. //联网失败, 结束加载
  361. this.mescroll.endErr();
  362. })
  363. },
  364. gotoBuildInfo(id) {
  365. // uni.navigateTo({
  366. // url: `/pages/comEdit/comEdit?id=${id}&ischeck=1`
  367. // })
  368. window.location.href=`/yd_qycpfbH5/#/pages/comEdit/comEdit?id=${id}&ischeck=1`
  369. },
  370. updateCities(newCities) {
  371. this.cities = newCities;
  372. },
  373. // 搜索
  374. doSearch() {
  375. if(this.ddd1.column2!=''&&this.ddd1!=''){
  376. this.searchForm.bz2=this.ddd1.column1+'('+this.ddd1.column2+')';
  377. }else if(this.ddd1!=''){
  378. this.searchForm.bz2=this.ddd1.column1;
  379. }
  380. this.dataList = []; // 先清空列表,显示加载进度
  381. this.mescroll.resetUpScroll();
  382. },
  383. totongxunlu(){
  384. uni.navigateTo({
  385. url: '/pages/comList/comList'
  386. })
  387. },
  388. totongxunlu2(){
  389. uni.navigateTo({
  390. url: '/pages/buildList/buildList2?w=1'
  391. })
  392. },
  393. totongxunlu3(){
  394. uni.navigateTo({
  395. url: '/pages/buildList/buildList?w=2'
  396. })
  397. },
  398. totongxunlu7(){
  399. uni.navigateTo({
  400. url: '/pages/buildList/buildList?w=4'
  401. })
  402. },
  403. totongxunlu6(){
  404. uni.navigateTo({
  405. url: '/pages/buildList/buildList?w=1'
  406. })
  407. },
  408. totongxunlu4(){
  409. uni.navigateTo({
  410. url: '/pages/product/productList?w=1'
  411. })
  412. },
  413. totongxunlu5(){
  414. if(this.isLogin==null){
  415. uni.showModal({
  416. title: '您还未登录,现在去登录?',
  417. showCancel: true,
  418. success: (res) => {
  419. if (res.confirm) {
  420. uni.showLoading()
  421. uni.reLaunch({
  422. url: '/pages/login/login'
  423. })
  424. }
  425. }
  426. });
  427. }else{
  428. uni.navigateTo({
  429. url: '/pages/product/productList?w=2'
  430. })
  431. }
  432. },
  433. totongxunlu22(){
  434. uni.navigateTo({
  435. url: '/pages/buildList/buildList3?w=1'
  436. })
  437. },
  438. totongxunlu23(){
  439. uni.navigateTo({
  440. url: '/pages/buildList/buildList3?w=2'
  441. })
  442. },
  443. getPageInfo() {
  444. loginService.InfoStatistics({}).then(({ data }) => {
  445. this.pageInfo = data;
  446. //103改为 14/103
  447. //this.pageInfo.industryc="14/"+this.pageInfo.industryc;
  448. });
  449. },
  450. autoLogin(){
  451. console.log("登录id"+this.loginid);
  452. loginService.loginid( this.loginid).then(({data}) => {
  453. this.$store.commit('SET_TOKEN',data.token);
  454. this.refreshUserInfo();
  455. }).catch(e => {
  456. console.error(e)
  457. })
  458. },
  459. getRole() {
  460. let userInfo = uni.getStorageSync('WMS-userinfo')
  461. var officeId = userInfo.officeDTO.id;
  462. var roleIds = userInfo.roleIds;
  463. if (roleIds.indexOf("17bac1f980264e3e8193bc965538e2c6") != -1) {
  464. //// 管理员
  465. this.stype = 5
  466. uni.setStorageSync('stype', this.stype);
  467. } else if (roleIds.indexOf("ade960e8f02544998b07397304c059c1") != -1) {
  468. // 政府管理员
  469. this.stype = 4
  470. uni.setStorageSync('stype', this.stype);
  471. } else {
  472. console.log('==================>这里走了么','================>存一个stape')
  473. loginService
  474. .getOtherIdByOffceid({
  475. officeid: officeId,
  476. })
  477. .then(({
  478. data
  479. }) => {
  480. console.log(data, "====================>getOtherIdByOffceid");
  481. this.stype = data.stype;
  482. uni.setStorageSync('stype', this.stype);
  483. });
  484. }
  485. },
  486. outloginset(){
  487. loginService.logout().then(({
  488. data
  489. }) => {
  490. this.$store.commit('logout');
  491. uni.clearStorage();
  492. })
  493. this.$store.commit('logout');
  494. uni.clearStorage();
  495. this.isLogin=this.$auth.checkisLogin();
  496. uni.hideLoading()
  497. },
  498. outlogin() {
  499. uni.showModal({
  500. title: '您确认退出么?',
  501. showCancel: true,
  502. success: (res) => {
  503. if (res.confirm) {
  504. uni.showLoading()
  505. this.outloginset();
  506. // uni.reLaunch({
  507. // url: '/pages/login/login'
  508. // })
  509. }
  510. }
  511. });
  512. },
  513. tces() {
  514. uni.navigateTo({
  515. url: '/pages/index/AudioToWord'
  516. })
  517. },
  518. // ListTouch触摸开始
  519. ListTouchStart(e) {
  520. this.listTouchStart = e.touches[0].pageX
  521. },
  522. // ListTouch计算方向
  523. ListTouchMove(e) {
  524. this.listTouchDirection = e.touches[0].pageX - this.listTouchStart > -60 ? 'right' : 'left'
  525. },
  526. // ListTouch计算滚动
  527. ListTouchEnd(e) {
  528. if (this.listTouchDirection == 'left') {
  529. this.modalName = e.currentTarget.dataset.target
  530. } else {
  531. this.modalName = null
  532. }
  533. this.listTouchDirection = null
  534. },
  535. handleBack() {
  536. // 返回逻辑,比如跳转至上一页
  537. this.$router.go(-1);
  538. console.log('返回按钮被点击');
  539. }
  540. }
  541. }
  542. </script>
  543. <style>
  544. .page {
  545. height: 100vh;
  546. }
  547. .line-box {
  548. padding-left: 20rpx;
  549. padding-right: 20rpx;
  550. margin-top: 20rpx;
  551. }
  552. .mart-t {
  553. margin-top: 30rpx;
  554. }
  555. .center-box{
  556. margin-top: 20rpx;
  557. width: 100%;
  558. border-radius: 25rpx;
  559. border-radius: 25rpx;
  560. background: #fff;
  561. box-shadow: 0px 8px 16px 2px rgba(101, 101, 101, 0.2);
  562. padding-bottom: 30rpx;
  563. display: flex;
  564. flex-wrap: wrap;
  565. }
  566. .center-left-box {
  567. width: 100%;
  568. padding-bottom: 30rpx;
  569. display: flex;
  570. flex-wrap: wrap;
  571. }
  572. .btn-box-text {
  573. flex:1;
  574. height: 20rpx;
  575. text-align: center;
  576. color: #000000;
  577. font-size: 14px;
  578. font-weight: 700;
  579. }
  580. .btn-box-1 {
  581. flex:1;
  582. height: 30rpx;
  583. text-align: center;
  584. color: #36A7F3;
  585. font-size: x-large;
  586. font-weight: 700;
  587. }
  588. .btn-box-2 {
  589. flex:1;
  590. height: 30rpx;
  591. text-align: center;
  592. color:#F3365A;
  593. font-size: x-large;
  594. font-weight: 700;
  595. }
  596. .btn-box-3 {
  597. flex:1;
  598. height: 30rpx;
  599. text-align: center;
  600. color:#15D578;
  601. font-size: x-large;
  602. font-weight: 700;
  603. }
  604. .btn-box-4 {
  605. flex:1;
  606. height: 30rpx;
  607. text-align: center;
  608. color:#F1A31B;
  609. font-size: x-large;
  610. font-weight: 700;
  611. }
  612. .btn-Imbox {
  613. flex:1;
  614. height: 150rpx;
  615. padding-top: 8rpx;
  616. text-align: center;
  617. display: flex;
  618. flex-direction: column;
  619. justify-content: center; /* 子元素内部内容竖向居中 */
  620. align-items: center; /* 子元素内部内容水平居中 */
  621. text-align: center; /* 文字居中 */
  622. }
  623. .btn-Imbox p {
  624. font-size: 14px; /* 文字大小,可根据需要调整 */
  625. margin: 0; /* 去掉默认的外边距 */
  626. font-weight: 700;
  627. }
  628. .center-img{
  629. width: 90rpx;
  630. height: 90rpx;
  631. margin-bottom: 10rpx;
  632. text-align: center;
  633. }
  634. .center-img2{
  635. width: 70rpx;
  636. height: 70rpx;
  637. margin-top: 10rpx;
  638. margin-bottom: 20rpx;
  639. text-align: center;
  640. }
  641. .kuai-text{
  642. color: #000000;
  643. font-weight: 900;
  644. font-size: 34rpx;
  645. padding-top: 20rpx;
  646. padding-left: 20rpx;
  647. }
  648. .btn-box-5 {
  649. width: 337rpx;
  650. height: 200rpx;
  651. background-image: url('../../static/img/btn3.png');
  652. background-size: 100% 100%;
  653. }
  654. .btn-box-6 {
  655. width: 337rpx;
  656. height: 200rpx;
  657. background-image: url('../../static/img/btn6.png');
  658. background-size: 100% 100%;
  659. }
  660. .h-200 {
  661. height: 200rpx;
  662. }
  663. .swiper {
  664. width: 750rpx;
  665. height: 310rpx;
  666. }
  667. .swiper-item {
  668. width: 750rpx;
  669. height: 310rpx;
  670. background-color: aliceblue;
  671. }
  672. .font-size-35 {
  673. font-size: 35px !important;
  674. }
  675. .img-size {
  676. width: 80rpx;
  677. height: 80rpx;
  678. }
  679. .content-box {
  680. width: 437rpx;
  681. height: 200rpx;
  682. }
  683. .my-app .padding-sm {
  684. padding: 6px;
  685. }
  686. .grid .padding-sm .bg-white {
  687. box-shadow: 0 1px 4px #f9f9f9, 1px 1px 40px rgba(0, 0, 0, .06);
  688. }
  689. .bg-blue {
  690. background: #fff;
  691. color: #0081ff !important;
  692. }
  693. .text-white,
  694. .line-white,
  695. .lines-white {
  696. color: #0081ff !important;
  697. }
  698. .cu-bar .search-form {
  699. background-color: white;
  700. }
  701. .item-box{
  702. width: 710rpx;
  703. background: #FFFFFF;
  704. box-shadow: 0px 1px 3px 0px rgba(9,2,4,0.1);
  705. border-radius: 10px;
  706. padding-top: 20rpx;
  707. padding-left: 38rpx;
  708. padding-right: 10rpx;
  709. margin-top: 20rpx;
  710. }
  711. .item-title{
  712. position: relative;
  713. display: flex;
  714. justify-content: space-between;
  715. font-size: 30rpx;
  716. color: #010101;
  717. font-weight: bold;
  718. align-items: center;
  719. }
  720. .item-line{
  721. display: flex;
  722. height: 48rpx;
  723. margin-top: 20rpx;
  724. }
  725. .item-line2{
  726. height: 48rpx;
  727. margin-top: 20rpx;
  728. }
  729. .subtitle{
  730. color: #E5880E;
  731. }
  732. .item-name{
  733. margin-top: 5rpx;
  734. font-size: 29rpx;
  735. color: #666666;
  736. }
  737. .item-name2{
  738. font-size: 29rpx;
  739. color: #676D99;
  740. }
  741. .item-name3{
  742. display: flex;
  743. width: 100%;
  744. padding-right: 30rpx;
  745. flex: 1;
  746. justify-content: flex-end;
  747. font-size: 29rpx;
  748. color: #676D99;
  749. }
  750. .item-content{
  751. color: #1497EF;
  752. font-size: 30rpx;
  753. }
  754. .btn-box{
  755. display: flex;
  756. }
  757. .line-zs{
  758. width: 2rpx;
  759. height: 30rpx;
  760. background: #36A7F3;
  761. }
  762. .edit-botton{
  763. width: 100rpx;
  764. height: 48rpx;
  765. line-height: 48rpx;
  766. color: #fff;
  767. font-size: 28rpx;
  768. margin-right: 20rpx;
  769. border-radius: 10rpx;
  770. background: #5A9EE9;
  771. text-align: center;
  772. }
  773. .del-botton{
  774. width: 100rpx;
  775. height: 48rpx;
  776. line-height: 48rpx;
  777. color: #fff;
  778. font-size: 28rpx;
  779. margin-right: 20rpx;
  780. border-radius: 10rpx;
  781. background: #F27C85;
  782. text-align: center;
  783. }
  784. .color-white{
  785. color: #808080;
  786. font-size: 40rpx;
  787. line-height: 60rpx;
  788. }
  789. .search-box{
  790. padding-left: 20rpx;
  791. padding-right: 20rpx;
  792. padding-top: 20rpx;
  793. margin-top: 20rpx;
  794. width: 100%;
  795. border-radius: 25rpx;
  796. border-radius: 25rpx;
  797. background: #fff;
  798. box-shadow: 0px 8px 16px 2px rgba(101, 101, 101, 0.2);
  799. padding-bottom: 30rpx;
  800. display: flex;
  801. flex-wrap: wrap;
  802. }
  803. .search-box1{
  804. display: flex;
  805. }
  806. .input-box{
  807. background: #fff;
  808. height: 65rpx;
  809. width: 640rpx;
  810. display: flex;
  811. align-items: center;
  812. border-radius: 30rpx;
  813. padding-left: 30rpx;
  814. margin-right: 20rpx;
  815. }
  816. .input-boxinput{
  817. height: 75rpx;
  818. font-size: 15rpx;
  819. }
  820. .choose-box{
  821. background: #fff;
  822. width: 325rpx;
  823. border-radius: 23rpx;
  824. height: 70rpx;
  825. display: flex;
  826. align-items: center;
  827. justify-content: center;
  828. margin-right: 20rpx;
  829. border: 1rpx solid #808080;
  830. }
  831. .choose-box2{
  832. background: #fff;
  833. width: 100%;
  834. border-radius: 23rpx;
  835. height: 70rpx;
  836. display: flex;
  837. padding-left: 29rpx;
  838. align-items: center;
  839. border: 1rpx solid #808080;
  840. }
  841. .choose-box3{
  842. display: flex;
  843. }
  844. .choose-boxp{
  845. font-size: 32rpx;
  846. width: 80rpx;
  847. }
  848. .fixed-bottom-right {
  849. padding: 20rpx;
  850. position: fixed;
  851. bottom: 20px; /* 距离底部的距离 */
  852. right: 20px; /* 距离右侧的距离 */
  853. }
  854. /* 返回 */
  855. .item-img {
  856. width: 160rpx;
  857. height: 160rpx;
  858. }
  859. .custom-header {
  860. display: flex;
  861. align-items: center;
  862. justify-content: center;
  863. padding: 10px;
  864. width: 100%;
  865. }
  866. .is-back {
  867. position: relative;
  868. }
  869. .back-container {
  870. position: absolute;
  871. left: 10px;
  872. cursor: pointer;
  873. }
  874. .back-text {
  875. color: white; /* 返回按钮文本颜色 */
  876. }
  877. .back-text {
  878. color: white; /* 返回按钮文本颜色 */
  879. }
  880. .content-container {
  881. flex: 1;
  882. text-align: center;
  883. }
  884. .content-text {
  885. color: white; /* 标题文本颜色 */
  886. font-weight: bold;
  887. }
  888. /* 背景颜色 */
  889. .bg-blue {
  890. background-color: #4285f4; /* 假设这是一个蓝色背景 */
  891. }
  892. </style>