仓库增加格数及对应功能修改,库存子表不管到把的唯一编码存储刀具编码
已添加1个文件
已修改18个文件
1322 ■■■■ 文件已修改
src/views/flowable/workflow/inboundOrder/InboundOrderHandle.vue 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/tms/GoodsShelvesList.vue 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/tms/modules/GoodsShelvesForm.vue 34 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/tms/modules/baseTools/ParaBaseModal.vue 19 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/tms/modules/baseTools/ParaBladeModal.vue 645 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/tms/modules/baseTools/ParaCommonToolModal.vue 50 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/tms/modules/baseTools/ParaHoleToolsModal.vue 50 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/tms/modules/baseTools/ParaMillToolModal.vue 50 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/tms/modules/baseTools/ParaThreadingToolModal.vue 50 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/tms/modules/baseTools/ParaTurningToolsModal.vue 50 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/tms/modules/baseTools/SelectPositionCodeModal.vue 252 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/tms/modules/baseTools/ToolsConfigPropertyModal.vue 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/tms/modules/inbound/InboundApplyDetailList.vue 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/tms/modules/inbound/InboundApplyModelList.vue 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/tms/modules/inbound/InboundListRight.vue 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/tms/modules/inbound/InboundModel.vue 13 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/tms/modules/inboundOrder/InboundDetailList.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/tms/modules/inboundOrder/InboundOrderModel.vue 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/tms/modules/inboundOrder/JSelectToolingModal.vue 38 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/flowable/workflow/inboundOrder/InboundOrderHandle.vue
@@ -242,6 +242,11 @@
          dataIndex: 'toolModel'
        },
        {
          title:'库位号',
          align:"center",
          dataIndex: 'goodsShelvesId'
        },
        {
          title:'申请入库数量',
          align:"center",
          dataIndex: 'inStorageQuantity'
src/views/tms/GoodsShelvesList.vue
@@ -202,6 +202,11 @@
            dataIndex: 'columnNumber'
          },
          {
            title:'格数',
            align:"center",
            dataIndex: 'cellsNum'
          },
          {
            title:'货架编号',
            align:"center",
            dataIndex: 'shelfNumber'
src/views/tms/modules/GoodsShelvesForm.vue
@@ -38,6 +38,11 @@
              <a-input v-model="model.columnNumber" placeholder="请输入列数"  ></a-input>
            </a-form-model-item>
          </a-col>
           <a-col :span="12">
            <a-form-model-item label="格数" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="cellsNum">
              <a-input v-model="model.cellsNum" placeholder="请输入格数"  ></a-input>
            </a-form-model-item>
          </a-col>
          <a-col :span="12">
            <a-form-model-item label="库位号" :labelCol="labelCol" :wrapperCol="wrapperCol">
              <a-input v-model="model.locationCode"  placeholder="请输入库位号"  ></a-input>
@@ -84,6 +89,7 @@
          storey: '',
          arrange: '',
          columnNumber: '',
          cellsNum:'',
          locationCode: '',
          remark: ''
        },
