<template>
  <view class="pharmacyDetails">
    <view class="pharmacyDetails_title"><text v-if="queryObj.deptName">{{queryObj.deptName}}-</text>{{isScan?'已':'未'}}扫描标本信息</view>
    <view class="page_item footerOtherMargin">
      <view class="page_item_wrap" v-for="(spe, i) in specimens" :key="spe.id">
        <specimenListItem :i="i" :item="spe"></specimenListItem>
        <view class="L-l"></view>
        <view class="R-l"></view>
      </view>
    </view>
    <view class="foot_btn2 footerPadding">
      <view class="btn2" @click="goBack">返回</view>
    </view>
  </view>
</template>
<script>
  import {
    post,
    webHandle
  } from "../../http/http.js";
  export default {
    data() {
      return {
        queryObj: {}, //路由传递过来的数据
        isScan: false,//true是已扫描标本,false是未扫描标本
        workOrderId: -1,
        deptCode: '',
        specimens: [],
      };
    },
    methods: {
      // 返回
      goBack() {
        uni.navigateBack();
      },
      // 获取已扫描或未扫描标本信息
      getNoScanSpecimen(isScan) {
        let postData = {
          gdIds: this.workOrderId,
          currentPage: 0,
          pageSize: 999,
        };
        
        if(this.queryObj.specimensCheck){
          //标本核对页面过来的
          if(this.queryObj.deptName){
            // 标本核对,已扫描总数
            postData.deptQrCode = this.deptCode||undefined;
            postData.specimensCheck = 1;
          }
        }else{
          postData.deptQrCode = this.deptCode||undefined;
        }
        // 是否是已扫描
        if(isScan && !this.queryObj.noScan){
          // 显示已扫描,但添加scanned参数
          postData.scanned = 1;
        }
        uni.showLoading({
          title: "加载中",
          mask: true,
        });
        post("/api/noScanSpecimenData", postData).then((res) => {
          uni.hideLoading();
          if (res.data) {
            this.specimens = res.data;
          }
        });
      },
    },
    onLoad(options) {
      console.log(options);
      this.queryObj = options;
      this.workOrderId = JSON.parse(options.workOrderId);
      this.deptCode = options.deptCode;
      this.isScan = Boolean(options.isScan);
      this.getNoScanSpecimen(this.isScan);
      // #ifdef APP-PLUS
      webHandle("no", "app");
      // #endif
      // #ifdef H5
      webHandle("no", "wx");
      // #endif
    },
  };
</script>
<style lang="less" scoped>
  .pharmacyDetails {
    background-color: rgb(249, 250, 251);
    padding-top: 50rpx;
    height: 100%;
    box-sizing: border-box;

    .pharmacyDetails_title {
      font-size: 46rpx;
      font-weight: 550;
      text-align: center;
    }

    .page_item_wrap {
      position: relative;
      margin-top: 32rpx;

      .page_item {
        margin-top: 16rpx;
        margin-bottom: 124rpx;
        background: #fff;
        border-radius: 8rpx;
        margin: 0 20rpx;
        border: 2rpx solid #e5e9ed;
        position: relative;
        overflow: hidden;
        padding: 0 16rpx;

        .L {
          width: 40rpx;
          height: 40rpx;
          border-radius: 50%;
          background: #f9fafb;
          position: absolute;
          left: -20rpx;
          top: 68rpx;
          border: 2rpx solid #e5e9ed;
        }

        .R {
          width: 40rpx;
          height: 40rpx;
          border-radius: 50%;
          background: #f9fafb;
          position: absolute;
          float: right;
          right: -20rpx;
          top: 68rpx;
          border: 2rpx solid #e5e9ed;
        }

        .page_item_top {
          height: 88rpx;
          border-bottom: 2rpx dashed #e5e9ed;
          padding: 0 16rpx;

          .page_item_top-inner {
            display: flex;
            justify-content: space-between;
            align-items: center;
            height: 100%;

            .page_item_top_L {
              .L_text {
                font-size: 32rpx;
                font-weight: 700;
              }
            }

            .page_item_top_R {
              font-size: 32rpx;

              .L_iocn {
                color: rgb(7, 134, 60);
                font-size: 36rpx;
                font-weight: 700;
              }
            }
          }
        }

        .page_item_cont {
          min-height: 90rpx;
          padding: 0 16rpx;
          text-align: left;
          position: relative;

          .text_big {
            font-size: 32rpx;
            font-weight: 700;
            margin-top: 10rpx;
          
            p {
              font-weight: 700;
              line-height: 1.5;
            }
          }

          .line {
            height: 20rpx;
            width: 2rpx;
            border-left: 2rpx solid #e5e9ed;
            position: absolute;
            top: 82rpx;
            left: 40rpx;
          }

          .page_item_cont_T {
            padding-top: 28rpx;
            padding-bottom: 28rpx;
            font-size: 28rpx;

            .page_item_cont_title {
              height: 100%;
              font-size: 32rpx;
              display: flex;
              justify-content: space-between;
              align-items: center;
            }
          }

          .page_item_cont_B {
            padding-top: 28rpx;
            margin-bottom: 28rpx;

            .page_item_cont_title {
              font-size: 32rpx;
              display: flex;
              justify-content: space-between;
              align-items: center;
            }
          }

          .page_item_cont_C {
            margin-bottom: 28rpx;

            .page_item_cont_title_C {
              font-size: 32rpx;
              display: flex;
              justify-content: space-between;
              align-items: center;
            }
          }

          #infos {
            display: none;
          }
        }
      }

      .L-l {
        width: 2rpx;
        height: 40rpx;
        background: #f9fafb;
        position: absolute;
        left: 20rpx;
        top: 72rpx;
      }

      .R-l {
        width: 2rpx;
        height: 40rpx;
        background: #f9fafb;
        position: absolute;
        right: 20rpx;
        top: 72rpx;
      }
    }

    .cube-toolbar-item {
      width: 710rpx;
      height: 68rpx;
      line-height: 68rpx;
      position: fixed;
      left: 20rpx;
      bottom: 160rpx;
      border-radius: 8rpx;
      background: linear-gradient(to right, #72c172, #3bb197);
      font-size: 36rpx;
      color: #fff;
      text-align: center;
    }

    .btn-wrap {
      display: flex;
      justify-content: space-between;
      position: fixed;
      left: 20rpx;
      bottom: 160rpx;
    }

    .cube-toolbar-item1 {
      width: 350rpx;
      height: 68rpx;
      line-height: 68rpx;
      border-radius: 8rpx;
      margin: 0 5rpx;
      background: linear-gradient(to right, #72c172, #3bb197);
      font-size: 36rpx;
      color: #fff;
      text-align: center;
    }

    .foot_btn2 {
      position: fixed;
      bottom: 0;
      right: 20rpx;
      left: 20rpx;
      line-height: 66rpx;
      height: 100rpx;
      border-top: 2rpx solid #e5e9ed;
      background: #f9fafb;
      display: flex;
      justify-content: space-between;

      .btn2 {
        height: 66rpx;
        width: 100%;
        margin: 0 1%;
        background-image: linear-gradient(to right, #72c172, #3bb197);
        color: #fff;
        border-radius: 8rpx;
        font-size: 32rpx;
        margin-top: 16rpx;
        text-align: center;
      }

      .btn3 {
        height: 66rpx;
        width: 48%;
        margin: 0 1%;
        background-image: linear-gradient(to right, #72c172, #3bb197);
        color: #fff;
        border-radius: 8rpx;
        font-size: 32rpx;
        margin-top: 16rpx;
        text-align: center;
      }
    }
  }
</style>