| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375 |
- <template>
- <view class="wrap">
- <uni-nav-bar dark :fixed="true" backgroundColor="#3F9EFF" statusBar="false" left-icon="left" left-text="返回"
- :title="title" @clickLeft="toBack">
- </uni-nav-bar>
- <!-- <u-gap height="75px"></u-gap> -->
- <view class="container">
- <uni-list>
- <uni-list-item v-for="item in list" :key="item.id">
- <!-- 自定义 body -->
- <template v-slot:body>
- <view style="min-height: 110px;width: 100%;display: flex;flex-direction: column;">
- <view>
- <text style="font-size: 1rem;font-weight: bold;">{{item.rtuName}}</text>
- <text style="font-size: 0.9rem;">[{{item.rtuCode}}]</text>
- </view>
- <view style="display: flex;flex-direction: row;min-height: 30px;">
- <view style="font-size: 0.7rem;color: #18B566;">{{item.orderStatusName}}</view>
- <view style="margin-left:10px;width:100px;font-size: 0.7rem;color:gray;">
- {{item.processorName}}
- </view>
- <view style="margin-left:0px;font-size: 0.7rem;color:gray;">{{item.createTime}}</view>
- </view>
- <view style="margin-top: 0px;">
- <text style="font-size: 0.7rem;">{{item.orderDesc}}</text>
- </view>
- <view style="margin-top:4px;display: flex;flex-direction: row;justify-content: flex-end;">
- <view
- style="display:flex;flex-direction: row;justify-content: center;width: 90px;height:28px;margin-right: 10px;border-radius:7px;background-color:lightblue"
- @click="toWarningPage(item.warnId)">
- <view style="display:flex;flex-direction: column;justify-content: center;">
- <uIcons class="input-uni-icon" type="notification" size="18" color="#999" />
- </view>
- <view
- style="display:flex;flex-direction: column;justify-content: center;padding-left:5px;">
- <text style="color:black;font-size:0.6rem">预警信息</text>
- </view>
- </view>
- <view v-if="item.isConfirm ==1"
- style="display:flex;flex-direction: row;justify-content: center;width: 90px;height:28px;margin-right: 10px;border-radius:7px;background-color:lightblue"
- @click="toOrderReport(item.id)">
- <view style="display:flex;flex-direction: column;justify-content: center;">
- <uIcons class="input-uni-icon" type="gear" size="18" color="#999" />
- </view>
- <view
- style="display:flex;flex-direction: column;justify-content: center;padding-left:5px;">
- <text style="color:black;font-size:0.6rem">工单填报</text>
- </view>
- </view>
- <view v-else
- style="display:flex;flex-direction: row;justify-content: center;width: 90px;height:28px;margin-right: 10px;border-radius:7px;background-color:lightblue"
- @click="toOrderConfirm(item.id)">
- <view style="display:flex;flex-direction: column;justify-content: center;">
- <uIcons class="input-uni-icon" type="gear" size="18" color="#999" />
- </view>
- <view
- style="display:flex;flex-direction: column;justify-content: center;padding-left:5px;">
- <text style="color:black;font-size:0.6rem">接单确认</text>
- </view>
- </view>
- <view
- style="display:flex;flex-direction: row;justify-content: center;width: 90px;height:28px;margin-right: 10px;border-radius:7px;background-color:lightblue"
- @click="toLocation(item)">
- <view style="display:flex;flex-direction: column;justify-content: center;">
- <uIcons class="input-uni-icon" type="location" size="18" color="#999" />
- </view>
- <view
- style="display:flex;flex-direction: column;justify-content: center;padding-left:5px;">
- <text style="color:black;font-size:0.6rem">导航</text>
- </view>
- </view>
- </view>
- </view>
- </template>
- </uni-list-item>
- </uni-list>
- <uGroup>
- <view class="uni-pagination-box">
- <uni-pagination show-icon :page-size="pageSize" :current="pageCurrent" :total="total"
- @change="change" />
- </view>
- </uGroup>
- </view>
- <u-gap height="70"></u-gap>
- </view>
- </template>
- <script>
- import uNavBar from '@/uni_modules/uni-nav-bar/components/uni-nav-bar/uni-nav-bar.vue'
- import uDataPicker from '@/uni_modules/uni-data-picker/components/uni-data-picker/uni-data-picker.vue'
- import uGroup from '@/uni_modules/uni-group/uni-group.vue'
- import uSection from '@/uni_modules/uni-section/uni-section.vue'
- import uPagination from '@/uni_modules/uni-pagination/components/uni-pagination/uni-pagination.vue'
- import uBreadcrumb from '@/uni_modules/uni-breadcrumb/components/uni-breadcrumb/uni-breadcrumb.vue'
- import uList from '@/uni_modules/uni-list/components/uni-list/uni-list.vue'
- import uListItem from '@/uni_modules/uni-list/components/uni-list-item/uni-list-item.vue'
- import uIcons from '@/uni_modules/uni-icons/components/uni-icons/uni-icons.vue'
- import http from '@/http/api.js';
- export default {
- components: {
- uNavBar,
- uList,
- uListItem,
- uIcons,
- uGroup,
- },
- onLoad(option) {
- this.getOrderList();
- },
- data() {
- return {
- list: [],
- title: '今日工单',
- desc: '',
- pageSize: 10,
- // 当前页
- pageCurrent: 1,
- // 数据总量
- total: 0,
- }
- },
- computed: {
- getIcon() {
- return path => {
- return 'https://cdn.uviewui.com/uview/example/' + path + '.png';
- }
- },
- },
- onShow() {
- },
- created() {
- },
- methods: {
- toBack() {
- uni.navigateBack({
- delta: 1
- })
- },
- // 分页触发
- change(e) {
- //this.$refs.table.clearSelection()
- this.selectedIndexs.length = 0
- this.pageCurrent = e.current;
- this.getOrderList()
- },
- getOrderList() {
- const current = this.pageCurrent;
- const size = this.pageSize;
- const isSubmit = '0';
- var that = this;
- http.request({
- url: '/galaxy-test/rtu/check/order/today/page',
- method: 'GET',
- params: {
- current,
- size,
- isSubmit
- },
- }).then(res => {
- if (res.data.records != null) {
- that.list = res.data.records;
- }
- this.total = res.data.total;
- }).catch(err => {
- console.log(err)
- })
- },
- toWarningPage(id) {
- var url = '/pages/warning/warninginfodetail?id=' + id;
- uni.navigateTo({
- url: url
- })
- },
- toOrderReport(id) {
- var url = '/pages/check-order/orderprocesslist?id=' + id;
- uni.navigateTo({
- url: url
- })
- },
- toOrderConfirm(id) {
- var that = this;
- var postData = {};
- postData['id'] = id;
- http.request({
- url: '/galaxy-test/rtu/check/order/confirm',
- method: 'POST',
- data: postData
- }).then(res => {
- console.log(res)
- if (res.success) {
- this.getOrderList()
- uni.showToast({
- title: '工单确认操作已成功!',
- icon: 'none'
- })
- }
- }).catch(err => {
- console.log(err)
- })
- },
- toLocation(item) {
- let lat = item.lat;
- let lng = item.lng;
- let name = item.rtuName;
- let add = item.locationDesc;
- uni.openLocation({
- latitude: Number(lat),
- longitude: Number(lng),
- name: name,
- address: add,
- success() {
- }
- })
- },
- getTitle(checkNo) {
- return "问题编号:" + checkNo;
- },
- swipeChange(e, index) {
- console.log('返回:', e);
- console.log('当前索引:', index);
- },
- swipeClick(e, index) {
- },
- locationToHandle(id) {
- const that = this;
- // uni.showModal({
- // content: '确定删除记录?',
- // showCancel: true,
- // success(res) {
- // if (res.confirm) {
- // var ids = id;
- // http.request({
- // url: '/blade-business/report/failure/remove',
- // method: 'POST',
- // params: {
- // ids
- // }
- // }).then(res => {
- // console.log(JSON.stringify(res.data))
- // if (res.success) {
- // uni.showModal({
- // content: '删除已成功',
- // showCancel: false,
- // success(res) {
- // if (res.confirm) {
- // that.loadList();
- // }
- // }
- // });
- // }
- // }).catch(err => {
- // console.log(err)
- // })
- // }
- // }
- // });
- }
- }
- }
- </script>
- <style>
- /* page {
- background-color: rgb(240, 242, 244);
- } */
- </style>
- <style lang="scss" scoped>
- .container {
- padding: 0 0 150rpx;
- }
- .u-cell-icon {
- width: 36rpx;
- height: 36rpx;
- margin-right: 8rpx;
- }
- .slot-box {
- /* #ifndef APP-NVUE */
- display: flex;
- /* #endif */
- flex-direction: row;
- align-items: center;
- }
- .slot-image {
- /* #ifndef APP-NVUE */
- display: block;
- /* #endif */
- margin-right: 10px;
- width: 30px;
- height: 30px;
- }
- .slot-text {
- flex: 1;
- font-size: 14px;
- color: #4cd964;
- margin-right: 10px;
- }
- .content-box {
- flex: 1;
- /* #ifdef APP-NVUE */
- justify-content: center;
- /* #endif */
- height: 100%;
- line-height: 44px;
- padding: 0 15px;
- position: relative;
- background-color: #fff;
- border-bottom-color: #f5f5f5;
- border-bottom-width: 1px;
- border-bottom-style: solid;
- }
- .content-text {
- font-size: 15px;
- }
- .example-body {
- /* #ifndef APP-NVUE */
- display: flex;
- /* #endif */
- flex-direction: row;
- justify-content: center;
- padding: 10px 0;
- background-color: #fff;
- }
- .button {
- border-color: #e5e5e5;
- border-style: solid;
- border-width: 1px;
- padding: 4px 8px;
- border-radius: 4px;
- }
- .button-text {
- font-size: 15px;
- }
- .slot-button {
- /* #ifndef APP-NVUE */
- display: flex;
- height: 100%;
- /* #endif */
- flex: 1;
- flex-direction: row;
- justify-content: center;
- align-items: center;
- padding: 0 20px;
- background-color: #ff5a5f;
- }
- .slot-button-text {
- color: #ffffff;
- font-size: 14px;
- }
- </style>
|