liuying
2024-11-25 84138b3f42b218ecc2efaa54ec31a1c1be29e326
LA24030_LuLiPackageLine_Web/src/views/main/WmsBase/wmsSubstituteGood/index.vue
@@ -4,148 +4,130 @@
      <el-form :model="queryParams" ref="queryForm" labelWidth="100">
        <el-row>
          <el-col :xs="24" :sm="12" :md="12" :lg="10" :xl="4" class="mb10">
            <el-form-item label="关键字">
              <el-input v-model="queryParams.searchKey" clearable="" placeholder="物料编号,物料名称,替代品物料编号,替代品物料名称"/>
                  <el-form-item label="物料码">
                     <el-input v-model="queryParams.searchKey" clearable="" placeholder="请物料码" />
            </el-form-item>
          </el-col>
          <!-- <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUI">
            <el-form-item label="物料编号">
              <el-select clearable="" v-model="queryParams.materialCode" placeholder="请选择物料编号">
                <el-option v-for="(item,index) in dl('')" :key="index" :value="item.code" :label="`[${item.code}] ${item.value}`" />
                
              </el-select>
            </el-form-item>
          </el-col> -->
          <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUI">
            <el-form-item label="物料编号">
              <el-input v-model="queryParams.materialCode" clearable="" placeholder="请输入物料编号"/>
            </el-form-item>
          </el-col>
          <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUI">
            <el-form-item label="物料名称">
              <el-input v-model="queryParams.materialName" clearable="" placeholder="请输入物料名称"/>
            </el-form-item>
          </el-col>
          <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUI">
            <el-form-item label="替代品物料编号">
              <el-input v-model="queryParams.substituteMaterialCode" clearable="" placeholder="请输入替代品物料编号"/>
            </el-form-item>
          </el-col>
          <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUI">
            <el-form-item label="替代品物料名称">
              <el-input v-model="queryParams.substituteMaterialName" clearable="" placeholder="请输入替代品物料名称"/>
            </el-form-item>
          </el-col>
        <!-- <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUI">
                          <el-form-item label="是否禁用">
                            <el-select clearable="" v-model="queryParams.isDisabled" placeholder="请选择是否禁用">
                              <el-option v-for="(item,index) in getIsDisabledData" :key="index" :value="item.value" :label="`${item.text}`" />
                            </el-select>
                          </el-form-item>
                        </el-col> -->
          <el-col :xs="24" :sm="12" :md="12" :lg="8" :xl="4" class="mb10" v-if="showAdvanceQueryUI">
          </el-col>
          <el-col :xs="24" :sm="12" :md="12" :lg="6" :xl="6" class="mb10">
            <el-form-item>
              <el-button-group style="display: flex; align-items: center;">
                <el-button type="primary"  icon="ele-Search" @click="handleQuery" v-auth="'wmsSubstituteGood:page'"> 查询 </el-button>
                      <el-button icon="ele-Refresh" @click="() => queryParams = {}"> 重置 </el-button>
                     <el-button-group style="display: flex; align-items: center">
                        <el-button type="primary" icon="ele-Search" @click="handleQuery"> 查询 </el-button>
                        <!-- <el-button icon="ele-Refresh" @click="() => queryParams = {}"> 重置 </el-button>
                        <el-button icon="ele-ZoomIn" @click="changeAdvanceQueryUI" v-if="!showAdvanceQueryUI" style="margin-left:5px;"> 高级查询 </el-button>
                        <el-button icon="ele-ZoomOut" @click="changeAdvanceQueryUI" v-if="showAdvanceQueryUI" style="margin-left:5px;"> 隐藏 </el-button>
                        <el-button icon="ele-ZoomOut" @click="changeAdvanceQueryUI" v-if="showAdvanceQueryUI" style="margin-left:5px;"> 隐藏 </el-button> -->
                <!-- <el-button type="primary" style="margin-left:5px;" icon="ele-Plus" @click="openAddWmsSubstituteGood" v-auth="'wmsSubstituteGood:add'"> 新增 </el-button> -->
              </el-button-group>
            </el-form-item>
          </el-col>
        </el-row>
      </el-form>
    </el-card>
    <el-card class="full-table" shadow="hover" style="margin-top: 5px">
      <el-table
            :data="tableData"
            style="width: 100%"
            v-loading="loading"
            tooltip-effect="light"
                            row-key="id"
                @sort-change="sortChange"
            border="">
        <el-table-column type="index" label="序号" width="55" align="center"/>
        <el-table-column prop="substituteCode" label="替代编号" min-width="120px" show-overflow-tooltip="" />
          <el-table-column prop="materialCode" label="物料编号" min-width="120px" show-overflow-tooltip="" >
            <template #default="scope">
              {{ scope.row.materialCode }}
              <!-- <el-tag :type="di('', )?.tagType"> {{di("", scope.row.materialCode)?.value}} </el-tag> -->
            </template>
          </el-table-column>
        <el-table-column prop="materialName" label="物料名称" min-width="120px"  show-overflow-tooltip="" />
        <el-table-column prop="substituteMaterialCode" min-width="130px" label="替代品物料编号"  show-overflow-tooltip="" />
        <el-table-column prop="substituteMaterialName" min-width="130px" label="替代品物料名称"  show-overflow-tooltip="" />
        <el-table-column prop="substituteIndex" label="替代次序"  show-overflow-tooltip="" />
        <!-- <el-table-column prop="versionNO" label="版本号"  show-overflow-tooltip="" />
        <el-table-column prop="isDisabled" label="是否禁用"  show-overflow-tooltip="">
          <template #default="scope">
            <el-tag v-if="scope.row.isDisabled"> 是 </el-tag>
            <el-tag type="danger" v-else> 否 </el-tag>
         <div class="detailBox">
            <ul>
               <!-- <li v-for="(item,index) in sourceEnum" :key="index">
          {{ titleP[index] }} :  {{ warehousOrderDetails[item] }}
        </li> -->
               <li>
                  <span class="text_left">物料编号:</span>
                  <span class="text_rt">{{ tableData.Info16 }}</span>
               </li>
               <li>
                  <span class="text_left">齐包:</span>
                  <span class="text_rt">{{ tableData.planNo }}</span>
               </li>
               <li>
                  <span class="text_left">齐套:</span>
                  <span class="text_rt">{{ tableData.planNo }}</span>
               </li>
               <li>
                  <span class="text_left">批次号:</span>
                  <span class="text_rt">{{ tableData.planNo }}</span>
               </li>
               <li>
                  <span class="text_left">订单号:</span>
                  <span class="text_rt">{{ tableData.OrderId }}</span>
               </li>
               <li>
                  <span class="text_left">部件条码:</span>
                  <span class="text_rt">{{ tableData.upi }}</span>
               </li>
            
          </template>
               <li>
                  <span class="text_left">部件名称:</span>
                  <span class="text_rt">{{ tableData.DetailName }}</span>
               </li>
               <li>
                  <span class="text_left">客户名称:</span>
                  <span class="text_rt">{{ tableData.Info10 }}</span>
               </li>
          
        </el-table-column> -->
        <el-table-column prop="createTime" label="创建时间"  show-overflow-tooltip=""  width="130px" />
        <el-table-column prop="updateTime" label="修改时间"  show-overflow-tooltip=""  width="130px" />
        <el-table-column prop="createUserName" label="创建人"  show-overflow-tooltip=""/>
        <el-table-column prop="updateUserName" label="修改人"  show-overflow-tooltip="" />
        <!-- <el-table-column label="操作" width="140" align="center" fixed="right" show-overflow-tooltip="" v-if="auth('wmsSubstituteGood:update') || auth('wmsSubstituteGood:delete')">
          <template #default="scope">
            <el-button icon="ele-Edit" size="small" text="" type="primary" @click="openEditWmsSubstituteGood(scope.row)" v-auth="'wmsSubstituteGood:update'"> 编辑 </el-button>
            <el-button icon="ele-Delete" size="small" text="" type="primary" @click="delWmsSubstituteGood(scope.row)" v-auth="'wmsSubstituteGood:delete'"> 删除 </el-button>
          </template>
        </el-table-column> -->
      </el-table>
      <el-pagination
            v-model:currentPage="tableParams.page"
            v-model:page-size="tableParams.pageSize"
            :total="tableParams.total"
            :page-sizes="[10, 20, 50, 100, 200, 500]"
            small=""
            background=""
            @size-change="handleSizeChange"
            @current-change="handleCurrentChange"
            layout="total, sizes, prev, pager, next, jumper"
   />
      <printDialog
        ref="printDialogRef"
        :title="printWmsSubstituteGoodTitle"
        @reloadTable="handleQuery" />
      <editDialog
        ref="editDialogRef"
        :title="editWmsSubstituteGoodTitle"
        @reloadTable="handleQuery"
      />
               <li>
                  <span class="text_left">长:</span>
                  <span class="text_rt">{{ ruleForm.length }}</span>
               </li>
               <li>
                  <span class="text_left">宽:</span>
                  <span class="text_rt">{{ ruleForm.width }}</span>
               </li>
               <li>
                  <span class="text_left">厚:</span>
                  <span class="text_rt">{{ ruleForm.thk }}</span>
               </li>
               <li>
                  <span class="text_left">部件纹理:</span>
                  <span class="text_rt">{{ ruleForm.matgrid }}</span>
               </li>
               <li>
                  <span class="text_left">是否封边:</span>
                  <span class="text_rt">{{ ruleForm.isEB }}</span>
               </li>
               <li>
                  <span class="text_left">打孔设备编号:</span>
                  <span class="text_rt">{{ ruleForm.dRNum }}</span>
               </li>
            </ul>
         </div>
         <!-- 生成form 齐套 齐包 设置ng包 -->
         <!-- 生成form 齐套 齐包 设置ng包 -->
         <!-- <el-form :model="ruleForm" ref="ruleFormRef" label-width="auto" :rules="rules">
      <el-row :gutter="35">
        <el-form-item v-show="false">
          <el-input v-model="ruleForm.id" />
        </el-form-item>
        <el-form-item label="齐套" prop="completeSet">
          <el-select v-model="ruleForm.completeSet" placeholder="请选择齐套">
            <el-option label="选项1" value="option1"></el-option>
            <el-option label="选项2" value="option2"></el-option>
          </el-select>
        </el-form-item>
        <el-form-item label="齐包" prop="packageSetup">
          <el-input v-model="ruleForm.packageSetup" placeholder="请输入齐包设置"></el-input>
        </el-form-item>
        <el-form-item label="ng包" prop="ngPackage">
          <el-input v-model="ruleForm.ngPackage" placeholder="请输入ng包"></el-input>
        </el-form-item>
      </el-row>
    </el-form> -->
    </el-card>
  </div>
