Forráskód Böngészése

Merge remote-tracking branch 'origin/master'

lmm 2 hónapja
szülő
commit
30eebb3b32

+ 25 - 11
src/views/museums/specimenoutbound/ApproalProcess.vue

@@ -8,28 +8,28 @@
       ref="queryFormRef"
       :inline="true"
       label-width="68px">
-      <el-form-item label="标本ID" prop="infoId">
+      <el-form-item label="申请人姓名" prop="applicantName" label-width="85px">
         <el-input
-          v-model="queryParams.infoId"
-          placeholder="标本ID"
+          v-model="queryParams.applicantName"
+          placeholder="请输入申请人姓名"
           clearable
           @keyup.enter="handleQuery"
           class="!w-240px"
         />
       </el-form-item>
-      <el-form-item label="中文名称" prop="chineseName">
+      <el-form-item label="申请单位" prop="applicationUsage" label-width="85px">
         <el-input
-          v-model="queryParams.chineseName"
-          placeholder="请输入中文名称"
+          v-model="queryParams.applicationUsage"
+          placeholder="请输入申请单位"
           clearable
           @keyup.enter="handleQuery"
           class="!w-240px"
         />
       </el-form-item>
-      <el-form-item label="标本编号" prop="specimenNumber">
+      <el-form-item label="研究项目名称" prop="projectName" label-width="100px">
         <el-input
-          v-model="queryParams.specimenNumber"
-          placeholder="请输入标本编号"
+          v-model="queryParams.projectName"
+          placeholder="请输入研究项目名称"
           clearable
           @keyup.enter="handleQuery"
           class="!w-240px"
@@ -46,6 +46,20 @@
           class="!w-220px"
         />
       </el-form-item>
+      <el-form-item label="审批状态" prop="status"  label-width="85px">
+        <el-select
+          v-model="queryParams.status"
+          placeholder="请选择审批状态"
+          clearable
+          class="!w-240px"
+        >
+          <el-option
+            v-for="dict in getIntDictOptions(DICT_TYPE. MUSEUMS_APPROAL_STATUS)"
+            :key="dict.value"
+            :label="dict.label"
+            :value="dict.value"/>
+        </el-select>
+      </el-form-item>
 <!--      <el-form-item label="审批状态" prop="status">-->
 <!--        <el-select-->
 <!--          v-model="queryParams.status"-->
@@ -150,7 +164,7 @@ import download from '@/utils/download'
 import { SpecimenOutboundApi, SpecimenOutboundVO } from '@/api/museums/specimenoutbound'
 import {dateFormatter} from "@/utils/formatTime";
 import {ref} from "vue";
-import {DICT_TYPE} from "@/utils/dict";
+import {DICT_TYPE, getIntDictOptions} from "@/utils/dict";
 
 defineOptions({ name: 'ApproalProcess' })
 const message = useMessage() // 消息弹窗
