瀏覽代碼

添加作业指导书页面;删除多余代码

hongxudong 2 年之前
父節點
當前提交
38c34d092e

+ 2 - 13
.env.dev

@@ -3,20 +3,9 @@ VUE_APP_BUILD_TYPE='dev'
 VUE_APP_SERVER_URL='http://localhost:6001'
 VUE_APP_UPLOAD_URL='http://localhost:6001/mdm-server/file/upload'
 VUE_APP_EXPORT_URL='http://localhost:5000/'
-VUE_APP_EXPORT_SQL_URL='http://s.dev01.dkiboss.com:6010/custom-report-sql.sql'
-VUE_APP_LOGS_URL='https://ibossmp.dongkesoft.com:7050/logs'
-VUE_APP_IMG_URL='http://localhost:5000'
+VUE_APP_IMG_URL='https://s.dev01.dkiboss.com:6010/file'
 VUE_APP_HG_IMG_URL='https://haip-dev.oss-cn-shenzhen.aliyuncs.com/'
-VUE_APP_WEBSOCKET_URL='ws://localhost:1015/websocket/'
 VUE_APP_LOGIN_PAGE_NAME=["login"]
 VUE_APP_LOGIN_TYPE=0
-VUE_APP_KUJIALE_URL='https://www.kujiale.com'
-VUE_APP_KUJIALE_API_URL='https://sandbox-openapi.kujiale.com'
-VUE_APP_QV_SCAN_CLIENT_ID='f3ed0d90-3fc8-4eba-b83c-a0cfe54c174d'
-VUE_APP_QV_SCAN_APPID='ww796c5d1684937b2f'
-VUE_APP_QV_SCAN_AGENTID='1000048'
 
-VUE_APP_DK_AUTH_SYS_URL='http://s.dev01.dkiboss.com:8010/login'
-VUE_APP_DK_AUTH_IFRAME_PAGE='http://s.dev01.dkiboss.com:8010/iframe'
-VUE_APP_REDIRECT_URL='http://localhost:8080/auth'
-VUE_APP_DK_AUTH_SYS_SERVER_URL='http://s.dev01.dkiboss.com:8010/api'
+#VUE_APP_HOME_NAME='work-sop'

+ 0 - 5
.env.pro

@@ -3,13 +3,8 @@ VUE_APP_BUILD_TYPE='pro'
 VUE_APP_SERVER_URL='https://scrm.hegii.com/api'
 VUE_APP_EXPORT_URL='http://s.dev01.dkiboss.com:5000/'
 VUE_APP_UPLOAD_URL='https://scrm.hegii.com/api/basic-server/file/upload'
-VUE_APP_LOGS_URL='https://scrm.hegii.com/logs'
 VUE_APP_IMG_URL='https://scrmoss.hegii.com/'
 VUE_APP_HG_IMG_URL='https://hegii-hap.oss-cn-shenzhen.aliyuncs.com/'
-VUE_APP_WEBSOCKET_URL='wss://scrm.hegii.com/websocket/'
 VUE_APP_LOGIN_PAGE_NAME=["login"]
 VUE_APP_LOGIN_TYPE=0
-VUE_APP_QV_SCAN_CLIENT_ID='f3ed0d90-3fc8-4eba-b83c-a0cfe54c174d'
-VUE_APP_QV_SCAN_APPID='ww2bc8a1bda0628c66'
-VUE_APP_QV_SCAN_AGENTID='1000005'
 

+ 0 - 6
.env.test

@@ -2,16 +2,10 @@ NODE_ENV='production'
 VUE_APP_BUILD_TYPE='test'
 VUE_APP_SERVER_URL='https://s.dev01.dkiboss.com:6010/api'
 VUE_APP_EXPORT_URL='https://s.dev01.dkiboss.com:6010/file/'
-VUE_APP_EXPORT_SQL_URL='https://s.dev01.dkiboss.com:6010/custom-report-sql.sql'
 VUE_APP_UPLOAD_URL='https://s.dev01.dkiboss.com:6010/api/mdm-server/file/upload'
-VUE_APP_LOGS_URL='httpss://ibossmp.dongkesoft.com:7050/logs'
 VUE_APP_IMG_URL='https://s.dev01.dkiboss.com:6010/file'
 VUE_APP_HG_IMG_URL='httpss://haip-dev.oss-cn-shenzhen.aliyuncs.com/'
-VUE_APP_WEBSOCKET_URL='ws://s.dev01.dkiboss.com:1015/websocket/'
 VUE_APP_LOGIN_PAGE_NAME=["login"]
 VUE_APP_LOGIN_TYPE=0