</template>
<script lang="ts" setup="" name="wmsSubstituteGood">
  import { ref } from "vue";
  import { ElMessageBox, ElMessage } from "element-plus";
import { ref } from 'vue';
import { ElMessageBox, ElMessage } from 'element-plus';
  import { auth } from '/@/utils/authFunction';
  import { getDictDataItem as di, getDictDataList as dl } from '/@/utils/dict-utils';
  import { formatDate } from '/@/utils/formatTime';
  import printDialog from '/@/views/system/print/component/hiprint/preview.vue'
  import editDialog from '/@/views/main/WmsBase/wmsSubstituteGood/component/editDialog.vue'
import { listMes_BatchOrderUPI_New, deleteMes_BatchOrderUPI_New, importExcelMes_BatchOrderUPI_New, downloadExcelTemplateMes_BatchOrderUPI_New } from '/@/api/main/WmsOrder/mes_BatchOrderUPI_New';
import printDialog from '/@/views/system/print/component/hiprint/preview.vue';
import editDialog from '/@/views/main/WmsBase/wmsSubstituteGood/component/editDialog.vue';
  import { pageWmsSubstituteGood, deleteWmsSubstituteGood } from '/@/api/main/WmsBase/wmsSubstituteGood';
  const showAdvanceQueryUI = ref(false);
  const printDialogRef = ref();