@@ -110,6 +116,7 @@
           ],
          shelfNumber: [
              { required: true, message: '请输入货架号!'},
              { validator: this.validateShelfNumber },
          ],
          shelfName: [
              { required: true, message: '请输入货架名称!'},
@@ -118,8 +125,10 @@
        url: {
          add: "/tms/goodsShelves/add",
          edit: "/tms/goodsShelves/edit",
          queryById: "/tms/goodsShelves/queryById"
        }
          queryById: "/tms/goodsShelves/queryById",
          checkShelfNum:"/tms/goodsShelves/checkShelfNum"
        },
        warehouseId:''
      }
    },
    computed: {
@@ -128,9 +137,9 @@
      },
      //拼接库位号
      autoGeneratedLocationCode() {
        const { shelfNumber, storey, arrange, columnNumber } = this.model;
        if (shelfNumber || storey || arrange || columnNumber) {
          return `${shelfNumber}${storey}${arrange}${columnNumber}`;
        const { shelfNumber, storey, arrange, columnNumber, cellsNum } = this.model;
        if (shelfNumber || storey || arrange || columnNumber || cellsNum) {
          return `${shelfNumber}${storey}${arrange}${columnNumber}${cellsNum}`;
        }
        return '';
      }
@@ -152,6 +161,7 @@
      edit (record) {
        this.model = Object.assign({}, record);
        this.visible = true;
        this.warehouseId = record.warehouseId
      },
      submitForm () {
        const that = this;
@@ -182,6 +192,20 @@
        })
      },
      //验证 è´§æž¶å·
    validateShelfNumber(rule, value, callback) {
      var params = {
        warehouseId: this.warehouseId,
        shelfNumber: value,
      };
      getAction(this.url.checkShelfNum,params).then((res) => {
        if (res.success) {
          callback();
        } else {
          callback("货架编号已存在!");
        }
      })
    },
    },
    watch: {
      autoGeneratedLocationCode(newVal) {
src/views/tms/modules/baseTools/ParaBaseModal.vue
@@ -70,6 +70,18 @@
                  <a-input :placeholder="disableSubmit?'':'请输入序号'" v-model="model.signCode" :disabled="disableSubmit"/>
                </a-form-model-item>
              </a-col>
              <a-col :span="8">
                <a-form-model-item prop="accuracyClass" label="精度等级">
                 <j-dict-select-tag
                    :disabled="disableSubmit"
                    type="list"
                    v-model="model.accuracyClass"
                    :triggerChange="true"
                    dictCode="accuracy_class"
                    :placeholder="disableSubmit?'':'请选择精度等级'"
                  />
                </a-form-model-item>
              </a-col>
        </a-row>
      </a-form-model>
@@ -81,12 +93,12 @@
import { getAction,postAction, httpAction } from '@/api/manage'
import { validateDuplicateValueInDelFlag } from '@/utils/util'
import JSelectProduction from '@comp/jeecgbiz/JSelectProduction.vue'
import { getSystemConfigValue } from '@api/api'
  import JDictSelectTag from '@/components/dict/JDictSelectTag'
  import { duplicateCheck } from '@/api/api'//重复校验
export default {
  name: 'ParaBaseModal',
  components: { JSelectProduction },
  components: { JSelectProduction,JDictSelectTag },
  data() {
    return {
      title: '操作',
@@ -114,6 +126,9 @@
      },
      confirmLoading: false,
      validatorRules: {
        accuracyClass:[
          { required: true, message: '请选择精度等级' },
        ],
        toolCode: [
          { required: true, message: '请输入工具编码' },
          { validator: this.validateNum }
src/views/tms/modules/baseTools/ParaBladeModal.vue
@@ -5,122 +5,181 @@
    :visible="visible"
    centered
    :confirmLoading="confirmLoading"
    :okButtonProps="{ class:{'jee-hidden': disableSubmit} }"
    :okButtonProps="{ class: { 'jee-hidden': disableSubmit } }"
    switchFullscreen
    @ok="handleOk"
    @cancel="handleCancel"
    cancelText="关闭">
    cancelText="关闭"
  >
    <a-spin :spinning="confirmLoading">
      <a-form-model ref="form" :model="model" :rules="validatorRules" :labelCol="labelCol" :wrapperCol="wrapperCol">
        <a-divider orientation="center" style="font-size: large;font-style: italic;color: #66aeed;"> å·¥å…·åŸºç¡€ä¿¡æ¯
        <a-divider orientation="center" style="font-size: large; font-style: italic; color: #66aeed">
          å·¥å…·åŸºç¡€ä¿¡æ¯
        </a-divider>
        <a-row :gutter="24">
              <a-col :span="6">
                <a-row>
                  <a-col :span="24">
                    <a-form-model-item prop="classifyNum" label="工具分类编码">
                      <a-input placeholder="请输入工具分类编码" v-model="model.classifyNum" :disabled="true" />
                    </a-form-model-item>
                  </a-col>
                </a-row>
                <a-row>
                  <a-col :span="24">
                    <a-form-model-item prop="classifyName" label="工具分类名称">
                      <a-input placeholder="请输入工具分类名称" v-model="model.classifyName"  :disabled="true" />
                    </a-form-model-item>
                  </a-col>
                </a-row>
                <a-row>
                  <a-col :span="24">
                    <a-form-model-item prop="toolCode" label="工具编码">
                      <a-input :placeholder="disableSubmit?'':'请输入工具编码'" v-model="model.toolCode" :disabled="disableSubmit"/>
                    </a-form-model-item>
                  </a-col>
                </a-row>
              </a-col>
              <a-col :span="6">
                <a-row>
                  <a-col :span="24">
                    <a-form-model-item prop="chineseName"
                                      label="中文名称">
                      <a-input :placeholder="disableSubmit?'':'请输入中文名称'" v-model="model.chineseName" :disabled="disableSubmit"/>
                    </a-form-model-item>
                  </a-col>
                </a-row>
                 <a-row>
                  <a-col :span="24">
                    <a-form-model-item prop="foreignLanguageName"
                                      label="外文名称">
                      <a-input :placeholder="disableSubmit?'':'请输入外文名称'" v-model="model.foreignLanguageName" :disabled="disableSubmit" />
                    </a-form-model-item>
                  </a-col>
                </a-row>
                <a-row>
                  <a-col :span="24">
                    <a-form-model-item prop="toolModel"
                                      label="型号/图号">
                      <a-input :placeholder="disableSubmit?'':'请输入型号/图号'" v-model="model.toolModel" :disabled="disableSubmit" />
                    </a-form-model-item>
                  </a-col>
                </a-row>
              </a-col>
              <a-col :span="6">
              <a-row>
                  <a-col :span="24">
                    <a-form-model-item prop="standardLevel"
                                      label="标注级别">
                      <a-input :placeholder="disableSubmit?'':'请输入标准级别'" v-model="model.standardLevel" :disabled="disableSubmit"/>
                    </a-form-model-item>
                  </a-col>
                </a-row>
                 <a-row>
                  <a-col :span="24">
                    <a-form-model-item prop="standardCode" label="标准号">
                      <a-input :placeholder="disableSubmit?'':'请输入标准号'" v-model="model.standardCode" :disabled="disableSubmit"/>
                    </a-form-model-item>
                  </a-col>
                </a-row>
                <a-row>
                  <a-col :span="24">
                    <a-form-model-item prop="signCode" label="序号">
                      <a-input :placeholder="disableSubmit?'':'请输入序号'" v-model="model.signCode" :disabled="disableSubmit"/>
                    </a-form-model-item>
                  </a-col>
                </a-row>
              </a-col>
              <a-col :span="6">
                 <a-row>
                  <a-col :span="24">
                    <a-form-model-item label='' :labelCol='labelCol' :wrapperCol='wrapperCol'>
                      <j-image-upload text='上传图片' v-model='model.toolPicture'></j-image-upload>
                    </a-form-model-item>
                  </a-col>
                 </a-row>
              </a-col>
            </a-row>
        <a-divider orientation="center" style="font-size: large;font-style: italic;color: #66aeed;"> ç®¡ç†å‚æ•°
        </a-divider>
        <a-row :gutter="24">
           <a-col :span="8">
                <a-form-model-item prop="applicationType"
                                   label="工具类型">
                  <j-dict-select-tag dict-code="equipment_category" :placeholder="disableSubmit?'':'请选择工具类型'"
                                     v-model="model.applicationType" :disabled="disableSubmit" />
          <a-col :span="6">
            <a-row>
              <a-col :span="24">
                <a-form-model-item prop="classifyNum" label="工具分类编码">
                  <a-input placeholder="请输入工具分类编码" v-model="model.classifyNum" :disabled="true" />
                </a-form-model-item>
              </a-col>
           <a-col :span="8">
            <a-form-model-item prop="provinceCity" label="仓库省份城市">
              <a-input :placeholder="disableSubmit?'':'请输入仓库省份城市'" v-model="model.provinceCity" :disabled="disableSubmit"/>
            </a-row>
            <a-row>
              <a-col :span="24">
                <a-form-model-item prop="classifyName" label="工具分类名称">
                  <a-input placeholder="请输入工具分类名称" v-model="model.classifyName" :disabled="true" />
                </a-form-model-item>
              </a-col>
            </a-row>
            <a-row>
              <a-col :span="24">
                <a-form-model-item prop="toolCode" label="工具编码">
                  <a-input
                    :placeholder="disableSubmit ? '' : '请输入工具编码'"
                    v-model="model.toolCode"
                    :disabled="disableSubmit"
                  />
                </a-form-model-item>
              </a-col>
            </a-row>
            <a-row>
              <a-col :span="24">
                <a-form-model-item prop="accuracyClass" label="精度等级">
                  <j-dict-select-tag
                    :disabled="disableSubmit"
                    type="list"
                    v-model="model.accuracyClass"
                    :triggerChange="true"
                    dictCode="accuracy_class"
                    :placeholder="disableSubmit ? '' : '请选择精度等级'"
                  />
                </a-form-model-item>
              </a-col>
            </a-row>
          </a-col>
          <a-col :span="6">
            <a-row>
              <a-col :span="24">
                <a-form-model-item prop="chineseName" label="中文名称">
                  <a-input
                    :placeholder="disableSubmit ? '' : '请输入中文名称'"
                    v-model="model.chineseName"
                    :disabled="disableSubmit"
                  />
                </a-form-model-item>
              </a-col>
            </a-row>
            <a-row>
              <a-col :span="24">
                <a-form-model-item prop="foreignLanguageName" label="外文名称">
                  <a-input
                    :placeholder="disableSubmit ? '' : '请输入外文名称'"
                    v-model="model.foreignLanguageName"
                    :disabled="disableSubmit"
                  />
                </a-form-model-item>
              </a-col>
            </a-row>
            <a-row>
              <a-col :span="24">
                <a-form-model-item prop="toolModel" label="型号/图号">
                  <a-input
                    :placeholder="disableSubmit ? '' : '请输入型号/图号'"
                    v-model="model.toolModel"
                    :disabled="disableSubmit"
                  />
                </a-form-model-item>
              </a-col>
            </a-row>
          </a-col>
          <a-col :span="6">
            <a-row>
              <a-col :span="24">
                <a-form-model-item prop="standardLevel" label="标注级别">
                  <a-input
                    :placeholder="disableSubmit ? '' : '请输入标准级别'"
                    v-model="model.standardLevel"
                    :disabled="disableSubmit"
                  />
                </a-form-model-item>
              </a-col>
            </a-row>
            <a-row>
              <a-col :span="24">
                <a-form-model-item prop="standardCode" label="标准号">
                  <a-input
                    :placeholder="disableSubmit ? '' : '请输入标准号'"
                    v-model="model.standardCode"
                    :disabled="disableSubmit"
                  />
                </a-form-model-item>
              </a-col>
            </a-row>
            <a-row>
              <a-col :span="24">
                <a-form-model-item prop="signCode" label="序号">
                  <a-input
                    :placeholder="disableSubmit ? '' : '请输入序号'"
                    v-model="model.signCode"
                    :disabled="disableSubmit"
                  />
                </a-form-model-item>
              </a-col>
            </a-row>
          </a-col>
          <a-col :span="8">
            <a-form-model-item prop="accuracyClass" label="精度等级">
              <j-dict-select-tag
                type="list"
                v-model="model.accuracyClass"
                :triggerChange="true"
                dictCode="accuracy_class"
                :placeholder="disableSubmit ? '' : '请选择精度等级'"
              />
            </a-form-model-item>
          </a-col>
          <a-col :span="6">
            <a-row>
              <a-col :span="24">
                <a-form-model-item label="" :labelCol="labelCol" :wrapperCol="wrapperCol">
                  <j-image-upload text="上传图片" v-model="model.toolPicture"></j-image-upload>
                </a-form-model-item>
              </a-col>
            </a-row>
          </a-col>
        </a-row>
        <a-divider orientation="center" style="font-size: large; font-style: italic; color: #66aeed">
          ç®¡ç†å‚æ•°
        </a-divider>
        <a-row :gutter="24">
          <a-col :span="8">
            <a-form-model-item prop="applicationType" label="工具类型">
              <j-dict-select-tag
                dict-code="equipment_category"
                :placeholder="disableSubmit ? '' : '请选择工具类型'"
                v-model="model.applicationType"
                :disabled="disableSubmit"
              />
            </a-form-model-item>
          </a-col>
          <a-col :span="8">
            <a-form-model-item prop="positionCode" label="库位号">
            <a-form-model-item prop="provinceCity" label="仓库省份城市">
              <a-input
                :placeholder="disableSubmit ? '' : '请输入仓库省份城市'"
                v-model="model.provinceCity"
                :disabled="disableSubmit"
              />
            </a-form-model-item>
          </a-col>
          <a-col :span="8">
            <!-- <a-form-model-item prop="positionCode" label="库位号">
              <a-form-item :labelCol="labelCol" :wrapperCol="wrapperCol" label="库位号">
             <a-select
                :disabled="disableSubmit"
@@ -129,6 +188,16 @@
                v-model="model.positionCode"
              />
            </a-form-item>
            </a-form-model-item> -->
            <a-form-model-item label="库位" :labelCol="labelCol" :wrapperCol="wrapperCol">
              <a-tooltip title="选择库位后,此类刀具默认存储到此库位,请慎重选择!" placement="topRight">
                <a-input-search
                  v-model="model.positionCode"
                  @search="positionCodeSearch"
                  enter-button
                  placeholder="请选择库位"
                />
              </a-tooltip>
            </a-form-model-item>
          </a-col>
        </a-row>
@@ -136,17 +205,29 @@
        <a-row :gutter="24">
          <a-col :span="8">
            <a-form-model-item prop="storageLocation" label="存储位置">
              <a-input :placeholder="disableSubmit?'':'请输入存储位置'" v-model="model.storageLocation" :disabled="disableSubmit"/>
              <a-input
                :placeholder="disableSubmit ? '' : '请输入存储位置'"
                v-model="model.storageLocation"
                :disabled="disableSubmit"
              />
            </a-form-model-item>
          </a-col>
          <a-col :span="8">
            <a-form-model-item prop="lowerInventory" label="最低库存">
              <a-input :placeholder="disableSubmit?'':'请输入最低库存'" v-model="model.lowerInventory" :disabled="disableSubmit"/>
              <a-input
                :placeholder="disableSubmit ? '' : '请输入最低库存'"
                v-model="model.lowerInventory"
                :disabled="disableSubmit"
              />
            </a-form-model-item>
          </a-col>
          <a-col :span="8">
            <a-form-model-item prop="highestInventory" label="最高库存">
              <a-input :placeholder="disableSubmit?'':'请输入最高库存'" v-model="model.highestInventory" :disabled="disableSubmit"/>
              <a-input
                :placeholder="disableSubmit ? '' : '请输入最高库存'"
                v-model="model.highestInventory"
                :disabled="disableSubmit"
              />
            </a-form-model-item>
          </a-col>
        </a-row>
@@ -154,7 +235,11 @@
        <a-row :gutter="24">
          <a-col :span="8">
            <a-form-model-item prop="auxiliaryUnitFlag" label="是否有计量辅单位">
              <a-radio-group v-model="model.auxiliaryUnitFlag" :placeholder="disableSubmit?'':'请选择是否有计量辅单位'" :disabled="disableSubmit">
              <a-radio-group
                v-model="model.auxiliaryUnitFlag"
                :placeholder="disableSubmit ? '' : '请选择是否有计量辅单位'"
                :disabled="disableSubmit"
              >
                <a-radio :value="'1'">是</a-radio>
                <a-radio :value="'2'">否</a-radio>
              </a-radio-group>
@@ -162,25 +247,41 @@
          </a-col>
          <a-col :span="8">
            <a-form-model-item prop="mainUnit" label="计量主单位">
              <a-input :placeholder="disableSubmit?'':'请输入计量主单位'" v-model="model.mainUnit" :disabled="disableSubmit"/>
              <a-input
                :placeholder="disableSubmit ? '' : '请输入计量主单位'"
                v-model="model.mainUnit"
                :disabled="disableSubmit"
              />
            </a-form-model-item>
          </a-col>
          <a-col :span="8">
            <a-form-model-item prop="auxiliaryUnit" label="计量辅单位">
              <a-input :placeholder="disableSubmit?'':'请输入计量辅单位'" v-model="model.auxiliaryUnit" :disabled="disableSubmit"/>
              <a-input
                :placeholder="disableSubmit ? '' : '请输入计量辅单位'"
                v-model="model.auxiliaryUnit"
                :disabled="disableSubmit"
              />
            </a-form-model-item>
          </a-col>
        </a-row>
         <a-row :gutter="24">
        <a-row :gutter="24">
          <a-col :span="8">
            <a-form-model-item prop="supplierId" label="厂家">
              <a-input :placeholder="disableSubmit?'':'请输入厂家'" v-model="model.supplierId" :disabled="disableSubmit"/>
              <a-input
                :placeholder="disableSubmit ? '' : '请输入厂家'"
                v-model="model.supplierId"
                :disabled="disableSubmit"
              />
            </a-form-model-item>
          </a-col>
          <a-col :span="8">
            <a-form-model-item prop="price" label="单价">
              <a-input :placeholder="disableSubmit?'':'请输入单价'" v-model="model.price" :disabled="disableSubmit"/>
              <a-input
                :placeholder="disableSubmit ? '' : '请输入单价'"
                v-model="model.price"
                :disabled="disableSubmit"
              />
            </a-form-model-item>
          </a-col>
          <!-- <a-col :span="8">
@@ -190,28 +291,45 @@
          </a-col> -->
        </a-row>
        <a-divider orientation="center" style="font-size: large;font-style: italic;color: #66aeed;"> å‚数信息
        <a-divider orientation="center" style="font-size: large; font-style: italic; color: #66aeed">
          å‚数信息
        </a-divider>
        <a-row :gutter="24">
          <a-col :span="6">
            <a-form-model-item label="刀片形状" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="bladeShape">
              <a-input v-model="model.bladeShape" :placeholder="disableSubmit?'':'请输入刀片形状'"  :disabled="disableSubmit"></a-input>
              <a-input
                v-model="model.bladeShape"
                :placeholder="disableSubmit ? '' : '请输入刀片形状'"
                :disabled="disableSubmit"
              ></a-input>
            </a-form-model-item>
          </a-col>
          <a-col :span="6">
            <a-form-model-item label="刀片长度" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="bladeLength">
              <a-input v-model="model.bladeLength" :placeholder="disableSubmit?'':'请输入刀片长度'"  :disabled="disableSubmit"></a-input>
              <a-input
                v-model="model.bladeLength"
                :placeholder="disableSubmit ? '' : '请输入刀片长度'"
                :disabled="disableSubmit"
              ></a-input>
            </a-form-model-item>
          </a-col>
          <a-col :span="6">
            <a-form-model-item label="切削刃数" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="cuttingEdgeCount">
              <a-input v-model="model.cuttingEdgeCount" :placeholder="disableSubmit?'':'请输入切削刃数'"  :disabled="disableSubmit"></a-input>
              <a-input
                v-model="model.cuttingEdgeCount"
                :placeholder="disableSubmit ? '' : '请输入切削刃数'"
                :disabled="disableSubmit"
              ></a-input>
            </a-form-model-item>
          </a-col>
           <a-col :span="6">
          <a-col :span="6">
            <a-form-model-item label="刀片厚度" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="bladeThickness">
              <a-input v-model="model.bladeThickness" :placeholder="disableSubmit?'':'请输入刀片厚度'"  :disabled="disableSubmit"></a-input>
              <a-input
                v-model="model.bladeThickness"
                :placeholder="disableSubmit ? '' : '请输入刀片厚度'"
                :disabled="disableSubmit"
              ></a-input>
            </a-form-model-item>
          </a-col>
        </a-row>
@@ -219,137 +337,239 @@
        <a-row :gutter="24">
          <a-col :span="6">
            <a-form-model-item label="夹固型式" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="clampingType">
              <a-input v-model="model.clampingType" :placeholder="disableSubmit?'':'请输入夹固型式'"  :disabled="disableSubmit"></a-input>
              <a-input
                v-model="model.clampingType"
                :placeholder="disableSubmit ? '' : '请输入夹固型式'"
                :disabled="disableSubmit"
              ></a-input>
            </a-form-model-item>
          </a-col>
          <a-col :span="6">
            <a-form-model-item label="刀尖R" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="noseAngleR">
              <a-input v-model="model.noseAngleR" :placeholder="disableSubmit?'':'请输入刀尖R'" :disabled="disableSubmit" ></a-input>
              <a-input
                v-model="model.noseAngleR"
                :placeholder="disableSubmit ? '' : '请输入刀尖R'"
                :disabled="disableSubmit"
              ></a-input>
            </a-form-model-item>
          </a-col>
          <a-col :span="6">
            <a-form-model-item label="刀片材料" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="toolMaterial">
              <a-input v-model="model.toolMaterial" :placeholder="disableSubmit?'':'请输入刀片材料'" :disabled="disableSubmit" ></a-input>
              <a-input
                v-model="model.toolMaterial"
                :placeholder="disableSubmit ? '' : '请输入刀片材料'"
                :disabled="disableSubmit"
              ></a-input>
            </a-form-model-item>
          </a-col>
          <a-col :span="6">
            <a-form-model-item label="零件材料" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="partMaterial">
              <a-input v-model="model.partMaterial" :placeholder="disableSubmit?'':'请输入零件材料'" :disabled="disableSubmit" ></a-input>
              <a-input
                v-model="model.partMaterial"
                :placeholder="disableSubmit ? '' : '请输入零件材料'"
                :disabled="disableSubmit"
              ></a-input>
            </a-form-model-item>
          </a-col>
        </a-row>
        <a-row>
          <a-col :span="6">
            <a-form-model-item label="是否涂层" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="paintcoatFlag">
              <a-radio-group v-model="model.paintcoatFlag" :placeholder="disableSubmit?'':'请选择是否涂层'" :disabled="disableSubmit">
              <a-radio-group
                v-model="model.paintcoatFlag"
                :placeholder="disableSubmit ? '' : '请选择是否涂层'"
                :disabled="disableSubmit"
              >
                <a-radio :value="'1'">是</a-radio>
                <a-radio :value="'2'">否</a-radio>
              </a-radio-group>
            </a-form-model-item>
          </a-col>
          <a-col :span="6">
            <a-form-model-item label="附加技术条件" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="technicalConditions">
              <a-input v-model="model.technicalConditions" :placeholder="disableSubmit?'':'请输入附加技术条件'" :disabled="disableSubmit" ></a-input>
            <a-form-model-item
              label="附加技术条件"
              :labelCol="labelCol"
              :wrapperCol="wrapperCol"
              prop="technicalConditions"
            >
              <a-input
                v-model="model.technicalConditions"
                :placeholder="disableSubmit ? '' : '请输入附加技术条件'"
                :disabled="disableSubmit"
              ></a-input>
            </a-form-model-item>
          </a-col>
          <a-col :span="6">
            <a-form-model-item label="附加技术条件说明" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="conditionsInfo">
              <a-input v-model="model.conditionsInfo" :placeholder="disableSubmit?'':'请输入附加技术条件说明'" :disabled="disableSubmit" ></a-input>
            <a-form-model-item
              label="附加技术条件说明"
              :labelCol="labelCol"
              :wrapperCol="wrapperCol"
              prop="conditionsInfo"
            >
              <a-input
                v-model="model.conditionsInfo"
                :placeholder="disableSubmit ? '' : '请输入附加技术条件说明'"
                :disabled="disableSubmit"
              ></a-input>
            </a-form-model-item>
          </a-col>
          <a-col :span="6">
            <a-form-model-item label="涂层材质" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="coatingMaterial">
              <a-input v-model="model.coatingMaterial" :placeholder="disableSubmit?'':'请输入涂层材质'" :disabled="disableSubmit" ></a-input>
              <a-input
                v-model="model.coatingMaterial"
                :placeholder="disableSubmit ? '' : '请输入涂层材质'"
                :disabled="disableSubmit"
              ></a-input>
            </a-form-model-item>
          </a-col>
        </a-row>
        <a-row>
          <a-col :span="6">
            <a-form-model-item label="品牌" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="brand">
              <a-input v-model="model.brand" :placeholder="disableSubmit?'':'请输入品牌'" :disabled="disableSubmit" ></a-input>
              <a-input
                v-model="model.brand"
                :placeholder="disableSubmit ? '' : '请输入品牌'"
                :disabled="disableSubmit"
              ></a-input>
            </a-form-model-item>
          </a-col>
          <a-col :span="6">
            <a-form-model-item label="制式" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="types">
              <a-input v-model="model.types" :placeholder="disableSubmit?'':'请输入制式'" :disabled="disableSubmit" ></a-input>
              <a-input
                v-model="model.types"
                :placeholder="disableSubmit ? '' : '请输入制式'"
                :disabled="disableSubmit"
              ></a-input>
            </a-form-model-item>
          </a-col>
          <a-col :span="6">
            <a-form-model-item label="加工分类" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="processingClassify">
              <a-input v-model="model.processingClassify" :placeholder="disableSubmit?'':'请输入加工分类'" :disabled="disableSubmit" ></a-input>
              <a-input
                v-model="model.processingClassify"
                :placeholder="disableSubmit ? '' : '请输入加工分类'"
                :disabled="disableSubmit"
              ></a-input>
            </a-form-model-item>
          </a-col>
          <a-col :span="6">
            <a-form-model-item label="刀片后角" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="bladePosterior">
              <a-input v-model="model.bladePosterior" :placeholder="disableSubmit?'':'请输入刀片后角'" :disabled="disableSubmit" ></a-input>
              <a-input
                v-model="model.bladePosterior"
                :placeholder="disableSubmit ? '' : '请输入刀片后角'"
                :disabled="disableSubmit"
              ></a-input>
            </a-form-model-item>
          </a-col>
        </a-row>
        <a-row>
          <a-col :span="6">
            <a-form-model-item label="切削方向" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="cuttingDirection">
              <a-input v-model="model.cuttingDirection" :placeholder="disableSubmit?'':'请输入切削方向'" :disabled="disableSubmit" ></a-input>
              <a-input
                v-model="model.cuttingDirection"
                :placeholder="disableSubmit ? '' : '请输入切削方向'"
                :disabled="disableSubmit"
              ></a-input>
            </a-form-model-item>
          </a-col>
          <a-col :span="6">
            <a-form-model-item label="刀片宽度" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="bladeWide">
              <a-input v-model="model.bladeWide" :placeholder="disableSubmit?'':'请输入刀片宽度'" :disabled="disableSubmit" ></a-input>
              <a-input
                v-model="model.bladeWide"
                :placeholder="disableSubmit ? '' : '请输入刀片宽度'"
                :disabled="disableSubmit"
              ></a-input>
            </a-form-model-item>
          </a-col>
          <a-col :span="6">
            <a-form-model-item label="刀片尺寸" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="bladeSize">
              <a-input v-model="model.bladeSize" :placeholder="disableSubmit?'':'请输入刀片尺寸'" :disabled="disableSubmit" ></a-input>
              <a-input
                v-model="model.bladeSize"
                :placeholder="disableSubmit ? '' : '请输入刀片尺寸'"
                :disabled="disableSubmit"
              ></a-input>
            </a-form-model-item>
          </a-col>
          <a-col :span="6">
            <a-form-model-item label="内外螺纹" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="inOutThread">
              <a-input v-model="model.inOutThread" :placeholder="disableSubmit?'':'请输入内外螺纹'" :disabled="disableSubmit" ></a-input>
              <a-input
                v-model="model.inOutThread"
                :placeholder="disableSubmit ? '' : '请输入内外螺纹'"
                :disabled="disableSubmit"
              ></a-input>
            </a-form-model-item>
          </a-col>
        </a-row>
        <a-row>
          <a-col :span="6">
            <a-form-model-item label="螺纹标准" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="threadStandard">
              <a-input v-model="model.threadStandard" :placeholder="disableSubmit?'':'请输入螺纹标准'" :disabled="disableSubmit" ></a-input>
              <a-input
                v-model="model.threadStandard"
                :placeholder="disableSubmit ? '' : '请输入螺纹标准'"
                :disabled="disableSubmit"
              ></a-input>
            </a-form-model-item>
          </a-col>
          <a-col :span="6">
            <a-form-model-item label="牙型角度" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="dentalAngle">
              <a-input v-model="model.dentalAngle" :placeholder="disableSubmit?'':'请输入牙型角度'" :disabled="disableSubmit" ></a-input>
              <a-input
                v-model="model.dentalAngle"
                :placeholder="disableSubmit ? '' : '请输入牙型角度'"
                :disabled="disableSubmit"
              ></a-input>
            </a-form-model-item>
          </a-col>
          <a-col :span="6">
            <a-form-model-item label="螺距" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="pitch">
              <a-input v-model="model.pitch" :placeholder="disableSubmit?'':'请输入螺距'" :disabled="disableSubmit" ></a-input>
              <a-input
                v-model="model.pitch"
                :placeholder="disableSubmit ? '' : '请输入螺距'"
                :disabled="disableSubmit"
              ></a-input>
            </a-form-model-item>
          </a-col>
          <a-col :span="6">
            <a-form-model-item label="最小加工内螺纹公称直径" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="minInternalThread">
              <a-input v-model="model.minInternalThread" :placeholder="disableSubmit?'':'请输入最小加工内螺纹公称直径'" :disabled="disableSubmit" ></a-input>
            <a-form-model-item
              label="最小加工内螺纹公称直径"
              :labelCol="labelCol"
              :wrapperCol="wrapperCol"
              prop="minInternalThread"
            >
              <a-input
                v-model="model.minInternalThread"
                :placeholder="disableSubmit ? '' : '请输入最小加工内螺纹公称直径'"
                :disabled="disableSubmit"
              ></a-input>
            </a-form-model-item>
          </a-col>
        </a-row>
        <a-row :gutter="24">
          <a-col :span="24">
            <a-form-model-item :labelCol="labelColLong" :wrapperCol="wrapperColLong" prop="remark" label="备注">
              <a-textarea :placeholder="disableSubmit?'':'请输入备注'" v-model="model.remark" :disabled="disableSubmit"/>
              <a-textarea
                :placeholder="disableSubmit ? '' : '请输入备注'"
                v-model="model.remark"
                :disabled="disableSubmit"
              />
            </a-form-model-item>
          </a-col>
        </a-row>
      </a-form-model>
    </a-spin>
    <select-position-code-modal ref="selectPositionCodeModal" :title="'选择库位'" />
  </j-modal>
</template>
<script>
import { getAction,postAction, httpAction } from '@/api/manage'
import { getAction, postAction, httpAction } from '@/api/manage'
import JSelectProduction from '@comp/jeecgbiz/JSelectProduction.vue'
import { duplicateCheck } from '@/api/api'//重复校验
import { duplicateCheck } from '@/api/api' //重复校验
import { ajaxGetDictItems } from '@/api/api'
import JDictSelectTag from '@/components/dict/JDictSelectTag'
import SelectPositionCodeModal from './SelectPositionCodeModal'
export default {
  name: 'ParaHoleToolsModal',
  components: { JSelectProduction },
  components: { JSelectProduction, JDictSelectTag, SelectPositionCodeModal },
  data() {
    return {
      title: '操作',
@@ -361,86 +581,64 @@
      model: {},
      labelCol: {
        xs: { span: 24 },
        sm: { span: 9 }
        sm: { span: 9 },
      },
      wrapperCol: {
        xs: { span: 24 },
        sm: { span: 14 }
        sm: { span: 14 },
      },
      labelColLong: {
        xs: { span: 24 },
        sm: { span: 2 }
        sm: { span: 2 },
      },
      wrapperColLong: {
        xs: { span: 24 },
        sm: { span: 22 }
        sm: { span: 22 },
      },
      confirmLoading: false,
      validatorRules: {
        toolCode: [
          { required: true, message: '请输入工具编码' },
          { validator: this.validateNum }
        ],
        classifyNum: [
          { required: true, message: '请输入工具分类编码' }
        ],
        classifyName: [
          { required: true, message: '请输入工具分类名称' }
        ],
        toolModel: [
          { required: true, message: '请输入型号/图号' },
           { validator: this.validateModel }
        ],
        chineseName: [
          { required: true, message: '请输入中文名称' }
        ],
        bladeShape: [
          { required: true, message: '请输入刀片形状' }
        ],
        bladeLength: [
          { required: true, message: '请输入刀片长度' }
        ],
        cuttingEdgeCount: [
          { required: true, message: '请输入切削刃数' }
        ],
        bladeThickness: [
          { required: true, message: '请输入刀片厚度' }
        ],
        clampingType: [
          { required: true, message: '请输入夹固型式' }
        ],
         noseAngleR: [
          { required: true, message: '请输入刀尖R' }
        ],
        toolMaterial: [
          { required: true, message: '请输入刀片材料' }
        ],
        paintcoatFlag: [
          { required: true, message: '请选择是否涂层' }
        ],
        technicalConditions: [
          { required: true, message: '请输入附加技术条件' }
        ]
        accuracyClass: [{ required: true, message: '请选择精度等级' }],
        toolCode: [{ required: true, message: '请输入工具编码' }, { validator: this.validateNum }],
        classifyNum: [{ required: true, message: '请输入工具分类编码' }],
        classifyName: [{ required: true, message: '请输入工具分类名称' }],
        toolModel: [{ required: true, message: '请输入型号/图号' }, { validator: this.validateModel }],
        chineseName: [{ required: true, message: '请输入中文名称' }],
        bladeShape: [{ required: true, message: '请输入刀片形状' }],
        bladeLength: [{ required: true, message: '请输入刀片长度' }],
        cuttingEdgeCount: [{ required: true, message: '请输入切削刃数' }],
        bladeThickness: [{ required: true, message: '请输入刀片厚度' }],
        clampingType: [{ required: true, message: '请输入夹固型式' }],
        noseAngleR: [{ required: true, message: '请输入刀尖R' }],
        toolMaterial: [{ required: true, message: '请输入刀片材料' }],
        paintcoatFlag: [{ required: true, message: '请选择是否涂层' }],
        technicalConditions: [{ required: true, message: '请输入附加技术条件' }],
      },
      url: {
        add: '/tms/baseTools/add',
        edit: '/tms/baseTools/edit',
      },
      locationCodeOptions:[]
      locationCodeOptions: [],
    }
  },
  created() {
     ajaxGetDictItems("tms_goods_shelves,location_code,id", null).then((res) => {
        if (res.success) {
          this.locationCodeOptions = res.result
        }
      })
    ajaxGetDictItems('tms_goods_shelves,location_code,id', null).then((res) => {
      if (res.success) {
        this.locationCodeOptions = res.result
      }
    })
  },
  mounted() {
    this.$bus.$on('selectionRows', (data) => {
      this.model.positionCode = data[0].positionCode
    })
  },
  methods: {
    add(nodeSelected) {
      this.editable = false;
      this.editable = false
      //初始化默认值
      this.model = {};
      this.model = {
        positionCode: ''
      };
      this.model.classifyId = nodeSelected.key
      this.model.classifyNum = nodeSelected.entity.classifyId
      this.model.classifyName = nodeSelected.entity.typeName
@@ -448,7 +646,7 @@
      this.visible = true
    },
    edit(record) {
      this.editable = true;
      this.editable = true
      this.model = Object.assign({}, record)
      this.visible = true
    },
@@ -457,25 +655,32 @@
      this.visible = false
      this.$refs.form.clearValidate()
    },
    positionCodeSearch() {
      let positionCode = []
      positionCode.push(this.model.positionCode)
      this.$refs.selectPositionCodeModal.showModal(positionCode)
      this.$refs.selectPositionCodeModal.title = '选择库位'
      this.$refs.selectPositionCodeModal.disableSubmit = false
    },
    handleOk() {
      const that = this
      // è§¦å‘表单验证
      this.$refs.form.validate(valid => {
      this.$refs.form.validate((valid) => {
        if (valid) {
          that.confirmLoading = true
          let formData = Object.assign(this.model)
          let httpUrl = ''
            let method = 'post'
            if (!this.model.id) {
              httpUrl += this.url.add
            } else {
              httpUrl += this.url.edit
            }
           httpAction(httpUrl, formData, method)
          let method = 'post'
          if (!this.model.id) {
            httpUrl += this.url.add
          } else {
            httpUrl += this.url.edit
          }
          httpAction(httpUrl, formData, method)
            .then((res) => {
              if (res.success) {
                that.$message.success(res.message)
               that.$emit('ok')
                that.$emit('ok')
              } else {
                that.$message.warning(res.message)
              }
@@ -490,39 +695,39 @@
    handleCancel() {
      this.close()
    },
      //验证工具编码是否重复
    //验证工具编码是否重复
    validateNum(rule, value, callback) {
      var params = {
        tableName: 'tms_base_tools',
        fieldName: 'tool_code',
        fieldVal: value,
        dataId: this.model.id
      };
        dataId: this.model.id,
      }
      duplicateCheck(params).then((res) => {
        if (res.success) {
          callback()
        } else {
          callback("工具编码已存在!")
          callback('工具编码已存在!')
        }
      })
    },
      //验证型号/图号是否重复
    //验证型号/图号是否重复
    validateModel(rule, value, callback) {
      var params = {
        tableName: 'tms_base_tools',
        fieldName: 'tool_model',
        fieldVal: value,
        dataId: this.model.id
      };
        dataId: this.model.id,
      }
      duplicateCheck(params).then((res) => {
        if (res.success) {
          callback()
        } else {
          callback("型号/图号已存在!")
          callback('型号/图号已存在!')
        }
      })
    },
  }
  },
}
</script>
src/views/tms/modules/baseTools/ParaCommonToolModal.vue
@@ -38,6 +38,20 @@
                    </a-form-model-item>
                  </a-col>
                </a-row>
                <a-row>
                  <a-col :span="24">
                    <a-form-model-item prop="accuracyClass" label="精度等级">
                      <j-dict-select-tag
                          :disabled="disableSubmit"
                          type="list"
                          v-model="model.accuracyClass"
                          :triggerChange="true"
                          dictCode="accuracy_class"
                          :placeholder="disableSubmit?'':'请选择精度等级'"
                        />
                    </a-form-model-item>
                  </a-col>
                </a-row>
              </a-col>
              <a-col :span="6">
@@ -119,13 +133,23 @@
            </a-form-model-item>
          </a-col>
          <a-col :span="8">
            <a-form-model-item prop="positionCode" label="库位号">
            <!-- <a-form-model-item prop="positionCode" label="库位号">
               <a-select
                :disabled="disableSubmit"
                :triggerChange="true"
                :options="locationCodeOptions"
                v-model="model.positionCode"
              />
            </a-form-model-item> -->
            <a-form-model-item label="库位" :labelCol="labelCol" :wrapperCol="wrapperCol">
              <a-tooltip title="选择库位后,此类刀具默认存储到此库位,请慎重选择!" placement="topRight">
                <a-input-search
                  v-model="model.positionCode"
                  @search="positionCodeSearch"
                  enter-button
                  placeholder="请选择库位"
                />
              </a-tooltip>
            </a-form-model-item>
          </a-col>
        </a-row>
@@ -190,6 +214,7 @@
        </a-row>
      </a-form-model>
    </a-spin>
    <select-position-code-modal ref="selectPositionCodeModal" :title="'选择库位'" />
  </j-modal>
</template>
@@ -198,10 +223,12 @@
import JSelectProduction from '@comp/jeecgbiz/JSelectProduction.vue'
import { duplicateCheck } from '@/api/api'//重复校验
import { ajaxGetDictItems } from '@/api/api'
import JDictSelectTag from '@/components/dict/JDictSelectTag'
import SelectPositionCodeModal from './SelectPositionCodeModal'
export default {
  name: 'ParaCommonToolModal',
  components: { JSelectProduction },
  components: { JSelectProduction,JDictSelectTag,SelectPositionCodeModal },
  data() {
    return {
      title: '操作',
@@ -229,6 +256,9 @@
      },
      confirmLoading: false,
      validatorRules: {
        accuracyClass:[
          { required: true, message: '请选择精度等级' },
        ],
        toolCode: [
          { required: true, message: '请输入工具编码' },
          { validator: this.validateNum }
@@ -261,11 +291,18 @@
        }
      })
  },
  mounted() {
    this.$bus.$on('selectionRows', (data) => {
      this.model.positionCode = data[0].positionCode
    })
  },
  methods: {
    add(nodeSelected) {
      this.editable = false;
      //初始化默认值
      this.model = {};
      this.model = {
        positionCode: ''
      };
      this.model.classifyId = nodeSelected.key
      this.model.classifyNum = nodeSelected.entity.classifyId
      this.model.classifyName = nodeSelected.entity.typeName
@@ -282,6 +319,13 @@
      this.visible = false
      this.$refs.form.clearValidate()
    },
    positionCodeSearch() {
      let positionCode = []
      positionCode.push(this.model.positionCode)
      this.$refs.selectPositionCodeModal.showModal(positionCode)
      this.$refs.selectPositionCodeModal.title = '选择库位'
      this.$refs.selectPositionCodeModal.disableSubmit = false
    },
    handleOk() {
      const that = this
      // è§¦å‘表单验证
src/views/tms/modules/baseTools/ParaHoleToolsModal.vue
@@ -38,6 +38,20 @@
                    </a-form-model-item>
                  </a-col>
                </a-row>
                <a-row>
                  <a-col :span="24">
                    <a-form-model-item prop="accuracyClass" label="精度等级">
                      <j-dict-select-tag
                          :disabled="disableSubmit"
                          type="list"
                          v-model="model.accuracyClass"
                          :triggerChange="true"
                          dictCode="accuracy_class"
                          :placeholder="disableSubmit?'':'请选择精度等级'"
                        />
                    </a-form-model-item>
                  </a-col>
                </a-row>
              </a-col>
              <a-col :span="6">
@@ -119,13 +133,23 @@
            </a-form-model-item>
          </a-col>
          <a-col :span="8">
            <a-form-model-item prop="positionCode" label="库位号">
            <!-- <a-form-model-item prop="positionCode" label="库位号">
              <a-select
                :disabled="disableSubmit"
                :triggerChange="true"
                :options="locationCodeOptions"
                v-model="model.positionCode"
              />
            </a-form-model-item> -->
             <a-form-model-item label="库位" :labelCol="labelCol" :wrapperCol="wrapperCol">
              <a-tooltip title="选择库位后,此类刀具默认存储到此库位,请慎重选择!" placement="topRight">
                <a-input-search
                  v-model="model.positionCode"
                  @search="positionCodeSearch"
                  enter-button
                  placeholder="请选择库位"
                />
              </a-tooltip>
            </a-form-model-item>
          </a-col>
        </a-row>
@@ -379,6 +403,7 @@
        </a-row>
      </a-form-model>
    </a-spin>
    <select-position-code-modal ref="selectPositionCodeModal" :title="'选择库位'" />
  </j-modal>
</template>
@@ -387,10 +412,12 @@
import JSelectProduction from '@comp/jeecgbiz/JSelectProduction.vue'
import { duplicateCheck } from '@/api/api'//重复校验
import { ajaxGetDictItems } from '@/api/api'
import JDictSelectTag from '@/components/dict/JDictSelectTag'
import SelectPositionCodeModal from './SelectPositionCodeModal'
export default {
  name: 'ParaHoleToolsModal',
  components: { JSelectProduction },
  components: { JSelectProduction,JDictSelectTag,SelectPositionCodeModal },
  data() {
    return {
      title: '操作',
@@ -418,6 +445,9 @@
      },
      confirmLoading: false,
      validatorRules: {
        accuracyClass:[
          { required: true, message: '请选择精度等级' },
        ],
        toolCode: [
          { required: true, message: '请输入工具编码' },
          { validator: this.validateNum }
@@ -474,11 +504,18 @@
        }
      })
  },
   mounted() {
    this.$bus.$on('selectionRows', (data) => {
      this.model.positionCode = data[0].positionCode
    })
  },
  methods: {
    add(nodeSelected) {
      this.editable = false;
      //初始化默认值
      this.model = {};
      this.model = {
        positionCode: ''
      };
      this.model.classifyId = nodeSelected.key
      this.model.classifyNum = nodeSelected.entity.classifyId
      this.model.classifyName = nodeSelected.entity.typeName
@@ -495,6 +532,13 @@
      this.visible = false
      this.$refs.form.clearValidate()
    },
    positionCodeSearch() {
      let positionCode = []
      positionCode.push(this.model.positionCode)
      this.$refs.selectPositionCodeModal.showModal(positionCode)
      this.$refs.selectPositionCodeModal.title = '选择库位'
      this.$refs.selectPositionCodeModal.disableSubmit = false
    },
    handleOk() {
      const that = this
      // è§¦å‘表单验证
src/views/tms/modules/baseTools/ParaMillToolModal.vue
@@ -38,6 +38,20 @@
                    </a-form-model-item>
                  </a-col>
                </a-row>
                <a-row>
                  <a-col :span="24">
                    <a-form-model-item prop="accuracyClass" label="精度等级">
                      <j-dict-select-tag
                          :disabled="disableSubmit"
                          type="list"
                          v-model="model.accuracyClass"
                          :triggerChange="true"
                          dictCode="accuracy_class"
                          :placeholder="disableSubmit?'':'请选择精度等级'"
                        />
                    </a-form-model-item>
                  </a-col>
                </a-row>
              </a-col>
              <a-col :span="6">
@@ -119,13 +133,23 @@
            </a-form-model-item>
          </a-col>
          <a-col :span="8">
            <a-form-model-item prop="positionCode" label="库位号">
            <!-- <a-form-model-item prop="positionCode" label="库位号">
              <a-select
                :disabled="disableSubmit"
                :triggerChange="true"
                :options="locationCodeOptions"
                v-model="model.positionCode"
              />
            </a-form-model-item> -->
            <a-form-model-item label="库位" :labelCol="labelCol" :wrapperCol="wrapperCol">
              <a-tooltip title="选择库位后,此类刀具默认存储到此库位,请慎重选择!" placement="topRight">
                <a-input-search
                  v-model="model.positionCode"
                  @search="positionCodeSearch"
                  enter-button
                  placeholder="请选择库位"
                />
              </a-tooltip>
            </a-form-model-item>
          </a-col>
        </a-row>
@@ -384,6 +408,7 @@
        </a-row>
      </a-form-model>
    </a-spin>
    <select-position-code-modal ref="selectPositionCodeModal" :title="'选择库位'" />
  </j-modal>
</template>
@@ -392,10 +417,12 @@
import JSelectProduction from '@comp/jeecgbiz/JSelectProduction.vue'
import { duplicateCheck } from '@/api/api'//重复校验
import { ajaxGetDictItems } from '@/api/api'
import JDictSelectTag from '@/components/dict/JDictSelectTag'
import SelectPositionCodeModal from './SelectPositionCodeModal'
export default {
  name: 'ParaHoleToolsModal',
  components: { JSelectProduction },
  components: { JSelectProduction,JDictSelectTag,SelectPositionCodeModal },
  data() {
    return {
      title: '操作',
@@ -423,6 +450,9 @@
      },
      confirmLoading: false,
      validatorRules: {
        accuracyClass:[
          { required: true, message: '请选择精度等级' },
        ],
        toolCode: [
          { required: true, message: '请输入工具编码' },
          { validator: this.validateNum }
@@ -481,6 +511,11 @@
      locationCodeOptions:[]
    }
  },
  mounted() {
    this.$bus.$on('selectionRows', (data) => {
      this.model.positionCode = data[0].positionCode
    })
  },
  created() {
    ajaxGetDictItems("tms_goods_shelves,location_code,id", null).then((res) => {
        if (res.success) {
@@ -492,7 +527,9 @@
    add(nodeSelected) {
      this.editable = false;
      //初始化默认值
      this.model = {};
      this.model = {
        positionCode: ''
      };
      this.model.classifyId = nodeSelected.key
      this.model.classifyNum = nodeSelected.entity.classifyId
      this.model.classifyName = nodeSelected.entity.typeName
@@ -509,6 +546,13 @@
      this.visible = false
      this.$refs.form.clearValidate()
    },
    positionCodeSearch() {
      let positionCode = []
      positionCode.push(this.model.positionCode)
      this.$refs.selectPositionCodeModal.showModal(positionCode)
      this.$refs.selectPositionCodeModal.title = '选择库位'
      this.$refs.selectPositionCodeModal.disableSubmit = false
    },
    handleOk() {
      const that = this
      // è§¦å‘表单验证
src/views/tms/modules/baseTools/ParaThreadingToolModal.vue
@@ -38,6 +38,20 @@
                    </a-form-model-item>
                  </a-col>
                </a-row>
                <a-row>
                  <a-col :span="24">
                    <a-form-model-item prop="accuracyClass" label="精度等级">
                      <j-dict-select-tag
                          :disabled="disableSubmit"
                          type="list"
                          v-model="model.accuracyClass"
                          :triggerChange="true"
                          dictCode="accuracy_class"
                          :placeholder="disableSubmit?'':'请选择精度等级'"
                        />
                    </a-form-model-item>
                  </a-col>
                </a-row>
              </a-col>
              <a-col :span="6">
@@ -119,13 +133,23 @@
            </a-form-model-item>
          </a-col>
          <a-col :span="8">
            <a-form-model-item prop="positionCode" label="库位号">
            <!-- <a-form-model-item prop="positionCode" label="库位号">
              <a-select
                :disabled="disableSubmit"
                :triggerChange="true"
                :options="locationCodeOptions"
                v-model="model.positionCode"
              />
            </a-form-model-item> -->
            <a-form-model-item label="库位" :labelCol="labelCol" :wrapperCol="wrapperCol">
              <a-tooltip title="选择库位后,此类刀具默认存储到此库位,请慎重选择!" placement="topRight">
                <a-input-search
                  v-model="model.positionCode"
                  @search="positionCodeSearch"
                  enter-button
                  placeholder="请选择库位"
                />
              </a-tooltip>
            </a-form-model-item>
          </a-col>
        </a-row>
@@ -325,6 +349,7 @@
        </a-row>
      </a-form-model>
    </a-spin>
    <select-position-code-modal ref="selectPositionCodeModal" :title="'选择库位'" />
  </j-modal>
</template>
@@ -333,10 +358,12 @@
import JSelectProduction from '@comp/jeecgbiz/JSelectProduction.vue'
import { duplicateCheck } from '@/api/api'//重复校验
import { ajaxGetDictItems } from '@/api/api'
  import JDictSelectTag from '@/components/dict/JDictSelectTag'
  import SelectPositionCodeModal from './SelectPositionCodeModal'
export default {
  name: 'ParaHoleToolsModal',
  components: { JSelectProduction },
  components: { JSelectProduction,JDictSelectTag,SelectPositionCodeModal },
  data() {
    return {
      title: '操作',
@@ -364,6 +391,9 @@
      },
      confirmLoading: false,
      validatorRules: {
        accuracyClass:[
          { required: true, message: '请选择精度等级' },
        ],
        toolCode: [
          { required: true, message: '请输入工具编码' },
          { validator: this.validateNum }
@@ -426,11 +456,18 @@
        }
      })
  },
  mounted() {
    this.$bus.$on('selectionRows', (data) => {
      this.model.positionCode = data[0].positionCode
    })
  },
  methods: {
    add(nodeSelected) {
      this.editable = false;
      //初始化默认值
      this.model = {};
     this.model = {
        positionCode: ''
      };
      this.model.classifyId = nodeSelected.key
      this.model.classifyNum = nodeSelected.entity.classifyId
      this.model.classifyName = nodeSelected.entity.typeName
@@ -447,6 +484,13 @@
      this.visible = false
      this.$refs.form.clearValidate()
    },
    positionCodeSearch() {
      let positionCode = []
      positionCode.push(this.model.positionCode)
      this.$refs.selectPositionCodeModal.showModal(positionCode)
      this.$refs.selectPositionCodeModal.title = '选择库位'
      this.$refs.selectPositionCodeModal.disableSubmit = false
    },
    handleOk() {
      const that = this
      // è§¦å‘表单验证
src/views/tms/modules/baseTools/ParaTurningToolsModal.vue
@@ -38,6 +38,20 @@
                    </a-form-model-item>
                  </a-col>
                </a-row>
                <a-row>
                  <a-col :span="24">
                    <a-form-model-item prop="accuracyClass" label="精度等级">
                      <j-dict-select-tag
                          :disabled="disableSubmit"
                          type="list"
                          v-model="model.accuracyClass"
                          :triggerChange="true"
                          dictCode="accuracy_class"
                          :placeholder="disableSubmit?'':'请选择精度等级'"
                        />
                    </a-form-model-item>
                  </a-col>
                </a-row>
              </a-col>
              <a-col :span="6">
@@ -120,13 +134,23 @@
            </a-form-model-item>
          </a-col>
          <a-col :span="8">
            <a-form-model-item prop="positionCode" label="库位号">
            <!-- <a-form-model-item prop="positionCode" label="库位号">
              <a-select
                :disabled="disableSubmit"
                :triggerChange="true"
                :options="locationCodeOptions"
                v-model="model.positionCode"
              />
            </a-form-model-item> -->
            <a-form-model-item label="库位" :labelCol="labelCol" :wrapperCol="wrapperCol">
              <a-tooltip title="选择库位后,此类刀具默认存储到此库位,请慎重选择!" placement="topRight">
                <a-input-search
                  v-model="model.positionCode"
                  @search="positionCodeSearch"
                  enter-button
                  placeholder="请选择库位"
                />
              </a-tooltip>
            </a-form-model-item>
          </a-col>
        </a-row>
@@ -403,6 +427,7 @@
        </a-row>
      </a-form-model>
    </a-spin>
    <select-position-code-modal ref="selectPositionCodeModal" :title="'选择库位'" />
  </j-modal>
</template>
@@ -411,10 +436,12 @@
import JSelectProduction from '@comp/jeecgbiz/JSelectProduction.vue'
import { duplicateCheck } from '@/api/api'//重复校验
import { ajaxGetDictItems } from '@/api/api'
import JDictSelectTag from '@/components/dict/JDictSelectTag'
import SelectPositionCodeModal from './SelectPositionCodeModal'
export default {
  name: 'ParaHoleToolsModal',
  components: { JSelectProduction },
  components: { JSelectProduction,JDictSelectTag,SelectPositionCodeModal },
  data() {
    return {
      title: '操作',
@@ -442,6 +469,9 @@
      },
      confirmLoading: false,
      validatorRules: {
        accuracyClass:[
          { required: true, message: '请选择精度等级' },
        ],
        toolCode: [
          { required: true, message: '请输入工具编码' },
          { validator: this.validateNum }
@@ -497,6 +527,11 @@
      locationCodeOptions:[]
    }
  },
  mounted() {
    this.$bus.$on('selectionRows', (data) => {
      this.model.positionCode = data[0].positionCode
    })
  },
  created() {
    ajaxGetDictItems("tms_goods_shelves,location_code,id", null).then((res) => {
        if (res.success) {
@@ -508,7 +543,9 @@
    add(nodeSelected) {
      this.editable = false;
      //初始化默认值
      this.model = {};
      this.model = {
        positionCode: ''
      };
      this.model.classifyId = nodeSelected.key
      this.model.classifyNum = nodeSelected.entity.classifyId
      this.model.classifyName = nodeSelected.entity.typeName
@@ -525,6 +562,13 @@
      this.visible = false
      this.$refs.form.clearValidate()
    },
    positionCodeSearch() {
      let positionCode = []
      positionCode.push(this.model.positionCode)
      this.$refs.selectPositionCodeModal.showModal(positionCode)
      this.$refs.selectPositionCodeModal.title = '选择库位'
      this.$refs.selectPositionCodeModal.disableSubmit = false
    },
    handleOk() {
      const that = this
      // è§¦å‘表单验证
src/views/tms/modules/baseTools/SelectPositionCodeModal.vue
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,252 @@
<template>
  <!--支持全屏缩放-->
  <j-modal
    :visible="visible"
    :title="title"
    switchFullscreen
    :width="1200"
    @ok="handleSubmit"
    @cancel="close"
    style="top: 50px"
    cancelText="关闭"
  >
    <a-card :bordered="false">
      <div class="table-page-search-wrapper">
        <a-form layout="inline" @keyup.enter.native="searchQuery">
          <a-row :gutter="24">
            <a-col :xl="6" :lg="7" :md="8" :sm="24">
              <a-form-item label="仓库编码">
                <a-input placeholder="请输入仓库编码,支持模糊查询" v-model="queryParam.warehouseNum"></a-input>
              </a-form-item>
            </a-col>
            <a-col :xl="6" :lg="7" :md="8" :sm="24">
              <a-form-item label="仓库名称">
                <a-input placeholder="请输入仓库名称,支持模糊查询" v-model="queryParam.warehouseName"></a-input>
              </a-form-item>
            </a-col>
            <a-col :xl="6" :lg="7" :md="8" :sm="24">
              <a-form-item label="库位号">
                <a-input placeholder="请输入库位号,支持模糊查询" v-model="queryParam.positionCode"></a-input>
              </a-form-item>
            </a-col>
            <a-button type="primary" @click="searchQuery" icon="search">查询</a-button>
            <a-button type="primary" @click="searchReset" icon="reload" style="margin-left: 8px">重置</a-button>
          </a-row>
        </a-form>
      </div>
      <!--库位列表-->
      <a-table
        ref="table"
        :scroll="scrollTrigger"
        size="middle"
        rowKey="id"
        :columns="columns"
        :dataSource="dataSource"
        :pagination="ipagination"
        :rowSelection="rowSelection"
        :loading="loading"
        @change="handleTableChange"
      >
      </a-table>
    </a-card>
  </j-modal>
</template>
<script>
import { filterObj } from '@/utils/util'
import { getAction } from '@/api/manage'
export default {
  name: 'SelectPositionCodeModal',
  components: {},
  props: {
  },
  data() {
    return {
      queryParam: {},
      columns: [
        {
          title: '#',
          dataIndex: '',
          key: 'rowIndex',
          width: 50,
          align: 'center',
          customRender: function (t, r, index) {
            return parseInt(index) + 1
          },
        },
        {
          title: '库位号',
          align: 'center',
          dataIndex: 'positionCode',
          sorter: true,
        },
        {
          title: '仓库编码',
          align: 'center',
          dataIndex: 'warehouseNum',
          sorter: true,
        },
        {
          title: '仓库名称',
          align: 'center',
          dataIndex: 'warehouseName',
          sorter: true,
        },
        {
          title: '货架编号',
          align: 'center',
          dataIndex: 'shelfNumber',
          sorter: true,
        },
        {
          title: '货架名称',
          align: 'center',
          dataIndex: 'shelfName',
          sorter: true,
        },
      ],
      selectedRowKeys: [],
      scrollTrigger: {},
      dataSource: [],
      selectionRows: [],
      title: '根据查询结果选择库位',
      ipagination: {
        current: 1,
        pageSize: 10,
        pageSizeOptions: ['5', '10', '20'],
        showTotal: (total, range) => {
          return range[0] + '-' + range[1] + ' å…±' + total + '条'
        },
        showQuickJumper: true,
        showSizeChanger: true,
        total: 0,
      },
      departTree: [],
      visible: false,
      loading: false,
      url: {
         list: '/tms/toolsConfigProperty/positionCodeList',
      },
      oldSlelectRows: [],
    }
  },
  computed: {
    rowSelection() {
      return {
        type: 'radio',
        onChange: (selectedRowKeys, selectedRows) => {
          this.selectedRowKeys = selectedRowKeys
          this.onSelectChange(selectedRows)
        },
        getCheckboxProps: (record) => ({
          props: {
            disabled: record.distable,
          },
        }),
        selectedRowKeys: this.selectedRowKeys,
      }
    },
  },
  watch: {},
  created() {},
  methods: {
    async loadData(arg) {
      if (arg === 1) {
        this.ipagination.current = 1
      }
      let that = this
      this.loading = true
      let params = this.getQueryParams() //查询条件
      await getAction(this.url.list, params).then((res) => {
        if (res.success) {
          for (let i = 0; i < res.result.records.length; i++) {
            if (that.oldSlelectRows.indexOf(res.result.records[i].positionCode) > -1) {
              res.result.records[i].distable = true
            } else {
              res.result.records[i].distable = false
            }
          }
          this.dataSource = res.result.records
          this.ipagination.total = res.result.total
        }
        if (res.code === 510) {
          this.$message.warning(res.message)
        }
        this.loading = false
      })
    },
    showModal(oldSlelectRows) {
      this.oldSlelectRows = oldSlelectRows
      this.visible = true
      this.loadData(1)
    },
    getQueryParams() {
      let param = Object.assign({}, this.queryParam)
      param.field = this.getQueryField()
      param.pageNo = this.ipagination.current
      param.pageSize = this.ipagination.pageSize
      return filterObj(param)
    },
    //查询条件处理
    getQueryField() {
      let str = 'id,'
      for (let a = 0; a < this.columns.length; a++) {
        str += ',' + this.columns[a].dataIndex
      }
      return str
    },
    searchReset(num) {
      let that = this
      if (num !== 0) {
        that.loadData(1)
      }
      that.selectborrowIds = []
    },
    close() {
      this.searchReset(0)
      this.selectedRowKeys = []
      this.visible = false
    },
    handleTableChange(pagination, filters, sorter) {
      //TODO ç­›é€‰
      this.ipagination = pagination
      this.loadData()
    },
    handleSubmit() {
      this.$bus.$emit('selectionRows', this.selectionRows)
      this.searchReset(0)
      this.close()
    },
    onSelectChange(selectionRows) {
      this.selectionRows = selectionRows
    },
    onSearch() {
      this.loadData(1)
    },
     searchQuery() {
      this.loadData(1);
    },
    searchReset() {
      this.queryParam = {}
      this.loadData(1)
    },
  },
}
</script>
<style scoped>
.ant-table-tbody .ant-table-row td {
  padding-top: 10px;
  padding-bottom: 10px;
}
#components-layout-demo-custom-trigger .trigger {
  font-size: 18px;
  line-height: 64px;
  padding: 0 24px;
  cursor: pointer;
  transition: color 0.3s;
}
</style>
src/views/tms/modules/baseTools/ToolsConfigPropertyModal.vue
@@ -38,6 +38,20 @@
                    </a-form-model-item>
                  </a-col>
                </a-row>
                <a-row>
                  <a-col :span="24">
                    <a-form-model-item prop="accuracyClass" label="精度等级">
                      <j-dict-select-tag
                          :disabled="disableSubmit"
                          type="list"
                          v-model="model.accuracyClass"
                          :triggerChange="true"
                          dictCode="accuracy_class"
                          :placeholder="disableSubmit?'':'请选择精度等级'"
                        />
                    </a-form-model-item>
                  </a-col>
                </a-row>
              </a-col>
              <a-col :span="6">
@@ -192,12 +206,12 @@
import { getAction,postAction, httpAction } from '@/api/manage'
import { validateDuplicateValueInDelFlag } from '@/utils/util'
import JSelectProduction from '@comp/jeecgbiz/JSelectProduction.vue'
import { getSystemConfigValue } from '@api/api'
import JDictSelectTag from '@/components/dict/JDictSelectTag'
  import { duplicateCheck } from '@/api/api'//重复校验
export default {
  name: 'ParaHoleToolsModal',
  components: { JSelectProduction },
  components: { JSelectProduction,JDictSelectTag },
  data() {
    return {
      title: '操作',
@@ -225,6 +239,9 @@
      },
      confirmLoading: false,
      validatorRules: {
        accuracyClass:[
          { required: true, message: '请选择精度等级' },
        ],
        toolCode: [
          { required: true, message: '请输入工具编码' },
          { validator: this.validateNum }
src/views/tms/modules/inbound/InboundApplyDetailList.vue
@@ -62,13 +62,18 @@
          dataIndex: 'applicationType',
          align: 'center',
        },
        {
          title: '库位号',
          dataIndex: 'goodsShelvesId',
          align: 'center',
        },
         {
          title: '入库数量',
          dataIndex: 'inStorageQuantity',
          align: 'center',
        },
        {
          title: '实际入库数量',
          title: '已入库数量',
          dataIndex: 'inActualCount',
          align: 'center',
        }
src/views/tms/modules/inbound/InboundApplyModelList.vue
@@ -52,12 +52,12 @@
      size="middle"
      bordered
      rowKey="id"
      :customRow="customRow"
      :columns="columns"
      :dataSource="dataSource"
      :pagination="ipagination"
      :loading="loading"
      :rowSelection="{selectedRowKeys: selectedRowKeys, onChange: onSelectChange,type:'radio'}"
      :customRow="customRow"
      @change="handleTableChange"
    >
    </a-table>
@@ -168,7 +168,7 @@
        // },
      ],
      visible:false,
      selectDetailRows:{},
      selectDetailRows:[],
      model:{},
      form: this.$form.createForm(this),
      confirmLoading: false,
@@ -226,8 +226,6 @@
      return {
        on: {
          click: (e) => {
            //将当前选中的记录传到子页面
            this.$bus.$emit('getToolingStorageData', record)
            this.onSelectChange(record.id.split(","), [record]);
            //点击当前行变色
            let oldList = document.querySelectorAll('.checked-td-of-add-table')
@@ -247,12 +245,18 @@
    onSelectChange(selectedRowKeys, selectionRows) {
        this.selectedRowKeys = selectedRowKeys;
        this.selectionRows = selectionRows;
        //将当前选中的记录传到子页面
        this.$bus.$emit('getToolingStorageData', this.selectionRows)
      },
     selectRows(selectDetailRows) {
        this.selectDetailRows = selectDetailRows;
      },
    handleInbound() {
      let that = this
       let that = this
      if(this.selectDetailRows.length == 0){
        that.$message.success("请先选择需要入库的数据!")
        return
      }
      this.form.validateFields((err, values) => {
        if (!err) {
          that.confirmLoading = true
@@ -280,7 +284,6 @@
      },
      handleCancel(){
        this.visible = false
      }
  },
}
src/views/tms/modules/inbound/InboundListRight.vue
@@ -349,10 +349,11 @@
        }
      },
      onSelectChange(selectedRowKeys) {
      onSelectChange(selectedRowKeys,selectionRows) {
        this.selectedRowKeys = selectedRowKeys;
        this.selectionRows = selectionRows
        //通过id查询管理参数和参数数据
        getAction(this.url.queryParaByToolCode, { toolCode: this.selectedRowKeys[0],paraTypeFlag:this.paraTypeFlag}).then((res) => {
        getAction(this.url.queryParaByToolCode, { toolCode: this.selectionRows[0].toolCodeId,paraTypeFlag:this.paraTypeFlag}).then((res) => {
          if (res.success) {
            if(this.paraTypeFlag === "1"){
              this.$refs.paraCommonToolList.getPara(res.result);
@@ -371,7 +372,7 @@
            this.$message.warning(res.message);
          }
        })
        getAction(this.url.queryByToolCode, { toolCode: this.selectedRowKeys[0]}).then((res) => {
        getAction(this.url.queryByToolCode, { toolCode: this.selectionRows[0].toolCodeId}).then((res) => {
          if (res.success) {
            this.$refs.toolsConfigPropertyList.getPara(res.result);
          } else {
@@ -491,7 +492,8 @@
              this.ipagination.total = res.result.total
              //默认选中第一条数据
              this.selectedRowKeys[0] = res.result.records[0].id
              this.onSelectChange(this.selectedRowKeys)
              this.selectionRows = res.result.records
              this.onSelectChange(this.selectedRowKeys,this.selectionRows)
            } else {
              //this.$message.warning("请选择叶子节点进行查询");
              this.ipagination.total = 0
src/views/tms/modules/inbound/InboundModel.vue
@@ -47,7 +47,7 @@
          </a-col>
        </a-row>
        <a-row style="width: 100%">
        <!-- <a-row style="width: 100%">
          <a-col :span="24 / 2">
            <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" label="库位号" prop="locationCodeId">
              <a-select
@@ -57,7 +57,7 @@
              />
            </a-form-model-item>
          </a-col>
        </a-row>
        </a-row> -->
      </a-form-model>
    </a-spin>
    <a-button type="primary" :style="{ marginBottom: '8px' }" @click="selectReturnList()" v-show="returnShow && !disableSubmit">选择借出工具</a-button>
@@ -245,6 +245,12 @@
          title: '唯一编码',
          align: 'center',
          dataIndex: 'onlyCode',
          width: 150,
        },
        {
          title: '库位号',
          align: 'center',
          dataIndex: 'goodsShelvesId',
          width: 150,
        },
        {
@@ -469,7 +475,8 @@
          onlyCode:data[i].onlyCode,
          inStorageQuantity:data[i].storageQuantity || data[i].quantity || 1,
          quantity:data[i].quantity,
          accuracyClass:data[i].accuracyClass
          accuracyClass:data[i].accuracyClass,
          goodsShelvesId:data[i].positionCode
        })
      }
      //this.ipaginationm.total = this.dataSource.length
src/views/tms/modules/inboundOrder/InboundDetailList.vue
@@ -64,7 +64,7 @@
        {
          title: '库位号',
          align: 'center',
          dataIndex: 'locationCode',
          dataIndex: 'goodsShelvesId',
        },
         {
          title: '入库数量',
src/views/tms/modules/inboundOrder/InboundOrderModel.vue
@@ -342,7 +342,6 @@
          title: '库位号',
          align: 'center',
          dataIndex: 'goodsShelvesId',
          scopedSlots: { customRender: 'goodsShelvesId' },
        },
        {
          title: '入库数量',
@@ -402,7 +401,7 @@
      }
      this.$nextTick(() => {
        this.form.setFieldsValue(
          pick(this.model, 'inboundNum', 'inStorehouseType', 'inboundTime', 'applicationReason', 'handler','approvalDate','reviewer','approvalOpinion','remark')
          pick(this.model, 'inboundNum', 'inStorehouseType', 'inboundTime', 'applicationReason', 'handler','approvalDate','reviewer','approvalOpinion','remark','goodsShelvesId')
        )
      })
    },
@@ -575,7 +574,8 @@
          onlyCode:data[i].onlyCode,
          quantity:data[i].quantity,
          inStorageQuantity:data[i].storageQuantity || data[i].quantity || 1,
          accuracyClass:data[i].accuracyClass
          accuracyClass:data[i].accuracyClass,
          goodsShelvesId:data[i].positionCode
        })
      }
      //this.ipaginationm.total = this.dataSource.length
src/views/tms/modules/inboundOrder/JSelectToolingModal.vue
@@ -83,25 +83,26 @@
          title: '工具编码',
          align: 'center',
          dataIndex: 'toolCode',
          sorter: true,
        },
        {
          title: '工具名称',
          align: 'center',
          dataIndex: 'chineseName',
          sorter: true,
        },
        {
          title: '工具类型',
          title: '库位号',
          align: 'center',
          dataIndex: 'applicationTypeName',
          sorter: true,
          dataIndex: 'positionCode',
        },
        {
          title: '型号/图号',
          align: 'center',
          dataIndex: 'toolModel',
          sorter: true,
        },
        {
          title: '工具类型',
          align: 'center',
          dataIndex: 'applicationTypeName',
        },
      ],
      selectedRowKeys: [],
@@ -109,6 +110,7 @@
      scrollTrigger: {},
      dataSource: [],
      selectionRows: [],
      allSelectionRows: [],
      title: '根据查询结果选择工具',
      ipagination: {
        current: 1,
@@ -138,7 +140,10 @@
    rowSelection() {
      return {
        type: 'checkbox',
        selectedRowKeys: this.selectedRowKeys,
        onChange: (selectedRowKeys, selectedRows) => {
          //更新跨页选中状态
          this.updateSelection(selectedRows);
          this.selectedRowKeys = selectedRowKeys
          this.onSelectChange(selectedRows)
        },
@@ -154,6 +159,22 @@
  watch: {},
  created() {},
  methods: {
    // æ›´æ–°è·¨é¡µé€‰ä¸­çŠ¶æ€
    updateSelection(selectedRows) {
      // èŽ·å–å½“å‰é¡µæ‰€æœ‰è¡Œçš„ID
      const currentPageIds = this.dataSource.map(item => item.id);
      // 1. ç§»é™¤å½“前页之前的选择
      this.allSelectionRows = this.allSelectionRows.filter(
        row => !currentPageIds.includes(row.id)
      );
      // 2. æ·»åŠ å½“å‰é¡µæ–°é€‰æ‹©çš„è¡Œ
      this.allSelectionRows = [...this.allSelectionRows, ...selectedRows];
      // 3. æ›´æ–°é€‰ä¸­keys
      this.selectedRowKeys = this.allSelectionRows.map(row => row.id);
    },
    async loadData(arg) {
      if (arg === 1) {
        this.ipagination.current = 1
@@ -182,6 +203,9 @@
    },
    showModal(oldSlelectRows) {
      this.oldSlelectRows = oldSlelectRows
       //重置跨页选择状态
      this.allSelectionRows = [];
      this.selectedRowKeys = [];
      this.visible = true
      this.loadData(1)
    },
@@ -222,7 +246,7 @@
      this.loadData()
    },
    handleSubmit() {
      this.$bus.$emit('selectionRows', this.selectionRows)
      this.$bus.$emit('selectionRows', this.allSelectionRows);
      this.searchReset(0)
      this.close()
    },