quanyawei
2024-07-04 1e71dd86f6d0c4fc7e5143600d4bc4b50992a2a7
pages/actionChange/workOrderDetails/index.vue
@@ -1,10 +1,15 @@
<template>
   <view class="mainContent">
      <basicInfor :basic-infor="basicInfor" />
      <u-sticky>
         <u-alert v-if="basicInfor.invalidReason" :title="`已作废:${basicInfor.invalidReason}`" type="warning"
            :description="description"></u-alert>
      </u-sticky>
      <basicInfor :basic-infor="basicInfor" v-if="basicInfor.unitId" />
      <rectificationInfor ref="rectificationInfor" :basic-infor="basicInfor"
         v-if="!(pageState === 'view' && basicInfor.state === 20)" />
      <approvalnfor ref="approvalnfor" v-if="basicInfor.state >= 30" :basic-infor="basicInfor" />
      <view class="bunts">
         v-if="!(pageState === 'view' && basicInfor.state === 20)&&isShow" />
      <approvalnfor ref="approvalnfor" v-if="basicInfor.state >= 30 && basicInfor.stateName!=='待完成' && isShow"
         :basic-infor="basicInfor" />
      <view class="bunts" v-if="isShow">
         <view class="but butRight">
            <u-button shape="square" @click="refuse" type="error"
               v-if="pageState==='edit'&& basicInfor.state >= 30">拒绝</u-button>
@@ -33,7 +38,9 @@
            basicInfor: {},
            unitListL: [],
            userInfor: null,
            show: false
            show: true,
            isShow: false,
            option: {}
         }
      },
      computed: {
@@ -41,52 +48,90 @@
            return this.basicInfor.pageState
         },
      },
      created() {
         this.getUnitList()
      },
      onLoad: function(option) {
      created() {},
      onLoad(option) {
         //option为object类型,会序列化上个页面传递的参数
         this.basicInfor = JSON.parse(option.infor)
         // let type = JSON.parse(option.type)
         console.log('option', option)
         this.userInfor = JSON.parse(uni.getStorageSync('userInfor') || 'null')
         if (option.type === 'share' && this.userInfor) {
            let params = {
               allocationNum: this.basicInfor.allocationNum,
               userId: this.userInfor.userId
            }
            this.$http.httpGet('/allocationApp/authority', params).then(res => {
               res.data = false
               if (!res.data) {
                  uni.showModal({
                     content: '您暂无操作权限,请联系管理员!',
                     showCancel: false,
                     confirmText: '确定',
                     success: res => {
                        if (res.confirm) {
                           uni.reLaunch({
                              url: '/pages/index/index',
                           })
                        }
                     },
                  })
         this.option = option
      },
      async mounted() {
         await this.$onLaunched
         //等待登录成功
         this.userInfor = JSON.parse(uni.getStorageSync('userInfor') || null)
         console.log('详情页的用户信息', this.userInfor)
         if (this.option.type === 'share') {
            if (this.userInfor) {
               let params = {
                  allocationNum: this.basicInfor.allocationNum,
                  userId: this.userInfor.userId
               }
            })
               this.$http.httpGet('/allocationApp/authority', params).then(res => {
                  console.log('权限控制参数', res)
                  if (res.data.code === 3) {
                     uni.showModal({
                        content: '您暂无操作权限,请联系管理员!',
                        showCancel: false,
                        confirmText: '确定',
                        success: res => {
                           if (res.confirm) {
                              uni.reLaunch({
                                 url: '/pages/index/index',
                              })
                           }
                        },
                     })
                  } else if (res.data.code === 1) {
                     // 可以编辑
                     this.basicInfor.pageState = 'edit'
                     this.basicInfor.stateName = res.data.name
                     this.getData()
                  } else if (res.data.code === 2) {
                     // 可以看
                     this.basicInfor.pageState = 'view'
                     this.basicInfor.stateName = res.data.name
                     this.getData()
                  }
               }).catch(errors => {
                  console.log('获取失败的信息', errors)
                  console.log('获取失败的信息params', params)
               })
            } else {
               uni.showModal({
                  title: '未登录',
                  content: '您未登录,需要登录后才能继续',
                  showCancel: false,
                  confirmText: '确定',
                  success: res => {
                     if (res.confirm) {
                        uni.reLaunch({
                           url: '/pages/login/login',
                        })
                     }
                  },
               })
               this.$isResolve()
            }
         } else {
            this.isShow = true
            this.getData()
         }
         console.log('this.basicInfor ', this.basicInfor)
      },
      methods: {
         closePop() {},
         getUnitList() {
            this.$http.httpGet('/allocation/unit').then(res => {
               this.unitList = res.data
               let data = ''
               if (this.basicInfor.unitId && this.unitList.length > 0) {
                  data = this.unitList && this.unitList.find(a => Number(a.unitId) === Number(this.basicInfor
                     .unitId)).unitName
                  let time = this.basicInfor.time.slice(5)
                  this.share.title = `${data}-${time}的交办单`
         getData() {
            this.$http.httpGet('/allocation/detail', {
               id: this.basicInfor.allocationId
            }).then(res => {
               this.basicInfor = {
                  ...this.basicInfor,
                  ...res.data
               }
               console.log('this.basicInfor123', this.basicInfor)
               let time = this.basicInfor.time.slice(5)
               this.share.title = `${this.basicInfor.unitName}-${time}的交办单`
               this.show = false
               this.isShow = true
            })
         },
         radioGroupChange(e) {
@@ -99,9 +144,15 @@
                  showTabBar: true
               }
            })
            uni.redirectTo({
               url: '/pages/index/index',
            })
            if (this.option.type === 'share') {
               uni.redirectTo({
                  url: '/pages/index/index',
               })
            } else {
               uni.navigateBack({
                  delta: 1, //返回上上一级注意这里要设置为2
               })
            }
         },
         refuse() {
            Promise.all([this.$refs.rectificationInfor && this.$refs.rectificationInfor.formVali(), this.$refs