@@ -158,26 +140,35 @@
    pageSize: 10,
    total: 0,
  });
  const getIsDisabledData = [{
     "value":true,"text":"是"
  },{
     "value":false,"text":"否"
  }]
  const printWmsSubstituteGoodTitle = ref("");
  const editWmsSubstituteGoodTitle = ref("");
const getIsDisabledData = [
   {
      value: true,
      text: '是',
   },
   {
      value: false,
      text: '否',
   },
];
const printWmsSubstituteGoodTitle = ref('');
const editWmsSubstituteGoodTitle = ref('');
  // 改变高级查询的控件显示状态
  const changeAdvanceQueryUI = () => {
    showAdvanceQueryUI.value = !showAdvanceQueryUI.value;
  }
};
  
  // 查询操作
// 查询操作 888888888
  const handleQuery = async () => {
  console.log("查询");
    loading.value = true;
    var res = await pageWmsSubstituteGood(Object.assign(queryParams.value, tableParams.value));
    tableData.value = res.data.result?.items ?? [];
    tableParams.value.total = res.data.result?.total;
   var res = await listMes_BatchOrderUPI_New(Object.assign(queryParams.value, tableParams.value));
   if (res.data.result.length != 1) {
      ElMessage.warning('没有查询到数据');
    tableData.value =  []
    return;
   }
   tableData.value = res.data.result[0] ?? [];
    loading.value = false;
  };