-VUE_APP_QV_SCAN_CLIENT_ID='f3ed0d90-3fc8-4eba-b83c-a0cfe54c174d'
-VUE_APP_QV_SCAN_APPID='ww796c5d1684937b2f'
-VUE_APP_QV_SCAN_AGENTID='1000048'
 
 

+ 11 - 0
.env.test.worksop

@@ -0,0 +1,11 @@
+NODE_ENV='production'
+VUE_APP_BUILD_TYPE='test_worksop'
+VUE_APP_SERVER_URL='https://s.dev01.dkiboss.com:6010/api'
+VUE_APP_EXPORT_URL='https://s.dev01.dkiboss.com:6010/file/'
+VUE_APP_UPLOAD_URL='https://s.dev01.dkiboss.com:6010/api/mdm-server/file/upload'
+VUE_APP_IMG_URL='https://s.dev01.dkiboss.com:6010/file'
+VUE_APP_HG_IMG_URL='httpss://haip-dev.oss-cn-shenzhen.aliyuncs.com/'
+VUE_APP_LOGIN_PAGE_NAME=["login"]
+VUE_APP_LOGIN_TYPE=0
+VUE_APP_HOME_NAME='work-sop'
+

+ 0 - 5
.env.uat

@@ -2,14 +2,9 @@ NODE_ENV='production'
 VUE_APP_BUILD_TYPE='uat'
 VUE_APP_SERVER_URL='https://dkmp.hegii.com:9000/api'
 VUE_APP_UPLOAD_URL='https://dkmp.hegii.com:9000/api/basic-server/file/upload'
-VUE_APP_LOGS_URL='https://dkmp.hegii.com:9000/logs'
 VUE_APP_IMG_URL='https://hgscrm-dev.oss-cn-shenzhen.aliyuncs.com/'
 VUE_APP_HG_IMG_URL='https://hegii-hap.oss-cn-shenzhen.aliyuncs.com/'
-VUE_APP_WEBSOCKET_URL='ws://dkmp.hegii.com:9000/websocket/'
 VUE_APP_LOGIN_PAGE_NAME=["login"]
 VUE_APP_LOGIN_TYPE=0
-VUE_APP_QV_SCAN_CLIENT_ID='f3ed0d90-3fc8-4eba-b83c-a0cfe54c174d'
-VUE_APP_QV_SCAN_APPID='ww78d8d31dd6de7443'
-VUE_APP_QV_SCAN_AGENTID='1000003'
 
 

+ 1 - 0
package.json

@@ -6,6 +6,7 @@
   "scripts": {
     "dev": "vue-cli-service serve --mode dev",
     "build_test": "vue-cli-service build --mode test",
+    "build_test_worksop": "vue-cli-service build --mode test_worksop",
     "build_uat": "vue-cli-service build --mode uat",
     "build_pro": "vue-cli-service build --mode pro",
     "build_lib": "vue-cli-service build --target dk --name dk dk/index.js",

+ 2 - 0
src/api/pages/mst/work-sop.js

@@ -8,6 +8,8 @@ export default {
     prefix:'/mdm-server/mst/work_sop/',
     //根据产品型号查询
     getByModel:'get_by_model',
+    //触屏查询指导书列表
+    getForTouch:'get_for_touch',
   }
 }
 

+ 0 - 4
src/components/base/dk-table/dk-table.vue

@@ -1954,10 +1954,6 @@ export default {
       this.setMagnifierProperty();
     }
     this.loadingData = this.loading;
-    // 如果有导出路径才会有导出功能
-    // if (this.exportUrl) {
-    //   this.header.options[0].push({code: 'export', name: '导出', disabled: false})
-    // }
   }
 }
 </script>

文件差異過大導致無法顯示
+ 0 - 818
src/config/index.js


+ 4 - 14
src/libs/base/api.request.js

@@ -7,24 +7,14 @@ let baseUrl = '';
 // console.log('==============当前环境:'+process.env.VUE_APP_BUILD_TYPE+'===============')
   baseUrl = process.env.VUE_APP_SERVER_URL;
   config.serviceUrl = process.env.VUE_APP_SERVER_URL
-  // config.imgUrl =process.env.VUE_APP_IMG_URL;
-  // config.hgImgUrl = process.env.VUE_APP_HG_IMG_URL;
   config.uploadUrl = process.env.VUE_APP_UPLOAD_URL;
   config.exportUrl = process.env.VUE_APP_EXPORT_URL;
