Browse Source

试验,材料取样,接口调试

iZaiZaiA 2 years ago
parent
commit
c3c000bc86

+ 2 - 2
package.json

@@ -21,7 +21,7 @@
         "remixicon": "^2.5.0",
         "vue": "^3.2.41",
         "vue-router": "^4.1.6",
-        "vue-utils-plus": "^1.0.4",
+        "vue-utils-plus": "^1.0.5",
         "vuedraggable": "^4.1.0"
     },
     "devDependencies": {
@@ -35,6 +35,6 @@
         "unplugin-auto-import": "^0.11.4",
         "unplugin-vue-components": "^0.22.9",
         "vfonts": "^0.0.3",
-        "vite": "^3.2.1"
+        "vite": "^3.2.2"
     }
 }

+ 2 - 2
src/api/modules/other.js

@@ -106,8 +106,8 @@ export const checkCustomFlowUserIsEVisaPermissions = (form, msg = true) => httpA
 
 
 //获取用户列表
-export const getUserList = (form, msg = true) => httpApi({
-    url: '/api/blade-manager/contractInfo/get-user-list',
+export const getContractUserList = (form, msg = true) => httpApi({
+    url: '/api/blade-manager/contractInfo/get-contract-userList',
     method: 'get',
     params: form
 }, msg);

+ 22 - 4
src/views/tentative/material/approach.vue

@@ -153,7 +153,7 @@
 
         <!--导入-->
         <HcDialog :show="importModal" title="导入" widths="38rem" isRowFooter @close="importModalClose">
-            <HcDragUpload/>
+            <HcDragUpload ref="uploadRef" action="mobilization/import" :datas="uploadData" @progress="uploadprogress" @finished="uploadFinished"/>
             <template #leftRowFooter>
                 <el-button size="large">
                     <HcIcon name="download-2"/>
@@ -547,25 +547,43 @@ const printerClick = async () => {
         //处理数据
         printerLoading.value = false
         if (!error && code === 200) {
-            console.log(data)
-            //window?.$message?.success('操作成功')
-            //searchClick()
+            window.open(data,'_blank')
         }
     }
 }
 
 //导入
+const uploadRef = ref(null)
+const uploadData = ref({})
+
+//导入弹窗
 const importModal = ref(false)
 const importModalClick = () => {
     importModal.value = true
+    uploadData.value = {
+        contractId: contractId.value,
+        isCovered: 1
+    }
+}
+
+//上传进度
+const uploadprogress = (res) => {
+    importModalLoading.value = res
 }
 
 //确认导入
 const importModalLoading = ref(false)
 const importModalYesClick = () => {
+    uploadRef.value?.submit()
+}
+
+//上传完成
+const uploadFinished = () => {
     importModal.value = false
+    getTableData()
 }
 
+
 //关闭导入
 const importModalClose = () => {
     importModal.value = false

+ 6 - 6
src/views/tentative/material/components/HcDragUpload.vue

@@ -19,9 +19,9 @@
 </template>
 
 <script setup>
-import {ref,watch,onMounted} from "vue";
+import {ref,watch} from "vue";
 import {getTokenHeader} from '~src/api/request/header';
-import {getObjValue, isSize} from "vue-utils-plus"
+import {isSize} from "vue-utils-plus"
 import {genFileId} from "element-plus";
 const props = defineProps({
     datas: {
@@ -30,11 +30,11 @@ const props = defineProps({
     },
     action: {
         type: String,
-        default: "upload-file"
+        default: "mobilization/import"
     },
     accept: {
         type: String,
-        default: "image/png,image/jpg,image/jpeg,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet,application/vnd.ms-excel,application/pdf,.doc,.docx,application/msword"
+        default: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"
     },
     size: {
         type: Number,
@@ -42,7 +42,7 @@ const props = defineProps({
     },
     formatTip: {
         type: String,
-        default: "png/jpg/jpeg/excel/pdf/doc/docx"
+        default: "excel"
     },
     autoUpload: {
         type: Boolean,
@@ -56,7 +56,7 @@ const uploadData = ref(props.datas)
 const uploadFileInfo = ref({})
 const uploadDisabled = ref(false)
 
-const api = '/api/blade-resource/oss/endpoint/';
+const api = '/api/blade-business/material/';
 
 //监听
 watch(() => [

+ 25 - 7
src/views/tentative/material/sampling.vue

@@ -136,7 +136,7 @@
                 <div class="hc-form-item">
                     <el-form-item label="取样人">
                         <el-select v-model="addEditFormModel.userId" block>
-                            <el-option v-for="item in userListData" :label="item['name']" :value="item['id']"/>
+                            <el-option v-for="item in userListData" :label="item['userName']" :value="item['userId']"/>
                         </el-select>
                     </el-form-item>
                     <el-form-item label="拟用部位">
@@ -207,7 +207,7 @@
 
         <!--导入-->
         <HcDialog :show="importModal" title="导入" widths="38rem" isRowFooter @close="importModalClose">
-            <HcDragUpload/>
+            <HcDragUpload ref="uploadRef" action="sample/import" :datas="uploadData" @progress="uploadprogress" @finished="uploadFinished"/>
             <template #leftRowFooter>
                 <el-button size="large">
                     <HcIcon name="download-2"/>
@@ -238,7 +238,7 @@ import HcDragUpload from "./components/HcDragUpload.vue"
 import samplingApi from "~api/tentative/material/sampling"
 import approachApi from "~api/tentative/material/approach";
 import {deepClone, formValidate, getArrValue, getIndex} from "vue-utils-plus";
-import {getDictionary, getUserList} from "~api/other";
+import {getContractUserList, getDictionary} from "~api/other";
 
 
 //变量
@@ -289,7 +289,9 @@ const getRowTableMaterialType = (type) => {
 //获取用户列表
 const userListData = ref([])
 const getUserListData = async () => {
-    const { data } = await getUserList()
+    const { data } = await getContractUserList({
+        contractId: contractId.value
+    })
     userListData.value = getArrValue(data)
 }
 
@@ -613,24 +615,40 @@ const printerClick = async () => {
         //处理数据
         printerLoading.value = false
         if (!error && code === 200) {
-            console.log(data)
-            //window?.$message?.success('操作成功')
-            //searchClick()
+            window.open(data,'_blank')
         }
     }
 }
 
+//导入
+const uploadRef = ref(null)
+const uploadData = ref({})
 
 //导入
 const importModal = ref(false)
 const importModalClick = () => {
     importModal.value = true
+    uploadData.value = {
+        contractId: contractId.value,
+        isCovered: 1
+    }
+}
+
+//上传进度
+const uploadprogress = (res) => {
+    importModalLoading.value = res
 }
 
 //确认导入
 const importModalLoading = ref(false)
 const importModalYesClick = () => {
+    uploadRef.value?.submit()
+}
+
+//上传完成
+const uploadFinished = () => {
     importModal.value = false
+    getTableData()
 }
 
 //关闭导入

+ 8 - 8
yarn.lock

@@ -1364,10 +1364,10 @@ vfonts@^0.0.3:
   resolved "https://registry.yarnpkg.com/vfonts/-/vfonts-0.0.3.tgz#999d66fecea18efee3f2b966c81101ae8ce01a29"
   integrity sha512-nguyw8L6Un8eelg1vQ31vIU2ESxqid7EYmy8V+MDeMaHBqaRSkg3dTBToC1PR00D89UzS/SLkfYPnx0Wf23IQQ==
 
-vite@^3.2.1:
-  version "3.2.1"
-  resolved "https://registry.yarnpkg.com/vite/-/vite-3.2.1.tgz#dc1f54568300a7acdd89c8611e2719c21f1334f4"
-  integrity sha512-ADtMkfHuWq4tskJsri2n2FZkORO8ZyhI+zIz7zTrDAgDEtct1jdxOg3YsZBfHhKjmMoWLOSCr+64qrEDGo/DbQ==
+vite@^3.2.2:
+  version "3.2.2"
+  resolved "https://registry.yarnpkg.com/vite/-/vite-3.2.2.tgz#280762bfaf47bcea1d12698427331c0009ac7c1f"
+  integrity sha512-pLrhatFFOWO9kS19bQ658CnRYzv0WLbsPih6R+iFeEEhDOuYgYCX2rztUViMz/uy/V8cLCJvLFeiOK7RJEzHcw==
   dependencies:
     esbuild "^0.15.9"
     postcss "^8.4.18"
@@ -1388,10 +1388,10 @@ vue-router@^4.1.6:
   dependencies:
     "@vue/devtools-api" "^6.4.5"
 
-vue-utils-plus@^1.0.4:
-  version "1.0.4"
-  resolved "https://registry.yarnpkg.com/vue-utils-plus/-/vue-utils-plus-1.0.4.tgz#a935ee8ba4ead27bbc24bb7b6c0a057899aa2182"
-  integrity sha512-ZhIbiWjMxSDH4EuYqe8CaE/+t0O5DXqujQrLP3oWWrkRGBSBXtwCrLV4prYdmtF27/FeqX2bDa9XVrKN0gMjQg==
+vue-utils-plus@^1.0.5:
+  version "1.0.5"
+  resolved "https://registry.yarnpkg.com/vue-utils-plus/-/vue-utils-plus-1.0.5.tgz#0b3415a7abd0af3f701d3427863f96383ac0daac"
+  integrity sha512-gvOsRl+YvgeYz/6BezN5SrFMiKCbC7VUEnWiEi2gdYc1OJmO1fDYV1QCjX75wlXhIlLziKux/+WHIFc22JOGwQ==
 
 vue@^3.2.41:
   version "3.2.41"