@@ -163,7 +177,7 @@ const queryParams = reactive({
   pageNo: 1,
   pageSize: 10,
   infoId: undefined,
-  chineseName: undefined,
+  projectName: undefined,
   specimenNumber: undefined,
   applicantName: undefined,
   applicationDate: [],

+ 11 - 3
src/views/museums/specimenoutbound/OutboundApplication.vue

@@ -18,7 +18,15 @@
             class="!w-240px"
           />
         </el-form-item>
-
+        <el-form-item label="申请单位" prop="applicationUsage" label-width="85px">
+          <el-input
+            v-model="queryParams.applicationUsage"
+            placeholder="请输入申请单位"
+            clearable
+            @keyup.enter="handleQuery"
+            class="!w-240px"
+          />
+        </el-form-item>
         <el-form-item label="研究项目名称" prop="projectName" label-width="100px">
           <el-input
             v-model="queryParams.projectName"
@@ -39,7 +47,7 @@
             class="!w-220px"
           />
         </el-form-item>
-        <el-form-item label="审批状态" prop="status">
+        <el-form-item label="审批状态" prop="status"  label-width="85px">
           <el-select
             v-model="queryParams.status"
             placeholder="请选择审批状态"
@@ -238,7 +246,7 @@ const queryParams = reactive({
   pageNo: 1,
   pageSize: 10,
   infoId: undefined,
-  chineseName: undefined,
+  projectName: undefined,
   specimenNumber: undefined,
   applicantName: undefined,
   applicationDate: [],

+ 175 - 151
src/views/museums/specimenoutbound/OutboundForm/ApproalDetails.vue

@@ -1,159 +1,183 @@
 <template>
   <el-skeleton :loading="loading" animated>
-   <el-row :gutter="8" justify="space-between">
-     <el-col :xl="24" :lg="24" :md="24" :sm="24" :xs="24">
-       <el-card style="margin-bottom: 10px">
+    <el-row :gutter="8" justify="space-between">
+      <el-col :xl="24" :lg="24" :md="24" :sm="24" :xs="24">
+        <el-card style="margin-bottom: 10px">
 
-         <template #header>
-           <div class="card-header" style="text-align: center">
-             <h1 class="text1">标本出库申请详情</h1>
-           </div>
-         </template>
-       <el-row >
-         <el-col :xl="11" :lg="11" :md="24" :sm="24" :xs="24" >
-         <el-descriptions
-           :column="1"
-           border
-           :size="size"
-           v-if="outboundData"
-         >
-           <el-descriptions-item label="审批状态:"  label-align="right" label-class-name="my-label">{{ StatusText }}</el-descriptions-item>
-           <el-descriptions-item label="申请人姓名:"   label-align="right" label-class-name="my-label">{{ outboundData.applicantName }}</el-descriptions-item>
-           <el-descriptions-item label="申请单位:" label-align="right" label-class-name="my-label">{{outboundData.applicationUsage }}</el-descriptions-item>
-           <el-descriptions-item label="电话号码:" label-align="right" label-class-name="my-label">{{ outboundData.phoneNumber}}</el-descriptions-item>
-         </el-descriptions>
-       </el-col>
-         <el-col :xl="10" :lg="10" :md="24" :sm="24" :xs="24" >
-           <el-descriptions
-             :column="1"
-             border
-             :size="size"
-             v-if="outboundData"
-           >
-           <el-descriptions-item label="研究项目名称:" label-align="right" label-class-name="my-label">{{ outboundData.projectName}}</el-descriptions-item>
-           <el-descriptions-item label="项目开始时间:" label-align="right" label-class-name="my-label">{{ outboundData.startTime }}</el-descriptions-item>
-           <el-descriptions-item label="项目结束时间:" label-align="right" label-class-name="my-label">{{outboundData.endTime }}</el-descriptions-item>
-           <el-descriptions-item label="出库备注信息:" label-align="right" label-class-name="my-label">{{ outboundData.outboundRemarks}}</el-descriptions-item>
-           </el-descriptions>
-         </el-col>
-         <el-col :xl="2" :lg="2" :md="24" :sm="24" :xs="24" >
-           <el-descriptions
-             v-if="outboundData"
-             direction="vertical"
-             :size="size"
-             border
+          <template #header>
+            <div class="card-header" style="text-align: center">
+              <h1 class="text1">标本出库申请详情</h1>
+            </div>
+          </template>
+          <el-row>
+            <el-col :xl="11" :lg="11" :md="24" :sm="24" :xs="24">
+              <el-descriptions
+                :column="1"
+                border
+                :size="size"
+                v-if="outboundData"
+              >
+                <el-descriptions-item label="审批状态:" label-align="right"
+                                      label-class-name="my-label">{{ StatusText }}
+                </el-descriptions-item>
+                <el-descriptions-item label="申请人姓名:" label-align="right"
+                                      label-class-name="my-label">{{ outboundData.applicantName }}
+                </el-descriptions-item>
+                <el-descriptions-item label="申请单位:" label-align="right"
+                                      label-class-name="my-label">{{
+                    outboundData.applicationUsage
+                  }}
+                </el-descriptions-item>
+                <el-descriptions-item label="电话号码:" label-align="right"
+                                      label-class-name="my-label">{{ outboundData.phoneNumber }}
+                </el-descriptions-item>
+              </el-descriptions>
+            </el-col>
+            <el-col :xl="10" :lg="10" :md="24" :sm="24" :xs="24">
+              <el-descriptions
+                :column="1"
+                border
+                :size="size"
+                v-if="outboundData"
+              >
+                <el-descriptions-item label="研究项目名称:" label-align="right"
+                                      label-class-name="my-label">{{ outboundData.projectName }}
+                </el-descriptions-item>
+                <el-descriptions-item label="项目开始时间:" label-align="right"
+                                      label-class-name="my-label">{{ outboundData.startTime }}
+                </el-descriptions-item>
+                <el-descriptions-item label="项目结束时间:" label-align="right"
+                                      label-class-name="my-label">{{ outboundData.endTime }}
+                </el-descriptions-item>
+                <el-descriptions-item label="出库备注信息:" label-align="right"
+                                      label-class-name="my-label">{{ outboundData.outboundRemarks }}
+                </el-descriptions-item>
+              </el-descriptions>
+            </el-col>
+            <el-col :xl="2" :lg="2" :md="24" :sm="24" :xs="24">
+              <el-descriptions
+                v-if="outboundData"
+                direction="vertical"
+                :size="size"
+                border
 
-           >
-             <el-descriptions-item
-               :width="200"
-               label="申请附件"
-               align="center"
-               label-class-name="my-label"
-               class-name="my-content"
-             >
-                 <div class="demo-image__preview" v-if="outboundData">
-                   <a :href="outboundData.attachments" target="_blank">下载附件</a>
-                 </div>
-             </el-descriptions-item>
-           </el-descriptions>
-<!--           <div class="demo-image__preview" v-if="outboundData ">-->
-<!--             <el-image-->
+              >
+                <el-descriptions-item
+                  :width="200"
+                  label="申请附件"
+                  align="center"
+                  label-class-name="my-label"
+                  class-name="my-content"
+                >
+                  <div class="demo-image__preview" v-if="outboundData">
+                    <a :href="outboundData.attachments" target="_blank">下载附件</a>
+                  </div>
+                </el-descriptions-item>
+              </el-descriptions>
+              <!--           <div class="demo-image__preview" v-if="outboundData ">-->
+              <!--             <el-image-->
 
-<!--               style=" align-items: center"-->
-<!--               :src="outboundData.attachments"-->
-<!--               :zoom-rate="1.2"-->
-<!--               :max-scale="7"-->
-<!--               :min-scale="0.2"-->
-<!--               :preview-src-list="outboundData.attachments"-->
-<!--               :initial-index="index"-->
-<!--               fit="cover"-->
-<!--             />-->
-<!--           </div>-->
-         </el-col>
-         </el-row>
-<!--         <div style="text-align: right; margin-top: 20px;margin-right: 30px">-->
+              <!--               style=" align-items: center"-->
+              <!--               :src="outboundData.attachments"-->
+              <!--               :zoom-rate="1.2"-->
+              <!--               :max-scale="7"-->
+              <!--               :min-scale="0.2"-->
+              <!--               :preview-src-list="outboundData.attachments"-->
+              <!--               :initial-index="index"-->
+              <!--               fit="cover"-->
+              <!--             />-->
+              <!--           </div>-->
+            </el-col>
+          </el-row>
+          <!--         <div style="text-align: right; margin-top: 20px;margin-right: 30px">-->
 
-<!--           <el-button-->
-<!--             v-if="outboundData.status !== 1 && outboundData.status !== 2 && outboundData.status !== 3 && outboundData.status !== 4"-->
-<!--             link-->
-<!--             type="danger"-->
-<!--             plain-->
-<!--             @click="handleApproval(outboundData.id)"-->
-<!--           >-->
-<!--             审批-->
-<!--           </el-button>-->
-<!--         </div>-->
-         </el-card>
-     </el-col>
+          <!--           <el-button-->
+          <!--             v-if="outboundData.status !== 1 && outboundData.status !== 2 && outboundData.status !== 3 && outboundData.status !== 4"-->
+          <!--             link-->
+          <!--             type="danger"-->
+          <!--             plain-->
+          <!--             @click="handleApproval(outboundData.id)"-->
+          <!--           >-->
+          <!--             审批-->
+          <!--           </el-button>-->
+          <!--         </div>-->
+        </el-card>
+      </el-col>
 
 
+      <el-col :xl="24" :lg="24" :md="24" :sm="24" :xs="24">
+        <el-card>
+          <template #header>
+            <div class="card-header" style="text-align: center">
+              <h1 class="text1">申请出库标本信息</h1>
+            </div>
+          </template>
+          <el-row>
+            <el-table v-loading="loading" :data="list" :stripe="true" :show-overflow-tooltip="true">
+              <!--           <el-table-column label="标本ID" align="center" prop="id" />-->
+              <el-table-column label="标本编号" align="center" prop="specimenNumber"/>
+              <el-table-column label="中文名称" align="center" prop="chineseName"/>
+              <el-table-column label="标本类型" align="center" prop="specimenType">
+                <template #default="scope">
+                  <dict-tag :type="DICT_TYPE.MUSEUMS_SPECIMEN_TYPE"
+                            :value="scope.row.specimenType"/>
+                </template>
+              </el-table-column>
+              <el-table-column label="标本数量" align="center" prop="specimenAmount"/>
+              <el-table-column label="标本重量" align="center" prop="weight"/>
+              <el-table-column label="标本位置" align="center" prop="storageLocation"/>
+              <el-table-column label="保存类型" align="center" prop="preservationType">
+                <template #default="scope">
+                  <dict-tag :type="DICT_TYPE.MUSEUMS_SPECIMEN_INFO"
+                            :value="scope.row.preservationType"/>
+                </template>
+              </el-table-column>
+              <el-table-column label="标本图片" align="center" prop="url">
+                <template #default="{ row }">
+                  <div class="demo-image__preview" v-if="pageParams">
+                    <block v-for="(image, index) in row.imagePath" :key="index">
+                      <el-image
+                        style="width: 40px; height:40px;margin-right: 5px"
+                        class="image-class"
+                        lazy
+                        :src="image"
+                        :preview-src-list="row.imagePath"
+                        preview-teleported
+                        fit="cover"/>
+                    </block>
+                  </div>
+                </template>
+              </el-table-column>
+            </el-table>
+          </el-row>
+          <el-row>
+            <el-col>
+              <!-- 分页 -->
+              <Pagination
+                :total="total"
+                v-model:page="pageParams.pageNo"
+                v-model:limit="pageParams.pageSize"
+                @pagination="getList"
+              />
+      </el-col>
+            <el-col>
+          <div v-if="outboundData.status === 0 || outboundData.status === 1 ">
+            <el-button
+              @click="handleApproval"
+              type="primary"
+              style="float:right; margin-left: 20px;margin-top:10px;margin-bottom:10px"
+            > 审批
+            </el-button>
+          </div>
+            </el-col>
+    </el-row>
+        </el-card>
+      </el-col>
 
 
-     <el-col :xl="24" :lg="24" :md="24" :sm="24" :xs="24" >
-       <el-card>
-         <template #header>
-           <div class="card-header" style="text-align: center">
-             <h1 class="text1">申请出库标本信息</h1>
-           </div>
-         </template>
-         <el-table v-loading="loading" :data="list" :stripe="true" :show-overflow-tooltip="true" >
-<!--           <el-table-column label="标本ID" align="center" prop="id" />-->
-           <el-table-column label="标本编号" align="center" prop="specimenNumber" />
-           <el-table-column label="中文名称" align="center" prop="chineseName" />
-           <el-table-column label="标本类型" align="center" prop="specimenType">
-             <template #default="scope">
-               <dict-tag :type="DICT_TYPE.MUSEUMS_SPECIMEN_TYPE" :value="scope.row.specimenType" />
-             </template>
-           </el-table-column>
-           <el-table-column label="标本数量" align="center" prop="specimenAmount" />
-           <el-table-column label="标本重量" align="center" prop="weight" />
-           <el-table-column label="标本位置" align="center" prop="storageLocation" />
-           <el-table-column label="保存类型" align="center" prop="preservationType">
-             <template #default="scope">
-               <dict-tag :type="DICT_TYPE.MUSEUMS_SPECIMEN_INFO" :value="scope.row.preservationType" />
-             </template>
-           </el-table-column>
-           <el-table-column label="标本图片" align="center" prop="url" >
-             <template #default="{ row }">
-               <div class="demo-image__preview" v-if="pageParams" >
-                 <block  v-for="(image, index) in row.imagePath" :key="index">
-                   <el-image
-                     style="width: 40px; height:40px;margin-right: 5px"
-                     class="image-class"
-                     lazy
-                     :src="image"
-                     :preview-src-list="row.imagePath"
-                     preview-teleported
-                     fit="cover" />
-                 </block>
-               </div>
-             </template>
-           </el-table-column>
-         </el-table>
+    </el-row>
 
-         <!-- 分页 -->
-         <Pagination
-           :total="total"
-           v-model:page="pageParams.pageNo"
-           v-model:limit="pageParams.pageSize"
-           @pagination="getList"
-         />
-
-         <div v-if="outboundData.status === 0 || outboundData.status === 1 ">
-         <el-button
-           @click="handleApproval"
-           type="primary"
-           style="float:right; margin-left: 20px;margin-top:70px;margin-bottom: 20px"
-         > 审批
-         </el-button>
-         </div>
-       </el-card>
-     </el-col>
-
-
-   </el-row>
-
-    <Approval ref="ApprovalRef" @success="getList" />
+    <Approval ref="ApprovalRef" @success="getList"/>
   </el-skeleton>
 </template>
 
@@ -173,7 +197,7 @@ const loading = ref(true) // 列表的加载中
 const list = ref<SpecimenOutboundVO[]>([]) // 列表的数据
 const total = ref(0) // 列表的总页数
 const pageParams = reactive({
-  id:query.dataId,
+  id: query.dataId,
   pageNo: 1,
   pageSize: 10,
   infoId: undefined,
@@ -182,15 +206,15 @@ const pageParams = reactive({
   attachments: undefined,
   processInstanceId: undefined,
   specimenCondition: undefined,
-  imagePath:undefined
+  imagePath: undefined
 })
 
 /** 查询列表 */
 const getList = async () => {
   loading.value = true
   try {
-    const id =  query.dataId as unknown as number
-    const data = await SpecimenOutboundApi.getSpecimenOutboundDetailsPage(id,pageParams)
+    const id = query.dataId as unknown as number
+    const data = await SpecimenOutboundApi.getSpecimenOutboundDetailsPage(id, pageParams)
     list.value = data.specimenInfoList.list
     total.value = data.specimenInfoList.total
   } finally {
@@ -207,7 +231,7 @@ const fetchData = async () => {
     res.startTime = formatDate(res.startTime)
     res.endTime = formatDate(res.endTime)
 
-  }  finally {
+  } finally {
   }
 }
 
@@ -237,7 +261,6 @@ const StatusText = computed(() => {
 });
 
 
-
 // // 在组件加载时获取数据
 onMounted(async () => {
   await fetchData()
@@ -258,6 +281,7 @@ const handleApproval = () => {
   background: #FAF8F7 !important;
   width: 180px;
 }
+
 :deep(.my-content) {
   height: 143px;
 }

+ 11 - 2
src/views/museums/specimenoutbound/OutboundManagement.vue

@@ -18,7 +18,7 @@
 <!--          class="!w-240px"-->
 <!--        />-->
 <!--      </el-form-item>-->
-      <el-form-item label="申请人姓名" prop="applicantName" label-width="100px">
+      <el-form-item label="申请人姓名" prop="applicantName" label-width="85px">
         <el-input
           v-model="queryParams.applicantName"
           placeholder="请输入申请人姓名"
@@ -27,6 +27,15 @@
           class="!w-240px"
         />
       </el-form-item>
+      <el-form-item label="申请单位" prop="applicationUsage" label-width="90px">
+        <el-input
+          v-model="queryParams.applicationUsage"
+          placeholder="请输入申请单位"
+          clearable
+          @keyup.enter="handleQuery"
+          class="!w-240px"
+        />
+      </el-form-item>
       <el-form-item label="研究项目名称" prop="projectName" label-width="100px">
         <el-input
           v-model="queryParams.projectName"
@@ -47,7 +56,7 @@
           class="!w-220px"
         />
       </el-form-item>
-      <el-form-item label="审批状态" prop="status">
+      <el-form-item label="审批状态" prop="status" label-width="85px">
         <el-select
           v-model="queryParams.status"
           placeholder="请选择审批状态"