@@ -197,7 +188,7 @@
  // 打开打印页面
  const openPrintWmsSubstituteGood = async (row: any) => {
    printWmsSubstituteGoodTitle.value = '打印替代品管理';
  }
};
  
  // 打开编辑页面
  const openEditWmsSubstituteGood = (row: any) => {
@@ -207,16 +198,16 @@
  // 删除
  const delWmsSubstituteGood = (row: any) => {
    ElMessageBox.confirm(`确定要删除吗?`, "提示", {
    confirmButtonText: "确定",
    cancelButtonText: "取消",
    type: "warning",
   ElMessageBox.confirm(`确定要删除吗?`, '提示', {
      confirmButtonText: '确定',
      cancelButtonText: '取消',
      type: 'warning',
  })
  .then(async () => {
    var  ret =  await deleteWmsSubstituteGood(row);
    if(ret.data.type=="success"){
         if (ret.data.type == 'success') {
      handleQuery();
      ElMessage.success("删除成功");
            ElMessage.success('删除成功');
    }
  })
  .catch(() => {});
@@ -234,7 +225,28 @@
    handleQuery();
  };
  handleQuery();
// handleQuery();
const rules = {
   // 这里定义表单验证规则
   completeSet: [{ required: true, message: '请选择齐套', trigger: 'change' }],
   packageSetup: [{ required: true, message: '请输入齐包设置', trigger: 'blur' }],
   ngPackage: [{ required: true, message: '请输入ng包', trigger: 'blur' }],
};
const ruleForm = ref({
   id: '',
   completeSet: '',
   packageSetup: '',
   ngPackage: '',
});
const sourceEnum: any = ref([
   {
      value: 'id',
      text: 'ID',
   },
]);
</script>
<style scoped>
:deep(.el-input),
@@ -242,5 +254,23 @@
:deep(.el-input-number) {
   width: 100%;
}
</style>
.detailBox {
   width: 90%;
   margin: 0 auto;
   display: block;
   padding-bottom: 10px;
   ul {
      margin: 0;
      padding: 0;
      li {
         display: block;
         line-height: 30px;
         text-align: left;
         list-style-type: none;
         width: 25%;
         word-wrap: break-word;
      }
   }
}
</style>