浏览代码

扫码枪、首页地图

achao 3 年之前
父节点
当前提交
a64f94e71d

+ 2 - 0
src/api/V2/houseSelfCollect/index.js

@@ -91,3 +91,5 @@ export const API_GET_SHIPPINGINFOFORMATION = '/shippingInformation/selectShippin
 export const API_POST_INSPECTIONCHECK = '/qualityInspectionManagement/api/editQualityInspection'
 //单据二维码
 export const API_GAT_QRCODE = '/weighingManagement/generateQRCodeImage'
+//二维码获取数据
+export const API_GAT_GETQRCODE = '/weighingManagement/getQRcode'

+ 3 - 0
src/api/V2/tradeServicesManagement/index.js

@@ -35,3 +35,6 @@ export const API_GET_REPAYMENT_LIST = '/repaymentManagement/selectRepaymentManag
 export const API_POST_REPAYMENT_SUBMIT = '/repaymentManagement/api/repaymentMoney'
 //银行
 export const API_GET_WAREHOUSERECEIPT_BANKLIST = '/commonSysParameter/getInfo'
+// 贸易服务默认显示
+export const API_GET_SETDEFAULT = '/tradeWarehouseReceiptAppl/api/setDefault'
+

+ 2 - 2
src/components/mapdrag/indexMap.vue