-  config.exportSqlUrl = process.env.VUE_APP_EXPORT_SQL_URL;
-  config.logsUrl = process.env.VUE_APP_LOGS_URL;
-  config.websockUrl = process.env.VUE_APP_WEBSOCKET_URL;
   config.LOGIN_PAGE_NAME=JSON.parse(process.env.VUE_APP_LOGIN_PAGE_NAME);
   config.loginType=parseInt(process.env.VUE_APP_LOGIN_TYPE);
-  config.kuJiaLeUrl = process.env.VUE_APP_KUJIALE_URL;
-  config.kuJiaLeApiUrl = process.env.VUE_APP_KUJIALE_API_URL;
-  config.dkAuthSysUrl = process.env.VUE_APP_DK_AUTH_SYS_URL;
-  config.dkAuthIframePage = process.env.VUE_APP_DK_AUTH_IFRAME_PAGE;
-  config.redirectUrl = process.env.VUE_APP_REDIRECT_URL;
-  config.dkAuthSysServerUrl = process.env.VUE_APP_DK_AUTH_SYS_SERVER_URL
-  config.qvScanClientId = process.env.VUE_APP_QV_SCAN_CLIENT_ID
-  config.qvScanAppId = process.env.VUE_APP_QV_SCAN_APPID
-  config.qvScanAgentId = process.env.VUE_APP_QV_SCAN_AGENTID
+//登录后首页
+  if (process.env.VUE_APP_HOME_NAME) {
+    config.homeName = process.env.VUE_APP_HOME_NAME
+  }
 
 const axios = new HttpRequest(baseUrl)
 export default axios

+ 10 - 0
src/router/routers.js

@@ -49,6 +49,16 @@ let menu = [
       },
     ]
   },
