index.vue 23 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789
  1. <template>
  2. <view style="height: 100%;">
  3. <!-- <u-navbar :bgImg="bgImg" title="首页" :titleStyle="{ color:'#fff', letterSpacing:'0.3em',fontSize:'18px'}" :safeAreaInsetTop="true" ></u-navbar> -->
  4. <!-- <navInfo :title="'首页'" :titleStyle="{ color:'#fff', letterSpacing:'0.3em',fontSize:'18px'}"></navInfo>
  5. <view class="bgTopImg">
  6. <image slot="right" :src="`${urls}/navBg@2x.png`" class="bgTopImg"></image>
  7. </view> -->
  8. <view class="container uni-container"
  9. style="display:flex;flex-direction: column;justify-content: space-between;height: 100%;">
  10. <view class="nav">
  11. <!-- <u-scroll-list indicatorColor="#fff0f0" indicatorActiveColor="#f56c6c" >
  12. <view class="scroll-list" style="flex-direction: row;">
  13. <view class="scroll-list__goods-item" v-for="(item, index) in goodsArr" :key="index"
  14. :class="[(index === 4) && 'scroll-list__goods-item--no-margin-right']">
  15. <image class="scroll-list__goods-item__image " :src=" item.thumbnail" mode="">
  16. </image>
  17. <text class="scroll-list__goods-item__text">{{ item.name }}</text>
  18. </view>
  19. </view>
  20. </u-scroll-list> -->
  21. <view>
  22. <u-grid :border="false" col="4" v-if="!isStreet">
  23. <u-grid-item v-for="(item, listIndex) in goodsArr" :key="listIndex">
  24. <image @click="handleToInfo(item.menuUrl)" class="scroll-list__goods-item__image "
  25. :src="item.thumbnail" mode=""></image>
  26. <text class="grid-text">{{ item.name }}</text>
  27. </u-grid-item>
  28. </u-grid>
  29. <u-grid :border="false" col="3" v-else>
  30. <u-grid-item v-for="(item, listIndex) in goodsStreet" :key="listIndex">
  31. <image @click="handleToInfo(item.menuUrl)" class="scroll-list__goods-item__image "
  32. :src="item.thumbnail" mode=""></image>
  33. <text class="grid-text">{{ item.name }}</text>
  34. </u-grid-item>
  35. </u-grid>
  36. <u-toast ref="uToast" />
  37. </view>
  38. </view>
  39. <!-- <view style="margin-bottom: 20rpx;">
  40. <u-button :plain="true" text="全部已读" @click="cleanUnread" style="width: 23%;float: right;"></u-button>
  41. </view> -->
  42. <!-- <view class="grid-body" v-for="(item, index) in tableDatas" :key="index">
  43. <uni-card class="cards">
  44. <u-cell-group :border="false">
  45. <u-cell :border="false" :title="item.name" :icon="item.icon" :boritemder="false" isLink
  46. titleStyle="font-weight:600" rightIconStyle="color:#4CB2B6;font-size: 24rpx;"
  47. >
  48. <text slot="value" v-if="tableData.length!=0" @click="cleanUnread" class="weidu">全部已读</text>
  49. <text slot="value" style="font-size: 24rpx;color: #4CB2B6;" @click="goInformDetails(item.comType)">更多</text>
  50. </u-cell>
  51. </u-cell-group>
  52. <view v-if="tableData[index]!=''">
  53. <view v-for="(item1, index1) in tableData" :key="index1"
  54. @click.nativite="onNoticeClick(item1)" link
  55. >
  56. <uni-row class="demo-uni-row padding-top text-sm" :gutter="20"
  57. style="margin:0rpx 30rpx 0rpx -24rpx;width: 100%;">
  58. <uni-col :span="16">
  59. <u-notice-bar :text="item1.comTitle?item1.comTitle:''" speed="40"></u-notice-bar>
  60. <text class="uni-body text-1cut" v-if="item1.length==0">暂无{{item}}</text>
  61. </uni-col>
  62. <uni-col :span="8">
  63. </uni-col>
  64. </uni-row>
  65. </view>
  66. </view>
  67. <view v-else class="no-notice"> 暂无{{item.name}}
  68. </view>
  69. </uni-card>
  70. </view> -->
  71. <!-- <view class="grid-body" >
  72. <uni-card class="cards" > -->
  73. <!-- <u-cell-group :border="false">
  74. <u-cell :border="false" title="通知公告" icon="@/static/images/checkActive/tongzhi@2x.png" :boritemder="false" isLink
  75. titleStyle="font-weight:600" rightIconStyle="color:#4CB2B6;font-size: 24rpx;">
  76. <text slot="value" v-if="tableData.length!=0" @click="cleanUnread" class="weidu">全部已读</text>
  77. <text slot="value" style="font-size: 24rpx;color: #4CB2B6;" @click="goInformDetails(item.comType)">更多</text>
  78. </u-cell>
  79. </u-cell-group> -->
  80. <!-- <view v-if="tableData.length>0">
  81. <view v-for="(item1, index1) in tableData" :key="index1"
  82. @click.nativite="onNoticeClick(item1)" link>
  83. <uni-row class="demo-uni-row padding-top text-sm" :gutter="20"
  84. style="margin:0rpx 30rpx 0rpx -24rpx;width: 100%;">
  85. <uni-col :span="16">
  86. <u-notice-bar :text="item1.title?item1.title:''" speed="40"></u-notice-bar>
  87. </uni-col>
  88. <uni-col :span="8">
  89. </uni-col>
  90. </uni-row>
  91. </view>
  92. </view>
  93. <view v-else class="no-notice"> 暂无数据
  94. </view>
  95. </uni-card>
  96. </view> -->
  97. <view v-if="tableData">
  98. <view class="back-image">
  99. <image :src="laba" class="back-notice"></image>
  100. <view style="display: flex;padding-top: 40rpx;cursor: pointer;">
  101. <image :src="tongzhi" class="back-size"></image>
  102. <view v-if="arrtongzhi.length !=0" @click.nativite="onNoticeClick(arrtongzhi[0])">
  103. {{ arrtongzhi[0].title }}
  104. </view>
  105. <view v-else>暂无通知</view>
  106. </view>
  107. </view>
  108. <!-- <view class="back-image back-image2">
  109. <image :src="laba" class="back-notice"></image>
  110. <view style="display: flex;padding-top: 40rpx;">
  111. <image :src="gonggao" class="back-size"></image>
  112. <view v-if="arrgonggao.length != []" @click.nativite="onNoticeClick(arrgonggao[0])">
  113. {{ arrgonggao[0].title }}
  114. </view>
  115. <view v-else>暂无公告</view>
  116. </view>
  117. </view> -->
  118. </view>
  119. <view class="" v-if="!isStreet">
  120. <u-cell-group :border="false">
  121. <u-cell :border="false" :boritemder="false" isLink rightIconStyle="color:#4CB2B6;font-size: 24rpx;">
  122. <view slot="title" class="u-slot-title">
  123. <text class="u-cell-text">待办任务</text>
  124. </view>
  125. <text slot="value" style="font-size: 28rpx;color: #4CB2B6;cursor: pointer;" @click="goInformDetails">更多</text>
  126. </u-cell>
  127. </u-cell-group>
  128. <uni-card v-if="tableDatas.length>0">
  129. <uni-row class="demo-uni-row" :gutter="20" width="100%">
  130. <uni-col :span="24"
  131. style="margin-bottom: 10rpx;display: flex;justify-content:space-between;"><text
  132. style="font-weight:600;font-size: 34rpx;">{{ tableDatas[0].taskName }}</text>
  133. <image :src="zhuanfa" class="back-size back-sizes" @click="forward(tableDatas[0])"></image>
  134. </uni-col>
  135. <uni-col :span="24" style="margin-bottom: 10rpx;display: flex;"><text
  136. style="color:#728F90">任务说明:</text><rich-text
  137. :nodes="tableDatas[0].taskContent?tableDatas[0].taskContent:''"
  138. class="conts"></rich-text>
  139. </uni-col>
  140. <uni-col :span="24"><text
  141. style="color:#728F90">任务发布者:</text><text>{{tableDatas[0].senderName}}</text>
  142. </uni-col>
  143. </uni-row>
  144. <uni-row class="demo-uni-row" :gutter="20" width="100%">
  145. <!-- <uni-col :span="24"> -->
  146. <view class="flex btn-box" style="width: 50%;float: right;">
  147. <u-button shape="circle" size="small" color="#F7C41E" text="查看详情"
  148. @click="addClickDetail(tableDatas[0].broadId)" style="margin-right: 10rpx;"></u-button>
  149. <u-button shape="circle" size="small" color="#4CB2B6" style="margin-left: 10rpx;" text="去完成"
  150. @click="addClickModify(tableDatas[0])"></u-button>
  151. </view>
  152. <!-- </uni-col> -->
  153. </uni-row>
  154. </uni-card>
  155. <uni-card v-else style="text-align:center">
  156. 今日暂无任务,可前往查看是否有往日任务
  157. </uni-card>
  158. </view>
  159. <!-- 图表-->
  160. <view class="charts-box">
  161. <!-- 注意:这里的opts是uCharts的配置,eopts是ECharts的配置,不要搞混,如果不需要用在各种小程序端,是不需要传uCharts的opts的,只需要传eopts即可!!!这里加opts是为了覆盖uCharts的rose图的默认图例配置的位置 -->
  162. <!-- <qiun-data-charts type="column" :eopts="opts" :opts="opts" :chartData="chartsDataLine3" v-if="chartsDataLine3.series[0].itemStyle.normal.color=='#D2D8E2'"
  163. :echartsH5="true" :echartsApp="true" /> -->
  164. </view>
  165. </view>
  166. <!-- 单位进来转发任务显示人员 -->
  167. <u-popup :show="checkboxShow2" :round="10" @close="checkboxShow2=false" style="position: relative;"
  168. mode="center">
  169. <view style="width: 90vw;padding: 10px;">
  170. <text class="text-xl">检查人员</text>
  171. <view class="" class="person-forward" v-if="personInfo">
  172. <u-checkbox-group v-model="item.checkboxValue1" v-for="(item, index) in personInfo" :key="index"
  173. placement="column" @change="checkboxChange2(item.user_id,$event)">
  174. <u-checkbox :customStyle="{marginBottom: '8px'}" :label="item.nickname" :name="item.id">
  175. </u-checkbox>
  176. </u-checkbox-group>
  177. </view>
  178. <view v-else>
  179. 此单位下暂无可转发人员
  180. </view>
  181. <view class="flex flex-direction-row " style="margin: 30rpx 0;">
  182. <u-button shape="circle" type="primary" color="#4CB2B6" text="确定" @click="checkboxConfirm2"
  183. customStyle="margin-right:20px;padding:0 30px">
  184. </u-button>
  185. <u-button type="primary" plain color="#4CB2B6" text="取消" shape="circle" @click="checkboxCancel2"
  186. customStyle="padding:0 30px">
  187. </u-button>
  188. </view>
  189. </view>
  190. </u-popup>
  191. <!-- 加载中 -->
  192. <isLodingModel></isLodingModel>
  193. <u-modal :show="show" @confirm="confirm" @cancel="cancel" @close="close" asyncClose closeOnClickOverlay
  194. showCancelButton confirmColor="red" :title="title" :content="content" ref="uModal"></u-modal>
  195. </view>
  196. </template>
  197. <script>
  198. import {
  199. getNoticeList,
  200. getNoticeAllRead,
  201. getNoticeOlnyRead,
  202. isNeedInfo
  203. } from '@/api/notice'; // 通知公告列表
  204. import {
  205. checkGetPerson, //单位转发任务获取人员
  206. taskList, //获取除草稿箱以外的列表 //获取当前日期的任务列表
  207. checkSubmitForwardTask, //确认转发任务
  208. } from "@/api/check_active";
  209. import storage from '@/utils/storage';
  210. let that = null;
  211. import config from '@/config'
  212. const baseUrlImg = config.baseUrlImg
  213. export default {
  214. data() {
  215. return {
  216. urls: baseUrlImg,
  217. bgImg: `${baseUrlImg}/navBg@2x.png`,
  218. isStreet:null,//判断是否是街道人员
  219. opts: {
  220. legend: {
  221. show: false
  222. },
  223. color: ["#D2D8E2"],
  224. yAxis: {
  225. data: [{
  226. min: 0,
  227. axisLine: false,
  228. }],
  229. axisLine: false,
  230. },
  231. disabled: false,
  232. xAxis: {
  233. axisLine: {
  234. show: false
  235. },
  236. },
  237. tooltip: {
  238. trigger: 'axis',
  239. axisPointer: {
  240. type: 'none'
  241. }
  242. },
  243. extra: {
  244. column: {
  245. type: 'group',
  246. barBorderRadius: [6, 6, 6, 6],
  247. // activeBgColor: "#4CB2B6",
  248. // activeBgOpacity:1
  249. },
  250. tooltip: {
  251. horizentalLine: false,
  252. splitLine: false
  253. }
  254. }
  255. },
  256. chartsDataLine3: {},
  257. tongzhi: `${baseUrlImg}/tongzhi.png`,
  258. gonggao: `${baseUrlImg}/gonggao.png`,
  259. laba: `${baseUrlImg}/laba.png`,
  260. //import biankuang from '@/static/images/biankuang.png'
  261. LoadingModel: false,
  262. show: false, //弹出框
  263. title: '完善个人信息',
  264. content: '个人信息尚未完善,是否完善个人基本信息?',
  265. arrtongzhi: [],
  266. arrgonggao: [],
  267. personInfo: [],
  268. checkedList2: [], //检查单位已选择列表
  269. // 数据 //数据接口,已读接口(id,全部)---通知列表,详情
  270. // tableDatas: [{
  271. // name: '通知',
  272. // icon: tongzhi,
  273. // comType: '1'
  274. // }
  275. // , {
  276. // name: '公告',
  277. // icon: gonggao,
  278. // comType: "2"
  279. // }, {
  280. // name: '指令',
  281. // icon: zhiling,
  282. // comType: "3"
  283. // },
  284. // ],
  285. tableDatas: [], //任务数据
  286. formData: {
  287. pageNo: 1,
  288. pageSize: 10,
  289. receivDate: '',
  290. receiver: this.$store.state.user.id,
  291. taskType: "3"
  292. },
  293. FormDataTask: {
  294. "broadId": 0,
  295. "deptId": [],
  296. "id": 0,
  297. "orgId": [],
  298. "sender": this.$store.state.user.id,
  299. "receiver": [],
  300. "status": 0,
  301. "taskContent": "",
  302. "taskName": "",
  303. "taskStatus": 0,
  304. "taskType": "" //任务类型 1对应主动检查
  305. },
  306. zhuanfa: `${baseUrlImg}/zhuanfa.png`,
  307. // 通知公告数据
  308. tableData: [],
  309. // tableData数据加载中
  310. loading: false,
  311. // echarts数据
  312. checkactiveOption: {},
  313. goodsArr: [{
  314. name: '每日巡查',
  315. thumbnail: `${baseUrlImg}/meirixuncha.png`,
  316. menuUrl: '/pagesA/fire/inspection_active/index'
  317. },
  318. {
  319. name: '任务派遣',
  320. thumbnail: `${baseUrlImg}/zhudongjiancha.png`,
  321. menuUrl: `/pagesA/fire/check_active/index?type=2`
  322. },
  323. {
  324. name: '主动检查',
  325. thumbnail: `${baseUrlImg}/renwuguanli.png`,
  326. menuUrl: `/pagesA/fire/check_inspection/check_inspection`
  327. },
  328. {
  329. name: '隐患管理',
  330. thumbnail: `${baseUrlImg}/yinhuanguanli.png`,
  331. menuUrl: '/pagesA/fire/hidden_trouble/index'
  332. }
  333. ],
  334. goodsStreet: [{
  335. name: '街道消防检查',
  336. thumbnail: `${baseUrlImg}/working/fire_street.png`,
  337. menuUrl: '/pagesA/fire/fire_inspetItem/fire_inspetItem'
  338. },
  339. {
  340. name: '消防工作档案',
  341. thumbnail: `${baseUrlImg}/working/archive.png`,
  342. menuUrl: `/pagesA/fire/archive/nav`
  343. },
  344. {
  345. name: '微型消防站',
  346. thumbnail: `${baseUrlImg}/working/fire_extinguishe.png`,
  347. menuUrl: `/pagesA/fire/fire_station/index`
  348. },
  349. ],
  350. checkboxShow2: false,
  351. isStreetPerson: false
  352. };
  353. },
  354. // 在 vue页面,向起始页通过事件传递数据
  355. onShow: function() {
  356. this.getServerData();
  357. this.isStreet = uni.getStorageSync('getUserInfo_key').streetInfo; //登录用户的街道
  358. const date = new Date()
  359. this.formData.receivDate = uni.$u.timeFormat(date, 'yyyy-mm-dd')
  360. this.getDatas()
  361. this.getData()
  362. const deptId = uni.getStorageSync('getUserInfo_key').streetInfo ? uni.getStorageSync('getUserInfo_key')
  363. .streetInfo
  364. .id : ''; //登录用户
  365. if (deptId != '') {
  366. this.isStreetPerson = true
  367. this.$forceUpdate()
  368. }else{
  369. this.isStreetPerson = false
  370. }
  371. },
  372. onLoad: function(option) {
  373. that = this;
  374. // // 判断用户信息是否需要完善
  375. // const value = uni.getStorageSync('getUserInfo_key');
  376. // if (
  377. // value.userRoles.appRoles.length > 0 &&
  378. // value.userRoles.appRoles[0].role_id != '' &&
  379. // value.userRoles.appRoles[0].user_id != ''
  380. // ) {
  381. // const appRoleId = value.userRoles.appRoles[0].role_id;
  382. // const userId = value.userRoles.appRoles[0].user_id;
  383. // isNeedInfo({
  384. // appRoleId: appRoleId,
  385. // userId: userId
  386. // }).then(response => {
  387. // if (response.code != 0) {
  388. // that.show = true;
  389. // }
  390. // });
  391. // } else {
  392. // that.show = true;
  393. // }
  394. },
  395. onReady() {},
  396. methods: {
  397. //图表
  398. getServerData() {
  399. //区域图
  400. this.chartsDataLine3 = {
  401. categories: ['提交', '待完成', '审核', '打回', '完成'],
  402. series: [{
  403. name: "",
  404. barWidth: 26,
  405. data: [30, 80, 100, 49, 112],
  406. itemStyle: {
  407. normal: {
  408. //这里设置柱形图圆角 [左上角,右上角,右下角,左下角]
  409. barBorderRadius: [6, 6, 4, 4],
  410. color: '#D2D8E2'
  411. },
  412. emphasis: {
  413. color: '#68BCBF' //点击后高亮颜色
  414. }
  415. }
  416. }]
  417. }
  418. },
  419. // 获取数据
  420. getData() {
  421. this.$modal.isLoadingModel(true);
  422. this.LoadingModel = true;
  423. getNoticeList({
  424. }).then(response => {
  425. this.LoadingModel = false;
  426. this.$modal.isLoadingModel(this.LoadingModel);
  427. // 为数据赋值:通过展开运算符的形式,进行新旧数据的拼接
  428. // this.tableData = response.data ?? [...this.tableData, ...response.data.list];
  429. if (this.tableData && response.data?.list.length > 0) {
  430. this.arrtongzhi = response.data.list.filter(i => i.type == 1);
  431. this.arrgonggao =response.data.list.filter(i => i.type == 2);
  432. }
  433. // this.checkactiveGetEchart();
  434. });
  435. },
  436. goInformDetails(val) {
  437. //点击更多,查看所有的通知列表
  438. // uni.navigateTo({
  439. // url: '/pagesA/fire/notice/index?id=' + val
  440. // });
  441. //查看所有的每日任务列表
  442. uni.navigateTo({
  443. url: '/pagesA/fire/inspection_active/index'
  444. });
  445. },
  446. //清楚所有未读
  447. cleanUnread() {
  448. getNoticeAllRead({
  449. userId: this.$store.state.user.id
  450. }).then(response => {
  451. if (response.data == true) {
  452. this.getData();
  453. }
  454. });
  455. },
  456. // 单个公告详情点击事件
  457. onNoticeClick(val) {
  458. getNoticeOlnyRead({
  459. id: val.id
  460. }).then(response => {
  461. if (response.data == true) {
  462. this.getData();
  463. }
  464. });
  465. uni.navigateTo({
  466. url: `/pagesA/fire/notice/notcice_details/notcice_details?id=${val.id}`,
  467. success: function(res) {
  468. // 通过eventChannel向被打开页面传送数据
  469. res.eventChannel.emit('acceptDataFromOpenerPage', val);
  470. }
  471. });
  472. },
  473. // 根据不同的url,进行页面的跳转
  474. handleToInfo(url) {
  475. this.$tab.navigateTo(url);
  476. },
  477. // 模态框确认,取消操作
  478. confirm() {
  479. this.show = false;
  480. uni.navigateTo({
  481. url: '/pages/mine/info/edit'
  482. });
  483. },
  484. close() {
  485. this.show = false;
  486. },
  487. cancel() {
  488. this.show = false;
  489. },
  490. // ================================================================
  491. //查看详情
  492. addClickDetail(val) {
  493. uni.navigateTo({
  494. url: `/pagesA/fire/check_active/check_list/check_list?id=${val}&current=${this.current}`,
  495. success: function(res) {
  496. res.eventChannel.emit('acceptDataFromOpenerPage', val);
  497. }
  498. })
  499. },
  500. //去完成
  501. addClickModify(val) {
  502. uni.navigateTo({
  503. url: `/pagesA/fire/check_active/check_implement/check_implement?broadId=${val.broadId}`,
  504. success: function(res) {
  505. res.eventChannel.emit('acceptDataFromOpenerPage', val);
  506. }
  507. })
  508. },
  509. //转发
  510. forward(val) { //展示转发的弹出层
  511. this.ids = val.id //当前点击任务的id
  512. this.checkboxShow2 = true
  513. this.FormDataTask.broadId = val.broadId
  514. this.FormDataTask.id = this.ids
  515. this.FormDataTask.taskName = val.taskName
  516. this.FormDataTask.taskStatus = val.taskStatus
  517. this.FormDataTask.taskContent = val.taskContent
  518. this.FormDataTask.orgId.push(val.orgId)
  519. checkGetPerson({
  520. orgId: val.orgId
  521. }).then(response => {
  522. this.personInfo = response.data
  523. })
  524. },
  525. checkboxChange2(i, n) {
  526. if (i && n.length != 0) {
  527. this.checkedList2.push(i)
  528. } else if (i && n.length == 0) {
  529. this.checkedList2 = this.checkedList2.filter(item => item != i)
  530. }
  531. },
  532. //popup检查单位确定============
  533. checkboxConfirm2() {
  534. checkSubmitForwardTask(JSON.stringify(this.FormDataTask)).then(response => {
  535. if (response.data) {
  536. this.$modal.msg('转发成功')
  537. this.checkboxShow2 = false
  538. } else {
  539. this.$modal.msgError(response.msg)
  540. }
  541. })
  542. },
  543. //popup取消
  544. checkboxCancel2() {
  545. this.checkboxShow2 = false
  546. },
  547. getDatas() {
  548. this.loading = true
  549. this.pageNo = 1
  550. taskList(JSON.stringify(this.formData)).then(response => {
  551. this.tableDatas = response.data.list
  552. })
  553. },
  554. // =====================================================
  555. }
  556. };
  557. </script>
  558. <style lang="scss" scoped>
  559. .album {
  560. @include flex;
  561. align-items: flex-start;
  562. &__avatar {
  563. background-color: $u-bg-color;
  564. padding: 5px;
  565. border-radius: 3px;
  566. }
  567. &__content {
  568. margin-left: 10px;
  569. flex: 1;
  570. }
  571. }
  572. .container {
  573. border-radius: 30px 30px 0px 0px;
  574. background: #fff;
  575. // top:200rpx;
  576. z-index: 99;
  577. position: relative;
  578. }
  579. body {
  580. // background-image: linear-gradient(#4cb2b6, #f0f8f9) !important;
  581. }
  582. uni-page-body {
  583. // background-image: linear-gradient(#4cb2b6, #f0f8f9) !important;
  584. height: 100% !important;
  585. // height: 100%;
  586. }
  587. .grid-body {
  588. // height: 30%;
  589. margin-bottom: 20rpx;
  590. }
  591. .cards {
  592. height: 100%;
  593. }
  594. /deep/.uni-card--shadow {
  595. border-radius: 24rpx;
  596. }
  597. /deep/.u-button.data-v-3bf2dba7,
  598. .u-grid-item {
  599. width: 30%;
  600. float: right;
  601. }
  602. /deep/.uni-card--border {
  603. border-radius: 24rpx !important;
  604. box-shadow: 0px 1px 14px 0px rgba(211, 211, 211, 0.3) !important;
  605. border: none !important;
  606. }
  607. ::v-deep .u-navbar__content {
  608. background-color: #4cb2b6 !important;
  609. }
  610. .container {
  611. // height: 90vh !important;
  612. // background-image: linear-gradient(#4cb2b6, #f0f8f9);
  613. }
  614. // 已读
  615. .read {
  616. color: #000;
  617. padding-left: 40rpx;
  618. }
  619. .unread {
  620. color: red;
  621. padding-left: 40rpx;
  622. }
  623. .no-notice {
  624. text-align: center;
  625. }
  626. .text {
  627. text-align: center;
  628. color: #000;
  629. font-size: 26rpx;
  630. margin-top: 10rpx;
  631. }
  632. .grid-item-box {
  633. flex: 1;
  634. display: flex;
  635. flex-direction: column;
  636. align-items: center;
  637. justify-content: center;
  638. padding: 15px 0;
  639. }
  640. .scroll-list__goods-item__image {
  641. width: 85rpx;
  642. height: 92rpx;
  643. }
  644. .grid-text {
  645. font-size: 11px;
  646. color: #383838;
  647. padding: 10rpx 0 20rpx 0rpx;
  648. /* #ifndef APP-PLUS */
  649. box-sizing: border-box;
  650. /* #endif */
  651. }
  652. .nav {
  653. // margin-bottom: 30rpx;
  654. .u-grid-item[data-v-99a45d26],
  655. .u-grid-item.data-v-99a45d26,
  656. .u-grid-item {
  657. margin-bottom: 30rpx;
  658. }
  659. }
  660. /deep/.uni-col-16.data-v-fff79656,
  661. /deep/.uni-col-16[data-v-fff79656] {
  662. width: 100%;
  663. }
  664. /deep/.uni-col-16 {
  665. width: 100%;
  666. }
  667. /deep/.uni-row {
  668. margin: 0 30rpx 10rpx -6rpx !important;
  669. }
  670. /deep/.u-notice-bar {
  671. background-color: rgb(235, 246, 247) !important;
  672. }
  673. /deep/.u-notice-bar[data-v-4eff50a7],
  674. /deep/.u-notice-bar.data-v-4eff50a7,
  675. /deep/.u-notice-bar {
  676. border-radius: 20rpx;
  677. }
  678. .yidu {
  679. font-size: 24rpx;
  680. background-color: #f8f8f8;
  681. padding: 10rpx 20rpx;
  682. border-radius: 10rpx;
  683. color: rgb(255, 178, 62);
  684. margin-right: 20rpx;
  685. }
  686. .weidu {
  687. font-size: 24rpx;
  688. background-color: #f8f8f8;
  689. padding: 10rpx 20rpx;
  690. border-radius: 10rpx;
  691. margin-right: 20rpx;
  692. color: #a5a9ac;
  693. }
  694. .back-image {
  695. margin-bottom: 20rpx;
  696. height: 115rpx;
  697. background: url('~@/static/images/biankuang.png') no-repeat;
  698. background-size: 100% 115rpx;
  699. position: relative;
  700. }
  701. .back-image2 {
  702. margin-bottom: 0;
  703. }
  704. .back-size,
  705. .back-sizes {
  706. width: 60rpx;
  707. height: 30rpx;
  708. margin: 0 20rpx 0 60rpx;
  709. }
  710. .back-sizes {
  711. width: 32rpx;
  712. height: 32rpx;
  713. }
  714. .back-notice {
  715. position: absolute;
  716. top: 0;
  717. left: 0;
  718. width: 48rpx;
  719. height: 52rpx;
  720. }
  721. .charts-box {
  722. margin-top: 20rpx;
  723. width: 100%;
  724. height: 600rpx;
  725. }
  726. /deep/.u-navbar__content__left[data-v-75dad532],
  727. /deep/.u-navbar__content__right[data-v-75dad532],
  728. /deep/.u-navbar__content__right {
  729. display: none !important;
  730. }
  731. .u-cell-text {
  732. font-weight: 700;
  733. font-size: 32rpx;
  734. padding-left: 10rpx;
  735. margin-left: -10rpx;
  736. border-left: 6rpx solid #4CB2B6;
  737. }
  738. </style>