huangxw 1 nedēļu atpakaļ
vecāks
revīzija
30f7f0ef2e

+ 72 - 0
src/plant/models/warehouseCard/medicine-card.vue

@@ -0,0 +1,72 @@
+<template>
+    <view class="d-flex j-sb a-c li-item-head mb-16">
+        <view class="li-left-tag" :class="{ [`bg-instore-${item?.instoreBizInfo?.processType}`]: true }">{{ item?.seedLevel || '' }}{{ selectDictLabel(st_medicine_process_type, item?.instoreBizInfo?.processType) }}</view>
+        <view class="f-s-22 c-#666">{{ item?.instoreBizInfo?.instoreDate }}</view>
+    </view>
+    <view class="d-flex flex1 mb-10">
+        <view class="flex1">
+            <span class="f-s-34 c-#333 f-w-500 mr-10">{{ item?.variety }}</span>
+            <span v-if="item?.partName" class="f-s-24 c-#666">{{ item?.partName }}</span>
+        </view>
+        <view>
+            <view v-if="item?.examinReport?.length" class="tag-span c-primary bg-#EBF6EE">已检验</view>
+            <view v-else class="tag-span c-danger bg-#F9ECEA">未检验</view>
+        </view>
+    </view>
+    <view class="pd2-4-0 f-s-28">
+        <span class="c-#666">生产批号:</span>
+        <span class="c-#333 f-w-500">{{ item?.batchCode || '-' }}</span>
+    </view>
+    <view class="pd2-4-0 f-s-28">
+        <span class="c-#666">执行标准:</span>
+        <span class="c-#333 f-w-500">{{ item?.supplierInfo?.cusName || '-' }}</span>
+    </view>
+    <view class="pd2-4-0 f-s-28">
+        <span class="c-#666">加工工艺:</span>
+        <span class="c-#333 f-w-500">{{ item?.supplierInfo?.cusName || '-' }}</span>
+    </view>
+    <view class="pd2-4-0 f-s-28">
+        <span class="c-#666">入库量:</span>
+        <span class="c-#333 f-w-500">{{ item?.capacity }}{{ item?.unit }}</span>
+    </view>
+    <view class="d-flex">
+        <view v-if="item?.inputAmount" class="pd2-4-0 f-s-28 flex1">
+            <span class="c-#666">出库量:</span>
+            <span class="c-#333 f-w-500">{{ item?.inputAmount || '0' }}{{ item?.unit }}</span>
+        </view>
+        <view v-if="item?.restAmount" class="pd2-4-0 f-s-28 flex1">
+            <span class="c-danger">剩余量:</span>
+            <span class="c-danger f-w-500">{{ item?.restAmount || '0' }}{{ item?.unit }}</span>
+        </view>
+    </view>
+</template>
+<script setup lang="ts" name="MedicineCard">
+import { selectDictListClass } from '@/utils/ruoyi';
+import { getStorageRoomNames } from '@/utils/common';
+// 种源展示卡片
+const props = defineProps({
+    item: {
+        type: Object,
+        default: () => ({}),
+    },
+    dict: {
+        type: Object,
+        default: () => ({}),
+    },
+});
+const { st_medicine_process_type } = toRefs<any>(props.dict);
+</script>
+<style lang="scss" scoped>
+.li-left-tag {
+    padding: 6rpx 16rpx;
+    color: #fff;
+    border-radius: 16rpx 0 16rpx 0;
+    font-size: 20rpx;
+    font-weight: 500;
+}
+.tag-span {
+    padding: 4rpx 12rpx;
+    font-size: 20rpx;
+    border-radius: 18rpx;
+}
+</style>

+ 3 - 44
src/plant/storage/medicine/list/index.vue

@@ -29,47 +29,8 @@
         <view class="pd-24 bg-#f7f7f7">
             <up-swipe-action>
                 <up-swipe-action-item v-for="(item, index) in list" :key="index" :name="item?.id" :options="optionsActionTemp" @click="clickTempSwipe" class="mb-20 b-radius">
-                    <view class="b-radius bg-#fff pd-20 p-rtv" @click.stop="$u.route({ url: '/plant/storage/fresh-goods/detail/index', params: { id: item.id } })">
-                        <view class="d-flex j-sb a-c li-item-head mb-16">
-                            <view class="li-left-tag" :class="{ [`bg-instore-${item?.instoreBizInfo?.processType}`]: true }">{{ item?.seedLevel || '' }}{{ selectDictLabel(st_medicine_process_type, item?.instoreBizInfo?.processType) }}</view>
-                            <view class="f-s-22 c-#666">{{ item?.instoreBizInfo?.instoreDate }}</view>
-                        </view>
-                        <view class="d-flex flex1 mb-10">
-                            <view class="flex1">
-                                <span class="f-s-34 c-#333 f-w-500 mr-10">{{ item?.variety }}</span>
-                                <span v-if="item?.partName" class="f-s-24 c-#666">{{ item?.partName }}</span>
-                            </view>
-                            <view>
-                                <view v-if="item?.examinReport?.length" class="tag-span c-primary bg-#EBF6EE">已检验</view>
-                                <view v-else class="tag-span c-danger bg-#F9ECEA">未检验</view>
-                            </view>
-                        </view>
-                        <view class="pd2-4-0 f-s-28">
-                            <span class="c-#666">生产批号:</span>
-                            <span class="c-#333 f-w-500">{{ item?.batchCode || '-' }}</span>
-                        </view>
-                        <view class="pd2-4-0 f-s-28">
-                            <span class="c-#666">执行标准:</span>
-                            <span class="c-#333 f-w-500">{{ item?.supplierInfo?.cusName || '-' }}</span>
-                        </view>
-                        <view class="pd2-4-0 f-s-28">
-                            <span class="c-#666">加工工艺:</span>
-                            <span class="c-#333 f-w-500">{{ item?.supplierInfo?.cusName || '-' }}</span>
-                        </view>
-                        <view class="pd2-4-0 f-s-28">
-                            <span class="c-#666">入库量:</span>
-                            <span class="c-#333 f-w-500">{{ item?.capacity }}{{ item?.unit }}</span>
-                        </view>
-                        <view class="d-flex">
-                            <view v-if="item?.inputAmount" class="pd2-4-0 f-s-28 flex1">
-                                <span class="c-#666">出库量:</span>
-                                <span class="c-#333 f-w-500">{{ item?.inputAmount || '0' }}{{ item?.unit }}</span>
-                            </view>
-                            <view v-if="item?.restAmount" class="pd2-4-0 f-s-28 flex1">
-                                <span class="c-danger">剩余量:</span>
-                                <span class="c-danger f-w-500">{{ item?.restAmount || '0' }}{{ item?.unit }}</span>
-                            </view>
-                        </view>
+                    <view class="b-radius bg-#fff pd-20 p-rtv">
+                       <MedicineCard :item="item" :dict="{ st_medicine_process_type }"></MedicineCard>
                     </view>
                 </up-swipe-action-item>
             </up-swipe-action>
@@ -84,9 +45,7 @@
 </template>
 <script setup lang="ts">
 import { useClientRequest } from '@/utils/request';
-import { selectDictListClass } from '@/utils/ruoyi';
-import { getStorageRoomNames } from '@/utils/common';
-import FreshGoodsBottom from './model/fresh-goods-bottom.vue';
+import MedicineCard from '@/plant/models/warehouseCard/medicine-card.vue';
 const { proxy } = getCurrentInstance() as ComponentInternalInstance;
 const { st_medicine_process_type } = toRefs<any>(proxy?.useDict('st_medicine_process_type'));
 const list = ref<any[]>();