+
+  {
+    path: '/work-sop',
+    name: 'work-sop',
+    meta: {
+      title: '恒洁卫浴生产工艺作业指导书',
+      hideInMenu: true
+    },
+    component: () => import('@/view/mst/work-sop/index.vue')
+  },
 ]
 
 export const page404 = {

+ 0 - 1
src/view/login/login-form.vue

@@ -141,7 +141,6 @@ export default {
             sessionStorage.removeItem('rememberMeFty')
           }
           this.$emit('on-success-valid', {
-            // sysId: this.$route.name == 'login' ? this.$config.sysType.SYS_MERCHANT : this.$config.sysType.SYS_HEGII,
             // appUuid: this.$route.name == 'login' ? this.$config.appType.APP_WEB_MERCHANT : this.$config.appType.APP_WEB_HEGII,
             // soCode: this.form.soCode,
             ftyCode: this.form.ftyCode,

+ 1 - 1
src/view/login/login.vue

@@ -35,7 +35,7 @@
           </div>
         </div>
         <div style="width: 90%;display: flex;justify-content: end">
-          {{$t('loginSubTitle') }}
+          {{$config.loginSubTitle}}
         </div>
 <!--        <div class="tab-class">-->
 <!--          <div :class="active == 0? 'btn-active-class':'btn-class' " id="user" @click="changeMode">密码登录</div>-->

+ 200 - 0
src/view/mst/work-sop/index.vue

@@ -0,0 +1,200 @@
+<!-- @desc:作业指导书  @auth:洪旭东  @time:2023-09-06 -->
+<template>
+  <div class="main">
+    <div class="header">
+      <img src="../../../assets/images/hj_logo.png" class="header-img"/>
+      <h1>恒洁卫浴生产工艺作业指导书</h1>
+      <Button shape="circle" icon="md-qr-scanner" type="text" class="header-full-screen"
+              @click="enterFullScreen"></Button>
+    </div>
+    <div class="condition">
+      <div class="input">
+        <Input v-model="barCode" placeholder="请输入产品编码" @on-blur="getData" @on-enter="getData"/>
+        <Input v-model="sopTitle" placeholder="请输入指导书标题" class="right-input" @on-blur="getData" @on-enter="getData"/>
+      </div>
+      <RadioGroup v-model="nodeKindFlag" type="button" @on-change="getData">
+        <Radio label="null">全部</Radio>
+        <Radio label="true">检验工序</Radio>
+        <Radio label="false">功能工序</Radio>
+      </RadioGroup>
+    </div>
+    <Row class="content">
+      <Col span="6" v-for="(item, index) of list" :key="index" class="card">
+        <div class="card-border" @click="openPdf(item.sopPath)">
+          <div class="sop-img"
+               :style="' background-image: url(' + $config.imgUrl + item.sopImg + ')'"/>
+          <div
+            class="title-bar">
+            <div class="title">
+              {{ item.sopTitle }}
+            </div>
+          </div>
+        </div>
+      </Col>
+    </Row>
+  </div>
+</template>
+
+<script>
+import { request } from '@/api/base'
+
+export default {
+  name: 'work-sop',
+  data() {
+    return {
+      nodeKindFlag: 'null',
+      list: [],
+      barCode: null,
+      sopTitle: null,
+    }
+  },
+  methods: {
+    getData() {
+      request(this.$service.workSopService.prefix + this.$service.workSopService.getForTouch, {
+        ftyId: this.$store.state.user.ftyId,
+        barCode: this.barCode,
+        sopTitle: this.sopTitle,
+        nodeKindFlag: this.nodeKindFlag
+      }).then(res => {
+        if (res.code === this.$config.SUCCESS_CODE) {
+          this.list = res.data
+        } else {
+          this.$Message.error(res.message)
+        }
+      })
+    },
+    /**
+     * @desc   : 打开pdf
+     * @author : 洪旭东
+     * @date   : 2023-09-07 09:19
+     */
+    openPdf(path) {
+      window.open(this.$config.imgUrl + path)
+    },
+    /**
+     * @desc   : 全屏
+     * @author : 洪旭东
+     * @date   : 2023-09-07 15:05
+     */
+    enterFullScreen() {
+      if (this.maxFlag) {
+        this.maxFlag = false
+        if (document.exitFullscreen) {
+          document.exitFullscreen()
+        } else if (document.msExitFullscreen) {
+          document.msExitFullscreen()
+        } else if (document.mozCancelFullScreen) {
+          document.mozCancelFullScreen()
+        } else if (document.webkitExitFullscreen) {
+          document.webkitExitFullscreen()
+        }
+      } else {
+        this.maxFlag = true
+        document.documentElement.webkitRequestFullScreen()
+      }
+    },
+  },
+  created() {
+    this.getData()
+  }
+}
+</script>
+
+<style scoped lang="less">
+.main {
+  padding: 30px 15px;
+
+  .header {
+    text-align: center;
+    width: 100%;
+
+    .header-img {
+      height: 18px;
+      width: 140px;
+      position: absolute;
+      left: 30px;
+      z-index: 2;
+    }
+
+    .header-full-screen {
+      position: absolute;
+      right: 30px;
+      z-index: 2;
+      font-size: 20px !important;
+    }
+  }
+
+  .condition {
+    text-align: center;
+    width: 100%;
+
+    .input {
+      height: 2.5%;
+      width: 35%;
+      position: absolute;
+      left: 30px;
+      z-index: 2;
+      display: flex;
+
+      .right-input {
+        margin-left: 20px
+      }
+    }
+  }
+
+  .content {
+    margin-top: 15px;
+    overflow-y: auto;
+    height: calc(~'100% - 50px');
+
+    .card {
+      text-align: center;
+      padding: 15px;
+
+      .sop-img {
+        border-top-left-radius: 5px;
+        border-top-right-radius: 5px;
+        border: 1px solid lightgrey;
+        height: 350px;
+        width: 100%;
+        background-size: contain;
+        background-repeat: no-repeat;
+        background-position: center;
+      }
+
+      .title-bar {
+        border: 1px solid lightgrey;
+        height: 75px;
+        width: 100%;
+        border-bottom-left-radius: 5px;
+        border-bottom-right-radius: 5px;
+
+        .title {
+          margin: 15px;
+          border: 2px solid grey;
+          border-radius: 6px;
+          color: grey;
+          height: 43px;
+          line-height: 43px;
+          font-size: 20px;
+          padding: 0 5px;
+          overflow: hidden;
+          text-overflow: ellipsis;
+          white-space: nowrap;
+        }
+      }
+
+      .card-border {
+        cursor: pointer;
+      }
+    }
+
+    .card-border:hover {
+      box-shadow: 0 1px 6px rgba(0, 0, 0, .2);
+      border-color: #eee;
+    }
+  }
+}
+
+
+</style>

+ 4 - 2
src/view/pdm/data-collection/mixin/check.js

@@ -285,10 +285,12 @@ export const checkMixin = {
       this.workSop = null
       this.excute(this.$service.workSopService, this.$service.workSopService.getByModel, {
         modelId: modelId,
-        ftyId: this.$store.state.user.ftyId
+        ftyId: this.$store.state.user.ftyId,
+        flowNodeId: this.flowNodeId,
+        stationId: this.formData.stationId
       }).then(res=>{
         if (res.code === this.$config.SUCCESS_CODE) {
-          if (res.data.workSopDetailList.some(s => s.flowNodeId == this.flowNodeId && s.stationId == this.formData.stationId)) {
+          if (res.data) {
             this.workSop = res.data
           }
         } else {

部分文件因文件數量過多而無法顯示