钱新宇 11 tuntia sitten
vanhempi
sitoutus
df052235a3

+ 2 - 0
traceCodePackages/traceabilityCodeQuery/pages/index.vue

@@ -84,6 +84,8 @@ export default {
     this.totalCount = 0;
     this.pageNum = 1;
     this.isLoading = false;
+    // 从详情页返回时,强制清空输入框 traceCode
+    this.traceCode = "";
     this.getHistoryData();
   },
   onLoad() {

+ 2 - 16
traceCodePackages/traceabilityCodeQuery/pages/scanRange/index.vue

@@ -64,20 +64,11 @@ export default {
       expanded: {},
       products: {},
       productPages: [],
-      canScanCompanyList: ["华润三九医药股份有限公司", '华润三九(枣庄)药业有限公司', '华润三九(南昌)药业有限公司', '合肥华润神鹿药业有限公司', '杭州华润老桐君药业有限公司', '吉林三九金复康药业有限公司', '华润三九(郴州)制药有限公司']
     };
   },
   onLoad() {
     this.fetchInitial();
   },
-  computed: {
-    /** 白名单规范化后的集合,与接口 entName 比对用 */
-    canScanCompanySet() {
-      return new Set(
-        this.canScanCompanyList.map((s) => this.normalizeEntName(s))
-      );
-    },
-  },
   methods: {
     normalizeEntName(s) {
       return String(s || "")
@@ -122,12 +113,7 @@ export default {
           const rawList = Array.isArray(list) ? list : [];
           this.fetchedCount = (this.fetchedCount || 0) + rawList.length;
 
-          const allowed = this.canScanCompanySet;
-          const filtered = rawList.filter((item) =>
-            allowed.has(this.normalizeEntName(item.entName))
-          );
-
-          this.companyList = [...this.companyList, ...filtered];
+          this.companyList = [...this.companyList, ...rawList];
 
           if (
             rawList.length > 0 &&
@@ -174,7 +160,7 @@ export default {
 }
 
 .content {
-  max-height: calc(100vh - 48rpx - 92rpx - 20rpx - env(safe-area-inset-bottom));
+  max-height: calc(100vh - env(safe-area-inset-bottom));
   background: #fff;
   border-radius: 16rpx;
 }

+ 5 - 2
traceCodePackages/traceabilityReport/pages/blacklist/detail/index.vue

@@ -78,15 +78,18 @@
       </view>
     </view>
   </view>
+  <BottomScrollTip :text="'左右滑动表格查看更多内容'" />
 </template>
 
 <script>
 import Water from "@/components/water/water.vue";
+import BottomScrollTip from "../../../../wigets/BottomScrollTip.vue";
 import request from "../../../../request/index";
 
 export default {
   components: {
     Water,
+    BottomScrollTip
   },
   data() {
     return {
@@ -347,7 +350,7 @@ export default {
 }
 
 .blk-table {
-  min-width: 1080rpx;
+  min-width: 1085rpx;
   border-top: 1rpx solid #eee;
   border-left: 1rpx solid #eee;
 }
@@ -410,7 +413,7 @@ export default {
 }
 
 .col-sample {
-  width: 320rpx;
+  width: 325rpx;
 }
 
 .copyable-code {

+ 8 - 8
traceCodePackages/traceabilityReport/pages/customerScanningRate/detail/index.vue

@@ -10,7 +10,7 @@
         <view class="dot"></view>
         <text class="meta-text">等级:{{
           scanType == 1 ? "VIP" : scanType == 2 ? "二级" : "三级"
-        }}客户</text>
+          }}客户</text>
       </view>
       <view class="meta">
         <view class="dot"></view>
@@ -109,13 +109,13 @@ export default {
           unit: "%",
         },
 
-        {
-          key: "selfExaminationRate",
-          title: "自验证率",
-          fixed: false,
-          width: "",
-          unit: "%",
-        },
+        // {
+        //   key: "selfExaminationRate",
+        //   title: "自验证率",
+        //   fixed: false,
+        //   width: "",
+        //   unit: "%",
+        // },
       ],
     };
   },

+ 1 - 1
traceCodePackages/traceabilityReport/pages/customerScanningRate/index.vue

@@ -49,7 +49,7 @@ export default {
   },
   data() {
     return {
-      activeRange: 1,
+      activeRange: 2,
       varietyColumns: [
         {
           key: "physicName",

+ 13 - 13
traceCodePackages/traceabilityReport/pages/customerScanningRate/wigets/ScanRateTable.vue

@@ -200,11 +200,11 @@ export default {
           title: "出库扫码率",
           unit: "%",
         },
-        {
-          key: "totalSelfExaminationRate",
-          title: "自验证率",
-          unit: "%",
-        },
+        // {
+        //   key: "totalSelfExaminationRate",
+        //   title: "自验证率",
+        //   unit: "%",
+        // },
       ],
     },
     summaryBold: { type: Boolean, default: false },
@@ -280,14 +280,14 @@ export default {
             "客户出库扫码量(与下游入库单中相同的追溯码)/下游企业入库扫码量",
           unit: "%",
         },
-        {
-          key: "selfExaminationRate",
-          title: "自验证率",
-          fixed: false,
-          width: "",
-          tooltip: "客户出库扫码量(与入库单中相同的追溯码)/入库扫码量",
-          unit: "%",
-        },
+        // {
+        //   key: "selfExaminationRate",
+        //   title: "自验证率",
+        //   fixed: false,
+        //   width: "",
+        //   tooltip: "客户出库扫码量(与入库单中相同的追溯码)/入库扫码量",
+        //   unit: "%",
+        // },
       ],
     },
   },

+ 4 - 1
traceCodePackages/traceabilityReport/pages/ganmaoling/detail/index.vue

@@ -26,7 +26,7 @@
         <view class="dot"></view>
         <text class="meta-text">累计预警次数:{{
           totalWarningAmount || totalWarningAmount == 0 ? totalWarningAmount : "--"
-        }}</text>
+          }}</text>
       </view>
     </view>
 
