页面调整
							parent
							
								
									6db922b794
								
							
						
					
					
						commit
						2d52775207
					
				| 
						 | 
				
			
			@ -47,4 +47,4 @@ export function edit(data) {
 | 
			
		|||
  })
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export default { add, edit, del }
 | 
			
		||||
export default { add, edit, del, getAres, getAreas, queryAreaList }
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -7,6 +7,13 @@ export function getBillType() {
 | 
			
		|||
  })
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export function queryBillTypeList(params) {
 | 
			
		||||
  return request({
 | 
			
		||||
    url: 'api/billType/queryBillTypeList',
 | 
			
		||||
    method: 'get',
 | 
			
		||||
    params
 | 
			
		||||
  })
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export function add(data) {
 | 
			
		||||
  return request({
 | 
			
		||||
| 
						 | 
				
			
			@ -32,4 +39,4 @@ export function edit(data) {
 | 
			
		|||
  })
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export default { add, edit, del }
 | 
			
		||||
export default { add, edit, del ,queryBillTypeList}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -15,6 +15,13 @@ export function queryBigItemByStationType(stationType) {
 | 
			
		|||
  })
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export function queryByAreaId(areaId) {
 | 
			
		||||
  return request({
 | 
			
		||||
    url: `api/bomAccount/queryByAreaId/${areaId}`,
 | 
			
		||||
    method: 'get'
 | 
			
		||||
  })
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export function queryItemByArea(areaId) {
 | 
			
		||||
  return request({
 | 
			
		||||
    url: `api/bomAccount/queryItemByArea/${areaId}`,
 | 
			
		||||
| 
						 | 
				
			
			@ -76,4 +83,4 @@ export function bomPrintBiaoQianList(dxw) {
 | 
			
		|||
  })
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export default { add, edit, del, queryBomAccountPoints, bomPrintBiaoQianList,queryBomPrintListD,queryBomPrintListX }
 | 
			
		||||
export default { add, edit, del, queryBomAccountPoints, bomPrintBiaoQianList,queryBomPrintListD,queryBomPrintListX ,queryByAreaId}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -105,25 +105,11 @@
 | 
			
		|||
      <!--表单组件-->
 | 
			
		||||
      <el-dialog :close-on-click-modal="false" :before-close="crud.cancelCU" :visible.sync="crud.status.cu > 0" :title="crud.status.title" width="700px">
 | 
			
		||||
        <el-form ref="form" :model="form" :inline="true" :rules="rules" size="small" label-width="100px">
 | 
			
		||||
          <el-form-item label="完成品品番" prop="bigItem" >
 | 
			
		||||
            <el-select v-model="form.bigItem"  value-key="id" filterable placeholder="请选择完成品品番" style="width: 180px;">
 | 
			
		||||
              <el-option
 | 
			
		||||
                  v-for="item in bigItemList"
 | 
			
		||||
                  :key="item.id"
 | 
			
		||||
                  :label="item.name"
 | 
			
		||||
                  :value="item"
 | 
			
		||||
              />
 | 
			
		||||
            </el-select>
 | 
			
		||||
          <el-form-item label="完成品品番" prop="bigItem">
 | 
			
		||||
            <BigItemSelect :value-key="'id'" v-model="form.bigItem" />
 | 
			
		||||
          </el-form-item>
 | 
			
		||||
          <el-form-item label="部品品番" prop="item" >
 | 
			
		||||
            <el-select v-model="form.item"  value-key="id" filterable placeholder="请选择部品品番" style="width: 180px;">
 | 
			
		||||
              <el-option
 | 
			
		||||
                  v-for="item in itemList"
 | 
			
		||||
                  :key="item.id"
 | 
			
		||||
                  :label="item.name"
 | 
			
		||||
                  :value="item"
 | 
			
		||||
              />
 | 
			
		||||
            </el-select>
 | 
			
		||||
          <el-form-item label="部品品番" prop="item">
 | 
			
		||||
            <ItemSelect :value-key="'id'" v-model="form.item" />
 | 
			
		||||
          </el-form-item>
 | 
			
		||||
        <!--  <el-form-item label="出库类型" prop="outType">
 | 
			
		||||
            <el-select v-model="form.outType" filterable placeholder="请选择" style="width: 180px;">
 | 
			
		||||
| 
						 | 
				
			
			@ -169,12 +155,32 @@
 | 
			
		|||
            <el-input v-model="form.ns" style="width: 180px;" />
 | 
			
		||||
          </el-form-item>
 | 
			
		||||
          <el-form-item label="税别" prop="bonded">
 | 
			
		||||
            <el-input v-model="form.bonded" style="width: 180px;" />
 | 
			
		||||
            <!--<el-input v-model="form.bonded" style="width: 180px;" />-->
 | 
			
		||||
            <el-select v-model="form.bonded" clearable placeholder="税别" style="width: 185px;" class="filter-item"
 | 
			
		||||
                       @keyup.enter.native="crud.toQuery">
 | 
			
		||||
              <el-option
 | 
			
		||||
                v-for="baseStatus in dict.bonded_type"
 | 
			
		||||
                :key="baseStatus.id"
 | 
			
		||||
                :label="baseStatus.label"
 | 
			
		||||
                :value="baseStatus.value"
 | 
			
		||||
              />
 | 
			
		||||
            </el-select>
 | 
			
		||||
          </el-form-item>
 | 
			
		||||
          <el-form-item label="货位" prop="zPoint">
 | 
			
		||||
            <el-input v-model="form.zPoint.code" style="width: 180px;" />
 | 
			
		||||
            <PointSelect :value-key="'id'" v-model="form.zPoint" :point_type="'ZZKW'"/>
 | 
			
		||||
          </el-form-item>
 | 
			
		||||
          <el-form-item label="台车库位" prop="tckw">
 | 
			
		||||
            <el-input v-model="form.tckw" style="width: 180px;" />
 | 
			
		||||
          </el-form-item>
 | 
			
		||||
          <el-form-item label="供应商" prop="supplier">
 | 
			
		||||
            <el-input v-model="form.supplier" style="width: 180px;" />
 | 
			
		||||
          </el-form-item>
 | 
			
		||||
          <el-form-item label="箱种" prop="xz">
 | 
			
		||||
            <el-input v-model="form.xz" style="width: 180px;" />
 | 
			
		||||
          </el-form-item>
 | 
			
		||||
          <el-form-item label="刻印" prop="kyQz">
 | 
			
		||||
            <el-input v-model="form.kyQz" style="width: 180px;" />
 | 
			
		||||
          </el-form-item>
 | 
			
		||||
 | 
			
		||||
          <el-form-item label="描述" prop="description">
 | 
			
		||||
            <el-input v-model="form.description" :rows="3" type="textarea" style="width: 380px;" />
 | 
			
		||||
          </el-form-item>
 | 
			
		||||
| 
						 | 
				
			
			@ -220,17 +226,9 @@
 | 
			
		|||
            {{ dict.label.bp_type[scope.row.bp_type] }}
 | 
			
		||||
          </template>
 | 
			
		||||
        </el-table-column>-->
 | 
			
		||||
        <el-table-column prop="updateTime" label="操作日期" width="135">
 | 
			
		||||
          <template slot-scope="scope">
 | 
			
		||||
            {{getFormatDate(scope.row.updateTime)}}
 | 
			
		||||
          </template>
 | 
			
		||||
        </el-table-column>
 | 
			
		||||
        <el-table-column prop="updateTime" label="操作日期" width="135"/>
 | 
			
		||||
        <el-table-column prop="updateBy" label="操作人" />
 | 
			
		||||
        <el-table-column prop="createTime" label="创建日期" width="135">
 | 
			
		||||
          <template slot-scope="scope">
 | 
			
		||||
            {{getFormatDate(scope.row.createTime)}}
 | 
			
		||||
          </template>
 | 
			
		||||
        </el-table-column>
 | 
			
		||||
        <el-table-column prop="createTime" label="创建日期" width="135"/>
 | 
			
		||||
        <el-table-column prop="createBy" label="创建人" />
 | 
			
		||||
        <el-table-column prop="description" label="描述" />
 | 
			
		||||
        <el-table-column v-if="checkPer(['admin','bomAccount:edit','bomAccount:del'])" fixed="right" label="操作" width="150px" align="center">
 | 
			
		||||
| 
						 | 
				
			
			@ -269,10 +267,13 @@ import Link from "@/layout/components/Sidebar/Link.vue";
 | 
			
		|||
import excelUtil from "@/api/tools/excelUtil"
 | 
			
		||||
import { formatDate } from '@/utils/commonUtils'
 | 
			
		||||
import {mapGetters} from "vuex";
 | 
			
		||||
const defaultForm = { id: null, bigItem: null, supplier: null,item: null, contents: null, singles: null, rArea: null, cArea: null, outType: null, station_type: null, bp_type: null,  dept: null, enabled: null, createBy: null, updateBy: null, createTime: null, updateTime: null, description: null, ac: null, bonded: null, zPoint: { code: null }}
 | 
			
		||||
import ItemSelect from "@/views/generic-component/ItemSelect.vue";
 | 
			
		||||
import BigItemSelect from "@/views/generic-component/BigItemSelect.vue";
 | 
			
		||||
import PointSelect from "@/views/generic-component/PointSelect.vue";
 | 
			
		||||
const defaultForm = { id: null, bigItem: null, supplier: null,item: null, contents: null, singles: null, rArea: null, zPoint:null,cArea: null, outType: null, station_type: null, bp_type: null,  dept: null, enabled: null, createBy: null, updateBy: null, createTime: null, updateTime: null, description: null, ac: null, bonded: null,kyQz:null,tckw:null}
 | 
			
		||||
export default {
 | 
			
		||||
  name: 'BomAccount',
 | 
			
		||||
  components: {Link, DateRangePicker, pagination, crudOperation, rrOperation, udOperation },
 | 
			
		||||
  components: {PointSelect, ItemSelect,BigItemSelect, Link, DateRangePicker, pagination, crudOperation, rrOperation, udOperation },
 | 
			
		||||
  mixins: [presenter(), header(), form(defaultForm), crud()],
 | 
			
		||||
  dicts: ['process_content', 'out_type', 'station_type', 'bp_type','bonded_type','ac_type','zdw_type'],
 | 
			
		||||
  cruds() {
 | 
			
		||||
| 
						 | 
				
			
			@ -287,11 +288,6 @@ export default {
 | 
			
		|||
    return {
 | 
			
		||||
      headers: { 'Authorization': getToken() },
 | 
			
		||||
      fileList: [],
 | 
			
		||||
      // 下拉框
 | 
			
		||||
      bigItemList: [],
 | 
			
		||||
      itemList: [],
 | 
			
		||||
      rAreaList: [],
 | 
			
		||||
      cAreaList: [],
 | 
			
		||||
      permission: {
 | 
			
		||||
        add: ['admin', 'bomAccount:add'],
 | 
			
		||||
        edit: ['admin', 'bomAccount:edit'],
 | 
			
		||||
| 
						 | 
				
			
			@ -315,31 +311,18 @@ export default {
 | 
			
		|||
        bigItem: [
 | 
			
		||||
          { required: true, message: '完成品品番不能为空', trigger: 'blur' }
 | 
			
		||||
        ],
 | 
			
		||||
        outType: [
 | 
			
		||||
          { required: true, message: '出库类型不能为空', trigger: 'blur' }
 | 
			
		||||
        item: [
 | 
			
		||||
          { required: true, message: '部品品番不能为空', trigger: 'blur' }
 | 
			
		||||
        ],
 | 
			
		||||
        zPoint: [
 | 
			
		||||
          { required: true, message: '货位不能为空', trigger: 'blur' }
 | 
			
		||||
        ],
 | 
			
		||||
        bonded: [
 | 
			
		||||
          { required: true, message: '税别不能为空', trigger: 'blur' }
 | 
			
		||||
        ],
 | 
			
		||||
        bp_type: [
 | 
			
		||||
          { required: true, message: '部品种类不能为空', trigger: 'blur' }
 | 
			
		||||
        ],
 | 
			
		||||
        zPoint: [
 | 
			
		||||
          { required: true, message: '制造库位不能为空', trigger: 'blur' }
 | 
			
		||||
        ],
 | 
			
		||||
        rArea: [
 | 
			
		||||
          { required: true, message: '接受库区不能为空', trigger: 'blur' }
 | 
			
		||||
        ],
 | 
			
		||||
        cArea: [
 | 
			
		||||
          { required: true, message: '出库库区不能为空', trigger: 'blur' }
 | 
			
		||||
        ]
 | 
			
		||||
      }}
 | 
			
		||||
  },
 | 
			
		||||
  mounted() {
 | 
			
		||||
    this.getBigItemList()
 | 
			
		||||
    this.getItemList()
 | 
			
		||||
    this.getRAreaList()
 | 
			
		||||
    this.getCAreaList()
 | 
			
		||||
    //计算界面高度
 | 
			
		||||
 | 
			
		||||
  },
 | 
			
		||||
| 
						 | 
				
			
			@ -368,54 +351,6 @@ export default {
 | 
			
		|||
    [CRUD.HOOK.beforeRefresh]() {
 | 
			
		||||
      return true
 | 
			
		||||
    },
 | 
			
		||||
    getBigItemList() {
 | 
			
		||||
      bigItem.getBigItem(1).then(res => {
 | 
			
		||||
        this.bigItemList = res.map(function(obj) {
 | 
			
		||||
          if (obj.hasChildren) {
 | 
			
		||||
            obj.children = null
 | 
			
		||||
          }
 | 
			
		||||
          return obj
 | 
			
		||||
        })
 | 
			
		||||
      })
 | 
			
		||||
    },
 | 
			
		||||
    getRAreaList() {
 | 
			
		||||
      queryAreaList({enabled:true}).then(res=>{
 | 
			
		||||
        this.rAreaList = res
 | 
			
		||||
      })
 | 
			
		||||
      // getAreas().then(res => {
 | 
			
		||||
      //   this.rAreaList = res.map(function(obj) {
 | 
			
		||||
      //     if (obj.hasChildren) {
 | 
			
		||||
      //       obj.children = null
 | 
			
		||||
      //     }
 | 
			
		||||
      //     return obj
 | 
			
		||||
      //   })
 | 
			
		||||
      // })
 | 
			
		||||
    },
 | 
			
		||||
    getCAreaList() {
 | 
			
		||||
      queryAreaList({bexb:false,enabled:true}).then(res=>{
 | 
			
		||||
        this.cAreaList = res
 | 
			
		||||
      })
 | 
			
		||||
 | 
			
		||||
      // getAreas().then(res => {
 | 
			
		||||
      //   this.cAreaList = res.map(function(obj) {
 | 
			
		||||
      //     if (obj.hasChildren) {
 | 
			
		||||
      //       obj.children = null
 | 
			
		||||
      //     }
 | 
			
		||||
      //     return obj
 | 
			
		||||
      //   })
 | 
			
		||||
      // })
 | 
			
		||||
    },
 | 
			
		||||
    getItemList() {
 | 
			
		||||
      getItemsList().then(res => {
 | 
			
		||||
        this.itemList = res.map(function(obj) {
 | 
			
		||||
          if (obj.hasChildren) {
 | 
			
		||||
            obj.children = null
 | 
			
		||||
          }
 | 
			
		||||
          return obj
 | 
			
		||||
        })
 | 
			
		||||
      })
 | 
			
		||||
    },
 | 
			
		||||
 | 
			
		||||
    saveBomPrintD() {
 | 
			
		||||
      console.log("打印中大物标签")
 | 
			
		||||
        queryBomPrintListD(this.crud.getQueryParams2()).then(res => {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -172,6 +172,7 @@ body {
 | 
			
		|||
  font-weight: bold;
 | 
			
		||||
  text-align: center;
 | 
			
		||||
  border: #000000 2px solid;
 | 
			
		||||
  white-space: nowrap;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
.td-item-value2{
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -16,10 +16,7 @@
 | 
			
		|||
        <el-input v-model="query.idno" clearable placeholder="IDNO" style="width: 150px;" class="filter-item"
 | 
			
		||||
                  @keyup.enter.native="crud.toQuery"
 | 
			
		||||
        />
 | 
			
		||||
        <el-input v-model="query.monthlyNo" clearable placeholder="月度序号" style="width: 150px;" class="filter-item"
 | 
			
		||||
                  @keyup.enter.native="crud.toQuery"
 | 
			
		||||
        />
 | 
			
		||||
        <el-select v-model="query.rkCode"  value-key="id" filterable placeholder="指示纳所" style="width: 185px;" class="filter-item"  @keyup.enter.native="crud.toQuery" clearable>
 | 
			
		||||
        <el-select v-model="query.rkCode"  value-key="id" filterable placeholder="库区" style="width: 185px;" class="filter-item"  @keyup.enter.native="crud.toQuery" clearable>
 | 
			
		||||
          <el-option
 | 
			
		||||
            v-for="item in rAreaList"
 | 
			
		||||
            :key="item.id"
 | 
			
		||||
| 
						 | 
				
			
			@ -39,8 +36,6 @@
 | 
			
		|||
            :value="baseStatus.value"
 | 
			
		||||
          />
 | 
			
		||||
        </el-select>
 | 
			
		||||
        <el-input v-model.trim="query.projectNo" clearable placeholder="计划单号" style="width: 150px;" class="filter-item"
 | 
			
		||||
                  @keyup.enter.native="crud.toQuery"/>
 | 
			
		||||
        <rrOperation :crud="crud"/>
 | 
			
		||||
      </div>
 | 
			
		||||
      <!--如果想在工具栏加入更多按钮,可以使用插槽方式, slot = 'left' or 'right'-->
 | 
			
		||||
| 
						 | 
				
			
			@ -50,7 +45,7 @@
 | 
			
		|||
          ref="upload"
 | 
			
		||||
          slot='right'
 | 
			
		||||
          style="float: right;padding-left: 5px"
 | 
			
		||||
          :action="baseApi+'/api/productionPlan/import_data'"
 | 
			
		||||
          :action="baseApi+'/api/importData/importProductionPlan'"
 | 
			
		||||
          :file-list="fileList"
 | 
			
		||||
          :on-success=handleSuccess
 | 
			
		||||
          :on-error="handleError"
 | 
			
		||||
| 
						 | 
				
			
			@ -60,13 +55,13 @@
 | 
			
		|||
          <el-button size="mini" type="success" icon="el-icon-upload">导入</el-button>
 | 
			
		||||
        </el-upload>
 | 
			
		||||
        <!--        dict.label.hy_status[scope.row.statue]-->
 | 
			
		||||
        <el-button size="mini" type="success" slot="right" class="upload-demo" style="float: right;"
 | 
			
		||||
       <!-- <el-button size="mini" type="success" slot="right" class="upload-demo" style="float: right;"
 | 
			
		||||
                   :disabled="sgscDisabled"  v-permission="permission.sgscM"
 | 
			
		||||
                   @click="sgscM(crud.selections[0])"
 | 
			
		||||
        >手工生成
 | 
			
		||||
        </el-button>
 | 
			
		||||
        </el-button>-->
 | 
			
		||||
 | 
			
		||||
        <el-button size="mini" type="success" slot="left" class="upload-demo" style="float: right;"
 | 
			
		||||
        <el-button size="mini" type="success" slot="right" class="upload-demo" style="float: right;"
 | 
			
		||||
                   :disabled="crud.selections.length !== 1"
 | 
			
		||||
                   @click="haoYongM(crud.selections[0])"  v-permission="permission.haoYong"
 | 
			
		||||
        >批量耗用
 | 
			
		||||
| 
						 | 
				
			
			@ -112,15 +107,11 @@
 | 
			
		|||
            </el-input>
 | 
			
		||||
          </el-form-item>
 | 
			
		||||
          <el-form-item label="起始机号" prop="id">
 | 
			
		||||
            <el-input v-model="productionPlanVo.machineNo" placeholder="起始机号" disabled>
 | 
			
		||||
            </el-input>
 | 
			
		||||
          </el-form-item>
 | 
			
		||||
          <el-form-item label="工位" prop="workingStation" style="display: none">
 | 
			
		||||
            <el-input v-model="productionPlanVo.workingStation" placeholder="工位" disabled >
 | 
			
		||||
            <el-input v-model="productionPlanVo.machineNo" placeholder="工件" disabled>
 | 
			
		||||
            </el-input>
 | 
			
		||||
          </el-form-item>
 | 
			
		||||
          <el-form-item label="工位名" prop="name">
 | 
			
		||||
            <el-input v-model="productionPlanVo.name"  disabled>
 | 
			
		||||
            <el-input v-model="productionPlanVo.workingStation"  disabled>
 | 
			
		||||
            </el-input>
 | 
			
		||||
          </el-form-item>
 | 
			
		||||
          <el-form-item label="数量" prop="number">
 | 
			
		||||
| 
						 | 
				
			
			@ -183,58 +174,28 @@
 | 
			
		|||
                :height="crud.tableHeight" @selection-change="crud.selectionChangeHandler" @select="selectTableM" @select-all="selectAllTableM"
 | 
			
		||||
      >
 | 
			
		||||
        <el-table-column type="selection" width="55"/>
 | 
			
		||||
        <el-table-column prop="no" label="No" width="60"/>
 | 
			
		||||
        <el-table-column prop="id" label="ID" width="100"/>
 | 
			
		||||
        <el-table-column prop="no" label="序号" width="60"/>
 | 
			
		||||
        <el-table-column prop="makeLine" label="制造线" width="65"/>
 | 
			
		||||
        <el-table-column prop="rkArea.code" label="工位" width="80"/>
 | 
			
		||||
        <el-table-column prop="rkArea.name" label="指示纳所" width="150"/>
 | 
			
		||||
        <el-table-column :show-overflow-tooltip="true" prop="downlineDate" label="下线日期" width="100">
 | 
			
		||||
          <template slot-scope="scope">
 | 
			
		||||
            {{getFormatDate(scope.row.downlineDate)}}
 | 
			
		||||
          </template>
 | 
			
		||||
        </el-table-column>
 | 
			
		||||
        <el-table-column prop="idno" label="IDNO" width="160"/>
 | 
			
		||||
        <el-table-column prop="monthlyNo" label="月度序号" width="150"/>
 | 
			
		||||
        <el-table-column prop="bigItem.code" label="机型" width="100px">
 | 
			
		||||
        </el-table-column>
 | 
			
		||||
        <el-table-column  prop="bigItem.name" label="机型名称" width="150px">
 | 
			
		||||
          <template slot-scope="scope" >
 | 
			
		||||
            {{ scope.row.bigItem.name}}
 | 
			
		||||
          </template>
 | 
			
		||||
        </el-table-column>
 | 
			
		||||
        <el-table-column prop="bigItem.country" label="国别" width="50">
 | 
			
		||||
        </el-table-column>
 | 
			
		||||
        <el-table-column prop="machineNo" label="机号" width="80"/>
 | 
			
		||||
        <el-table-column prop="rkArea.code" label="库区" width="80"/>
 | 
			
		||||
        <el-table-column prop="rkArea.name" label="库区名" width="100"/>
 | 
			
		||||
        <el-table-column :show-overflow-tooltip="true" prop="downlineDate" label="下线日期" width="100"/>
 | 
			
		||||
        <el-table-column prop="idno" label="ID NO./刻印号" width="120"/>
 | 
			
		||||
        <el-table-column prop="bigItem.code" label="机型" width="120px"/>
 | 
			
		||||
        <el-table-column  prop="bigItem.name" label="机型名称" width="150px"/>
 | 
			
		||||
        <el-table-column prop="machineNo" label="工件" width="120"/>
 | 
			
		||||
        <el-table-column prop="hy_status#statue" label="耗用状态" width="70px">
 | 
			
		||||
          <template slot-scope="scope">
 | 
			
		||||
            {{ dict.label.hy_status[scope.row.statue] }}
 | 
			
		||||
          </template>
 | 
			
		||||
        </el-table-column>
 | 
			
		||||
        <el-table-column prop="orderNo" label="序号" width="50"/>
 | 
			
		||||
        <el-table-column prop="projectNo" label="计划单号" width="120"/>
 | 
			
		||||
        <el-table-column :show-overflow-tooltip="true" prop="takeUpTime" label="耗用时间">
 | 
			
		||||
          <template slot-scope="scope">
 | 
			
		||||
            {{getFormatDate(scope.row.takeUpTime)}}
 | 
			
		||||
          </template>
 | 
			
		||||
        </el-table-column>
 | 
			
		||||
        <el-table-column :show-overflow-tooltip="true" prop="importDate" label="导入日期">
 | 
			
		||||
          <template slot-scope="scope">
 | 
			
		||||
            {{getFormatDate(scope.row.importDate)}}
 | 
			
		||||
          </template>
 | 
			
		||||
        </el-table-column>
 | 
			
		||||
        <el-table-column prop="type" label="出库类型"/>
 | 
			
		||||
        <el-table-column :show-overflow-tooltip="true" prop="takeUpTime" label="耗用时间"/>
 | 
			
		||||
        <el-table-column :show-overflow-tooltip="true" prop="description" label="描述"/>
 | 
			
		||||
        <el-table-column prop="createBy" label="创建人" width="60"/>
 | 
			
		||||
        <el-table-column prop="updateBy" label="更新人" width="60"/>
 | 
			
		||||
        <el-table-column :show-overflow-tooltip="true" prop="createTime" label="创建时间">
 | 
			
		||||
          <template slot-scope="scope">
 | 
			
		||||
            {{getFormatDate(scope.row.createTime)}}
 | 
			
		||||
          </template>
 | 
			
		||||
        </el-table-column>
 | 
			
		||||
        <el-table-column :show-overflow-tooltip="true" prop="updateTime" label="修改日期">
 | 
			
		||||
          <template slot-scope="scope">
 | 
			
		||||
            {{getFormatDate(scope.row.updateTime)}}
 | 
			
		||||
          </template>
 | 
			
		||||
        </el-table-column>
 | 
			
		||||
        <el-table-column :show-overflow-tooltip="true" prop="createTime" label="创建时间"/>
 | 
			
		||||
        <el-table-column :show-overflow-tooltip="true" prop="updateTime" label="修改日期"/>
 | 
			
		||||
        <el-table-column v-if="checkPer(['admin','productionPlan:edit','productionPlan:del'])" fixed="right"
 | 
			
		||||
                         label="操作" width="150px" align="center"
 | 
			
		||||
        >
 | 
			
		||||
| 
						 | 
				
			
			@ -459,12 +420,9 @@ export default {
 | 
			
		|||
      this.productionPlanVo.id = data.id
 | 
			
		||||
      //起始单号
 | 
			
		||||
      this.productionPlanVo.machineNo = data.machineNo
 | 
			
		||||
      //工位
 | 
			
		||||
      this.productionPlanVo.workingStation = data.workingStation
 | 
			
		||||
      //工位名
 | 
			
		||||
      this.productionPlanVo.name = this.dict.label.station_type[data.workingStation]
 | 
			
		||||
      console.log(this.productionPlanVo)
 | 
			
		||||
      console.log(this.$options.dicts)
 | 
			
		||||
      this.productionPlanVo.workingStation = data.rkArea.name
 | 
			
		||||
      this.productionPlanVo.areaId = data.rkArea.id
 | 
			
		||||
      this.haoYongOnOff = true
 | 
			
		||||
    },
 | 
			
		||||
    submitHaoYongForm() {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -7,17 +7,11 @@
 | 
			
		|||
      <!--      <label class="el-form-item-label">单号</label>-->
 | 
			
		||||
      <el-input v-model="query.code" clearable placeholder="单号" style="width: 185px;" class="filter-item"
 | 
			
		||||
                @keyup.enter.native="crud.toQuery"/>
 | 
			
		||||
      <el-select v-model="query.areaCode" clearable placeholder="库区" value-key="id" class="filter-item"
 | 
			
		||||
                 @keyup.enter.native="crud.toQuery">
 | 
			
		||||
        <el-option
 | 
			
		||||
          style="width: 180px"
 | 
			
		||||
          v-for="item in areaOptions"
 | 
			
		||||
          :key="item.id"
 | 
			
		||||
          :label="item.code"
 | 
			
		||||
          :value="item.code"
 | 
			
		||||
        >
 | 
			
		||||
        </el-option>
 | 
			
		||||
      </el-select>
 | 
			
		||||
      <el-input v-model="query.cusCode" clearable placeholder="箱单号" style="width: 185px;" class="filter-item"
 | 
			
		||||
                @keyup.enter.native="crud.toQuery"/>
 | 
			
		||||
      <el-input v-model="query.relatedBill1" clearable placeholder="发票号" style="width: 185px;" class="filter-item"
 | 
			
		||||
                @keyup.enter.native="crud.toQuery"/>
 | 
			
		||||
      <AreaSelect v-model="query.areaCode" :value-key="'id'" :bexb=false placeholder="请选择库区" style="width: 150px;" class="filter-item" @change="getChangeAreaVule"/>
 | 
			
		||||
 | 
			
		||||
      <!--      <el-input v-model="query.orderDate" clearable placeholder="订单日期" style="width: 185px;" class="filter-item" @keyup.enter.native="crud.toQuery" />-->
 | 
			
		||||
      <!--      <label class="el-form-item-label">状态</label>-->
 | 
			
		||||
| 
						 | 
				
			
			@ -101,7 +95,7 @@
 | 
			
		|||
          <el-form-item label="单号" prop="code">
 | 
			
		||||
            <el-input :disabled="true" v-model="form.code" style="width: 200px;"/>
 | 
			
		||||
          </el-form-item>
 | 
			
		||||
          <el-form-item label="托盘号" prop="code">
 | 
			
		||||
          <el-form-item label="箱单号" prop="code">
 | 
			
		||||
            <el-input v-model="form.cusCode" style="width: 200px;"/>
 | 
			
		||||
          </el-form-item>
 | 
			
		||||
          <el-form-item label="发票号" prop="code">
 | 
			
		||||
| 
						 | 
				
			
			@ -242,7 +236,7 @@
 | 
			
		|||
        <el-table-column type="selection" width="55"/>
 | 
			
		||||
        <el-table-column prop="id" label="序号" width="80px" align="center"/>
 | 
			
		||||
        <el-table-column prop="code" label="单号" align="center"/>
 | 
			
		||||
        <el-table-column prop="cusCode" label="托盘号"  align="center"/>
 | 
			
		||||
        <el-table-column prop="cusCode" label="箱单号"  align="center"/>
 | 
			
		||||
        <el-table-column prop="relatedBill1" label="发票号" align="center"/>
 | 
			
		||||
        <el-table-column prop="billType.name" label="单据类型"/>
 | 
			
		||||
        <el-table-column prop="status" label="状态" align="center">
 | 
			
		||||
| 
						 | 
				
			
			@ -304,6 +298,7 @@ import UploadExcelComponent from '@/components/UploadExcel/index.vue'
 | 
			
		|||
import {cancelReceiv} from "@/api/xppRecord";
 | 
			
		||||
import BomAccountPointSelect from "@/views/generic-component/BomAccountPointSelect.vue";
 | 
			
		||||
import PointSelect from "@/views/generic-component/PointSelect.vue";
 | 
			
		||||
import AreaSelect from "@/views/generic-component/AreaSelect.vue";
 | 
			
		||||
 | 
			
		||||
const defaultForm = {
 | 
			
		||||
  id: null,
 | 
			
		||||
| 
						 | 
				
			
			@ -336,6 +331,7 @@ const defaultForm = {
 | 
			
		|||
export default {
 | 
			
		||||
  name: 'Asn',
 | 
			
		||||
  components: {
 | 
			
		||||
    AreaSelect,
 | 
			
		||||
    PointSelect,
 | 
			
		||||
    BomAccountPointSelect,
 | 
			
		||||
    pagination, crudOperation, rrOperation, udOperation, DateRangePicker, UploadExcelComponent},
 | 
			
		||||
| 
						 | 
				
			
			@ -598,6 +594,9 @@ export default {
 | 
			
		|||
    getChangeVule(dben) {
 | 
			
		||||
      this.plsjForm.pointId = dben.id;
 | 
			
		||||
    },
 | 
			
		||||
    getChangeAreaVule(dben) {
 | 
			
		||||
      this.query.areaCode = dben.code;
 | 
			
		||||
    },
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
    // 导入相关方法
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -3,78 +3,67 @@
 | 
			
		|||
    <el-card class="box-card">
 | 
			
		||||
      <div slot="header" class="clearfix">
 | 
			
		||||
        <!--     卡片头   -->
 | 
			
		||||
        <div style="width: 100%;height: 180px;position: relative;">
 | 
			
		||||
        <div style="width: 100%;height: 100px;position: relative;">
 | 
			
		||||
          <el-form ref="asnFromRes" :model="asnFrom" :rules="rules" size="small" label-width="80px">
 | 
			
		||||
            <div style="width: 60%;height: 180px;float: left">
 | 
			
		||||
              <el-form-item label="库区" prop="area">
 | 
			
		||||
                <el-select v-model="asnFrom.area" prop="area" value-key="id" style="width: 100%"
 | 
			
		||||
                           placeholder="请选择出库库区" clearable
 | 
			
		||||
                >
 | 
			
		||||
                  <el-option v-for="item in areaOptions" :key="item.id" :label="item.code" :value="item"/>
 | 
			
		||||
                </el-select>
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
              <div style="width: 100%;position: relative;height: 45px;">
 | 
			
		||||
                <div style="width: 50%;float: left">
 | 
			
		||||
                  <el-form-item label="单据类型" prop="billType">
 | 
			
		||||
                    <el-select v-model="asnFrom.billType" value-key="id" style="width:100%"
 | 
			
		||||
                               placeholder="请选择单据类型" clearable
 | 
			
		||||
                    >
 | 
			
		||||
                      <el-option
 | 
			
		||||
                        v-for="item in billTypeOptions"
 | 
			
		||||
                        :key="item.id"
 | 
			
		||||
                        :label="item.name"
 | 
			
		||||
                        :value="item"
 | 
			
		||||
                      />
 | 
			
		||||
                    </el-select>
 | 
			
		||||
                  </el-form-item>
 | 
			
		||||
                </div>
 | 
			
		||||
                <div style="width: 50%;float: right">
 | 
			
		||||
                  <el-form-item label="订单日期" prop="orderDate">
 | 
			
		||||
                    <el-date-picker
 | 
			
		||||
                      style="width: 100%"
 | 
			
		||||
                      v-model="asnFrom.orderDate"
 | 
			
		||||
                      type="date"
 | 
			
		||||
                      value-format="yyyy-MM-dd"
 | 
			
		||||
                      placeholder="选择日期"
 | 
			
		||||
                    >
 | 
			
		||||
                    </el-date-picker>
 | 
			
		||||
                  </el-form-item>
 | 
			
		||||
                </div>
 | 
			
		||||
              </div>
 | 
			
		||||
              <div style="width: 100%;position: relative;height: 45px;">
 | 
			
		||||
                <div style="width: 50%;float: left">
 | 
			
		||||
            <el-row :gutter="20">
 | 
			
		||||
              <el-col :span="8">
 | 
			
		||||
                <el-form-item label="单据类型" prop="billType">
 | 
			
		||||
                  <BillTypeSelect v-model="asnFrom.billType" :value-key="'id'" :bill_code="'XDRK'"/>
 | 
			
		||||
                </el-form-item>
 | 
			
		||||
              </el-col>
 | 
			
		||||
              <el-col :span="8">
 | 
			
		||||
                <el-form-item label="箱单号" prop="cusCode">
 | 
			
		||||
                  <el-input :disabled="false" v-model="asnFrom.cusCode"  style="width: 200px;"/>
 | 
			
		||||
                </el-form-item>
 | 
			
		||||
              </el-col>
 | 
			
		||||
              <el-col :span="8">
 | 
			
		||||
                <el-form-item label="发票号" prop="relatedBill1">
 | 
			
		||||
                  <el-input :disabled="false" v-model="asnFrom.relatedBill1"  style="width: 200px;"/>
 | 
			
		||||
                </el-form-item>
 | 
			
		||||
              </el-col>
 | 
			
		||||
            </el-row>
 | 
			
		||||
            <el-row :gutter="20">
 | 
			
		||||
              <el-col :span="8">
 | 
			
		||||
                  <el-form-item label="单号" prop="code">
 | 
			
		||||
                    <el-input :disabled="true" v-model="asnFrom.code" style="width: 100%"/>
 | 
			
		||||
                    <el-input :disabled="true" v-model="asnFrom.code"  style="width: 200px;"/>
 | 
			
		||||
                  </el-form-item>
 | 
			
		||||
                </div>
 | 
			
		||||
                <div style="width: 50%;float: right">
 | 
			
		||||
              </el-col>
 | 
			
		||||
              <el-col :span="8">
 | 
			
		||||
                  <el-form-item label="订单数量">
 | 
			
		||||
                    <el-input :disabled="true" v-model="asnFrom.orderQuantity" style="width: 100%;"/>
 | 
			
		||||
                    <el-input :disabled="true" v-model="asnFrom.orderQuantity"  style="width: 200px;"/>
 | 
			
		||||
                  </el-form-item>
 | 
			
		||||
                </div>
 | 
			
		||||
              </div>
 | 
			
		||||
              <div style="width: 100%;position: relative;">
 | 
			
		||||
              </el-col>
 | 
			
		||||
              <el-col :span="8">
 | 
			
		||||
                <el-form-item label="订单日期" prop="orderDate" >
 | 
			
		||||
                  <el-date-picker
 | 
			
		||||
                    style="width: 200px;"
 | 
			
		||||
                    v-model="asnFrom.orderDate"
 | 
			
		||||
                    type="date"
 | 
			
		||||
                    value-format="yyyy-MM-dd"
 | 
			
		||||
                    placeholder="选择日期"
 | 
			
		||||
                  >
 | 
			
		||||
                  </el-date-picker>
 | 
			
		||||
                </el-form-item>
 | 
			
		||||
              </el-col>
 | 
			
		||||
            </el-row>
 | 
			
		||||
            <el-row :gutter="20">
 | 
			
		||||
              <el-col :span="14">
 | 
			
		||||
                <el-form-item label="备注:">
 | 
			
		||||
                  <el-input v-model="asnFrom.description" placeholder="请输入备注"
 | 
			
		||||
                  />
 | 
			
		||||
                </el-form-item>
 | 
			
		||||
              </el-col>
 | 
			
		||||
            </el-row>
 | 
			
		||||
                <div style="width: 50%;float: left">
 | 
			
		||||
                  <el-button type="primary" :disabled="asnFrom.code != null" @click="submitFromAsn(asnFrom)">提交
 | 
			
		||||
                  </el-button>
 | 
			
		||||
                </div>
 | 
			
		||||
              </div>
 | 
			
		||||
 | 
			
		||||
            </div>
 | 
			
		||||
            <div style="width: 40%;height: 180px;float: right">
 | 
			
		||||
              <el-form-item label="备注:">
 | 
			
		||||
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
              <el-input v-model="asnFrom.description" type="textarea" :autosize="{ minRows: 5, maxRows: 8}"
 | 
			
		||||
                        placeholder="请输入备注" style="width: 90%;height: 100%;float: right"
 | 
			
		||||
              />
 | 
			
		||||
            </div>
 | 
			
		||||
          </el-form>
 | 
			
		||||
        </div>
 | 
			
		||||
      </div>
 | 
			
		||||
      <!--如果想在工具栏加入更多按钮,可以使用插槽方式, slot = 'left' or 'right'-->
 | 
			
		||||
      <crudOperation :permission="permission" :tableKey="this.$options.name">
 | 
			
		||||
        <el-button
 | 
			
		||||
        <!--<el-button
 | 
			
		||||
          slot="right"
 | 
			
		||||
          class="filter-item"
 | 
			
		||||
          type="primary"
 | 
			
		||||
| 
						 | 
				
			
			@ -94,7 +83,7 @@
 | 
			
		|||
          :loading="logining3"
 | 
			
		||||
        >
 | 
			
		||||
          取消上架
 | 
			
		||||
        </el-button>
 | 
			
		||||
        </el-button>-->
 | 
			
		||||
       <!-- <el-upload
 | 
			
		||||
          class="upload-demo"
 | 
			
		||||
          ref="upload"
 | 
			
		||||
| 
						 | 
				
			
			@ -154,34 +143,20 @@
 | 
			
		|||
        <el-form ref="form" :rules="asnDetailRules" :model="form" size="small" label-width="80px"
 | 
			
		||||
                 style="height: 200px"
 | 
			
		||||
        >
 | 
			
		||||
          <el-form-item label="物料" prop="item" style="float: left">
 | 
			
		||||
            <el-select v-model="form.item" value-key="id" filterable placeholder="请选择品番" style="width: 200px;"
 | 
			
		||||
                       @change="getPointList($event.code,asn)"
 | 
			
		||||
                       clearable
 | 
			
		||||
            >
 | 
			
		||||
              <el-option
 | 
			
		||||
                v-for="item in itemOptions"
 | 
			
		||||
                :key="item.id"
 | 
			
		||||
                :label="item.code"
 | 
			
		||||
                :value="item"
 | 
			
		||||
              >
 | 
			
		||||
                <span style="float: left">{{ item.code }}</span>
 | 
			
		||||
                <span style="float: right; color: #8492a6; font-size: 13px">{{ item.name }}</span>
 | 
			
		||||
              </el-option>
 | 
			
		||||
            </el-select>
 | 
			
		||||
          <el-form-item label="部品品番" prop="item"   style="float: left">
 | 
			
		||||
            <ItemSelect :value-key="'id'" v-model="form.item" />
 | 
			
		||||
          </el-form-item>
 | 
			
		||||
          <el-form-item label="订单数量" prop="orderQty" style="float: left">
 | 
			
		||||
            <el-input v-model="form.orderQty" style="width: 200px;"/>
 | 
			
		||||
          </el-form-item>
 | 
			
		||||
          <el-form-item v-if="pointTF" label="库位" prop="point" style="float: left">
 | 
			
		||||
            <el-select v-model="form.point" value-key="id" filterable placeholder="请选择库位" clearable
 | 
			
		||||
                       style="width: 200px;"
 | 
			
		||||
            >
 | 
			
		||||
          <el-form-item label="税别" prop="propC2"  style="float: left">
 | 
			
		||||
            <el-select v-model="form.propC2" clearable placeholder="税别" style="width: 185px;" class="filter-item"
 | 
			
		||||
                       @keyup.enter.native="crud.toQuery">
 | 
			
		||||
              <el-option
 | 
			
		||||
                v-for="item in pointOptions"
 | 
			
		||||
                :key="item.id"
 | 
			
		||||
                :label="item.code"
 | 
			
		||||
                :value="item"
 | 
			
		||||
                v-for="baseStatus in dict.bonded_type"
 | 
			
		||||
                :key="baseStatus.id"
 | 
			
		||||
                :label="baseStatus.label"
 | 
			
		||||
                :value="baseStatus.value"
 | 
			
		||||
              />
 | 
			
		||||
            </el-select>
 | 
			
		||||
          </el-form-item>
 | 
			
		||||
| 
						 | 
				
			
			@ -248,6 +223,9 @@ import { getBillType } from '@/api/billType'
 | 
			
		|||
import crudAsn from '@/api/asn'
 | 
			
		||||
import { queryBomAccountList } from '@/api/bomAccount'
 | 
			
		||||
import {mapGetters} from "vuex";
 | 
			
		||||
import PointSelect from "@/views/generic-component/PointSelect.vue";
 | 
			
		||||
import BillTypeSelect from "@/views/generic-component/BillTypeSelect.vue";
 | 
			
		||||
import ItemSelect from "@/views/generic-component/ItemSelect.vue";
 | 
			
		||||
 | 
			
		||||
const defaultForm = {
 | 
			
		||||
  id: null,
 | 
			
		||||
| 
						 | 
				
			
			@ -286,9 +264,12 @@ const asnQuery = {
 | 
			
		|||
}
 | 
			
		||||
export default {
 | 
			
		||||
  name: 'viewAsnDetail',
 | 
			
		||||
  components: { DateRangePicker, AsnTask, Search, pagination, crudOperation, rrOperation, udOperation },
 | 
			
		||||
  components: {
 | 
			
		||||
    ItemSelect,
 | 
			
		||||
    BillTypeSelect,
 | 
			
		||||
    PointSelect, DateRangePicker, AsnTask, Search, pagination, crudOperation, rrOperation, udOperation },
 | 
			
		||||
  mixins: [presenter(), header(), form(defaultForm), crud()],
 | 
			
		||||
  dicts: ['asn_status'],
 | 
			
		||||
  dicts: ['asn_status','bonded_type'],
 | 
			
		||||
  cruds() {
 | 
			
		||||
    return CRUD({
 | 
			
		||||
      title: '收货数据',
 | 
			
		||||
| 
						 | 
				
			
			@ -333,8 +314,8 @@ export default {
 | 
			
		|||
        del: ['admin', 'asnDetail:del']
 | 
			
		||||
      },
 | 
			
		||||
      rules: {
 | 
			
		||||
        area: [
 | 
			
		||||
          { required: true, message: '出库库区不能为空', trigger: 'blur' }
 | 
			
		||||
        cusCode: [
 | 
			
		||||
          { required: true, message: '箱单号不能为空', trigger: 'blur' }
 | 
			
		||||
        ],
 | 
			
		||||
        orderDate: [{
 | 
			
		||||
          required: true, message: '订单日期不能为空', trigger: 'blur'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -3,72 +3,49 @@
 | 
			
		|||
    <el-card class="box-card">
 | 
			
		||||
      <div slot="header" class="clearfix">
 | 
			
		||||
        <!--     卡片头   -->
 | 
			
		||||
        <div style="width: 100%;height: 180px;position: relative;">
 | 
			
		||||
        <div style="width: 100%;height: 100px;position: relative;">
 | 
			
		||||
          <el-form ref="asnFromRes" :model="asnFrom" :rules="rules" size="small" label-width="80px">
 | 
			
		||||
            <div style="width: 60%;height: 180px;float: left">
 | 
			
		||||
              <el-form-item label="库区" prop="area">
 | 
			
		||||
                <el-select v-model="asnFrom.area" prop="area" value-key="id" style="width: 100%"
 | 
			
		||||
                           placeholder="请选择出库库区" clearable
 | 
			
		||||
                >
 | 
			
		||||
                  <el-option v-for="item in areaOptions" :key="item.id" :label="item.code" :value="item"/>
 | 
			
		||||
                </el-select>
 | 
			
		||||
            <el-row :gutter="20">
 | 
			
		||||
              <el-col :span="8">
 | 
			
		||||
                <el-form-item label="单据类型" prop="billType">
 | 
			
		||||
                    <BillTypeSelect v-model="asnFrom.billType" :value-key="'id'" :bill_code="'XBRK'"/>
 | 
			
		||||
                </el-form-item>
 | 
			
		||||
              </el-col>
 | 
			
		||||
              <el-col :span="8">
 | 
			
		||||
              <el-form-item label="单号" prop="code">
 | 
			
		||||
                <el-input :disabled="true" v-model="asnFrom.code"  style="width: 200px;"/>
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
              <div style="width: 100%;position: relative;height: 45px;">
 | 
			
		||||
                <div style="width: 50%;float: left">
 | 
			
		||||
                  <el-form-item label="单据类型" prop="billType">
 | 
			
		||||
                    <el-select v-model="asnFrom.billType" value-key="id" style="width:100%"
 | 
			
		||||
                               placeholder="请选择单据类型" clearable
 | 
			
		||||
                    >
 | 
			
		||||
                      <el-option
 | 
			
		||||
                        v-for="item in billTypeOptions"
 | 
			
		||||
                        :key="item.id"
 | 
			
		||||
                        :label="item.name"
 | 
			
		||||
                        :value="item"
 | 
			
		||||
                      />
 | 
			
		||||
                    </el-select>
 | 
			
		||||
                  </el-form-item>
 | 
			
		||||
                </div>
 | 
			
		||||
                <div style="width: 50%;float: right">
 | 
			
		||||
                  <el-form-item label="订单日期" prop="orderDate">
 | 
			
		||||
                    <el-date-picker
 | 
			
		||||
                      style="width: 100%"
 | 
			
		||||
                      v-model="asnFrom.orderDate"
 | 
			
		||||
                      type="date"
 | 
			
		||||
                      value-format="yyyy-MM-dd"
 | 
			
		||||
                      placeholder="选择日期"
 | 
			
		||||
                    >
 | 
			
		||||
                    </el-date-picker>
 | 
			
		||||
                  </el-form-item>
 | 
			
		||||
                </div>
 | 
			
		||||
              </div>
 | 
			
		||||
              <div style="width: 100%;position: relative;height: 45px;">
 | 
			
		||||
                <div style="width: 50%;float: left">
 | 
			
		||||
                  <el-form-item label="单号" prop="code">
 | 
			
		||||
                    <el-input :disabled="true" v-model="asnFrom.code" style="width: 100%"/>
 | 
			
		||||
                  </el-form-item>
 | 
			
		||||
                </div>
 | 
			
		||||
                <div style="width: 50%;float: right">
 | 
			
		||||
                  <el-form-item label="订单数量">
 | 
			
		||||
                    <el-input :disabled="true" v-model="asnFrom.orderQuantity" style="width: 100%;"/>
 | 
			
		||||
                  </el-form-item>
 | 
			
		||||
                </div>
 | 
			
		||||
              </div>
 | 
			
		||||
              <div style="width: 100%;position: relative;">
 | 
			
		||||
              </el-col>
 | 
			
		||||
              <el-col :span="8">
 | 
			
		||||
                <el-form-item label="订单数量">
 | 
			
		||||
                  <el-input :disabled="true" v-model="asnFrom.orderQuantity"  style="width: 200px;"/>
 | 
			
		||||
                </el-form-item>
 | 
			
		||||
              </el-col>
 | 
			
		||||
            </el-row>
 | 
			
		||||
            <el-row :gutter="20">
 | 
			
		||||
              <el-col :span="8">
 | 
			
		||||
                <el-form-item label="订单日期" prop="orderDate" >
 | 
			
		||||
                  <el-date-picker
 | 
			
		||||
                    style="width: 200px;"
 | 
			
		||||
                    v-model="asnFrom.orderDate"
 | 
			
		||||
                    type="date"
 | 
			
		||||
                    value-format="yyyy-MM-dd"
 | 
			
		||||
                    placeholder="选择日期"
 | 
			
		||||
                  >
 | 
			
		||||
                  </el-date-picker>
 | 
			
		||||
                </el-form-item>
 | 
			
		||||
              </el-col>
 | 
			
		||||
              <el-col :span="14">
 | 
			
		||||
                <el-form-item label="备注:">
 | 
			
		||||
                  <el-input v-model="asnFrom.description" placeholder="请输入备注"
 | 
			
		||||
                  />
 | 
			
		||||
                </el-form-item>
 | 
			
		||||
              </el-col>
 | 
			
		||||
            </el-row>
 | 
			
		||||
                <div style="width: 50%;float: left">
 | 
			
		||||
                  <el-button type="primary" :disabled="asnFrom.code != null" @click="submitFromAsn(asnFrom)">提交
 | 
			
		||||
                  </el-button>
 | 
			
		||||
                </div>
 | 
			
		||||
              </div>
 | 
			
		||||
 | 
			
		||||
            </div>
 | 
			
		||||
            <div style="width: 40%;height: 180px;float: right">
 | 
			
		||||
              <el-form-item label="备注:">
 | 
			
		||||
 | 
			
		||||
              </el-form-item>
 | 
			
		||||
              <el-input v-model="asnFrom.description" type="textarea" :autosize="{ minRows: 5, maxRows: 8}"
 | 
			
		||||
                        placeholder="请输入备注" style="width: 90%;height: 100%;float: right"
 | 
			
		||||
              />
 | 
			
		||||
            </div>
 | 
			
		||||
          </el-form>
 | 
			
		||||
        </div>
 | 
			
		||||
      </div>
 | 
			
		||||
| 
						 | 
				
			
			@ -82,18 +59,7 @@
 | 
			
		|||
          @click="rkAndQxButtonM(1)"
 | 
			
		||||
          :loading="logining1"
 | 
			
		||||
        >
 | 
			
		||||
          整单入库
 | 
			
		||||
        </el-button>
 | 
			
		||||
        <el-button
 | 
			
		||||
          slot="right"
 | 
			
		||||
          class="filter-item"
 | 
			
		||||
          type="primary"
 | 
			
		||||
          size="mini"
 | 
			
		||||
          :disabled="!(crud.selections.length === 1)"
 | 
			
		||||
          @click="dyrkM(crud.selections)"
 | 
			
		||||
          :loading="logining2"
 | 
			
		||||
        >
 | 
			
		||||
          单一入库
 | 
			
		||||
          整单上架
 | 
			
		||||
        </el-button>
 | 
			
		||||
        <el-button
 | 
			
		||||
          slot="right"
 | 
			
		||||
| 
						 | 
				
			
			@ -104,9 +70,9 @@
 | 
			
		|||
          @click="qxshM(crud.selections)"
 | 
			
		||||
          :loading="logining3"
 | 
			
		||||
        >
 | 
			
		||||
          取消收货
 | 
			
		||||
          取消上架
 | 
			
		||||
        </el-button>
 | 
			
		||||
        <el-upload
 | 
			
		||||
       <!-- <el-upload
 | 
			
		||||
          class="upload-demo"
 | 
			
		||||
          ref="upload"
 | 
			
		||||
          slot='right'
 | 
			
		||||
| 
						 | 
				
			
			@ -118,86 +84,32 @@
 | 
			
		|||
          :headers="headers"
 | 
			
		||||
          :show-file-list="true">
 | 
			
		||||
          <el-button size="mini" type="success" icon="el-icon-upload">导入</el-button>
 | 
			
		||||
        </el-upload>
 | 
			
		||||
        </el-upload>-->
 | 
			
		||||
      </crudOperation>
 | 
			
		||||
      <!--   单一入库   -->
 | 
			
		||||
      <el-dialog title="单一入库" :visible.sync="dyrkTf" width="500px">
 | 
			
		||||
        <!--        <el-dialog-->
 | 
			
		||||
        <!--          width="30%"-->
 | 
			
		||||
        <!--          title="内层 Dialog"-->
 | 
			
		||||
        <!--          :visible.sync="innerVisible"-->
 | 
			
		||||
        <!--          append-to-body>-->
 | 
			
		||||
        <!--        </el-dialog>-->
 | 
			
		||||
        <el-form ref="formdyrk" :model="asnDetailButton" label-width="80px">
 | 
			
		||||
          <el-form-item label="数量" prop="oneRNumber" :rules="[
 | 
			
		||||
      { required: true, message: '数量不能为空'},
 | 
			
		||||
      { type: 'number', message: '数量必须为数字值'}
 | 
			
		||||
        ]"
 | 
			
		||||
          >
 | 
			
		||||
            <el-input v-model.number="asnDetailButton.oneRNumber" placeholder="请输入数量" style="width: 250px"/>
 | 
			
		||||
          </el-form-item>
 | 
			
		||||
          <el-form-item label="库位" prop="oneRPoint" :rules="[
 | 
			
		||||
           { required: true, message: '库位不能为空'}
 | 
			
		||||
        ]"
 | 
			
		||||
          >
 | 
			
		||||
            <el-select v-model="asnDetailButton.oneRPoint" value-key="id" placeholder="请选择库位" style="width: 250px">
 | 
			
		||||
              <el-option
 | 
			
		||||
                v-for="(item,index) in pointOptions"
 | 
			
		||||
                :key="item.id+''+item.code"
 | 
			
		||||
                :label="item.code"
 | 
			
		||||
                :value="item"
 | 
			
		||||
              >
 | 
			
		||||
              </el-option>
 | 
			
		||||
            </el-select>
 | 
			
		||||
          </el-form-item>
 | 
			
		||||
 | 
			
		||||
        </el-form>
 | 
			
		||||
 | 
			
		||||
        <div slot="footer" class="dialog-footer">
 | 
			
		||||
          <el-button @click="dyrkTf = false">取 消</el-button>
 | 
			
		||||
          <el-button type="primary" @click="rkAndQxButtonM(2)">确认</el-button>
 | 
			
		||||
        </div>
 | 
			
		||||
      </el-dialog>
 | 
			
		||||
      <!--表单组件-->
 | 
			
		||||
      <el-dialog :close-on-click-modal="false" :before-close="crud.cancelCU" :visible.sync="crud.status.cu > 0"
 | 
			
		||||
                 :title="crud.status.title" width="400px"
 | 
			
		||||
      >
 | 
			
		||||
        <el-form ref="form" :rules="asnDetailRules" :model="form" size="small" label-width="80px"
 | 
			
		||||
                 style="height: 200px"
 | 
			
		||||
        <el-form ref="form" :rules="asnDetailRules" :model="form" size="small" label-width="100px"
 | 
			
		||||
                 style="height: 300px"
 | 
			
		||||
        >
 | 
			
		||||
          <el-form-item label="物料" prop="item" style="float: left">
 | 
			
		||||
            <el-select v-model="form.item" value-key="id" filterable placeholder="请选择品番" style="width: 200px;"
 | 
			
		||||
                       @change="getPointList($event.code,asn)"
 | 
			
		||||
                       clearable
 | 
			
		||||
            >
 | 
			
		||||
              <el-option
 | 
			
		||||
                v-for="item in itemOptions"
 | 
			
		||||
                :key="item.id"
 | 
			
		||||
                :label="item.code"
 | 
			
		||||
                :value="item"
 | 
			
		||||
              >
 | 
			
		||||
                <span style="float: left">{{ item.code }}</span>
 | 
			
		||||
                <span style="float: right; color: #8492a6; font-size: 13px">{{ item.name }}</span>
 | 
			
		||||
              </el-option>
 | 
			
		||||
            </el-select>
 | 
			
		||||
          <el-form-item label="制造库位" prop="zzkwCode">
 | 
			
		||||
            <BomAccountPointSelect v-model="form.point.code" :value-key="'bom_account_id'" @change="getChangeVule"/>
 | 
			
		||||
          </el-form-item>
 | 
			
		||||
          <el-form-item label="订单数量" prop="orderQty" style="float: left">
 | 
			
		||||
            <el-input v-model="form.orderQty" style="width: 200px;"/>
 | 
			
		||||
          <el-form-item label="品番">
 | 
			
		||||
            <el-input v-model="form.item.code" />
 | 
			
		||||
          </el-form-item>
 | 
			
		||||
          <el-form-item v-if="pointTF" label="库位" prop="point" style="float: left">
 | 
			
		||||
            <el-select v-model="form.point" value-key="id" filterable placeholder="请选择库位" clearable
 | 
			
		||||
                       style="width: 200px;"
 | 
			
		||||
            >
 | 
			
		||||
              <el-option
 | 
			
		||||
                v-for="item in pointOptions"
 | 
			
		||||
                :key="item.id"
 | 
			
		||||
                :label="item.code"
 | 
			
		||||
                :value="item"
 | 
			
		||||
              />
 | 
			
		||||
            </el-select>
 | 
			
		||||
          <el-form-item label="品名">
 | 
			
		||||
            <el-input v-model="form.item.name" />
 | 
			
		||||
          </el-form-item>
 | 
			
		||||
          <el-form-item label="备注" prop="remark" style="float: left">
 | 
			
		||||
            <el-input type="textarea" :rows="2" v-model="form.remark" style="width: 200px;"/>
 | 
			
		||||
          <el-form-item label="数量">
 | 
			
		||||
            <el-input v-model="form.orderQty" />
 | 
			
		||||
          </el-form-item>
 | 
			
		||||
          <el-form-item label="税别">
 | 
			
		||||
            <el-input v-model="form.propC2"/>
 | 
			
		||||
          </el-form-item>
 | 
			
		||||
          <el-form-item label="备注">
 | 
			
		||||
            <el-input v-model="form.remark" :rows="3" type="textarea" style="width: 270px;"/>
 | 
			
		||||
          </el-form-item>
 | 
			
		||||
        </el-form>
 | 
			
		||||
        <div slot="footer" class="dialog-footer">
 | 
			
		||||
| 
						 | 
				
			
			@ -210,47 +122,15 @@
 | 
			
		|||
                @selection-change="crud.selectionChangeHandler" :height="crud.tableHeight"
 | 
			
		||||
      >
 | 
			
		||||
        <el-table-column type="selection" width="55"/>
 | 
			
		||||
        <el-table-column prop="item.code " label="品番号" width="100px">
 | 
			
		||||
          <template slot-scope="scope">
 | 
			
		||||
            <div>{{ scope.row.item == null ? '' : scope.row.item.code }}</div>
 | 
			
		||||
          </template>
 | 
			
		||||
        </el-table-column>
 | 
			
		||||
        <el-table-column prop="item.name" label="品番" width="100px">
 | 
			
		||||
          <template slot-scope="scope">
 | 
			
		||||
            <div>{{ scope.row.item == null ? '' : scope.row.item.name }}</div>
 | 
			
		||||
          </template>
 | 
			
		||||
        </el-table-column>
 | 
			
		||||
        <el-table-column :show-overflow-tooltip="true" prop="item.unit" label="单位">
 | 
			
		||||
          <template slot-scope="scope">
 | 
			
		||||
            <div>{{ scope.row.item == null ? '' : scope.row.item.unit }}</div>
 | 
			
		||||
          </template>
 | 
			
		||||
        </el-table-column>
 | 
			
		||||
        <el-table-column :show-overflow-tooltip="true" prop="orderQty" label="订单数量">
 | 
			
		||||
          <template slot-scope="scope">
 | 
			
		||||
            <div>{{ scope.row == null ? '' : scope.row.orderQty }}</div>
 | 
			
		||||
          </template>
 | 
			
		||||
        </el-table-column>
 | 
			
		||||
        <el-table-column :show-overflow-tooltip="true" prop="receivedQty" label="收货数量">
 | 
			
		||||
          <template slot-scope="scope">
 | 
			
		||||
            <div>{{ scope.row == null ? '' : scope.row.receivedQty }}</div>
 | 
			
		||||
          </template>
 | 
			
		||||
        </el-table-column>
 | 
			
		||||
        <el-table-column :show-overflow-tooltip="true" prop="point.code" label="库位">
 | 
			
		||||
          <template slot-scope="scope">
 | 
			
		||||
            <div>{{ scope.row.point == null ? '' : scope.row.point.code }}</div>
 | 
			
		||||
          </template>
 | 
			
		||||
        </el-table-column>
 | 
			
		||||
        <el-table-column :show-overflow-tooltip="true" prop="propC1" label="批次号">
 | 
			
		||||
          <template slot-scope="scope">
 | 
			
		||||
            <div>{{ scope.row.propC1 }}</div>
 | 
			
		||||
          </template>
 | 
			
		||||
        </el-table-column>
 | 
			
		||||
        <el-table-column :show-overflow-tooltip="true" prop="propD1" label="生产日期">
 | 
			
		||||
          <template slot-scope="scope">
 | 
			
		||||
            <div>{{ scope.row.propD1 }}</div>
 | 
			
		||||
          </template>
 | 
			
		||||
        </el-table-column>
 | 
			
		||||
        <el-table-column :show-overflow-tooltip="true" prop="remark" label="备注">
 | 
			
		||||
        <el-table-column prop="item.code" label="品番"/>
 | 
			
		||||
        <el-table-column prop="item.name" label="品名"/>
 | 
			
		||||
        <el-table-column prop="po" label="po"/>
 | 
			
		||||
        <el-table-column prop="orderQty" label="订单数量"/>
 | 
			
		||||
        <el-table-column prop="receivedQty" label="收货数量"/>
 | 
			
		||||
        <el-table-column prop="point.code" label="库位"/>
 | 
			
		||||
        <el-table-column prop="propC1" label="批次号"/>
 | 
			
		||||
        <el-table-column prop="propC2" label="税别"/>
 | 
			
		||||
        <el-table-column prop="remark" label="备注">
 | 
			
		||||
          <template slot-scope="scope">
 | 
			
		||||
            <div>{{ scope.row.remark }}</div>
 | 
			
		||||
          </template>
 | 
			
		||||
| 
						 | 
				
			
			@ -291,16 +171,26 @@ import { getBillType } from '@/api/billType'
 | 
			
		|||
import crudAsn from '@/api/asn'
 | 
			
		||||
import { queryBomAccountList } from '@/api/bomAccount'
 | 
			
		||||
import {mapGetters} from "vuex";
 | 
			
		||||
import PointSelect from "@/views/generic-component/PointSelect.vue";
 | 
			
		||||
import BillTypeSelect from "@/views/generic-component/BillTypeSelect.vue";
 | 
			
		||||
import ItemSelect from "@/views/generic-component/ItemSelect.vue";
 | 
			
		||||
import BomAccountPointSelect from "@/views/generic-component/BomAccountPointSelect.vue";
 | 
			
		||||
 | 
			
		||||
const defaultForm = {
 | 
			
		||||
  id: null,
 | 
			
		||||
  asn: null,
 | 
			
		||||
  item: null,
 | 
			
		||||
  item: {id:null,code:null,name:null},
 | 
			
		||||
  bom_account_id: null,
 | 
			
		||||
  item_code:null,
 | 
			
		||||
  item_name:null,
 | 
			
		||||
  item_id:null,
 | 
			
		||||
  zzkw_code:null,
 | 
			
		||||
  point_id:null,
 | 
			
		||||
  stock: null,
 | 
			
		||||
  lineNo: null,
 | 
			
		||||
  po: null,
 | 
			
		||||
  status: 'OPEN',
 | 
			
		||||
  point: null,
 | 
			
		||||
  point: {id:null,code:null},
 | 
			
		||||
  orderQty: 0,
 | 
			
		||||
  receivedQty: 0,
 | 
			
		||||
  moveQty: 0,
 | 
			
		||||
| 
						 | 
				
			
			@ -329,9 +219,13 @@ const asnQuery = {
 | 
			
		|||
}
 | 
			
		||||
export default {
 | 
			
		||||
  name: 'viewXbDetail',
 | 
			
		||||
  components: { DateRangePicker, AsnTask, Search, pagination, crudOperation, rrOperation, udOperation },
 | 
			
		||||
  components: {
 | 
			
		||||
    BomAccountPointSelect,
 | 
			
		||||
    ItemSelect,
 | 
			
		||||
    BillTypeSelect,
 | 
			
		||||
    PointSelect, DateRangePicker, AsnTask, Search, pagination, crudOperation, rrOperation, udOperation },
 | 
			
		||||
  mixins: [presenter(), header(), form(defaultForm), crud()],
 | 
			
		||||
  dicts: ['asn_status'],
 | 
			
		||||
  dicts: ['asn_status','bonded_type'],
 | 
			
		||||
  cruds() {
 | 
			
		||||
    return CRUD({
 | 
			
		||||
      title: '收货数据',
 | 
			
		||||
| 
						 | 
				
			
			@ -376,8 +270,8 @@ export default {
 | 
			
		|||
        del: ['admin', 'asnDetail:del']
 | 
			
		||||
      },
 | 
			
		||||
      rules: {
 | 
			
		||||
        area: [
 | 
			
		||||
          { required: true, message: '出库库区不能为空', trigger: 'blur' }
 | 
			
		||||
        cusCode: [
 | 
			
		||||
          { required: true, message: '箱单号不能为空', trigger: 'blur' }
 | 
			
		||||
        ],
 | 
			
		||||
        orderDate: [{
 | 
			
		||||
          required: true, message: '订单日期不能为空', trigger: 'blur'
 | 
			
		||||
| 
						 | 
				
			
			@ -387,9 +281,6 @@ export default {
 | 
			
		|||
        }]
 | 
			
		||||
      },
 | 
			
		||||
      asnDetailRules: {
 | 
			
		||||
        item: [
 | 
			
		||||
          { required: true, message: '物料不能为空', trigger: 'blur' }
 | 
			
		||||
        ],
 | 
			
		||||
        orderQty: [
 | 
			
		||||
          { required: true, message: '订单数量不能为空', trigger: 'blur' }
 | 
			
		||||
        ]
 | 
			
		||||
| 
						 | 
				
			
			@ -457,17 +348,7 @@ export default {
 | 
			
		|||
  //   clearInterval(this.clearTimeSet);
 | 
			
		||||
  // },
 | 
			
		||||
  mounted() {
 | 
			
		||||
    //查询公用的下拉数据
 | 
			
		||||
    this.getOnceOptionAll()
 | 
			
		||||
    //判断是否是新增主表和是查看明细新政附表
 | 
			
		||||
    // setTimeout(() => {
 | 
			
		||||
    //   // 方法区
 | 
			
		||||
    //   this.asnTF()
 | 
			
		||||
    //   this.crud.toQuery()
 | 
			
		||||
    // }, 100);
 | 
			
		||||
    // this.asnTF()
 | 
			
		||||
    //定时查询 1000 为1s
 | 
			
		||||
    // this.setTime();
 | 
			
		||||
 | 
			
		||||
  },
 | 
			
		||||
  methods: {
 | 
			
		||||
    // 钩子:在获取表格数据之前执行,false 则代表不获取数据
 | 
			
		||||
| 
						 | 
				
			
			@ -489,38 +370,6 @@ export default {
 | 
			
		|||
      //存当前时间
 | 
			
		||||
      this.asnFrom.orderDate = `${year}-${month}-${day}`
 | 
			
		||||
    },
 | 
			
		||||
    //查询库位
 | 
			
		||||
    getPointList(code, data) {
 | 
			
		||||
      if (data.area.bexb) {
 | 
			
		||||
        this.pointTF=true;
 | 
			
		||||
        let selectDate = { rAreaCode: null, itemCode: null }
 | 
			
		||||
        selectDate.rAreaCode = data.area.code
 | 
			
		||||
        selectDate.itemCode = code
 | 
			
		||||
        // if (selectDate.rAreaCode === null) {
 | 
			
		||||
        // if (selectDate.rAreaCode === null) {
 | 
			
		||||
        //   this.$message.error('主表未绑定库区')
 | 
			
		||||
        //   return
 | 
			
		||||
        // }
 | 
			
		||||
        queryBomAccountList(selectDate).then(res => {
 | 
			
		||||
          this.pointOptions = []
 | 
			
		||||
          if (res != null) {
 | 
			
		||||
            console.log(res)
 | 
			
		||||
            let data_ = []
 | 
			
		||||
            for (const re of res) {
 | 
			
		||||
              data_.push(re.zPoint)
 | 
			
		||||
            }
 | 
			
		||||
            this.pointOptions = this.filterListObj(data_)
 | 
			
		||||
          }
 | 
			
		||||
          if (!(this.pointOptions.length > 0)) {
 | 
			
		||||
            queryPointList({ code: 'ZZKW' }).then(re => {
 | 
			
		||||
              this.pointOptions = re
 | 
			
		||||
            })
 | 
			
		||||
          }
 | 
			
		||||
        })
 | 
			
		||||
      }else {
 | 
			
		||||
        this.pointTF=false;
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    //过滤重复数据
 | 
			
		||||
    filterListObj(listObj) {
 | 
			
		||||
      let date = []
 | 
			
		||||
| 
						 | 
				
			
			@ -538,32 +387,6 @@ export default {
 | 
			
		|||
      })
 | 
			
		||||
      return date
 | 
			
		||||
    },
 | 
			
		||||
    //查询公用的下拉数据
 | 
			
		||||
    getOnceOptionAll() {
 | 
			
		||||
      //物料数据
 | 
			
		||||
      queryItemAll({}).then(res => {
 | 
			
		||||
        this.itemOptions = res
 | 
			
		||||
      }).catch(e => {
 | 
			
		||||
        this.$message({
 | 
			
		||||
          showClose: true,
 | 
			
		||||
          message: '物料加载失败',
 | 
			
		||||
          type: 'error'
 | 
			
		||||
        })
 | 
			
		||||
      })
 | 
			
		||||
      //获取库区数据
 | 
			
		||||
      getAreas().then(res => {
 | 
			
		||||
        this.areaOptions = res
 | 
			
		||||
      })
 | 
			
		||||
      //单据类型
 | 
			
		||||
      getBillType().then(res => {
 | 
			
		||||
        this.billTypeOptions = res
 | 
			
		||||
        for (const re of res) {
 | 
			
		||||
          if (re.code === 'RK') {
 | 
			
		||||
            this.asnFrom.billType = re
 | 
			
		||||
          }
 | 
			
		||||
        }
 | 
			
		||||
      })
 | 
			
		||||
    },
 | 
			
		||||
    //判断是否是新增主表和是查看明细新政附表
 | 
			
		||||
    asnTF() {
 | 
			
		||||
      if (this.asnId != 0) {
 | 
			
		||||
| 
						 | 
				
			
			@ -574,8 +397,6 @@ export default {
 | 
			
		|||
          //将主表数据在新增哪里展示
 | 
			
		||||
          this.asnFrom = res
 | 
			
		||||
          asnQuery.asnId = res.id
 | 
			
		||||
          //查询点位数据
 | 
			
		||||
          this.pointTF = res.area.bexb
 | 
			
		||||
          // if (res.area.besh){
 | 
			
		||||
          //   this.getPointList(res)
 | 
			
		||||
          // }
 | 
			
		||||
| 
						 | 
				
			
			@ -596,7 +417,7 @@ export default {
 | 
			
		|||
            this.asnTF()
 | 
			
		||||
            this.$message.success('添加成功')
 | 
			
		||||
            // this.crud.toQuery()
 | 
			
		||||
            this.$router.push({ path: '/business-asn/viewAsnDetail', query: { ids: res.id } })
 | 
			
		||||
            this.$router.push({ path: '/business-asn/viewXbDetail', query: { ids: res.id } })
 | 
			
		||||
          })
 | 
			
		||||
        } else {
 | 
			
		||||
          return false
 | 
			
		||||
| 
						 | 
				
			
			@ -662,6 +483,16 @@ export default {
 | 
			
		|||
      this.asnDetailButton.asnDetailDataS = data
 | 
			
		||||
      this.rkAndQxButtonM(3)
 | 
			
		||||
    },
 | 
			
		||||
    getChangeVule(dben) {
 | 
			
		||||
      this.form.orderQty=dben.srs;
 | 
			
		||||
      this.form.item.code=dben.item_code;
 | 
			
		||||
      this.form.item.name=dben.item_name;
 | 
			
		||||
      this.form.sourceId=dben.bom_account_id
 | 
			
		||||
      this.form.item.id=dben.item_id;
 | 
			
		||||
      this.form.point.id=dben.zzkw_id;
 | 
			
		||||
      this.form.point.code=dben.zzkw_code;
 | 
			
		||||
      this.form.propC2=dben.bonded;
 | 
			
		||||
    },
 | 
			
		||||
    handleSuccess(response, file, fileList) {
 | 
			
		||||
      this.crud.notify('上传成功', CRUD.NOTIFICATION_TYPE.SUCCESS)
 | 
			
		||||
      this.$refs.upload.clearFiles()
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -385,7 +385,7 @@ export default {
 | 
			
		|||
  name: 'Xbrk',
 | 
			
		||||
  components: {pagination, crudOperation, rrOperation, udOperation, DateRangePicker, UploadExcelComponent},
 | 
			
		||||
  mixins: [presenter(), header(), form(defaultForm), crud()],
 | 
			
		||||
  dicts: ['asn_status'],
 | 
			
		||||
  dicts: ['asn_status','bonded_type'],
 | 
			
		||||
  cruds() {
 | 
			
		||||
    return CRUD({
 | 
			
		||||
      title: 'asn', url: 'api/asn', idField: 'id', sort: 'id,desc', crudMethod: {...crudAsn}, optShow: {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -40,6 +40,22 @@
 | 
			
		|||
          :value="item.value"
 | 
			
		||||
        />
 | 
			
		||||
      </el-select>
 | 
			
		||||
      <el-select
 | 
			
		||||
        v-model="query.bonded"
 | 
			
		||||
        clearable
 | 
			
		||||
        size="small"
 | 
			
		||||
        placeholder="税别"
 | 
			
		||||
        class="filter-item"
 | 
			
		||||
        style="width: 150px"
 | 
			
		||||
        @change="crud.toQuery"
 | 
			
		||||
      >
 | 
			
		||||
        <el-option
 | 
			
		||||
          v-for="item in dict.bonded_type"
 | 
			
		||||
          :key="item.id"
 | 
			
		||||
          :label="item.label"
 | 
			
		||||
          :value="item.value"
 | 
			
		||||
        />
 | 
			
		||||
      </el-select>
 | 
			
		||||
 | 
			
		||||
      <el-input v-model="query.ddbh" clearable placeholder="订单编号" style="width: 185px;" class="filter-item"
 | 
			
		||||
                @keyup.enter.native="crud.toQuery"
 | 
			
		||||
| 
						 | 
				
			
			@ -430,7 +446,7 @@ export default {
 | 
			
		|||
      }
 | 
			
		||||
    })
 | 
			
		||||
  },
 | 
			
		||||
  dicts: ['xxp_status', 'supplier_compare','boolean_status','base_staus'],
 | 
			
		||||
  dicts: ['xxp_status', 'supplier_compare','boolean_status','bonded_type','base_staus'],
 | 
			
		||||
  data() {
 | 
			
		||||
    return {
 | 
			
		||||
      collectFromFlag: false,
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -40,6 +40,22 @@
 | 
			
		|||
          :value="item.value"
 | 
			
		||||
        />
 | 
			
		||||
      </el-select>
 | 
			
		||||
      <el-select
 | 
			
		||||
        v-model="query.bonded"
 | 
			
		||||
        clearable
 | 
			
		||||
        size="small"
 | 
			
		||||
        placeholder="税别"
 | 
			
		||||
        class="filter-item"
 | 
			
		||||
        style="width: 150px"
 | 
			
		||||
        @change="crud.toQuery"
 | 
			
		||||
      >
 | 
			
		||||
        <el-option
 | 
			
		||||
          v-for="item in dict.bonded_type"
 | 
			
		||||
          :key="item.id"
 | 
			
		||||
          :label="item.label"
 | 
			
		||||
          :value="item.value"
 | 
			
		||||
        />
 | 
			
		||||
      </el-select>
 | 
			
		||||
      <el-input v-model="query.ddbh" clearable placeholder="订单编号" style="width: 185px;" class="filter-item"
 | 
			
		||||
                @keyup.enter.native="crud.toQuery"
 | 
			
		||||
      />
 | 
			
		||||
| 
						 | 
				
			
			@ -116,6 +132,8 @@
 | 
			
		|||
        <el-table-column prop="ddbh" label="订单编号"/>
 | 
			
		||||
        <el-table-column prop="fzh" label="分支号" width="60px"/>
 | 
			
		||||
        <el-table-column prop="ac" label="A/C" width="60px"/>
 | 
			
		||||
        <el-table-column prop="contents" label="加工内容" width="60px"/>
 | 
			
		||||
        <el-table-column prop="bonded" label="税别" width="60px"/>
 | 
			
		||||
        <el-table-column prop="srs" label="收容数" width="80px"/>
 | 
			
		||||
        <el-table-column prop="nr_date" label="纳入指示日" width="100px">
 | 
			
		||||
          <template slot-scope="scope">
 | 
			
		||||
| 
						 | 
				
			
			@ -205,7 +223,7 @@ export default {
 | 
			
		|||
      }
 | 
			
		||||
    })
 | 
			
		||||
  },
 | 
			
		||||
  dicts: ['xxp_status', 'supplier_compare','boolean_status','base_staus'],
 | 
			
		||||
  dicts: ['xxp_status', 'supplier_compare','boolean_status','base_staus','bonded_type'],
 | 
			
		||||
  data() {
 | 
			
		||||
    return {
 | 
			
		||||
      collectFromFlag: false,
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -35,6 +35,20 @@
 | 
			
		|||
      <el-input v-model="query.stockCode" clearable placeholder="箱单号" style="width: 150px;"
 | 
			
		||||
                @keyup.enter.native="crud.toQuery"
 | 
			
		||||
      />
 | 
			
		||||
      <el-select
 | 
			
		||||
        v-model="query.bonded"
 | 
			
		||||
        clearable
 | 
			
		||||
        placeholder="税别"
 | 
			
		||||
        style="width: 150px"
 | 
			
		||||
        @change="crud.toQuery"
 | 
			
		||||
      >
 | 
			
		||||
        <el-option
 | 
			
		||||
          v-for="item in dict.bonded_type"
 | 
			
		||||
          :key="item.id"
 | 
			
		||||
          :label="item.label"
 | 
			
		||||
          :value="item.value"
 | 
			
		||||
        />
 | 
			
		||||
      </el-select>
 | 
			
		||||
      <el-date-picker
 | 
			
		||||
        v-model="query.propD1"
 | 
			
		||||
        type="date"
 | 
			
		||||
| 
						 | 
				
			
			@ -311,6 +325,7 @@ export default {
 | 
			
		|||
      }
 | 
			
		||||
    })
 | 
			
		||||
  },
 | 
			
		||||
  dicts: ['bonded_type'],
 | 
			
		||||
  data() {
 | 
			
		||||
    return {
 | 
			
		||||
      points: [],
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -27,6 +27,21 @@
 | 
			
		|||
      <el-input v-model="query.pointCode" clearable placeholder="库位号" style="width: 150px;"
 | 
			
		||||
                @keyup.enter.native="crud.toQuery"
 | 
			
		||||
      />
 | 
			
		||||
      <el-select
 | 
			
		||||
        v-model="query.bonded"
 | 
			
		||||
        clearable
 | 
			
		||||
        size="small"
 | 
			
		||||
        placeholder="税别"
 | 
			
		||||
        style="width: 150px"
 | 
			
		||||
        @change="crud.toQuery"
 | 
			
		||||
      >
 | 
			
		||||
        <el-option
 | 
			
		||||
          v-for="item in dict.bonded_type"
 | 
			
		||||
          :key="item.id"
 | 
			
		||||
          :label="item.label"
 | 
			
		||||
          :value="item.value"
 | 
			
		||||
        />
 | 
			
		||||
      </el-select>
 | 
			
		||||
      <el-date-picker
 | 
			
		||||
        v-model="query.propD1"
 | 
			
		||||
        type="date"
 | 
			
		||||
| 
						 | 
				
			
			@ -250,6 +265,7 @@ export default {
 | 
			
		|||
      },
 | 
			
		||||
    })
 | 
			
		||||
  },
 | 
			
		||||
  dicts: ['bonded_type'],
 | 
			
		||||
  data() {
 | 
			
		||||
    return {
 | 
			
		||||
      points: [],
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -35,6 +35,21 @@
 | 
			
		|||
      <el-input v-model="query.stockCode" clearable placeholder="箱单号" style="width: 150px;"
 | 
			
		||||
                @keyup.enter.native="crud.toQuery"
 | 
			
		||||
      />
 | 
			
		||||
      <el-select
 | 
			
		||||
        v-model="query.bonded"
 | 
			
		||||
        clearable
 | 
			
		||||
        size="small"
 | 
			
		||||
        placeholder="税别"
 | 
			
		||||
        style="width: 150px"
 | 
			
		||||
        @change="crud.toQuery"
 | 
			
		||||
      >
 | 
			
		||||
        <el-option
 | 
			
		||||
          v-for="item in dict.bonded_type"
 | 
			
		||||
          :key="item.id"
 | 
			
		||||
          :label="item.label"
 | 
			
		||||
          :value="item.value"
 | 
			
		||||
        />
 | 
			
		||||
      </el-select>
 | 
			
		||||
      <el-date-picker
 | 
			
		||||
        v-model="query.propD1"
 | 
			
		||||
        type="date"
 | 
			
		||||
| 
						 | 
				
			
			@ -284,6 +299,7 @@ export default {
 | 
			
		|||
      },
 | 
			
		||||
    })
 | 
			
		||||
  },
 | 
			
		||||
  dicts: ['bonded_type'],
 | 
			
		||||
  data() {
 | 
			
		||||
    return {
 | 
			
		||||
      points: [],
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -28,6 +28,21 @@
 | 
			
		|||
      <el-input v-model="query.pointCode" clearable placeholder="库位号" style="width: 150px;"
 | 
			
		||||
                @keyup.enter.native="crud.toQuery"
 | 
			
		||||
      />
 | 
			
		||||
      <el-select
 | 
			
		||||
        v-model="query.bonded"
 | 
			
		||||
        clearable
 | 
			
		||||
        size="small"
 | 
			
		||||
        placeholder="税别"
 | 
			
		||||
        style="width: 150px"
 | 
			
		||||
        @change="crud.toQuery"
 | 
			
		||||
      >
 | 
			
		||||
        <el-option
 | 
			
		||||
          v-for="item in dict.bonded_type"
 | 
			
		||||
          :key="item.id"
 | 
			
		||||
          :label="item.label"
 | 
			
		||||
          :value="item.value"
 | 
			
		||||
        />
 | 
			
		||||
      </el-select>
 | 
			
		||||
      <el-date-picker
 | 
			
		||||
          v-model="query.propD1"
 | 
			
		||||
          type="date"
 | 
			
		||||
| 
						 | 
				
			
			@ -300,6 +315,7 @@ export default {
 | 
			
		|||
      },
 | 
			
		||||
    })
 | 
			
		||||
  },
 | 
			
		||||
  dicts: ['bonded_type'],
 | 
			
		||||
  data() {
 | 
			
		||||
    return {
 | 
			
		||||
      points: [],
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -38,6 +38,22 @@
 | 
			
		|||
      </el-select>
 | 
			
		||||
      <el-input v-model="query.propC1" clearable placeholder="请输入批次号" style="width: 120px;" class="filter-item"
 | 
			
		||||
                @keyup.enter.native="crud.toQuery"/>
 | 
			
		||||
      <el-select
 | 
			
		||||
        v-model="query.bonded"
 | 
			
		||||
        clearable
 | 
			
		||||
        size="small"
 | 
			
		||||
        placeholder="税别"
 | 
			
		||||
        class="filter-item"
 | 
			
		||||
        style="width: 150px"
 | 
			
		||||
        @change="crud.toQuery"
 | 
			
		||||
      >
 | 
			
		||||
        <el-option
 | 
			
		||||
          v-for="item in dict.bonded_type"
 | 
			
		||||
          :key="item.id"
 | 
			
		||||
          :label="item.label"
 | 
			
		||||
          :value="item.value"
 | 
			
		||||
        />
 | 
			
		||||
      </el-select>
 | 
			
		||||
      <date-range-picker v-model="query.createTime" class="date-item" style="width: 100px"/>
 | 
			
		||||
      <rrOperation :crud="crud"/>
 | 
			
		||||
      <!--如果想在工具栏加入更多按钮,可以使用插槽方式, slot = 'left' or 'right'-->
 | 
			
		||||
| 
						 | 
				
			
			@ -69,7 +85,8 @@
 | 
			
		|||
            {{ dict.label.inc_dec[scope.row.incDec] }}
 | 
			
		||||
          </template>
 | 
			
		||||
        </el-table-column>
 | 
			
		||||
        <el-table-column prop="itemKey.propC1" label="批次号"  width="100"/>
 | 
			
		||||
        <el-table-column prop="itemKey.propC1" label="批次号"/>
 | 
			
		||||
        <el-table-column prop="itemKey.propC2" label="税别"/>
 | 
			
		||||
        <el-table-column prop="srcPointCode" label="源库位" width="80px" align="center"/>
 | 
			
		||||
<!--        <el-table-column prop="srcStockCode" label="源容器号"/>-->
 | 
			
		||||
        <el-table-column prop="dstPointCode" label="目标库位" width="80px" align="center"/>
 | 
			
		||||
| 
						 | 
				
			
			@ -146,7 +163,7 @@ export default {
 | 
			
		|||
  name: 'InventoryLog',
 | 
			
		||||
  components: {DateRangePicker, pagination, crudOperation, rrOperation, udOperation},
 | 
			
		||||
  mixins: [presenter(), header(), form(defaultForm), crud()],
 | 
			
		||||
  dicts: ['inv_log_type', 'inc_dec'],
 | 
			
		||||
  dicts: ['inv_log_type', 'inc_dec','bonded_type'],
 | 
			
		||||
  cruds() {
 | 
			
		||||
    return CRUD({
 | 
			
		||||
        title: 'inventoryLog', url: 'api/inventoryLog', idField: 'id', sort: 'id,desc', crudMethod: {...crudInventoryLog},
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -94,7 +94,9 @@
 | 
			
		|||
        </el-table-column>
 | 
			
		||||
        <el-table-column prop="item.extendD3" label="收容数" width="60px" align="center"/>
 | 
			
		||||
        <el-table-column prop="point.code" label="制造库位" width="100px"/>
 | 
			
		||||
        <el-table-column prop="propC2" label="税别"/>
 | 
			
		||||
        <el-table-column prop="area.name" label="拣货库区" width="150px"/>
 | 
			
		||||
        <el-table-column prop="ckPoint.code" label="拣货库位" width="150px"/>
 | 
			
		||||
        <el-table-column prop="orderQty" label="订单数量"/>
 | 
			
		||||
        <el-table-column prop="allocatedQty" label="分配数量"/>
 | 
			
		||||
        <el-table-column prop="pickedQty" label="拣货数量"/>
 | 
			
		||||
| 
						 | 
				
			
			@ -129,7 +131,7 @@
 | 
			
		|||
      <!--表单组件-->
 | 
			
		||||
        <el-dialog title="制造叫料" :visible.sync="cxjlFromFlag" width="500px" >
 | 
			
		||||
        <el-form ref="cxjlFrom" :model="cxjlFrom" :rules="rules" size="small" label-width="80px">
 | 
			
		||||
          <el-form-item label="制造库位" prop="zzkwCode"  :rules=" { required: true, message: '制造库位不能为空', trigger: 'blur' }">
 | 
			
		||||
          <el-form-item label="制造库位" prop="zzkwCode">
 | 
			
		||||
               <BomAccountPointSelect v-model="cxjlFrom.zzkw_code" :value-key="'bom_account_id'" @change="getChangeVule"/>
 | 
			
		||||
          </el-form-item>
 | 
			
		||||
          <el-form-item label="品番">
 | 
			
		||||
| 
						 | 
				
			
			@ -141,13 +143,15 @@
 | 
			
		|||
          <el-form-item label="数量">
 | 
			
		||||
            <el-input v-model="cxjlFrom.order_qty" />
 | 
			
		||||
          </el-form-item>
 | 
			
		||||
          <!--<el-form-item label="指示工厂">
 | 
			
		||||
            <el-input v-model="cxjlFrom.gw_code"  />
 | 
			
		||||
          </el-form-item>-->
 | 
			
		||||
          <el-form-item label="税别">
 | 
			
		||||
            <el-input v-model="cxjlFrom.bonded"/>
 | 
			
		||||
          </el-form-item>
 | 
			
		||||
          <el-form-item label="叫料库区">
 | 
			
		||||
            <el-input  v-model="cxjlFrom.gw_name" />
 | 
			
		||||
          </el-form-item>
 | 
			
		||||
 | 
			
		||||
          <el-form-item label="箱单品番">
 | 
			
		||||
            <el-checkbox v-model="cxjlFrom.beXdPf"/>
 | 
			
		||||
          </el-form-item>
 | 
			
		||||
          <el-form-item label="备注">
 | 
			
		||||
            <el-input v-model="cxjlFrom.remark" :rows="3" type="textarea" style="width: 370px;"/>
 | 
			
		||||
          </el-form-item>
 | 
			
		||||
| 
						 | 
				
			
			@ -220,13 +224,16 @@ export default {
 | 
			
		|||
      radio3: '未拣货',
 | 
			
		||||
      items: [],
 | 
			
		||||
      cxjlFromFlag: false,
 | 
			
		||||
      cxjlFrom: { bom_account_id: null,order_qty:0, item_code:null, item_name:null, zzkw_id:null, zzkw_code:null, gw_code:null, gw_name:null, status:null, remark:null,srs:0  },
 | 
			
		||||
      cxjlFrom: { bom_account_id: null,order_qty:0, item_code:null, item_name:null, zzkw_id:null, bonded:null,zzkw_code:null, gw_code:null, gw_name:null, status:null, remark:null,srs:0,beXdPf:false  },
 | 
			
		||||
      permission: {
 | 
			
		||||
 | 
			
		||||
      },
 | 
			
		||||
      rules: {
 | 
			
		||||
        item: [
 | 
			
		||||
          {required: true, message: '物料必填', trigger: 'blur'}
 | 
			
		||||
          {required: true, message: '品番必填', trigger: 'blur'}
 | 
			
		||||
        ],
 | 
			
		||||
        zzkwCode: [
 | 
			
		||||
          {required: true, message: '制造库位必填', trigger: 'blur'}
 | 
			
		||||
        ]
 | 
			
		||||
      },
 | 
			
		||||
      itemListData: [],
 | 
			
		||||
| 
						 | 
				
			
			@ -370,9 +377,11 @@ export default {
 | 
			
		|||
      this.cxjlFrom.item_id=dben.item_id;
 | 
			
		||||
      this.cxjlFrom.zzkw_id=dben.zzkw_id;
 | 
			
		||||
      this.cxjlFrom.rk_id=dben.rk_id;
 | 
			
		||||
      this.cxjlFrom.bonded=dben.bonded;
 | 
			
		||||
    },
 | 
			
		||||
 | 
			
		||||
    btnZzjl() {
 | 
			
		||||
      console.log(this.cxjlFrom)
 | 
			
		||||
      zzjl(this.cxjlFrom).then(res => {
 | 
			
		||||
        if (res.status == 200) {
 | 
			
		||||
          this.crud.notify(res.message, CRUD.NOTIFICATION_TYPE.SUCCESS)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -4,16 +4,17 @@
 | 
			
		|||
    <div class="head-container" v-loading="this.loading_add" element-loading-text="拼命加载中" element-loading-background="rgba(0, 0, 0, 0.1)">
 | 
			
		||||
      <div v-if="crud.props.searchToggle">
 | 
			
		||||
        <!-- 搜索 -->
 | 
			
		||||
        <el-select v-model="query.stationType" clearable filterable placeholder="工位" style="width: 150px;" class="filter-item"
 | 
			
		||||
                   @keyup.enter.native="crud.toQuery"
 | 
			
		||||
        >
 | 
			
		||||
          <el-option
 | 
			
		||||
            v-for="baseStatus in dict.station_type"
 | 
			
		||||
            :key="baseStatus.id"
 | 
			
		||||
            :label="baseStatus.label"
 | 
			
		||||
            :value="baseStatus.value"
 | 
			
		||||
          />
 | 
			
		||||
        </el-select>
 | 
			
		||||
        <!--  <el-select v-model="query.stationType" clearable filterable placeholder="工位" style="width: 150px;" class="filter-item"
 | 
			
		||||
                    @keyup.enter.native="crud.toQuery"
 | 
			
		||||
         >
 | 
			
		||||
           <el-option
 | 
			
		||||
             v-for="baseStatus in dict.station_type"
 | 
			
		||||
             :key="baseStatus.id"
 | 
			
		||||
             :label="baseStatus.label"
 | 
			
		||||
             :value="baseStatus.value"
 | 
			
		||||
           />
 | 
			
		||||
         </el-select>-->
 | 
			
		||||
        <AreaSelect v-model="query.areaId" :value-key="'id'" :bexb=true placeholder="请选择库区" style="width: 150px;" class="filter-item" />
 | 
			
		||||
        <el-input v-model="query.bigItemIdModes" clearable placeholder="型式品番" style="width: 150px;"
 | 
			
		||||
                  class="filter-item"
 | 
			
		||||
                  @keyup.enter.native="crud.toQuery"
 | 
			
		||||
| 
						 | 
				
			
			@ -22,13 +23,13 @@
 | 
			
		|||
                  class="filter-item"
 | 
			
		||||
                  @keyup.enter.native="crud.toQuery"
 | 
			
		||||
        />
 | 
			
		||||
        <el-input v-model="query.startNumber" clearable placeholder="起始机号" style="width: 150px;"
 | 
			
		||||
       <!-- <el-input v-model="query.startNumber" clearable placeholder="起始机号" style="width: 150px;"
 | 
			
		||||
                  class="filter-item"
 | 
			
		||||
                  @keyup.enter.native="crud.toQuery"
 | 
			
		||||
        /> <el-input v-model="query.endNumber" clearable placeholder="结束机号" style="width: 150px;"
 | 
			
		||||
                     class="filter-item"
 | 
			
		||||
                     @keyup.enter.native="crud.toQuery"
 | 
			
		||||
      />
 | 
			
		||||
      />-->
 | 
			
		||||
        <el-select v-model="query.status" clearable placeholder="耗用状态" style="width: 120px;" class="filter-item"
 | 
			
		||||
                   @keyup.enter.native="crud.toQuery"
 | 
			
		||||
        >
 | 
			
		||||
| 
						 | 
				
			
			@ -71,7 +72,7 @@
 | 
			
		|||
                 :title="crud.status.title" width="500px" @close="fromeClose()"
 | 
			
		||||
      >
 | 
			
		||||
        <el-form ref="form" :model="form" :rules="rules" size="small" label-width="80px">
 | 
			
		||||
          <el-form-item label="工位" prop="stationType" >
 | 
			
		||||
         <!-- <el-form-item label="工位" prop="stationType" >
 | 
			
		||||
            <el-select v-model="form.stationType" @change="getBigItem(form.stationType)" value-key="id" filterable
 | 
			
		||||
                       placeholder="请选择" style="width: 370px;"
 | 
			
		||||
            >
 | 
			
		||||
| 
						 | 
				
			
			@ -82,9 +83,12 @@
 | 
			
		|||
                :value="item.value"
 | 
			
		||||
              />
 | 
			
		||||
            </el-select>
 | 
			
		||||
          </el-form-item>-->
 | 
			
		||||
          <el-form-item label="库区" prop="shArea">
 | 
			
		||||
            <AreaSelect v-model="form.shArea" :value-key="'id'" :bexb=true  @change="getChangeVule"/>
 | 
			
		||||
          </el-form-item>
 | 
			
		||||
          <el-form-item label="型号品番" prop="bigItemId">
 | 
			
		||||
            <el-select v-model="form.bigItemId" value-key="id" @change="getBigItemName(form.bigItemId.name)" filterable
 | 
			
		||||
            <el-select v-model="form.bigItemId" value-key="id" @change="getBigItemName" filterable
 | 
			
		||||
                       placeholder="请选择" style="width: 370px;"
 | 
			
		||||
            >
 | 
			
		||||
              <el-option
 | 
			
		||||
| 
						 | 
				
			
			@ -111,12 +115,15 @@
 | 
			
		|||
            >
 | 
			
		||||
            </el-date-picker>
 | 
			
		||||
          </el-form-item>
 | 
			
		||||
          <el-form-item label="起始机号" prop="startNumber">
 | 
			
		||||
          <el-form-item label="刻印前缀" prop="kyQz">
 | 
			
		||||
            <el-input v-model="form.kyQz" style="width: 370px;"/>
 | 
			
		||||
          </el-form-item>
 | 
			
		||||
         <!-- <el-form-item label="起始机号" prop="startNumber">
 | 
			
		||||
            <el-input v-model="form.startNumber" style="width: 370px;"/>
 | 
			
		||||
          </el-form-item>
 | 
			
		||||
          <el-form-item label="结束机号" prop="endNumber">
 | 
			
		||||
            <el-input v-model="form.endNumber" style="width: 370px;"/>
 | 
			
		||||
          </el-form-item>
 | 
			
		||||
          </el-form-item>-->
 | 
			
		||||
          <el-form-item label="备注">
 | 
			
		||||
            <el-input
 | 
			
		||||
              type="textarea"
 | 
			
		||||
| 
						 | 
				
			
			@ -150,11 +157,9 @@
 | 
			
		|||
                @selection-change="crud.selectionChangeHandler" :height="crud.tableHeight" border @select="selectData" @select-all="selectAllData"
 | 
			
		||||
      >
 | 
			
		||||
        <el-table-column type="selection" width="55"/>
 | 
			
		||||
        <el-table-column prop="station_type#stationType" label="工位" width="120">
 | 
			
		||||
          <template slot-scope="scope">
 | 
			
		||||
            {{ dict.label.station_type[scope.row.stationType] }}
 | 
			
		||||
          </template>
 | 
			
		||||
        </el-table-column>
 | 
			
		||||
        <el-table-column prop="id" label="ID" width="80"/>
 | 
			
		||||
        <el-table-column prop="shArea.code" label="库区" width="120"/>
 | 
			
		||||
        <el-table-column prop="shArea.name" label="库区名称" width="120"/>
 | 
			
		||||
        <el-table-column prop="date" label="下线日期">
 | 
			
		||||
          <template slot-scope="scope">
 | 
			
		||||
            {{ getFormatDate(scope.row.date) }}
 | 
			
		||||
| 
						 | 
				
			
			@ -162,14 +167,15 @@
 | 
			
		|||
        </el-table-column>
 | 
			
		||||
        <el-table-column prop="bigItemId.code" label="型式品番" width="120"/>
 | 
			
		||||
        <el-table-column prop="bigItemId.name" label="型式名" width="120"/>
 | 
			
		||||
        <el-table-column prop="kyQz" label="刻印前缀" width="80"/>
 | 
			
		||||
        <el-table-column prop="orderQuantity" label="数量" width="70"/>
 | 
			
		||||
        <el-table-column prop="hy_status#status" label="状态"  width="70">
 | 
			
		||||
          <template slot-scope="scope">
 | 
			
		||||
            {{ dict.label.hy_status[scope.row.status] }}
 | 
			
		||||
          </template>
 | 
			
		||||
        </el-table-column>
 | 
			
		||||
        <el-table-column prop="startNumber" label="起始机号" width="80"/>
 | 
			
		||||
        <el-table-column prop="endNumber" label="结束机号"  width="80"/>
 | 
			
		||||
        <!--<el-table-column prop="startNumber" label="起始机号" width="80"/>
 | 
			
		||||
        <el-table-column prop="endNumber" label="结束机号"  width="80"/>-->
 | 
			
		||||
        <el-table-column prop="description" label="备注"/>
 | 
			
		||||
        <el-table-column prop="updateTime" label="操作日期" width="140"/>
 | 
			
		||||
        <el-table-column prop="updateBy" label="操作人" width="70"/>
 | 
			
		||||
| 
						 | 
				
			
			@ -209,9 +215,12 @@ import rrOperation from '@crud/RR.operation'
 | 
			
		|||
import crudOperation from '@crud/CRUD.operation'
 | 
			
		||||
import udOperation from '@crud/UD.operation'
 | 
			
		||||
import pagination from '@crud/Pagination'
 | 
			
		||||
import { queryBigItemByStationType } from '@/api/bomAccount'
 | 
			
		||||
import {queryBigItemByStationType, queryByAreaId} from '@/api/bomAccount'
 | 
			
		||||
import { formatDate } from '@/utils/commonUtils'
 | 
			
		||||
import DateRangePicker from "@/components/DateRangePicker/index.vue";
 | 
			
		||||
import BomAccountPointSelect from "@/views/generic-component/BomAccountPointSelect.vue";
 | 
			
		||||
import AreaSelect from "@/views/generic-component/AreaSelect.vue";
 | 
			
		||||
import PointSelect from "@/views/generic-component/PointSelect.vue";
 | 
			
		||||
 | 
			
		||||
const defaultForm = {
 | 
			
		||||
  id: null,
 | 
			
		||||
| 
						 | 
				
			
			@ -227,11 +236,15 @@ const defaultForm = {
 | 
			
		|||
  updateBy: null,
 | 
			
		||||
  createTime: null,
 | 
			
		||||
  updateTime: null,
 | 
			
		||||
  deptId: null
 | 
			
		||||
  deptId: null,
 | 
			
		||||
  shArea: null,
 | 
			
		||||
  kyQz:null,
 | 
			
		||||
}
 | 
			
		||||
export default {
 | 
			
		||||
  name: 'Spareparts',
 | 
			
		||||
  components: {DateRangePicker, pagination, crudOperation, rrOperation, udOperation },
 | 
			
		||||
  components: {
 | 
			
		||||
    PointSelect,
 | 
			
		||||
    AreaSelect, BomAccountPointSelect, DateRangePicker, pagination, crudOperation, rrOperation, udOperation },
 | 
			
		||||
  mixins: [presenter(), header(), form(defaultForm), crud()],
 | 
			
		||||
  dicts: ['hy_status', 'station_type'],
 | 
			
		||||
  cruds() {
 | 
			
		||||
| 
						 | 
				
			
			@ -326,7 +339,10 @@ export default {
 | 
			
		|||
      })
 | 
			
		||||
    },
 | 
			
		||||
    getBigItemName(dben) {
 | 
			
		||||
      this.bigItemName = dben
 | 
			
		||||
      console.log(dben)
 | 
			
		||||
      this.bigItemName = dben.name
 | 
			
		||||
      this.form.bigItemId.name = dben.name
 | 
			
		||||
      this.form.kyQz=dben.kyQz;
 | 
			
		||||
    },
 | 
			
		||||
    doXiuGai(dben) {
 | 
			
		||||
      this.getBigItem(dben.stationType)
 | 
			
		||||
| 
						 | 
				
			
			@ -376,7 +392,15 @@ export default {
 | 
			
		|||
    //日期格式化
 | 
			
		||||
    getFormatDate(data) {
 | 
			
		||||
      return formatDate(data)
 | 
			
		||||
    }
 | 
			
		||||
    },
 | 
			
		||||
    getChangeVule(dben) {
 | 
			
		||||
      this.form.shAreaId = dben.id;
 | 
			
		||||
      this.form.shArea=dben;
 | 
			
		||||
      this.bigItems = null
 | 
			
		||||
      queryByAreaId(this.form.shAreaId).then(res => {
 | 
			
		||||
        this.bigItems = res
 | 
			
		||||
      })
 | 
			
		||||
    },
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
</script>
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -0,0 +1,84 @@
 | 
			
		|||
<template>
 | 
			
		||||
  <el-select
 | 
			
		||||
    v-model="selected"
 | 
			
		||||
    @focus="fetchItems"
 | 
			
		||||
    :placeholder="placeholder"
 | 
			
		||||
    :filterable="filterable"
 | 
			
		||||
    :value-key="valueKey"
 | 
			
		||||
    :style="selectStyle"
 | 
			
		||||
    @change="onChange"
 | 
			
		||||
  >
 | 
			
		||||
    <el-option
 | 
			
		||||
      v-for="item in items"
 | 
			
		||||
      :key="item.id"
 | 
			
		||||
      :label="item.code"
 | 
			
		||||
      :value="item"
 | 
			
		||||
    >
 | 
			
		||||
      <span>{{ item.code }}</span>
 | 
			
		||||
      <span>{{ item.name }}</span>
 | 
			
		||||
    </el-option>
 | 
			
		||||
 | 
			
		||||
  </el-select>
 | 
			
		||||
</template>
 | 
			
		||||
 | 
			
		||||
<script>
 | 
			
		||||
import curdArea, {queryAreaList} from '@/api/area'
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
  name: 'AreaSelect',
 | 
			
		||||
  props: {
 | 
			
		||||
    value: null, // v-model
 | 
			
		||||
    placeholder: {
 | 
			
		||||
      type: String,
 | 
			
		||||
      default: '请选择库位'
 | 
			
		||||
    },
 | 
			
		||||
    filterable: {
 | 
			
		||||
      type: Boolean,
 | 
			
		||||
      default: true
 | 
			
		||||
    },
 | 
			
		||||
    valueKey: {
 | 
			
		||||
      type: String,
 | 
			
		||||
      default: 'id'
 | 
			
		||||
    },
 | 
			
		||||
    isEnabled:{
 | 
			
		||||
      type: Boolean,
 | 
			
		||||
      default: true
 | 
			
		||||
    },
 | 
			
		||||
    bexb:{
 | 
			
		||||
      type: Boolean,
 | 
			
		||||
      default: true
 | 
			
		||||
    },
 | 
			
		||||
    selectStyle: {
 | 
			
		||||
      type: String,
 | 
			
		||||
      default: 'width: 200px;'
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  data() {
 | 
			
		||||
    return {
 | 
			
		||||
      items: [],
 | 
			
		||||
      selected: this.value
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  watch: {
 | 
			
		||||
    value(val) {
 | 
			
		||||
      this.selected = val
 | 
			
		||||
    },
 | 
			
		||||
/*    selected(val) {
 | 
			
		||||
      this.$emit('input', val)
 | 
			
		||||
      this.$emit('change', val)
 | 
			
		||||
    }*/
 | 
			
		||||
  },
 | 
			
		||||
  methods: {
 | 
			
		||||
    fetchItems() {
 | 
			
		||||
      if (this.items.length === 0) {
 | 
			
		||||
        curdArea.queryAreaList({ bexb: this.bexb }).then(res => {
 | 
			
		||||
          this.items = res
 | 
			
		||||
        })
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    onChange(val) {
 | 
			
		||||
      this.$emit('change', val)
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
</script>
 | 
			
		||||
| 
						 | 
				
			
			@ -0,0 +1,95 @@
 | 
			
		|||
<template>
 | 
			
		||||
  <el-select
 | 
			
		||||
    v-model="selected"
 | 
			
		||||
    @focus="fetchItems"
 | 
			
		||||
    :placeholder="placeholder"
 | 
			
		||||
    :filterable="filterable"
 | 
			
		||||
    :value-key="valueKey"
 | 
			
		||||
    :style="styles"
 | 
			
		||||
    @change="onChange"
 | 
			
		||||
    :filterMethod="filterMethod"
 | 
			
		||||
  >
 | 
			
		||||
    <el-option
 | 
			
		||||
      v-for="item in items"
 | 
			
		||||
      :key="item.id"
 | 
			
		||||
      :label="item.code"
 | 
			
		||||
      :value="item"
 | 
			
		||||
    >
 | 
			
		||||
      <span>{{ item.code }}</span>
 | 
			
		||||
      <span>{{ item.name }}</span>
 | 
			
		||||
    </el-option>
 | 
			
		||||
  </el-select>
 | 
			
		||||
</template>
 | 
			
		||||
 | 
			
		||||
<script>
 | 
			
		||||
import crudItem, {queryBigItemAll} from '@/api/bigItem'
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
  name: 'BigItemSelect',
 | 
			
		||||
  props: {
 | 
			
		||||
    value: null, // v-model
 | 
			
		||||
    placeholder: {
 | 
			
		||||
      type: String,
 | 
			
		||||
      default: '请选择完成品品番'
 | 
			
		||||
    },
 | 
			
		||||
    filterable: {
 | 
			
		||||
      type: Boolean,
 | 
			
		||||
      default: true
 | 
			
		||||
    },
 | 
			
		||||
    valueKey: {
 | 
			
		||||
      type: String,
 | 
			
		||||
      default: 'id'
 | 
			
		||||
    },
 | 
			
		||||
    isEnabled:{
 | 
			
		||||
      type: Boolean,
 | 
			
		||||
      default: true
 | 
			
		||||
    },
 | 
			
		||||
    styles: {
 | 
			
		||||
      type: String,
 | 
			
		||||
      default: 'width: 200px;'
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  data() {
 | 
			
		||||
    return {
 | 
			
		||||
      items: [],
 | 
			
		||||
      filteredItems: [],
 | 
			
		||||
      selected: this.value
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  watch: {
 | 
			
		||||
    value(val) {
 | 
			
		||||
      this.selected = val
 | 
			
		||||
    },
 | 
			
		||||
    selected(val) {
 | 
			
		||||
      this.$emit('input', val)
 | 
			
		||||
      this.$emit('change', val)
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  methods: {
 | 
			
		||||
    fetchItems() {
 | 
			
		||||
      if (this.items.length === 0) {
 | 
			
		||||
          queryBigItemAll({ enabled: this.isEnabled }).then(res => {
 | 
			
		||||
          this.items = res
 | 
			
		||||
            this.filteredItems = [...this.items];
 | 
			
		||||
        })
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    onChange(val) {
 | 
			
		||||
      this.$emit('change', val)
 | 
			
		||||
    },
 | 
			
		||||
    filterMethod(query) {
 | 
			
		||||
      console.log(query)
 | 
			
		||||
      if (!query) {
 | 
			
		||||
        this.filteredItems = [...this.items];
 | 
			
		||||
        return;
 | 
			
		||||
      }
 | 
			
		||||
 | 
			
		||||
      const lowerQuery = query.toLowerCase();
 | 
			
		||||
      this.items = this.filteredItems.filter(item =>
 | 
			
		||||
        item.code.toLowerCase().includes(lowerQuery) ||
 | 
			
		||||
        item.name.toLowerCase().includes(lowerQuery)
 | 
			
		||||
      );
 | 
			
		||||
    },
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
</script>
 | 
			
		||||
| 
						 | 
				
			
			@ -0,0 +1,102 @@
 | 
			
		|||
<template>
 | 
			
		||||
  <el-select
 | 
			
		||||
    v-model="selected"
 | 
			
		||||
    @focus="fetchItems"
 | 
			
		||||
    :placeholder="placeholder"
 | 
			
		||||
    :filterable="filterable"
 | 
			
		||||
    :value-key="valueKey"
 | 
			
		||||
    :style="styles"
 | 
			
		||||
    @change="onChange"
 | 
			
		||||
    :filterMethod="filterMethod"
 | 
			
		||||
  >
 | 
			
		||||
    <el-option
 | 
			
		||||
      v-for="item in items"
 | 
			
		||||
      :key="item.id"
 | 
			
		||||
      :label="item.code"
 | 
			
		||||
      :value="item"
 | 
			
		||||
    >
 | 
			
		||||
      <span>{{ item.code }}</span>
 | 
			
		||||
      <span>{{ item.name }}</span>
 | 
			
		||||
    </el-option>
 | 
			
		||||
  </el-select>
 | 
			
		||||
</template>
 | 
			
		||||
 | 
			
		||||
<script>
 | 
			
		||||
import crudBillType, {queryBillTypeList} from '@/api/billType'
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
  name: 'BillTypeSelect',
 | 
			
		||||
  props: {
 | 
			
		||||
    value: null, // v-model
 | 
			
		||||
    placeholder: {
 | 
			
		||||
      type: String,
 | 
			
		||||
      default: '请选择单据类型'
 | 
			
		||||
    },
 | 
			
		||||
    filterable: {
 | 
			
		||||
      type: Boolean,
 | 
			
		||||
      default: true
 | 
			
		||||
    },
 | 
			
		||||
    valueKey: {
 | 
			
		||||
      type: String,
 | 
			
		||||
      default: 'id'
 | 
			
		||||
    },
 | 
			
		||||
    isEnabled:{
 | 
			
		||||
      type: Boolean,
 | 
			
		||||
      default: true
 | 
			
		||||
    },
 | 
			
		||||
    bill_code:{
 | 
			
		||||
      type: String, // 修正类型定义
 | 
			
		||||
      default: ''   // 修正默认值
 | 
			
		||||
    },
 | 
			
		||||
    styles: {
 | 
			
		||||
      type: String,
 | 
			
		||||
      default: 'width: 200px;'
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  data() {
 | 
			
		||||
    return {
 | 
			
		||||
      items: [],
 | 
			
		||||
      filteredItems: [],
 | 
			
		||||
      selected: this.value
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  watch: {
 | 
			
		||||
    value: {
 | 
			
		||||
      handler(val) {
 | 
			
		||||
        this.selected = val;
 | 
			
		||||
      },
 | 
			
		||||
      immediate: true // 确保初始化时也能正确设置 selected 值
 | 
			
		||||
    },
 | 
			
		||||
    selected(val) {
 | 
			
		||||
      this.$emit('input', val);
 | 
			
		||||
      this.$emit('change', val);
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  methods: {
 | 
			
		||||
    fetchItems() {
 | 
			
		||||
      if (this.items.length === 0) {
 | 
			
		||||
        queryBillTypeList({ code: this.bill_code }).then(res => {
 | 
			
		||||
          this.items = res;
 | 
			
		||||
          this.filteredItems = [...this.items];
 | 
			
		||||
        });
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    onChange(val) {
 | 
			
		||||
      console.log(val);
 | 
			
		||||
      this.$emit('change', val);
 | 
			
		||||
    },
 | 
			
		||||
    filterMethod(query) {
 | 
			
		||||
      if (!query) {
 | 
			
		||||
        this.filteredItems = [...this.items];
 | 
			
		||||
        return;
 | 
			
		||||
      }
 | 
			
		||||
 | 
			
		||||
      const lowerQuery = query.toLowerCase();
 | 
			
		||||
      this.items = this.filteredItems.filter(item =>
 | 
			
		||||
        item.code.toLowerCase().includes(lowerQuery) ||
 | 
			
		||||
        item.name.toLowerCase().includes(lowerQuery)
 | 
			
		||||
      );
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
</script>
 | 
			
		||||
| 
						 | 
				
			
			@ -5,7 +5,7 @@
 | 
			
		|||
    :placeholder="placeholder"
 | 
			
		||||
    :filterable="filterable"
 | 
			
		||||
    :value-key="valueKey"
 | 
			
		||||
    :style="style"
 | 
			
		||||
    :style="styles"
 | 
			
		||||
    @change="onChange"
 | 
			
		||||
    :filterMethod="filterMethod"
 | 
			
		||||
  >
 | 
			
		||||
| 
						 | 
				
			
			@ -47,7 +47,7 @@ export default {
 | 
			
		|||
      type: Boolean,
 | 
			
		||||
      default: true
 | 
			
		||||
    },
 | 
			
		||||
    style: {
 | 
			
		||||
    styles: {
 | 
			
		||||
      type: String,
 | 
			
		||||
      default: 'width: 200px;'
 | 
			
		||||
    }
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -5,15 +5,19 @@
 | 
			
		|||
    :placeholder="placeholder"
 | 
			
		||||
    :filterable="filterable"
 | 
			
		||||
    :value-key="valueKey"
 | 
			
		||||
    :style="style"
 | 
			
		||||
    :style="styles"
 | 
			
		||||
    @change="onChange"
 | 
			
		||||
    :filterMethod="filterMethod"
 | 
			
		||||
  >
 | 
			
		||||
    <el-option
 | 
			
		||||
      v-for="item in items"
 | 
			
		||||
      :key="item.id"
 | 
			
		||||
      :label="item.code"
 | 
			
		||||
      :value="item"
 | 
			
		||||
    />
 | 
			
		||||
    >
 | 
			
		||||
      <span>{{ item.code }}</span>
 | 
			
		||||
      <span>{{ item.name }}</span>
 | 
			
		||||
    </el-option>
 | 
			
		||||
  </el-select>
 | 
			
		||||
</template>
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -26,7 +30,7 @@ export default {
 | 
			
		|||
    value: null, // v-model
 | 
			
		||||
    placeholder: {
 | 
			
		||||
      type: String,
 | 
			
		||||
      default: '请选择物料'
 | 
			
		||||
      default: '请选择部品品番'
 | 
			
		||||
    },
 | 
			
		||||
    filterable: {
 | 
			
		||||
      type: Boolean,
 | 
			
		||||
| 
						 | 
				
			
			@ -40,7 +44,7 @@ export default {
 | 
			
		|||
      type: Boolean,
 | 
			
		||||
      default: true
 | 
			
		||||
    },
 | 
			
		||||
    style: {
 | 
			
		||||
    styles: {
 | 
			
		||||
      type: String,
 | 
			
		||||
      default: 'width: 200px;'
 | 
			
		||||
    }
 | 
			
		||||
| 
						 | 
				
			
			@ -48,6 +52,7 @@ export default {
 | 
			
		|||
  data() {
 | 
			
		||||
    return {
 | 
			
		||||
      items: [],
 | 
			
		||||
      filteredItems: [],
 | 
			
		||||
      selected: this.value
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
| 
						 | 
				
			
			@ -63,14 +68,27 @@ export default {
 | 
			
		|||
  methods: {
 | 
			
		||||
    fetchItems() {
 | 
			
		||||
      if (this.items.length === 0) {
 | 
			
		||||
        crudItem.getItemsList({ enabled: this.isEnabled }).then(res => {
 | 
			
		||||
          getItemsList({ enabled: this.isEnabled }).then(res => {
 | 
			
		||||
          this.items = res
 | 
			
		||||
            this.filteredItems = [...this.items];
 | 
			
		||||
        })
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    onChange(val) {
 | 
			
		||||
      this.$emit('change', val)
 | 
			
		||||
    }
 | 
			
		||||
    },
 | 
			
		||||
    filterMethod(query) {
 | 
			
		||||
      if (!query) {
 | 
			
		||||
        this.filteredItems = [...this.items];
 | 
			
		||||
        return;
 | 
			
		||||
      }
 | 
			
		||||
 | 
			
		||||
      const lowerQuery = query.toLowerCase();
 | 
			
		||||
      this.items = this.filteredItems.filter(item =>
 | 
			
		||||
        item.code.toLowerCase().includes(lowerQuery) ||
 | 
			
		||||
        item.name.toLowerCase().includes(lowerQuery)
 | 
			
		||||
      );
 | 
			
		||||
    },
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
</script>
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -65,10 +65,10 @@ export default {
 | 
			
		|||
    value(val) {
 | 
			
		||||
      this.selected = val
 | 
			
		||||
    },
 | 
			
		||||
/*    selected(val) {
 | 
			
		||||
    selected(val) {
 | 
			
		||||
      this.$emit('input', val)
 | 
			
		||||
      this.$emit('change', val)
 | 
			
		||||
    }*/
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  methods: {
 | 
			
		||||
    fetchItems() {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue