licp
2024-12-05 25d10ee678644a6283454ca486d74a938eeccfd1
src/components/view/b1-sample.vue
@@ -196,9 +196,13 @@
          <div class="search_label">样品编号:</div>
          <div class="search_input">
            <el-input placeholder="请输入样品编号" v-model="searchSampleCode" size="small" autocomplete="off" ref="organization" readonly="readonly" @focus="remove('organization')" @blur="setType('organization')">
              <el-button slot="append" icon="el-icon-search" @click="handleSearch"></el-button>
              <!-- <el-button slot="append" icon="el-icon-search" @click="handleSearch"></el-button> -->
            </el-input>
          </div>
        </div>
        <div class="search_thing">
          <el-button size="small" @click="handleShelf(entity.shelfId,''),searchSampleCode=''">重置</el-button>
          <el-button size="small" type="primary" @click="handleShelf(entity.shelfId,searchSampleCode)">查询</el-button>
        </div>
        <!-- <div class="search_thing" style="padding-left: 30px;">
               <el-button size="small" @click="refresh()">重 置</el-button>
@@ -262,6 +266,13 @@
            </el-input>
          </div>
        </el-col>
        <el-col class="search_thing" :span="24">
          <div class="search_label" style="width: 90px"><span class="required-span">* </span>订单编号:</div>
          <div class="search_input">
            <el-input v-model="entrustCode" size="small" clearable :disabled="sampleCodeBtnDisabled">
            </el-input>
          </div>
        </el-col>
      </el-row>
      <el-tree :data="storageList" ref="tree" :props="{ children: 'warehouseShelfList', label: 'name' }" node-key="id"
        :filter-node-method="filterNode" @node-click="handleNodeClick" highlight-current @node-expand="nodeOpen"
@@ -295,6 +306,13 @@
              <el-tooltip :content="sampleCodeBtnDisabled?'手动输入':'扫码枪输入'" placement="top" slot="append">
                <el-button type="primary" icon="el-icon-edit" @click="sampleCodeBtnDisabled=!sampleCodeBtnDisabled"></el-button>
              </el-tooltip>
            </el-input>
          </div>
        </el-col>
        <el-col class="search_thing" :span="24">
          <div class="search_label" style="width: 90px"><span class="required-span">* </span>委托编号:</div>
          <div class="search_input">
            <el-input v-model="entrustCode" size="small" clearable :disabled="sampleCodeBtnDisabled">
            </el-input>
          </div>
        </el-col>
@@ -416,6 +434,7 @@
        currentEdit:null,//当前要维护的信息
        tableLoading:false,
        sampleCode:'',
        entrustCode:'',
        currentId:null,
        searchSampleCode:null,
        codeInfo:null,
@@ -425,6 +444,7 @@
      storageVisible(newVal){
        if(newVal){
            this.sampleCode = null
            this.entrustCode = null
            // this.$message.success('扫码:打开')
            let input = document.getElementById('ScanCodeInfo0');
            input.focus();
@@ -441,6 +461,7 @@
        if(newVal){
            // this.$message.success('扫码:打开')
            this.sampleCode = null
            this.entrustCode = null
            let input = document.getElementById('ScanCodeInfo0');
            input.focus();
            this.startTime = setInterval(()=>{
@@ -456,7 +477,6 @@
        if(!val){
          this.startTime&&clearInterval(this.startTime)
        }else if(this.exportVisible||this.storageVisible){
          this.sampleCode = null
          let input = document.getElementById('ScanCodeInfo');
          input.focus();
          this.startTime = setInterval(()=>{
@@ -475,14 +495,15 @@
    },
    methods: {
      keyup(e){
        var code = ''
        var codeInfo = null
        try{
            console.log(2222,this.codeInfo)
            code = this.codeInfo.substring()
            if(code==null||code==undefined||code==''){
            codeInfo = JSON.parse(this.codeInfo)
            if(!codeInfo||codeInfo.sampleCode==undefined||codeInfo.entrustCode==undefined){
                this.$message.error('该二维码有误')
            }else{
                this.sampleCode = code
                this.sampleCode = codeInfo.sampleCode
                this.entrustCode = codeInfo.entrustCode
            }
        }catch(e){
            this.$message.error('请调至英文键盘')
@@ -555,6 +576,10 @@
          this.$message.error('请填写样品编号')
          return
        }
        if (!this.entrustCode) {
          this.$message.error('请填写订单编号')
          return
        }
        if (this.selectTree.length < 4) {
          this.$message.error('请选择样品入库位置')
          return
@@ -562,11 +587,13 @@
        this.upLoadStorage = true;
        this.$axios.post(this.$api.warehouse.inWarehouse, {
            trees: this.selectTree.join('-'),
            sampleCode:this.sampleCode
            sampleCode:this.sampleCode,
            entrustCode:this.entrustCode
          }).then(res => {
            this.upLoadStorage = false;
            this.storageVisible = false
            this.sampleCode = '';
            this.entrustCode = '';
            this.selectTree = []
            if (res.code == 201) {
              this.$message.error('入库失败')
@@ -582,13 +609,19 @@
          this.$message.error('请填写样品编号')
          return
        }
        if (!this.entrustCode) {
          this.$message.error('请填写订单编号')
          return
        }
        this.upLoadExport = true;
        this.$axios.post(this.$api.warehouse.outWarehouse, {
            sampleCode:this.sampleCode
            sampleCode:this.sampleCode,
            entrustCode:this.entrustCode,
          }).then(res => {
            this.upLoadExport = false;
            this.exportVisible = false
            this.sampleCode = '';
            this.entrustCode = '';
            if (res.code == 201) {
              this.$message.error('出库失败')
              return
@@ -783,10 +816,10 @@
        this.shelf = map.warehouseShelfList;
        this.entity.shelfId = '';
      },
      handleShelf(e){
      handleShelf(e,sampleCode=''){
        if(e){
          this.tableLoading = true;
          this.$axios.get(this.$api.warehouse.getWarehouse+'?shelfId='+e).then(res => {
          this.$axios.get(this.$api.warehouse.getWarehouse+'?shelfId='+e+'&sampleCode='+sampleCode).then(res => {
            this.tableLoading = false;
            let data = res.data;
            let set =new Set()