@@ -63,16 +63,19 @@
       </scroll-view>
     </view>
   </view>
+  <BottomScrollTip :text="'左右滑动表格查看更多内容'" />
 </template>
 
 <script>
 import Water from "@/components/water/water.vue";
+import BottomScrollTip from "../../../../wigets/BottomScrollTip.vue";
 import request from "../../../../request/index.js";
 import { formatDate } from "../../../../utils/utils.js";
 
 export default {
   components: {
     Water,
+    BottomScrollTip
   },
   data() {
     return {

+ 7 - 128
traceCodePackages/traceabilityReport/pages/reportExport/detail/index.vue

@@ -94,10 +94,6 @@
                     <uni-icons :type="exp.expanded ? 'up' : 'down'" size="16" color="#666"></uni-icons>
                   </view>
                   <view v-if="exp.expanded" class="product-group" v-for="(pg, pIdx) in exp.products" :key="pIdx">
-                    <!-- <view class="product-header">
-                      <text class="product-name">{{ pg.name }}</text>
-                      <text class="product-spec">{{ pg.spec }}</text>
-                    </view> -->
                     <scroll-view scroll-x class="batch-scroll">
                       <view class="batch-table">
                         <view class="batch-header-row">
@@ -144,10 +140,12 @@
       </view>
     </view>
   </view>
+  <BottomScrollTip :text="'左右滑动表格查看更多内容'" />
 </template>
 
 <script>
 import EmptyView from "../../../../wigets/empty.vue";
+import BottomScrollTip from "../../../../wigets/BottomScrollTip.vue";
 import Water from "@/components/water/water.vue";
 import request from "../../../../request/index.js";
 import { formatDate } from "../../../../utils/utils.js";
@@ -155,6 +153,7 @@ import { formatDate } from "../../../../utils/utils.js";
 export default {
   components: {
     EmptyView,
+    BottomScrollTip,
     Water,
   },
   data() {
@@ -195,27 +194,9 @@ export default {
     this.taskId = options && options.id ? options.id : "";
     uni.setNavigationBarTitle({ title });
     this.tableBodyHeight = 14 * 80;
-    // this.rows = this.buildRows(this.genHierData());
-    //this._rows = this.buildRows(this.genHierData());
     this.fetchList();
   },
   computed: {
-    // isFixedHeight() {
-    //   const arr = Array.isArray(this.rows) ? this.rows : [];
-    //   const countLeaves = (node) => {
-    //     if (!node || !node.enterpriseList || node.enterpriseList.length === 0) return 1;
-    //     let sum = 0;
-    //     for (let i = 0; i < node.enterpriseList.length; i++) {
-    //       sum += countLeaves(node.enterpriseList[i]);
-    //     }
-    //     return sum;
-    //   };
-    //   let total = 0;
-    //   for (let i = 0; i < arr.length; i++) {
-    //     total += countLeaves(arr[i]);
-    //   }
-    //   return total >= 12;
-    // },
     isLoading() {
       return (
         (this.loading && this.category == 1) ||
@@ -238,112 +219,6 @@ export default {
       this.category = t.value;
       this.fetchList();
     },
-    genHierData() {
-      return [
-        {
-          enterpriseName: "上海海王星辰药房有限公司",
-          enterpriseList: [
-            {
-              fromEntName: "福建广药洁达医药有限公司",
-              enterpriseList: [
-                {
-                  physicName: "感冲",
-                  produceBatchNo: "2502104H",
-                  fromRegionName: "广东",
-                  fromQuantity: 1000,
-                  toQuantity: 30,
-                  billTime: "区间内第一次出库时间——区间内最后一次出库时间",
-                  tracCode: "A",
-                },
-                {
-                  physicName: "皮炎平",
-                  produceBatchNo: "2502105H",
-                  fromRegionName: "广西",
-                  fromQuantity: 200,
-                  toQuantity: 20,
-                  billTime: "区间内第一次出库时间——区间内最后一次出库时间",
-                  tracCode: "B",
-                },
-                {
-                  physicName: "感冲",
-                  produceBatchNo: "2502105H",
-                  fromRegionName: "广西",
-                  fromQuantity: 200,
-                  toQuantity: 20,
-                  billTime: "区间内第一次出库时间——区间内最后一次出库时间",
-                  tracCode: "B",
-                },
-                {
-                  physicName: "感冲",
-                  produceBatchNo: "2502105H",
-                  fromRegionName: "广西",
-                  fromQuantity: 200,
-                  toQuantity: 20,
-                  billTime: "区间内第一次出库时间——区间内最后一次出库时间",
-                  tracCode: "B",
-                },
-              ],
-            },
-            {
-              fromEntName: "B有限公司",
-              enterpriseList: [
-                {
-                  physicName: "感冲",
-                  produceBatchNo: "2502104H",
-                  fromRegionName: "广东",
-                  fromQuantity: 1000,
-                  toQuantity: 30,
-                  billTime: "区间内第一次出库时间——区间内最后一次出库时间",
-                  tracCode: "A",
-                },
-              ],
-            },
-          ],
-        },
-        {
-          enterpriseName: "大参林连锁药店",
-          enterpriseList: [
-            {
-              fromEntName: "C有限公司",
-              enterpriseList: [
-                {
-                  physicName: "感冲",
-                  produceBatchNo: "2502105H",
-                  fromRegionName: "广东",
-                  fromQuantity: 1000,
-                  toQuantity: 30,
-                  billTime: "区间内第一次出库时间——区间内最后一次出库时间",
-                  tracCode: "A",
-                },
-                {
-                  physicName: "皮炎平",
-                  produceBatchNo: "2502105H",
-                  fromRegionName: "广西",
-                  fromQuantity: 200,
-                  toQuantity: 20,
-                  billTime: "区间内第一次出库时间——区间内最后一次出库时间",
-                  tracCode: "B",
-                },
-              ],
-            },
-            {
-              fromEntName: "D有限公司",
-              enterpriseList: [
-                {
-                  physicName: "皮炎平",
-                  produceBatchNo: "2502105H",
-                  fromRegionName: "广西",
-                  fromQuantity: 200,
-                  toQuantity: 20,
-                  billTime: "区间内第一次出库时间——区间内最后一次出库时间",
-                  tracCode: "B",
-                },
-              ],
-            },
-          ],
-        },
-      ];
-    },
     computeLeafCount(node) {
       if (!node || !node.enterpriseList || !node.enterpriseList.length)
         return 1;
@@ -517,6 +392,10 @@ export default {
   padding-bottom: calc(50rpx + env(safe-area-inset-bottom));
 }
 
+.grid-scroll {
+  padding-bottom: 80rpx;
+}
+
 .tabs {
   display: flex;
   align-items: center;

+ 56 - 0
traceCodePackages/wigets/BottomScrollTip.vue

@@ -0,0 +1,56 @@
+<template>
+  <view v-if="visible" class="bottom-scroll-tip" :style="wrapStyle">
+    <view class="tip-pill">
+      <text class="tip-text">{{ text }}</text>
+    </view>
+  </view>
+</template>
+
+<script>
+export default {
+  name: "BottomScrollTip",
+  props: {
+    text: { type: String, default: "滑动查看更多内容" },
+    visible: { type: Boolean, default: true },
+    bottom: { type: String, default: "" }, // 可选:自定义距离底部(不含安全区)
+  },
+  computed: {
+    wrapStyle() {
+      if (this.bottom) {
+        return {
+          bottom: `calc(${this.bottom} + env(safe-area-inset-bottom))`,
+        };
+      }
+      return {};
+    },
+  },
+};
+</script>
+
+<style scoped>
+.bottom-scroll-tip {
+  position: fixed;
+  left: 0;
+  right: 0;
+  bottom: env(safe-area-inset-bottom);
+  z-index: 90;
+  display: flex;
+  justify-content: center;
+  pointer-events: none;
+  padding: 10rpx 24rpx 18rpx;
+}
+
+.tip-pill {
+  pointer-events: none;
+  padding: 10rpx 20rpx;
+  border-radius: 999rpx;
+  background: rgba(0, 0, 0, 0.45);
+  backdrop-filter: blur(6rpx);
+}
+
+.tip-text {
+  font-size: 24rpx;
+  color: #fff;
+  letter-spacing: 1rpx;
+}
+</style>