chenhj
4 天以前 69824335612695262f40d6e0f0830726bc768618
报工详情
已添加1个文件
已修改3个文件
117 ■■■■■ 文件已修改
src/views/productionManagement/productionReporting/components/Detail.vue 52 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/productionManagement/productionReporting/index.vue 53 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/productionManagement/workOrder/components/CopperPrintingForm.vue 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/productionManagement/workOrder/index.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/productionManagement/productionReporting/components/Detail.vue
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,52 @@
<script setup lang="ts">
import {computed} from "vue";
defineOptions({
  name: "ReportingDetail"
});
const props = defineProps({
  isShow: {
    type: Boolean,
    required: true
  },
  row: {
    type: Object,
    default: () => ({}),
  }
});
const visible = computed({
  get: () => props.isShow,
  set: (value: boolean) => emits("update:isShow", value),
});
</script>
<template>
  <el-dialog v-model="visible"
             :title="'详情'"
             width="90%">
    <el-descriptions title="报工详情">
      <el-descriptions-item label="报工单号">{{ row.productNo || '-' }}</el-descriptions-item>
      <el-descriptions-item label="报工人员">{{ row.nickName || '-' }}</el-descriptions-item>
      <el-descriptions-item label="工序">{{ row.process || '-' }}</el-descriptions-item>
      <el-descriptions-item label="工单编号">{{ row.workOrderNo || '-' }}</el-descriptions-item>
      <el-descriptions-item label="产品名称">{{ row.salesContractNo || '-' }}</el-descriptions-item>
      <el-descriptions-item label="产品规格型号">{{ row.productName || '-' }}</el-descriptions-item>
      <el-descriptions-item label="产出数量">{{ row.productModelName || '-' }}</el-descriptions-item>
      <el-descriptions-item label="报废数量">{{ row.quantity || '-' }}</el-descriptions-item>
      <el-descriptions-item label="单位">{{ row.scrapQty || '-' }}</el-descriptions-item>
      <el-descriptions-item label="创建时间">{{ row.createTime || '-' }}</el-descriptions-item>
    </el-descriptions>
    <template #footer>
        <span class="dialog-footer">
          <el-button @click="visible = false">关闭</el-button>
        </span>
    </template>
  </el-dialog>
</template>
<style scoped>
</style>
src/views/productionManagement/productionReporting/index.vue
@@ -21,7 +21,8 @@
        </el-form-item>
        <el-form-item>
          <el-button type="primary"
                     @click="handleQuery">搜索</el-button>
                     @click="handleQuery">搜索
          </el-button>
        </el-form-item>
      </el-form>
    </div>
@@ -43,6 +44,27 @@
                :tableLoading="tableLoading"
                @pagination="pagination"
                :total="page.total">
        <template #productNoSlot="{ row }">
          <el-button
              v-if="row.process ==='印铜' || row.process ==='印银'"
              type="primary"
              link
              @click="openDetail(row)"
          >
            {{ row.productNo }}
          </el-button>
          <el-button
              v-else
              type="primary"
              link
              @click="(row) => {
                currentReportRowData = row
                showDetail = true
              }"
          >
            {{ row.productNo }}
          </el-button>
        </template>
        <template #expand="{ row }">
          <el-table :data="expandData"
                    border
@@ -107,12 +129,14 @@
                           size="small"
                           @click="changeEditType(scope.row)"
                           v-if="!scope.row.editType"
                           :disabled="scope.row.parentStatus === 3">编辑</el-button>
                           :disabled="scope.row.parentStatus === 3">编辑
                </el-button>
                <el-button link
                           type="primary"
                           size="small"
                           @click="saveReceiptPayment(scope.row)"
                           v-if="scope.row.editType">保存</el-button>
                           v-if="scope.row.editType">保存
                </el-button>
              </template>
            </el-table-column>
          </el-table>
@@ -124,6 +148,16 @@
    <input-modal v-if="isShowInput"
                 v-model:visible="isShowInput"
                 :production-product-main-id="isShowingId" />
    <CopperPrintingForm
        v-if="copperPrintingFormVisible"
        v-model:isShow="copperPrintingFormVisible"
        :isEdit="false"
        :row="currentReportRowData"
        @refreshData="getList"/>
    <Detail
        v-if="showDetail"
        v-model:isShow="showDetail"
        :row="currentReportRowData"/>
  </div>
</template>
@@ -139,6 +173,10 @@
  import { productionProductMainListPage } from "@/api/productionManagement/productionProductMain.js";
  import { userListNoPageByTenantId } from "@/api/system/user.js";
  import InputModal from "@/views/productionManagement/productionReporting/Input.vue";
const CopperPrintingForm = defineAsyncComponent(() => import("@/views/productionManagement/workOrder/components/CopperPrintingForm.vue"));
const Detail = defineAsyncComponent(() => import("@/views/productionManagement/productionReporting/components/Detail.vue"));
  const data = reactive({
    searchForm: {
@@ -156,6 +194,8 @@
      label: "报工单号",
      prop: "productNo",
      width: 120,
    dataType: 'slot',
    slot: 'productNoSlot',
    },
    {
      label: "报工人员",
@@ -231,6 +271,7 @@
      ],
    },
  ]);
const currentReportRowData = ref({});
  const tableData = ref([]);
  const selectedRows = ref([]);
  const tableLoading = ref(false);
@@ -392,6 +433,8 @@
  // æ‰“开投入模态框
  const isShowInput = ref(false);
const copperPrintingFormVisible = ref(false);
const showDetail = ref(false);
  const isShowingId = ref(0);
  const showInput = row => {
    isShowInput.value = true;
@@ -412,6 +455,10 @@
        proxy.$modal.msg("已取消");
      });
  };
const openDetail = row => {
  currentReportRowData.value = row;
  copperPrintingFormVisible.value = true;
};
  onMounted(() => {
    getList();
  });
src/views/productionManagement/workOrder/components/CopperPrintingForm.vue
@@ -18,10 +18,6 @@
    type: Boolean,
    default: false
  },
  detailData: {
    type: Object,
    default: () => ({}),
  },
  row: {
    type: Object,
    default: () => ({}),
@@ -150,8 +146,8 @@
const initData = () => {
  if (!props.isEdit) {
    formData.otherData = JSON.parse(props.detailData.otherData || '{}');
    formData.quantity = props.detailData.quantity;
    formData.otherData = JSON.parse(props.row.otherData || '{}');
    formData.quantity = props.row.quantity;
  } else {
    const row = props.row;
    formData.planQuantity = row.planQuantity
@@ -174,7 +170,7 @@
<template>
  <el-dialog v-model="visible"
             title="印铜报工"
             :title="isEdit? '印铜报工' : '详情'"
             width="90%">
    <el-form :model="formData">
      <table class="report-table">
src/views/productionManagement/workOrder/index.vue
@@ -625,7 +625,7 @@
const showReportDialog = row => {
  currentReportRowData.value = row;
  if (row.processName === '印铜') {
  if (row.processName === '印铜' || row.processName === '印银') {
    copperPrintingFormVisible.value = true
    return
  }