@@ -260,11 +260,11 @@
       },
       loadmap(val) {
         var map = new AMap.Map('mapContainer', {
-          zoom: 5.29,
+          zoom: 4.89,
           showLabel: true,
           viewMode: '3D',
           pitch: 0, //地圖仰角
-          center: [104.780269, 34.955403],
+          center: [122.122, 40.227],
           mapStyle: 'amap://styles/dark',
           buildingAnimation: false,
           showIndoorMap: false,

+ 592 - 465
src/layout/index/top/index.vue

@@ -2,10 +2,7 @@
   <div class="winseaview-top" id="winseaview-top">
     <div class="top-bar__left">
       <!-- 伸缩icon -->
-      <div
-        class="winseaview-breadcrumb"
-        :class="[{ 'winseaview-breadcrumb--active': isCollapse }]"
-      >
+      <div class="winseaview-breadcrumb" :class="[{ 'winseaview-breadcrumb--active': isCollapse }]">
         <i class="iconfont icon-shouqi" @click="setCollapse"></i>
       </div>
       <!-- </div>
@@ -23,45 +20,42 @@
     <div class="top-bar__right">
       <!-- 使用租户 -->
       <div class="hidden-content">
-           <el-input ref="hiddenFocus" class="input-Style" v-model="barCode" size="small" @focus="focus" @blur="blur" @keyup.enter.native="payCode" placeholder="扫码枪内容"></el-input>
-      <div v-show="isOpenCodeGun">扫码枪已连接</div>
-      <div v-show="!isOpenCodeGun" @click="setCodeGun">点我扫码</div>
+        <el-input ref="hiddenFocus" type="password" class="input-Style" v-model="barCode" size="small" @focus="focus" @blur="blur"
+          @keyup.enter.native="payCode" placeholder="扫码枪内容"></el-input>
+        <div v-show="isOpenCodeGun">扫码枪已连接</div>
+        <div v-show="!isOpenCodeGun" @click="setCodeGun">点我扫码</div>
         <el-dialog title="扫描二维码" :visible.sync="smAlert">
-          <el-button v-hasPermission="`acquisitionManagement.acquisitionQuality.initial`" @click="goToPage(1)">去初检</el-button>
-          <el-button v-hasPermission="`acquisitionManagement.acquisitionQuality.con`" @click="goToPage(2)">去确认质检</el-button>
-          <el-button v-hasPermission="`acquisitionManagement.acquisitionQuality.again`" @click="goToPage(3)">去复检</el-button>
-          <el-button v-hasPermission="`acquisitionManagement.acquisitionWeight.mao`" @click="goToPage(4)">去称毛重</el-button>
-          <el-button v-hasPermission="`acquisitionManagement.acquisitionPay.add`" @click="goToPage(5)">去结算</el-button>
-          <el-button v-hasPermission="`acquisitionManagement.acquisitionWeight.weight`" @click="goToPage(6)">去称皮重</el-button>
+          <el-button v-hasPermission="`acquisitionManagement.acquisitionQuality.initial`"
+            v-if="btnStatus.status1||btnStatus.status2" @click="goToPage(1)">去初检
+          </el-button>
+          <el-button v-hasPermission="`acquisitionManagement.acquisitionQuality.con`"
+            v-if="btnStatus.status3||btnStatus.status4" @click="goToPage(2)">去确认质检
+          </el-button>
+          <el-button v-hasPermission="`acquisitionManagement.acquisitionQuality.again`"
+            v-if="btnStatus.status1||btnStatus.status2||btnStatus.status3||btnStatus.status4" @click="goToPage(3)">去复检
+          </el-button>
+          <el-button v-hasPermission="`acquisitionManagement.acquisitionWeight.mao`"
+            v-if="btnStatus.status1||btnStatus.status2||btnStatus.status3" @click="goToPage(4)">去称毛重
+          </el-button>
+          <el-button v-hasPermission="`acquisitionManagement.acquisitionPay.add`" v-if="btnStatus.status5"
+            @click="goToPage(5)">去结算</el-button>
+          <el-button v-hasPermission="`acquisitionManagement.acquisitionWeight.weight`"
+            v-if="btnStatus.status2||btnStatus.status3||btnStatus.status4||btnStatus.status5" @click="goToPage(6)">去称皮重
+          </el-button>
           <el-button @click="smAlert = false" class="btn">关闭</el-button>
-      </el-dialog>
-     </div>
+        </el-dialog>
+      </div>
       <div v-if="getDay" class="right-menu-item hover-effect dayClass">
         {{ $t('common.trialDays') }}
-        <span style="padding: 0 2px">{{ getDay }}</span
-        >{{ $t('common.days') }}
-      </div>
-      <div  class="right-menu-item hover-effect dayClass">
-      {{compName}}
+        <span style="padding: 0 2px">{{ getDay }}</span>{{ $t('common.days') }}
       </div>
-      <el-tooltip
-        v-if="showColor"
-        effect="dark"
-        :content="$t('navbar.color')"
-        placement="bottom"
-      >
+      <el-tooltip v-if="showColor" effect="dark" :content="$t('navbar.color')" placement="bottom">
         <div class="top-bar__item">
           <top-color></top-color>
         </div>
       </el-tooltip>
 
-      <el-tooltip
-        v-if="showTheme"
-        effect="dark"
-        :hide-after="1500"
-        :content="$t('navbar.theme')"
-        placement="bottom"
-      >
+      <el-tooltip v-if="showTheme" effect="dark" :hide-after="1500" :content="$t('navbar.theme')" placement="bottom">
         <div class="top-bar__item top-bar__item--show">
           <top-theme></top-theme>
         </div>
@@ -74,19 +68,11 @@
           <top-lang></top-lang>
         </div>
       </el-tooltip> -->
-      <el-tooltip
-        v-if="showFullScren"
-        effect="dark"
-        :content="
+      <el-tooltip v-if="showFullScren" effect="dark" :content="
           isFullScren ? $t('navbar.screenfull') : $t('navbar.screenfullF')
-        "
-        placement="bottom"
-      >
+        " placement="bottom">
         <div class="top-bar__item">
-          <i
-            :class="isFullScren ? 'el-icon-full-screen' : 'el-icon-full-screen'"
-            @click="handleScreen"
-          ></i>
+          <i :class="isFullScren ? 'el-icon-full-screen' : 'el-icon-full-screen'" @click="handleScreen"></i>
         </div>
       </el-tooltip>
 
@@ -97,27 +83,18 @@
           <i class="el-icon-arrow-down el-icon--right"></i>
         </span>
         <el-dropdown-menu slot="dropdown">
-          <el-dropdown-item
-            icon="el-icon-s-custom"
-            @click.native="personalFlag = true"
-          >
+          <el-dropdown-item icon="el-icon-s-custom" @click.native="personalFlag = true">
             {{ $t('navbar.personalInformation') }}
           </el-dropdown-item>
-          <el-dropdown-item
-            icon="el-icon-s-promotion"
-            @click.native="passwordFlag = true"
-          >
+          <el-dropdown-item icon="el-icon-s-promotion" @click.native="passwordFlag = true">
             {{ $t('navbar.uploadPsw') }}
           </el-dropdown-item>
           <!-- <el-dropdown-item>
             <router-link to="/info/index">{{$t('navbar.userinfo')}}</router-link>
           </el-dropdown-item> -->
-          <el-dropdown-item
-            v-if="showSetting"
-            icon="el-icon-s-tools"
-            @click.native="settingDrawer = true"
-            >{{ $t('navbar.layoutSetting') }}</el-dropdown-item
-          >
+          <el-dropdown-item v-if="showSetting" icon="el-icon-s-tools" @click.native="settingDrawer = true">
+            {{ $t('navbar.layoutSetting') }}
+          </el-dropdown-item>
           <el-dropdown-item @click.native="logout" divided>{{
             $t('navbar.logOut')
           }}</el-dropdown-item>
@@ -125,22 +102,11 @@
       </el-dropdown>
     </div>
 
-    <topSetting
-      v-model="settingDrawer"
-      @close="() => (settingDrawer = !settingDrawer)"
-    />
+    <topSetting v-model="settingDrawer" @close="() => (settingDrawer = !settingDrawer)" />
 
     <!--个人信息-->
-    <WinseaContentModal
-      v-model="personalFlag"
-      :title="$t('navbar.personalInformation')"
-    >
-      <el-form
-        ref="personalMsg"
-        :model="passwordMsg"
-        label-position="right"
-        label-width="150px"
-      >
+    <WinseaContentModal v-model="personalFlag" :title="$t('navbar.personalInformation')">
+      <el-form ref="personalMsg" :model="passwordMsg" label-position="right" label-width="150px">
         <el-form-item :label="$t('login.name')" prop="originalPassword">
           {{ userInfo.staffName }}
         </el-form-item>
@@ -165,44 +131,19 @@
     </WinseaContentModal>
     <!--修改密码-->
     <WinseaContentModal v-model="passwordFlag" :title="$t('navbar.uploadPsw')">
-      <el-form
-        ref="passwordMsg"
-        :model="passwordMsg"
-        :label-width="language == 'en' ? '156px' : '100px'"
-        :rules="passwordMsgRules"
-      >
-        <el-form-item
-          :label="$t('login.originalPassword') + $t('common.colon')"
-          prop="originalPassword"
-        >
-          <ws-input
-            type="password"
-            :placeholder="$t('login.message04')"
-            v-model="passwordMsg.originalPassword"
-            style="width: 318px"
-          />
+      <el-form ref="passwordMsg" :model="passwordMsg" :label-width="language == 'en' ? '156px' : '100px'"
+        :rules="passwordMsgRules">
+        <el-form-item :label="$t('login.originalPassword') + $t('common.colon')" prop="originalPassword">
+          <ws-input type="password" :placeholder="$t('login.message04')" v-model="passwordMsg.originalPassword"
+            style="width: 318px" />
         </el-form-item>
-        <el-form-item
-          :label="$t('login.newPassword') + $t('common.colon')"
-          prop="newPassword"
-        >
-          <ws-input
-            type="password"
-            v-model="passwordMsg.newPassword"
-            :placeholder="$t('login.verification01')"
-            style="width: 318px"
-          />
+        <el-form-item :label="$t('login.newPassword') + $t('common.colon')" prop="newPassword">
+          <ws-input type="password" v-model="passwordMsg.newPassword" :placeholder="$t('login.verification01')"
+            style="width: 318px" />
         </el-form-item>
-        <el-form-item
-          :label="$t('login.confirmPassword') + $t('common.colon')"
-          prop="password"
-        >
-          <ws-input
-            type="password"
-            v-model="passwordMsg.password"
-            :placeholder="$t('login.verification01')"
-            style="width: 318px"
-          />
+        <el-form-item :label="$t('login.confirmPassword') + $t('common.colon')" prop="password">
+          <ws-input type="password" v-model="passwordMsg.password" :placeholder="$t('login.verification01')"
+            style="width: 318px" />
         </el-form-item>
       </el-form>
       <span slot="footer" class="dialog-footer">
@@ -217,395 +158,581 @@
   </div>
 </template>
 <script>
-import { changePasswordByPwd } from '@/model/indexRx'
-import { mapActions, mapGetters, mapState } from 'vuex'
-import { fullscreenToggel, listenfullscreen } from '@/utils/util'
-import topMenu from './top-menu'
-import topSearch from './top-search'
-import topTheme from './top-theme'
-import topColor from './top-color'
-import topNotice from './top-notice'
-import topLang from './top-lang'
-import topSetting from './top-setting'
-import breadCrumb from '@/components/Breadcrumb'
-import { EventBus } from 'base-core-lib'
-import { validPassword } from '@/utils/validate'
-import smallTips from '@/components/WinseaCom/smallTips'
-import {getLook } from '@/model/warehouse/index'
+  import {
+    changePasswordByPwd
+  } from '@/model/indexRx'
+  import {
+    mapActions,
+    mapGetters,
+    mapState
+  } from 'vuex'
+  import {
+    fullscreenToggel,
+    listenfullscreen
+  } from '@/utils/util'
+  import topMenu from './top-menu'
+  import topSearch from './top-search'
+  import topTheme from './top-theme'
+  import topColor from './top-color'
+  import topNotice from './top-notice'
+  import topLang from './top-lang'
+  import topSetting from './top-setting'
+  import breadCrumb from '@/components/Breadcrumb'
+  import {
+    EventBus
+  } from 'base-core-lib'
+  import {
+    validPassword
+  } from '@/utils/validate'
+  import smallTips from '@/components/WinseaCom/smallTips'
+  import {
+    getLook
+  } from '@/model/warehouse/index'
+  import {
+    getQRCodeData
+  } from '@/model/houseSelfCollect/index'
 
-const validPasswordRule = function (rule, value, callback) {
-  if (!validPassword(value)) {
-    callback(new Error(this.$t('login.verification01')))
-  } else {
-    callback()
-  }
-}
-const validPasswordRule2 = function (rule, value, callback) {
-  if (!value) {
-    callback(new Error(this.$t('login.verification02')))
-  } else if (value !== this.passwordMsg.newPassword) {
-    callback(new Error(this.$t('login.verification03')))
-  } else {
-    callback()
-  }
-}
-export default {
-  components: {
-    topMenu,
-    topSearch,
-    topTheme,
-    topColor,
-    topNotice,
-    topLang,
-    topSetting,
-    breadCrumb,
-    smallTips,
-  },
-  name: 'top',
-  data() {
-    return {
-      userINfo:{},
-      barCode:'',
-      isOpenCodeGun:false,
-      smAlert:false,
-      showList: [
-        'maintenancePlanList',
-        'maintenanceReportList',
-        'navigationMaterialList',
-        'protectionEntry',
-        'protection',
-        'newlyIncreased',
-        'clientEdit',
-        'staticDetail',
-        'maApplicationAdd',
-        'maApplicationEdit',
-        'maApplicationLabel',
-        'monthContrastList',
-      ],
-      settingDrawer: false,
-      personalFlag: false,
-      passwordFlag: false,
-      passwordMsgRules: {
-        originalPassword: [{ required: true, message: ' ', trigger: 'blur' }],
-        // newPassword: [
-        //   {
-        //     required: true,
-        //     trigger: 'blur',
-        //     validator: validPasswordRule.bind(this),
-        //   },
-        // ],
-        // password: [
-        //   {
-        //     required: true,
-        //     trigger: 'blur',
-        //     validator: validPasswordRule2.bind(this),
-        //   },
-        // ],
-      },
-      passwordMsg: {
-        originalPassword: '', // 原始密码
-        newPassword: '', // 新密码
-        password: '', // 二次输入密码
-      },
-      // roleName: '',
-      // phone: '',
-      // roleId: '',
-      // deptName: '',
-      // deptId: '',
-      // staffName: '',
-      compName: localStorage.getItem('ws-pf_compName'),
-      account: localStorage.getItem('ws-pf_account'),
-      // compName: '',
-      companyId: localStorage.getItem('ws-pf_compId'),
+
+  const validPasswordRule = function(rule, value, callback) {
+    if (!validPassword(value)) {
+      callback(new Error(this.$t('login.verification01')))
+    } else {
+      callback()
     }
-  },
-  filters: {},
-  created() {
-    // this.getUserInfo()
-    this.getUserWorseHouse();
-    this.userINfo = {
-      userCompany:localStorage.getItem('ws-pf_compId'),
-      userName:localStorage.getItem('ws-pf_staffName'),
-      userJurisdiction:""
+  }
+  const validPasswordRule2 = function(rule, value, callback) {
+    if (!value) {
+      callback(new Error(this.$t('login.verification02')))
+    } else if (value !== this.passwordMsg.newPassword) {
+      callback(new Error(this.$t('login.verification03')))
+    } else {
+      callback()
     }
-  },
-  mounted() {
-    listenfullscreen(this.setScreen)
-  },
-  computed: {
-    ...mapState({
-      showDebug: (state) => state.commonStore.showDebug,
-      showTheme: (state) => state.commonStore.showTheme,
-      showLock: (state) => state.commonStore.showLock,
-      showFullScren: (state) => state.commonStore.showFullScren,
-      showCollapse: (state) => state.commonStore.showCollapse,
-      showSearch: (state) => state.commonStore.showSearch,
-      showSetting: (state) => state.commonStore.showSetting,
-      showMenu: (state) => state.commonStore.showMenu,
-      showColor: (state) => state.commonStore.showColor,
-    }),
-    ...mapGetters([
-      'userInfo',
-      'isFullScren',
-      'tagWel',
-      'tagList',
-      'isCollapse',
-      'tag',
-      'logsLen',
-      'logsFlag',
-      'language',
-    ]),
-    getDay() {
-      const { statusFlag = -1, daysRemaining } =
-        JSON.parse(localStorage.getItem('ws_login_getTenantInfoByUser')) || {}
-      return statusFlag * 1 === 2 ? daysRemaining + '' : ''
-    },
-    showTooltip() {
-      return this.showList.indexOf(this.$route.name) > -1 && !this.showMenu
+  }
+  export default {
+    components: {
+      topMenu,
+      topSearch,
+      topTheme,
+      topColor,
+      topNotice,
+      topLang,
+      topSetting,
+      breadCrumb,
+      smallTips,
     },
-  },
-  methods: {
-    ...mapActions('common', ['setLocalVessels']),
-    payCode(){
-      console.log("input",this.barCode)
-      let _userCompId = this.barCode.split(',')[0]
-      let _userId = this.barCode.split(',')[1]
-      let _userFlag = this.barCode.split(',')[2]
-      let _userHouseId = this.barCode.split(',')[3]
-        
-      //判断当前账号公司
-      if(this.userINfo.userCompany!=_userCompId){
-          this.$message.error('当前身份不可操作');
-          return
+    name: 'top',
+    data() {
+      return {
+        //status1:已初检未称毛重状态 status2:已初检且已称毛重状态  status3:已复检且已称毛重  status4:已复检且已称皮重状态
+        //status5:已确认质检且已称皮重且未结算状态  status6:已结算状态
+        btnStatus: {
+          status1: false,
+          status2: false,
+          status3: false,
+          status4: false,
+          status5: false,
+          status6: false,
+        },
+        toPageData: {},
+        userINfo: {},
+        barCode: '',
+        isOpenCodeGun: false,
+        smAlert: false,
+        showList: [
+          'maintenancePlanList',
+          'maintenanceReportList',
+          'navigationMaterialList',
+          'protectionEntry',
+          'protection',
+          'newlyIncreased',
+          'clientEdit',
+          'staticDetail',
+          'maApplicationAdd',
+          'maApplicationEdit',
+          'maApplicationLabel',
+          'monthContrastList',
+        ],
+        settingDrawer: false,
+        personalFlag: false,
+        passwordFlag: false,
+        passwordMsgRules: {
+          originalPassword: [{
+            required: true,
+            message: ' ',
+            trigger: 'blur'
+          }],
+          // newPassword: [
+          //   {
+          //     required: true,
+          //     trigger: 'blur',
+          //     validator: validPasswordRule.bind(this),
+          //   },
+          // ],
+          // password: [
+          //   {
+          //     required: true,
+          //     trigger: 'blur',
+          //     validator: validPasswordRule2.bind(this),
+          //   },
+          // ],
+        },
+        passwordMsg: {
+          originalPassword: '', // 原始密码
+          newPassword: '', // 新密码
+          password: '', // 二次输入密码
+        },
+        // roleName: '',
+        // phone: '',
+        // roleId: '',
+        // deptName: '',
+        // deptId: '',
+        // staffName: '',
+        account: localStorage.getItem('ws-pf_account'),
+        // compName: '',
+        companyId: localStorage.getItem('ws-pf_compId'),
+        cangid:''
       }
-      //判断当前账号仓库
-      this.getLook(_userHouseId,this.userINfo.userName)
-      //扫码枪扫码后显示弹框
-      this.smAlert = true
-      //根据判断显示不同按钮
-      //获取跳转数据
     },
-     async getLook(compId,userName) {
-      await getLook({
-        id: compId,
-      })
-        .toPromise()
-        .then((response) => {
-          if(response.personCharge!=userName||response.otherPersonCharge.indexOf(userName)<=-1){
-            this.$message.error('当前身份不可操作');
-            return
-          }
-          // this.deptBudgetList = response
-          
-        })
-    },
-    setCodeGun(){
-      this.$refs['hiddenFocus'].focus()
-    },
-    focus(){
-      console.log("当前焦点状态")
-      this.isOpenCodeGun = true
-    },
-    blur(){
-       console.log("当前已失去焦点状态")
-       this.isOpenCodeGun = false
-    },
-    goToPage(type){
-      let _url = ''
-      if(type===1){
-        // this.$router.push({
-				// 	path: 'inspectInfo',
-				// 	query: {
-				// 		type: index,
-				// 		cangid: this.cangid,
-				// 		id: row.id,
-				// 		warehouseName: this.warehouseName,
-				// 		count: this.warehouseCount,
-				// 		warehouseNo: this.warehouseNo,
-				// 		allowEdit:this.allowEdit,
-				// 		status:row.status
-				// 	},
-				// })
-      }else if(type===2){
-        _url = ''
-      }else if(type===3){
-        _url = ''
-      }else if(type===4){
-        _url = ''
-      }else if(type===5){
-        _url = ''
-      }else if(type===6){
-        _url = ''
+    filters: {},
+    created() {
+      // this.getUserInfo()
+      this.getUserWorseHouse();
+      this.userINfo = {
+        userCompany: localStorage.getItem('ws-pf_compId'),
+        userName: localStorage.getItem('ws-pf_staffName'),
       }
     },
-    //获取当前用户管理的仓库
-    getUserWorseHouse(){
-
-    },
-    handleScreen() {
-      fullscreenToggel()
-    },
-    setCollapse() {
-      this.$store.commit('SET_COLLAPSE')
-    },
-    setScreen() {
-      this.$store.commit('SET_FULLSCREN')
+    mounted() {
+      listenfullscreen(this.setScreen)
     },
-    cancelPaw() {
-      this.$refs.passwordMsg.resetFields()
+    computed: {
+      ...mapState({
+        showDebug: (state) => state.commonStore.showDebug,
+        showTheme: (state) => state.commonStore.showTheme,
+        showLock: (state) => state.commonStore.showLock,
+        showFullScren: (state) => state.commonStore.showFullScren,
+        showCollapse: (state) => state.commonStore.showCollapse,
+        showSearch: (state) => state.commonStore.showSearch,
+        showSetting: (state) => state.commonStore.showSetting,
+        showMenu: (state) => state.commonStore.showMenu,
+        showColor: (state) => state.commonStore.showColor,
+      }),
+      ...mapGetters([
+        'userInfo',
+        'isFullScren',
+        'tagWel',
+        'tagList',
+        'isCollapse',
+        'tag',
+        'logsLen',
+        'logsFlag',
+        'language',
+      ]),
+      getDay() {
+        const {
+          statusFlag = -1, daysRemaining
+        } =
+        JSON.parse(localStorage.getItem('ws_login_getTenantInfoByUser')) || {}
+        return statusFlag * 1 === 2 ? daysRemaining + '' : ''
+      },
+      showTooltip() {
+        return this.showList.indexOf(this.$route.name) > -1 && !this.showMenu
+      },
     },
-    // 修改管理员密码
-    savePassword(formName) {
-      this.$refs[formName].validate((valid) => {
-        if (valid) {
-          const data = {
-            originalPassword: this.passwordMsg.originalPassword,
-            password: this.passwordMsg.password,
-          }
-          changePasswordByPwd(data)
-            .toPromise()
-            .then(() => {
-              EventBus.$emit('success', this.$t('message.updateMessage'))
-              this.passwordFlag = false
-            })
-        } else {
-          EventBus.$emit('error', this.$t('showMessage.asteriskRequired'))
-          return false
+    methods: {
+      ...mapActions('common', ['setLocalVessels']),
+      payCode() {debugger
+        console.log("input", this.barCode)
+        this.btnStatus = {
+          status1: false,
+          status2: false,
+          status3: false,
+          status4: false,
+          status5: false,
+          status6: false,
         }
-      })
-    },
-    // async getUserInfo () {
-    //   this.staffName = this.userInfo.staffName
-    //   this.phone = this.userInfo.staffMobilePhone
-    //   this.deptName = this.userInfo.deptName
-    //   this.roleName = this.userInfo.showRoleName
-    //   this.roleId = this.userInfo.showRoleId
-    //   this.compName = this.userInfo.compName
-    // },
-    toggleSideBar() {
-      this.$store.dispatch('app/toggleSideBar')
-    },
-    logout() {
-      this.$confirm(this.$t('logoutTip'), this.$t('tip'), {
-        confirmButtonText: this.$t('submitText'),
-        cancelButtonText: this.$t('cancelText'),
-        type: 'warning',
-      }).then(async () => {
-        localStorage.removeItem('ws-pf_roleName')
-        localStorage.removeItem('ws-pf_roleId')
-        localStorage.removeItem('ws-pf_staffName')
-        localStorage.removeItem('ws-pf_deptId')
-        localStorage.removeItem('ws-pf_deptName')
-        localStorage.removeItem('ws-pf_organMonetaryKey')
-        localStorage.removeItem('ws-pf_organMonetaryValue')
-        localStorage.removeItem('ws-pf_vessels')
-        localStorage.removeItem('ws-pf_isLandBasedFlag')
-        await this.$store.dispatch('user/logout')
-        this.$router.push(
-          process.env.VUE_APP_PACKAGE_ENV === 'ship' ? '/ship_login' : '/login'
-        )
-      })
+        // let _userCompId = "2710b21efc1e4393930c5dc800010dc4"
+        // let _qualityNo = "SGRK202112140060003"
+         
+        let _userCompId = this.barCode.split('&')[0]
+        let _qualityNo = this.barCode.split('&')[1]
+        let _userHouseId = this.barCode.split('&')[2]
+        this.cangid = this.barCode.split('&')[2]
+        let tmp = {
+          compId: _userCompId,
+          number: _qualityNo,
+          warehouseId: _userHouseId
+        }
+         this.barCode = ''
+        //判断当前账号公司是否是二维码上公司
+        if (this.userINfo.userCompany != _userCompId) {
+          this.$message.error('当前身份不可操作');
+          return
+        }
+        //判断二维码上的仓库当前账号是否有权限操作
+        this.getLook(this.cangid, this.userINfo.userName)
+        
+        //扫码枪扫码后显示弹框
+        this.getQRCodeData(tmp)
+      },
+      // 查看二维码仓库负责人
+      async getLook(compId, userName) {
+        await getLook({
+            id: compId,
+          })
+          .toPromise()
+          .then((response) => {
+            if (response.code == 200) {
+              if (response.personCharge != userName || response.otherPersonCharge.indexOf(userName) <= -1) {
+                this.$message.error('当前身份不可操作');
+                return
+              }
+            }
+          })
+      },
+      // 二维码获取数据
+      async getQRCodeData(tmp) {
+        await getQRCodeData(tmp)
+          .toPromise()
+          .then((response) => {
+            debugger
+            this.toPageData = response
+            // 处理按钮显示状态
+            // this.btnStatus 
+            // 检斤状态
+            let _status1 = response.status
+            //质检状态
+            let _status2 = response.qualityInspectionManagement.status
+            // 付款状态
+            let _status3 = response.paymentManagement?response.paymentManagement.status:''
+            if (_status2 == '已初检' && _status1 == '已质检') {
+              this.btnStatus.status1 = true
+            } else if (_status2 == '已初检' && _status1 == '已称毛重') {
+              this.btnStatus.status2 = true
+            } else if (_status2 == '已复检' && _status1 == '已称毛重') {
+              this.btnStatus.status3 = true
+            } else if (_status2 == '已复检' && _status1 == '已称皮重') {
+              this.btnStatus.status4 = true
+            } else if (_status2 == '已确认' && _status1 == '已称皮重' && _status3 == '待结算') {
+              this.btnStatus.status5 = true
+            } else if (_status3 == '已结算') {
+              this.btnStatus.status6 = true
+            }
+            if (_status3 == '已结算') {
+              this.$message.error('业务已完结');
+            } else {
+              this.smAlert = true
+            }
+          })
+      },
+      setCodeGun() {
+        this.$refs['hiddenFocus'].focus()
+      },
+      focus() {
+        console.log("当前焦点状态")
+        this.isOpenCodeGun = true
+      },
+      blur() {
+        console.log("当前已失去焦点状态")
+        this.isOpenCodeGun = false
+      },
+      goToPage(type) {
+        let _url = ''
+        if (type === 1) {
+// this.toPageData 
+          this.$router.push({
+          	path: 'inspectInfo',
+          	query: {
+          		type: 3,
+          		cangid: this.cangid,
+          		id: this.toPageData.qualityInspectionManagement.id,
+          		warehouseName: this.toPageData.qualityInspectionManagement.warehouseName,
+          		count: 0,
+          		warehouseNo: 0,
+          		allowEdit:this.toPageData.warehouseBaseInfo.allowEdit,
+          		status:this.toPageData.status
+          	},
+          })
+        } else if (type === 2) {
+               this.$router.push({
+          	path: 'inspectInfo',
+          	query: {
+          		type: 5,
+          		cangid: this.cangid,
+          		id: this.toPageData.qualityInspectionManagement.id,
+          		warehouseName: this.toPageData.qualityInspectionManagement.warehouseName,
+          		count: 0,
+          		warehouseNo: 0,
+          		allowEdit:this.toPageData.warehouseBaseInfo.allowEdit,
+          		status:this.toPageData.status
+          	},
+          })
+        } else if (type === 3) {
+            this.$router.push({
+          	path: 'inspectInfo',
+          	query: {
+          		type: 4,
+          		cangid: this.cangid,
+          		id: this.toPageData.qualityInspectionManagement.id,
+          		warehouseName: this.toPageData.qualityInspectionManagement.warehouseName,
+          		count: 0,
+          		warehouseNo: 0,
+          		allowEdit:this.toPageData.warehouseBaseInfo.allowEdit,
+          		status:this.toPageData.status
+          	},
+          })
+        } else if (type === 4) {
+             this.$router.push({
+            path: 'weightCheck',
+            query: {
+              tpyeNo: 1,
+              id: this.toPageData.id,
+              number: this.toPageData.number,
+              binNumber: this.toPageData.binNumber,
+              customer: this.toPageData.customer,
+              storageNumber: this.toPageData.storageNumber,
+              carNumber: this.toPageData.carNumber,
+              boxNo: this.toPageData.qualityInspectionManagement.boxNo,
+              boxNoOther: this.toPageData.qualityInspectionManagement.boxNoOther,
+              titleNo: this.toPageData.qualityInspectionManagement.titleNo,
+              titleNoOther: this.toPageData.qualityInspectionManagement.titleNoOther,
+              goodsName: this.toPageData.goodsName,
+              grossWeight: this.toPageData.grossWeight,
+              tare: this.toPageData.tare,
+              netWeight: this.toPageData.netWeight,
+              relationId: this.toPageData.relationId,
+              warehouseId: this.cangid,
+              monitorUrl1: this.toPageData.warehouseBaseInfo.monitorUrl1,
+              monitorUrl2: this.toPageData.warehouseBaseInfo.monitorUrl2,
+              allowEdit: this.toPageData.warehouseBaseInfo.allowEdit,
+              cangid: this.cangid,
+              warehouseName: this.toPageData.qualityInspectionManagement.warehouseName,
+              paramType: this.toPageData.qualityInspectionManagement.paramType,
+              customerNumberCard: this.toPageData.customerNumberCard,
+              automaticWeightAcquisition: this.toPageData.automaticWeightAcquisition
+            },
+          })
+        } else if (type === 5) {
+             localStorage.setItem('paymentManagementReturn', false)
+          this.$router.push({
+            path: 'settlement',
+            query: {
+              type: 1,
+              id: this.toPageData.paymentList.id,
+            },
+          })
+        } else if (type === 6) {
+           this.$router.push({
+            path: 'weightCheck',
+            query: {
+              tpyeNo: 2,
+              id: this.toPageData.id,
+              number: this.toPageData.number,
+              binNumber: this.toPageData.binNumber,
+              customer: this.toPageData.customer,
+              storageNumber: this.toPageData.storageNumber,
+              carNumber: this.toPageData.carNumber,
+              boxNo: this.toPageData.qualityInspectionManagement.boxNo,
+              boxNoOther: this.toPageData.qualityInspectionManagement.boxNoOther,
+              titleNo: this.toPageData.qualityInspectionManagement.titleNo,
+              titleNoOther: this.toPageData.qualityInspectionManagement.titleNoOther,
+              goodsName: this.toPageData.goodsName,
+              grossWeight: this.toPageData.grossWeight,
+              tare: this.toPageData.tare,
+              netWeight: this.toPageData.netWeight,
+              relationId: this.toPageData.relationId,
+              warehouseId: this.cangid,
+              monitorUrl1: this.toPageData.warehouseBaseInfo.monitorUrl1,
+              monitorUrl2: this.toPageData.warehouseBaseInfo.monitorUrl2,
+              allowEdit: this.toPageData.warehouseBaseInfo.allowEdit,
+              cangid: this.cangid,
+              warehouseName: this.toPageData.qualityInspectionManagement.warehouseName,
+              paramType: this.toPageData.qualityInspectionManagement.paramType,
+              customerNumberCard: this.toPageData.customerNumberCard,
+              automaticWeightAcquisition: this.toPageData.automaticWeightAcquisition
+            },
+          })
+        }
+        this.smAlert = false
+      },
+      //获取当前用户管理的仓库
+      getUserWorseHouse() {
+
+      },
+      handleScreen() {
+        fullscreenToggel()
+      },
+      setCollapse() {
+        this.$store.commit('SET_COLLAPSE')
+      },
+      setScreen() {
+        this.$store.commit('SET_FULLSCREN')
+      },
+      cancelPaw() {
+        this.$refs.passwordMsg.resetFields()
+      },
+      // 修改管理员密码
+      savePassword(formName) {
+        this.$refs[formName].validate((valid) => {
+          if (valid) {
+            const data = {
+              originalPassword: this.passwordMsg.originalPassword,
+              password: this.passwordMsg.password,
+            }
+            changePasswordByPwd(data)
+              .toPromise()
+              .then(() => {
+                EventBus.$emit('success', this.$t('message.updateMessage'))
+                this.passwordFlag = false
+              })
+          } else {
+            EventBus.$emit('error', this.$t('showMessage.asteriskRequired'))
+            return false
+          }
+        })
+      },
+      // async getUserInfo () {
+      //   this.staffName = this.userInfo.staffName
+      //   this.phone = this.userInfo.staffMobilePhone
+      //   this.deptName = this.userInfo.deptName
+      //   this.roleName = this.userInfo.showRoleName
+      //   this.roleId = this.userInfo.showRoleId
+      //   this.compName = this.userInfo.compName
+      // },
+      toggleSideBar() {
+        this.$store.dispatch('app/toggleSideBar')
+      },
+      logout() {
+        this.$confirm(this.$t('logoutTip'), this.$t('tip'), {
+          confirmButtonText: this.$t('submitText'),
+          cancelButtonText: this.$t('cancelText'),
+          type: 'warning',
+        }).then(async () => {
+          localStorage.removeItem('ws-pf_roleName')
+          localStorage.removeItem('ws-pf_roleId')
+          localStorage.removeItem('ws-pf_staffName')
+          localStorage.removeItem('ws-pf_deptId')
+          localStorage.removeItem('ws-pf_deptName')
+          localStorage.removeItem('ws-pf_organMonetaryKey')
+          localStorage.removeItem('ws-pf_organMonetaryValue')
+          localStorage.removeItem('ws-pf_vessels')
+          localStorage.removeItem('ws-pf_isLandBasedFlag')
+          await this.$store.dispatch('user/logout')
+          this.$router.push(
+            process.env.VUE_APP_PACKAGE_ENV === 'ship' ? '/ship_login' : '/login'
+          )
+        })
+      },
+
     },
-    
-  },
-}
+  }
 </script>
 
 <style lang="scss" scoped>
-.dayClass {
-  font-size: 14px !important;
-  span {
-    font-weight: 600;
-    font-size: 14px;
-    color: #ff3838;
-  }
-}
-.hamburger-container {
-  line-height: 40px;
-  height: 100%;
-  float: left;
-  cursor: pointer;
-  transition: background 0.3s;
-  -webkit-tap-highlight-color: transparent;
+  .dayClass {
+    font-size: 14px !important;
 
-  &:hover {
-    background: rgba(0, 0, 0, 0.025);
+    span {
+      font-weight: 600;
+      font-size: 14px;
+      color: #ff3838;
+    }
   }
-}
-
-.breadcrumb-container {
-  float: left;
-  position: relative;
-}
 
-.errLog-container {
-  display: inline-block;
-  vertical-align: top;
-}
+  .hamburger-container {
+    line-height: 40px;
+    height: 100%;
+    float: left;
+    cursor: pointer;
+    transition: background 0.3s;
+    -webkit-tap-highlight-color: transparent;
 
-.right-menu {
-  float: right;
-  height: 100%;
-  line-height: 40px;
+    &:hover {
+      background: rgba(0, 0, 0, 0.025);
+    }
+  }
 
-  &:focus {
-    outline: none;
+  .breadcrumb-container {
+    float: left;
+    position: relative;
   }
 
-  .right-menu-item {
+  .errLog-container {
     display: inline-block;
-    padding: 0 8px;
-    height: 100%;
-    font-size: 18px;
-    color: #5a5e66;
-    // vertical-align: text-bottom;
+    vertical-align: top;
+  }
 
-    &.hover-effect {
-      cursor: pointer;
-      transition: background 0.3s;
+  .right-menu {
+    float: right;
+    height: 100%;
+    line-height: 40px;
 
-      &:hover {
-        background: rgba(0, 0, 0, 0.025);
-      }
+    &:focus {
+      outline: none;
     }
-  }
 
-  .avatar-container {
-    margin-right: 30px;
+    .right-menu-item {
+      display: inline-block;
+      padding: 0 8px;
+      height: 100%;
+      font-size: 18px;
+      color: #5a5e66;
+      // vertical-align: text-bottom;
 
-    .avatar-wrapper {
-      position: relative;
-      span {
-        height: 40px;
-        line-height: 40px;
-        font-size: 12px;
-      }
-      .user-avatar {
+      &.hover-effect {
         cursor: pointer;
-        width: 40px;
-        height: 40px;
-        border-radius: 10px;
+        transition: background 0.3s;
+
+        &:hover {
+          background: rgba(0, 0, 0, 0.025);
+        }
       }
+    }
 
-      .el-icon-caret-bottom {
-        cursor: pointer;
-        position: absolute;
-        right: -20px;
-        top: 15px;
-        font-size: 12px;
+    .avatar-container {
+      margin-right: 30px;
+
+      .avatar-wrapper {
+        position: relative;
+
+        span {
+          height: 40px;
+          line-height: 40px;
+          font-size: 12px;
+        }
+
+        .user-avatar {
+          cursor: pointer;
+          width: 40px;
+          height: 40px;
+          border-radius: 10px;
+        }
+
+        .el-icon-caret-bottom {
+          cursor: pointer;
+          position: absolute;
+          right: -20px;
+          top: 15px;
+          font-size: 12px;
+        }
       }
     }
   }
-}
-.hidden-content{
-  display: flex;
-  font-size: 16px;
-}
-.input-Style{
-  opacity: 0;
-}
-.btn{
-  background: #5878e8;
-  color: white;
-}
+
+  .hidden-content {
+    display: flex;
+    font-size: 16px;
+  }
+
+  .input-Style {
+    opacity: 1;
+    margin-right: 20px;
+    // visibility: hidden;
+  }
+
+  .btn {
+    background: #5878e8;
+    color: white;
+  }
 </style>

+ 5 - 2
src/model/houseSelfCollect/index.js

@@ -47,7 +47,8 @@ import {
   API_POST_EXPORT,
   API_GET_SHIPPINGINFOFORMATION,
   API_POST_INSPECTIONCHECK,
-  API_GAT_QRCODE
+  API_GAT_QRCODE,
+  API_GAT_GETQRCODE
 } from '@/api/V2/houseSelfCollect'
 //客户管理列表
 export const getCustomerManage = appRx.get(API_GET_CUSTOMER_MANAGE, errorCatcher, errorHandle, filter)
@@ -142,4 +143,6 @@ export const getshippinginfo  = appRx.get(API_GET_SHIPPINGINFOFORMATION, errorCa
 // 确认初检信息
 export const postCheck  = appRx.post(API_POST_INSPECTIONCHECK, errorCatcher, errorHandle, filter)
 // 单据二维码
-export const getQRcode  = appRx.get(API_GAT_QRCODE, errorCatcher, errorHandle, filter)
+export const getQRcode  = appRx.get(API_GAT_QRCODE, errorCatcher, errorHandle, filter)
+// 二维码获取数据
+export const getQRCodeData  = appRx.get(API_GAT_GETQRCODE, errorCatcher, errorHandle, filter)

+ 6 - 2
src/model/tradeServicesManagement/index.js

@@ -17,7 +17,8 @@ import {
     API_GET_WAREHOUSE_EXAMINE,
     API_GET_REPAYMENT_LIST,
     API_POST_REPAYMENT_SUBMIT,
-    API_GET_WAREHOUSERECEIPT_BANKLIST
+    API_GET_WAREHOUSERECEIPT_BANKLIST,
+    API_GET_SETDEFAULT
 } from '@/api/V2/tradeServicesManagement'
 // 列表
 export const getList = appRx.get(API_GET_TRADESERVICES_LIST, errorCatcher, errorHandle, filter)
@@ -51,4 +52,7 @@ export const getRepaymentList = appRx.get(API_GET_REPAYMENT_LIST, errorCatcher,
 // 还款列表
 export const repaymentSubmit = appRx.post(API_POST_REPAYMENT_SUBMIT, errorCatcher, errorHandle, filter)
 // 银行列表
-export const WarehouseReceiptBankList = appRx.get(API_GET_WAREHOUSERECEIPT_BANKLIST, errorCatcher, errorHandle, filter)
+export const WarehouseReceiptBankList = appRx.get(API_GET_WAREHOUSERECEIPT_BANKLIST, errorCatcher, errorHandle, filter)
+
+// 贸易服务默认显示
+export const setDefault = appRx.post(API_GET_SETDEFAULT, errorCatcher, errorHandle, filter)

+ 18 - 11
src/views/tradeServicesManagement/warehouseReceiptRegulation.vue

@@ -81,7 +81,8 @@
   import {
     getList,
     getMapInfo,
-    deleteTrageInfo
+    deleteTrageInfo,
+    setDefault
   } from '@/model/tradeServicesManagement/index'
   import {
     selectWarehouseSelf,
@@ -108,15 +109,6 @@
       }
     },
     activated() {
-        localStorage.removeItem("pageUp")//删除出入库跳返回时数据刷新的问题
-      // let i = localStorage.getItem('warehouseReceiptRegulation_selectShowType')
-      // console.log(i)
-      // console.log(1212121121)
-    },
-    beforeCreate() {
-      document.querySelector('body').setAttribute('style', 'overflow:hidden;')
-    },
-    mounted() {
       let height = document.body.offsetHeight - 57
       document.querySelector('.container').setAttribute('style', 'height:' + height + 'px;')
       let _showPage = localStorage.getItem('warehouseReceiptRegulation_selectShowType')
@@ -131,10 +123,25 @@
         this.isActive = false
       }
       this.compId = localStorage.getItem('ws-pf_compId')
-      this.getList()
       this.getMapInfo()
       // this.getWarehouseList()
       this.tradeServicesList = []
+        //  setDefault().toPromise().then((response) => {
+        //   // console.log('地图数据', response)
+        //   this.mapInfo = response
+        //   // this.mapInfo = response.data.records
+        // })
+        localStorage.removeItem("pageUp")//删除出入库跳返回时数据刷新的问题
+      // let i = localStorage.getItem('warehouseReceiptRegulation_selectShowType')
+      // console.log(i)
+      // console.log(1212121121)
+      this.getList()
+    },
+    beforeCreate() {
+      document.querySelector('body').setAttribute('style', 'overflow:hidden;')
+    },
+    mounted() {
+
     },
     methods: {
       getMapInfo() {