Browse Source

单证【成本分配汇总】,列表、详情页

liangyan0105 3 years ago
parent
commit
02c947367a

+ 406 - 0
src/views/cost-allocation-total/detailsDrawer.vue

@@ -0,0 +1,406 @@
+<template>
+  <!-- 详情 成本分配汇总 此页面全部回显信息  不现实输入框-->
+  <div id="costAllocationDrawer">
+    <a-drawer
+      title="详情"
+      width="89%"
+      placement="right"
+      :closable="true"
+      :visible="visible"
+      @close="onClose">
+      <!-- 主表信息 -->
+      <a-card :bordered="true">
+        <div class="table-page-search-wrapper">
+          <a-form layout="inline">
+            <a-row :gutter="24">
+              <a-col :md="6" :sm="8">
+                <a-form-item label="计划单号">
+                  <a-input v-model="costAllocation.planNum"></a-input>
+                </a-form-item>
+              </a-col>
+
+              <a-col :md="6" :sm="8">
+                <a-form-item label="产品款号" has-feedback>
+                  <a-input v-model="costAllocation.poStyleNum"></a-input>
+                </a-form-item>
+              </a-col>
+
+              <a-col :md="6" :sm="8">
+                <a-form-item label="外销员">
+                  <a-input v-model="costAllocation.exportSales"></a-input>
+                </a-form-item>
+              </a-col>
+
+              <a-col :md="6" :sm="8">
+                <a-form-item label="成衣合同号">
+                  <a-input v-model="costAllocation.garmentContractNo"></a-input>
+                </a-form-item>
+              </a-col>
+
+              <a-col :md="6" :sm="8">
+                <a-form-item label="部门">
+                  <a-input v-model="costAllocation.department"></a-input>
+                </a-form-item>
+              </a-col>
+
+              <a-col :md="6" :sm="8">
+                <a-form-item label="客户简称">
+                  <a-input v-model="costAllocation.customerShortName"></a-input>
+                </a-form-item>
+              </a-col>
+
+              <a-col :md="6" :sm="8">
+                <a-form-item label="加工单位">
+                  <a-input v-model="costAllocation.processUnit"></a-input>
+                </a-form-item>
+              </a-col>
+
+              <a-col :md="6" :sm="8">
+                <a-form-item label="出运日期">
+                  <a-date-picker style="width: 100%" v-model="costAllocation.outData"></a-date-picker>
+                </a-form-item>
+              </a-col>
+
+              <a-col :md="6" :sm="8">
+                <a-form-item label="计划数量">
+                  <a-input v-model="costAllocation.planQuantity"></a-input>
+                </a-form-item>
+              </a-col>
+
+              <a-col :md="6" :sm="8">
+                <a-form-item label="美元外销总价">
+                  <a-input v-model="costAllocation.USDTotalExportPrice"></a-input>
+                </a-form-item>
+              </a-col>
+
+              <a-col :md="6" :sm="8">
+                <a-form-item label="人民币费用支出">
+                  <a-input
+                    v-model="costAllocation.RMBExpense"
+                    style="color:#027db4;"
+                    @click="mainTableExpenseCNY"
+                  ></a-input>
+                </a-form-item>
+              </a-col>
+
+              <a-col :md="6" :sm="8">
+                <a-form-item label="税率%">
+                  <a-input v-model="costAllocation.taxRate"></a-input>
+                </a-form-item>
+              </a-col>
+
+              <a-col :md="6" :sm="8">
+                <a-form-item label="实际出货数量">
+                  <a-input v-model="costAllocation.actualShipQuantity"></a-input>
+                </a-form-item>
+              </a-col>
+
+              <a-col :md="6" :sm="8">
+                <a-form-item label="人民币外销金额">
+                  <a-input v-model="costAllocation.RMBExportAmount"></a-input>
+                </a-form-item>
+              </a-col>
+
+              <a-col :md="6" :sm="8">
+                <a-form-item label="美元费用支出">
+                  <a-input
+                    v-model="costAllocation.USDExpense"
+                    style="color:#027db4;"
+                    @click="mainTableExpenseUSD"
+                  ></a-input>
+                </a-form-item>
+              </a-col>
+
+              <a-col :md="6" :sm="8">
+                <a-form-item label="加工费">
+                  <a-input v-model="costAllocation.processCost"></a-input>
+                </a-form-item>
+              </a-col>
+
+              <a-col :md="6" :sm="8">
+                <a-form-item label="短出数">
+                  <a-input v-model="costAllocation.shortSeveral"></a-input>
+                </a-form-item>
+              </a-col>
+
+              <a-col :md="6" :sm="8">
+                <a-form-item label="短出货值">
+                  <a-input v-model="costAllocation.shortValue"></a-input>
+                </a-form-item>
+              </a-col>
+
+              <a-col :md="6" :sm="8">
+                <a-form-item label="短出面料成本">
+                  <a-input v-model="costAllocation.fabricShortCost"></a-input>
+                </a-form-item>
+              </a-col>
+
+              <a-col :md="6" :sm="8">
+                <a-form-item label="事故单美金金额">
+                  <a-input v-model="costAllocation.accidentUSDAmount"></a-input>
+                </a-form-item>
+              </a-col>
+
+              <a-col :md="6" :sm="8">
+                <a-form-item label="面料含税成本">
+                  <a-input v-model="costAllocation.fabricCostIncludesTax"></a-input>
+                </a-form-item>
+              </a-col>
+
+              <a-col :md="6" :sm="8">
+                <a-form-item label="辅料含税成本">
+                  <a-input v-model="costAllocation.excipienCostIncludesTax"></a-input>
+                </a-form-item>
+              </a-col>
+
+              <a-col :md="6" :sm="8">
+                <a-form-item label="销售订单本币总额">
+                  <a-input v-model="costAllocation.salesOrdersLocalTotal"></a-input>
+                </a-form-item>
+              </a-col>
+
+              <a-col :md="6" :sm="8">
+                <a-form-item label="事故单人民币金额">
+                  <a-input v-model="costAllocation.accidentCNYAmount"></a-input>
+                </a-form-item>
+              </a-col>
+
+              <a-col :md="6" :sm="8">
+                <a-form-item label="面料不含税成本">
+                  <a-input v-model="costAllocation.fabricCostNotIncludesTax"></a-input>
+                </a-form-item>
+              </a-col>
+
+              <a-col :md="6" :sm="8">
+                <a-form-item label="辅料不含税成本">
+                  <a-input v-model="costAllocation.excipienCostNotIncludesTax"></a-input>
+                </a-form-item>
+              </a-col>
+
+              <a-col :md="6" :sm="8">
+                <a-form-item label="销售订单原币总额">
+                  <a-input v-model="costAllocation.salesOrdersOriginalTotal"></a-input>
+                </a-form-item>
+              </a-col>
+
+              <a-col :md="6" :sm="8">
+                <a-form-item label="制单人">
+                  <a-input v-model="costAllocation.preparedBy"></a-input>
+                </a-form-item>
+              </a-col>
+
+              <a-col :md="6" :sm="8">
+                <h4 style="color:red;">
+                  标记
+                  <span>(计算结果是负值时,该标记是红色)</span>
+                </h4>
+              </a-col>
+            </a-row>
+          </a-form>
+        </div>
+      </a-card>
+
+      <!-- 子表 -->
+      <a-card :bordered="true" style="margin:10px 0">
+        <!--tabs 组件引入  style="marginTop:60px;" -->
+        <div>
+          <tabs />
+        </div>
+
+        <!-- 事故单 -->
+        <div style="margin:60px 0 40px 0">
+          <h6 class="table-title">事故单</h6>
+          <a-table
+            rowKey="id"
+            :loading="loading"
+            :columns="accidentListColumns"
+            :data-source="accidentListData"
+            bordered
+            :pagination="false"
+          >
+            <!-- 事故单 -->
+            <span slot="accidentNum" slot-scope="text">
+              <a>{{ text }}</a>
+            </span>
+          </a-table>
+        </div>
+
+        <!-- 费用支出 -->
+        <div>
+          <h6 class="table-title">费用支出</h6>
+          <a-table
+            rowKey="id"
+            :loading="loading"
+            :columns="costPayColumns"
+            :data-source="costPayData"
+            bordered
+            :pagination="false"
+          >
+          </a-table>
+        </div>
+
+        <!-- 备注信息 1 根据角色权限控制【填写】、【查看】-->
+        <div class="note-one" style="marginTop:40px;">
+          <h6 class="table-title">备注信息 1</h6>
+          <div class="noteDetail">
+            <a-input type="textarea" v-model="noteOne" placeholder="请输入备注 1" style="minHeight:100px;" />
+            <a-button type="primary" @click="savenoteOne">保存</a-button>
+          </div>
+        </div>
+
+        <!-- 备注信息 2 根据角色权限控制【填写】、【查看】-->
+        <div class="note-two" style="marginTop:40px;">
+          <h6 class="table-title">备注信息 2</h6>
+          <div class="noteDetail">
+            <a-input type="textarea" v-model="noteTwo" placeholder="请输入备注 2" style="minHeight:100px;" />
+            <a-button type="primary" @click="savenoteTwo">保存</a-button>
+          </div>
+        </div>
+      </a-card>
+    </a-drawer>
+
+    <!-- 所有弹框 -->
+    <div>
+      <!-- 主表 人民币费用支出  弹框 -->
+      <mainTableExpenseCNY-modal ref="mainTableExpenseCNYModal" :father="aa"></mainTableExpenseCNY-modal>
+      <!-- 主表 美元费用支出  弹框 -->
+      <mainTableExpenseUSD-modal ref="mainTableExpenseUSDModal" :father="bb"></mainTableExpenseUSD-modal>
+      <!-- 事故单 -->
+      <accidentList-modal ref="accidentListModal" :father="cc"></accidentList-modal>
+    </div>
+  </div>
+</template>
+
+<script>
+import { JeecgListMixin } from '@/mixins/JeecgListMixin'
+import JEllipsis from '@/components/jeecg/JEllipsis'
+import moment from 'moment'
+import tabs from '@views/cost-allocation-total/tabs.vue' // tabs组件
+import mainTableExpenseCNYModal from '@views/cost-allocation-total/modal/mainTableExpenseCNYModal.vue'
+import mainTableExpenseUSDModal from '@views/cost-allocation-total/modal/mainTableExpenseUSDModal.vue'
+import accidentListModal from '@views/cost-allocation-total/modal/accidentListModal.vue' // 事故单
+
+export default {
+  name: 'DetailsDrawer', // 详情抽屉
+  mixins: [JeecgListMixin],
+  components: { JEllipsis, moment, tabs, mainTableExpenseCNYModal, mainTableExpenseUSDModal, accidentListModal },
+
+  data() {
+    return {
+      loading: false, // 表格加载
+      costAllocation: [], // 成本分配统计
+
+      noteOne: '', // 备注 1
+      noteTwo: '', // 备注 2
+
+      // 事故单 表头
+      accidentListColumns: [
+        {
+          title: '单号',
+          width: 120,
+          dataIndex: 'accidentNum',
+          className: 'replacecolor',
+          customCell: this.accidentListCustomCell,
+          scopedSlots: { customRender: 'accidentNum' }
+        },
+        { title: '事故承担方', width: 120, dataIndex: 'accidentUndertaker', className: 'replacecolor' },
+        { title: '金额', dataIndex: 'amount', width: 120, className: 'replacecolor' }
+      ],
+      accidentListData: [{ accidentNum: '1100011' }, {}],
+      // 费用支出 表头
+      costPayColumns: [
+        { title: '账套号', width: 120, dataIndex: 'setNo', className: 'replacecolor' },
+        { title: '支出单号', width: 120, dataIndex: 'disbursementSlipNo', className: 'replacecolor' },
+        { title: '费用项目', dataIndex: 'expenseItem', width: 120, className: 'replacecolor' },
+        { title: ' 支出本币金额', dataIndex: 'disbursedLocalMoney', width: 120, className: 'replacecolor' },
+        { title: '支出原币金额', dataIndex: 'disbursedOriginalMoney', width: 120, className: 'replacecolor' },
+        { title: '发票号', dataIndex: 'invoiceNum', width: 120, className: 'replacecolor' },
+        { title: '制单人', dataIndex: 'preparedBy', width: 120, className: 'replacecolor' }
+      ],
+      costPayData: [{}],
+      visible: false // 成本分配统计表详情  抽屉
+    }
+  },
+  created() {},
+  methods: {
+    // 同步按钮  synchronization() {},
+
+    //  主表:人民币费用支出  弹框
+    mainTableExpenseCNY() {
+      console.log('点击:主表人民币费用支出')
+      this.$refs.mainTableExpenseCNYModal.mainTableExpenseCNYModVis = true
+    },
+    // 主表:美元费用支出  弹框
+    mainTableExpenseUSD() {
+      console.log('点击:主表美元费用支出')
+      this.$refs.mainTableExpenseUSDModal.mainTableExpenseUSDModVis = true
+    },
+
+    // 事故单 单号 弹框
+    accidentListCustomCell(record) {
+      return {
+        on: {
+          click: event => {
+            console.log('this:', this)
+            // 调用【面料损耗表】中的【事故单】弹框
+            this.$refs.accidentListModal.accidentListModVis = true
+          }
+        }
+      }
+    },
+    // ---------------------------------------
+    // 保存备注 1
+    savenoteOne() {
+      console.log('保存 备注 1')
+    },
+    // 保存备注 2
+    savenoteTwo() {
+      console.log('保存 备注 2')
+    },
+
+    onClose() {
+      // 关闭抽屉
+      this.visible = false
+    },
+
+    // --------------------------------------------------
+    // father 方法
+    aa() {},
+    bb() {},
+    cc() {}
+  },
+  computed: {},
+  mounted() {}
+}
+</script>
+<style lang="less" scoped>
+@import '~@assets/less/common.less';
+@import '~@assets/less/overwriter.less';
+/deep/ .ant-table-thead > tr > th {
+  text-align: center;
+  // font-weight: 700;
+}
+
+/deep/ .ant-table-tbody {
+  text-align: center;
+}
+
+// /deep/ th.replacecolor {
+//   background-color: #ccc;
+// }
+
+/deep/ .ant-card-body {
+  // padding: 0;
+}
+/deep/ .ant-drawer-content {
+  background-color: #f0f2f5;
+}
+/deep/ .ant-drawer-body {
+  padding: 10px;
+}
+/deep/ .ant-tabs {
+  border: 2px solid rgba(24, 144, 255, 0.3);
+  padding: 10px;
+  border-radius: 10px;
+}
+</style>

+ 220 - 0
src/views/cost-allocation-total/list.vue

@@ -0,0 +1,220 @@
+<template>
+  <!-- 成本分配汇总  单证-->
+  <div id="CostAllocationTotal">
+    <!-- 查询区域 -->
+    <a-card :bordered="false">
+      <div class="table-page-search-wrapper">
+        <a-form layout="inline" @keyup.enter.native="searchQuery">
+          <a-row :gutter="24">
+            <a-col :md="6" :sm="8">
+              <a-form-item label="序号">
+                <a-input placeholder="请输入序号" v-model="queryParam.index"></a-input>
+              </a-form-item>
+            </a-col>
+
+            <a-col :md="6" :sm="8">
+              <a-form-item label="计划单号" has-feedback>
+                <a-input placeholder="请输入计划单号" v-model="queryParam.planNum"></a-input>
+              </a-form-item>
+            </a-col>
+
+            <a-col :md="6" :sm="8">
+              <a-form-item label="客户简称">
+                <a-input placeholder="请输入客户简称" v-model="queryParam.customerShortName"></a-input>
+              </a-form-item>
+            </a-col>
+
+            <a-col :md="6" :sm="8">
+              <span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
+                <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 @click="handleToggleSearch" style="margin-left: 8px">
+                  {{ toggleSearchStatus ? '收起' : '展开' }}
+                  <a-icon :type="toggleSearchStatus ? 'up' : 'down'" />
+                </a>
+              </span>
+            </a-col>
+          </a-row>
+        </a-form>
+      </div>
+    </a-card>
+
+    <!-- table区域  -->
+    <a-card :bordered="false" style=" marginTop:10px;">
+      <a-table
+        bordered
+        rowKey="id"
+        :columns="costAllocationColumns"
+        :data-source="costAllocationData"
+        :loading="loading"
+        :pagination="ipagination"
+        :scroll="{ x: 1500 }"
+        @change="handleTableChange"
+      >
+        <!-- 状态 -->
+        <!-- slot-scope="text, record" -->
+        <span slot="state">
+          <!-- v-if="record.isRelease == '0'" -->
+          <a-tag color="#f50">审核通过</a-tag>
+          <!-- <a-tag color="#87d068" v-else>已发布</a-tag> -->
+        </span>
+
+        <!-- 操作 -->
+        <span slot="operationSlot" slot-scope="text, record">
+          <a href="javascript:void(0);" @click="detail(record)">详情</a>
+          <a-divider type="vertical" />
+          <a href="javascript:void(0);" @click="check(record)" style="color:green">审核</a>
+        </span>
+      </a-table>
+    </a-card>
+    <!-- 详情 大抽屉 -->
+    <details-drawer ref="detailsDrawer" :father="aa" @ok="modalFormOk"></details-drawer>
+  </div>
+</template>
+
+<script>
+import { JeecgListMixin } from '@/mixins/JeecgListMixin'
+import JEllipsis from '@/components/jeecg/JEllipsis'
+import moment from 'moment'
+import detailsDrawer from '@views/cost-allocation-total/detailsDrawer.vue'
+
+export default {
+  name: 'CostAllocationTotal', // 成本分配汇总 单证
+  mixins: [JeecgListMixin],
+  components: { JEllipsis, moment, detailsDrawer },
+
+  data() {
+    let ellipsis = (v, l = 20) => <j-ellipsis value={v} length={l} />
+    return {
+      // 查询条件
+      queryParam: {
+        index: '',
+        planNum: '',
+        customerShortName: ''
+      },
+      // 成本分配汇总 表头
+      costAllocationColumns: [
+        {
+          title: '序号',
+          width: 90,
+          dataIndex: 'index',
+          customRender: (text, record, index) => `${index + 1}`,
+          fixed: 'left',
+          className: 'replacecolor'
+        },
+        { title: '计划单号', width: 120, dataIndex: 'planNum', fixed: 'left', className: 'replacecolor' },
+        { title: '款号', width: 120, dataIndex: 'styleNum', className: 'replacecolor' },
+        { title: '业务员', width: 120, dataIndex: 'salesman', className: 'replacecolor' },
+        {
+          title: '部门',
+          width: 120,
+          dataIndex: 'department',
+          className: 'replacecolor'
+        },
+        { title: '客户简称', width: 150, dataIndex: 'customerShortName', className: 'replacecolor' },
+        { title: '加工单位', width: 120, dataIndex: 'processUnit', className: 'replacecolor' },
+        //  {
+        //   title: '创建时间',
+        //   dataIndex: 'createTime',
+        //   align: 'center',
+        //   sorter: true,
+        //   customRender: text => {
+        //     return moment(text).format('YYYY-MM-DD')
+        //   }
+        // },
+        { title: '出运日期', width: 120, dataIndex: 'outData', className: 'replacecolor' },
+        { title: '成衣件数', width: 90, dataIndex: 'clothesQuantity', className: 'replacecolor' },
+        { title: '销售美元', width: 120, dataIndex: 'SalesUSD', className: 'replacecolor' },
+        { title: '销售人民币', width: 120, dataIndex: 'SalesCNY', className: 'replacecolor' },
+        { title: '面料(不含税)', width: 120, dataIndex: 'FabricExcludedTax', className: 'replacecolor' },
+        { title: '辅料(不含税)', width: 120, dataIndex: 'ingredientsExcludedTax', className: 'replacecolor' },
+        { title: '加工费(CNY)', width: 120, dataIndex: 'processCostCNY', className: 'replacecolor' },
+        { title: '加工费(USD)', width: 120, dataIndex: 'processCostUSD', className: 'replacecolor' },
+        { title: '费用支出(汇总CNY)', width: 160, dataIndex: 'costPayTotalCNY', className: 'replacecolor' },
+        { title: '费用支出(汇总USD)', width: 160, dataIndex: 'costPayTotalUSD', className: 'replacecolor' },
+        { title: '事故单人民币金额', width: 160, dataIndex: 'accidentCNYAmount', className: 'replacecolor' },
+        {
+          title: '备注',
+          width: 180,
+          dataIndex: 'note',
+          customRender: t => ellipsis(t),
+          className: 'replacecolor',
+          scopedSlots: { customRender: 'note' }
+        },
+        {
+          title: '状态',
+          width: 120,
+          dataIndex: 'state',
+          className: 'replacecolor',
+          scopedSlots: { customRender: 'state' }
+        },
+        {
+          title: '操作',
+          dataIndex: 'operation',
+          scopedSlots: { customRender: 'operationSlot' },
+          fixed: 'right',
+          width: 160,
+          className: 'replacecolor'
+        }
+      ],
+      costAllocationData: [
+        {
+          orderNum: 'AA002200001',
+          note: '跟Jeecg-Boot官网统一,单元格内容较多时,多出内容以“……”替代,鼠标移入显示全部内容(此处原型图上是弹框,)'
+        }
+      ],
+      loading: false // 表格加载
+    }
+  },
+  created() {
+    // 渲染订单销售列表
+  },
+  methods: {
+    // 查询按钮
+    searchQuery() {
+      // 渲染成本分配统计表
+    },
+    searchReset() {
+      // console.log('>>>>重置')
+      this.queryParam = {}
+      // 重新成本分配统计表
+    },
+
+    // 操作 详情
+    detail(record) {
+      // 点击了详情
+      this.$refs.detailsDrawer.visible = true
+    },
+    // 操作 审核
+    check() {},
+
+    // father 抽屉方法
+    aa() {}
+
+    // 分页、排序、筛选变化时触发
+    // handleTableChange(pagination, filters, sorter) {
+    //   // console.log('当前页信息>>>>',pagination)
+    //   this.queryParam.pageNo = pagination.current
+    //   // this.getOrderList()
+    // }
+  },
+  computed: {},
+  mounted() {}
+}
+</script>
+<style lang="less" scoped>
+@import '~@assets/less/common.less';
+@import '~@assets/less/overwriter.less';
+/deep/ .ant-table-thead > tr > th {
+  text-align: center;
+  // font-weight: 700;
+}
+
+/deep/ .ant-table-tbody {
+  text-align: center;
+}
+
+// /deep/ th.replacecolor {
+//   background-color: #ccc;
+// }
+</style>

+ 161 - 0
src/views/cost-allocation-total/modal/accidentListModal.vue

@@ -0,0 +1,161 @@
+<template>
+  <a-modal
+    title="事故单"
+    v-model="accidentListModVis"
+    :confirmLoading="confirmLoading"
+    width="86%"
+    style="top:330px;left:100px;minHeight:700px"
+    :footer="null"
+  >
+    <!-- tabel 加载 -->
+    <a-spin :spinning="confirmLoading">
+      <!-- 回显信息  -->
+      <div class="table-page-search-wrapper" style="marginTop:20px;">
+        <a-form layout="inline" @keyup.enter.native="searchQuery">
+          <a-row :gutter="24">
+            <a-col :md="6" :sm="8">
+              <a-form-item label="单号">
+                <a-input v-model="accidentList.oddNum"></a-input>
+              </a-form-item>
+            </a-col>
+
+            <a-col :md="6" :sm="8">
+              <a-form-item label="责任人">
+                <a-input v-model="accidentList.personLiable"></a-input>
+              </a-form-item>
+            </a-col>
+            <a-col :md="6" :sm="8">
+              <a-form-item label="日期">
+                <a-input v-model="accidentList.date"></a-input>
+              </a-form-item>
+            </a-col>
+            <a-col :md="6" :sm="8">
+              <a-form-item label="工厂">
+                <a-input v-model="accidentList.factory"></a-input>
+              </a-form-item>
+            </a-col>
+
+            <a-col :md="6" :sm="8">
+              <a-form-item label="客户">
+                <a-input v-model="accidentList.customer"></a-input>
+              </a-form-item>
+            </a-col>
+            <a-col :md="6" :sm="8">
+              <a-form-item label="款号">
+                <a-input v-model="accidentList.styleNum"></a-input>
+              </a-form-item>
+            </a-col>
+            <a-col :md="6" :sm="8">
+              <a-form-item label="计划单号">
+                <a-input v-model="accidentList.planNum"> </a-input>
+              </a-form-item>
+            </a-col>
+            <a-col :md="6" :sm="8">
+              <a-form-item label="计划员">
+                <a-input v-model="accidentList.planner"></a-input>
+              </a-form-item>
+            </a-col>
+
+            <a-col :md="6" :sm="8">
+              <a-form-item label="业务员">
+                <a-input v-model="accidentList.salesman"></a-input>
+              </a-form-item>
+            </a-col>
+
+            <a-col :md="6" :sm="8">
+              <a-form-item label="承担方订单号">
+                <a-input v-model="accidentList.undertakingOrderNo"></a-input>
+              </a-form-item>
+            </a-col>
+
+            <a-col :md="6" :sm="8">
+              <a-form-item label="物料">
+                <a-input v-model="accidentList.materiel"></a-input>
+              </a-form-item>
+            </a-col>
+
+            <a-col :md="6" :sm="8">
+              <a-form-item label="QC">
+                <a-input v-model="accidentList.qc"></a-input>
+              </a-form-item>
+            </a-col>
+
+            <a-col :md="24" :sm="24">
+              <a-form-item label="备注" class="noteBg">
+                <a-input type="textarea" v-model="accidentList.note" style="minHeight:100px;"></a-input>
+
+                <!-- 导出 打印 返回  -->
+                <a-row style="marginTop:20px;">
+                  <a-col :md="24" :sm="12">
+                    <span style="float: right;" class="table-operator">
+                      <a-button type="primary" icon="download" @click="handleExportXls('采购数量')">导出</a-button>
+                      <a-button type="primary" @click="print" icon="printer" style="margin:0 10px;">打印</a-button>
+                      <a-button type="primary" @click="backFabricLossTable" icon="rollback">返回</a-button>
+                    </span>
+                  </a-col>
+                </a-row>
+              </a-form-item>
+            </a-col>
+          </a-row>
+        </a-form>
+      </div>
+    </a-spin>
+  </a-modal>
+</template>
+
+<script>
+export default {
+  name: 'AccidentListModal', // 事故单 弹框
+  components: {},
+  data() {
+    return {
+      loading: false, // 表格加载
+      // orderDataform: this.$form.createForm(this),
+      confirmLoading: false,
+      accidentListModVis: false,
+      accidentList: []
+    }
+  },
+  // 接收父组件 方法
+  props: {
+    father: {
+      type: Function,
+      default: null
+    }
+  },
+  created() {},
+  methods: {
+    // 第一行 导出
+    handleExportXls() {},
+    // 打印
+    print() {},
+    // 返回
+    backFabricLossTable() {
+      console.log('返回到面料损耗表')
+      // this.$router.push('fabricLoss-table')
+      // this.accidentListModVis = false
+      this.close()
+    },
+    close() {
+      this.$emit('close')
+      this.accidentListModVis = false
+    }
+  }
+}
+</script>
+<style lang="less" scoped>
+@import '~@assets/less/common.less';
+@import '~@assets/less/overwriter.less';
+/deep/ .ant-table-thead > tr > th {
+  text-align: center;
+  // font-weight: 700;
+}
+
+/deep/ .ant-table-tbody {
+  text-align: center;
+}
+
+// /deep/ th.replacecolor {
+//   background-color: #ccc;
+// }
+</style>

+ 133 - 0
src/views/cost-allocation-total/modal/fabricRemainingQuantityModal.vue

@@ -0,0 +1,133 @@
+<template>
+  <!-- 成本分配统计表  面料 余下数量 -->
+  <a-modal
+    title="余下数量"
+    v-model="fabricRemainingQuantityModVis"
+    :confirmLoading="confirmLoading"
+    width="86%"
+    style="top:330px;left:100px;"
+    :footer="null"
+  >
+    <!-- tabel 加载 -->
+    <a-spin :spinning="confirmLoading">
+      <a-table
+        :loading="loading"
+        bordered
+        :columns="fabricRemainingQuantityColumns"
+        :data-source="fabricRemainingQuantityData"
+        :pagination="false"
+      >
+      </a-table>
+      <!-- 导出 打印 返回  -->
+      <a-row style="marginTop:20px;">
+        <a-col :md="24" :sm="12">
+          <span style="float: right;" class="table-operator">
+            <a-button type="primary" icon="download" @click="handleExportXls('转入数量')">导出</a-button>
+            <a-button type="primary" @click="print" icon="printer" style="margin:0 10px;">打印</a-button>
+            <a-button type="primary" @click="cancel" icon="rollback">取消</a-button>
+          </span>
+        </a-col>
+      </a-row>
+    </a-spin>
+  </a-modal>
+</template>
+
+<script>
+import { JeecgListMixin } from '@/mixins/JeecgListMixin'
+import JEllipsis from '@/components/jeecg/JEllipsis'
+export default {
+  name: 'FabricRemainingQuantityModal', // 面料 余下数量 弹框
+  mixins: [JeecgListMixin],
+  components: { JEllipsis },
+  data() {
+    return {
+      // 面料- 余下数量 表头
+      fabricRemainingQuantityColumns: [
+        {
+          title: '存货名称',
+          dataIndex: 'inventoryName',
+          width: 120,
+          className: 'replacecolor'
+        },
+        {
+          title: '颜色',
+          dataIndex: 'color',
+          width: 120,
+          className: 'replacecolor'
+        },
+        {
+          title: '计划单号',
+          dataIndex: 'planNum',
+          width: 120,
+          className: 'replacecolor'
+        },
+        {
+          title: '使用数量',
+          dataIndex: 'usageQuantity',
+          width: 120,
+          className: 'replacecolor'
+        },
+        {
+          title: '单位成本',
+          dataIndex: 'unitCost',
+          width: 120,
+          className: 'replacecolor'
+        },
+        {
+          title: '总成本',
+          dataIndex: 'totalCost',
+          width: 120,
+          className: 'replacecolor'
+        }
+      ],
+      fabricRemainingQuantityData: [{}],
+      loading: false, // 表格加载
+      // orderDataform: this.$form.createForm(this),
+      confirmLoading: false,
+     fabricRemainingQuantityModVis: false
+    }
+  },
+  // 接收父组件 方法
+  props: {
+    father: {
+      type: Function,
+      default: null
+    }
+  },
+  created() {},
+  methods: {
+    // 第一行 导出
+    // handleExportXls() {},
+    // 打印
+    print() {},
+    // 取消
+    cancel() {
+      console.log('返回成本分配统计表')
+      // this.$router.push('fabricLoss-table')
+      // this.fabricTransferQuantityModVis = false
+      this.close()
+    },
+
+    close() {
+      this.$emit('close')
+      this.fabricRemainingQuantityModVis = false
+    }
+  }
+}
+</script>
+<style lang="less" scoped>
+@import '~@assets/less/common.less';
+@import '~@assets/less/overwriter.less';
+/deep/ .ant-table-thead > tr > th {
+  text-align: center;
+  // font-weight: 700;
+}
+
+/deep/ .ant-table-tbody {
+  text-align: center;
+}
+
+// /deep/ th.replacecolor {
+//   background-color: #ccc;
+// }
+</style>

+ 133 - 0
src/views/cost-allocation-total/modal/fabricTransferQuantityModal.vue

@@ -0,0 +1,133 @@
+<template>
+  <!-- 成本分配统计表  面料 转入数量 -->
+  <a-modal
+    title="转入数量"
+    v-model="fabricTransferQuantityModVis"
+    :confirmLoading="confirmLoading"
+    width="86%"
+    style="top:330px;left:100px;"
+    :footer="null"
+  >
+    <!-- tabel 加载 -->
+    <a-spin :spinning="confirmLoading">
+      <a-table
+        :loading="loading"
+        bordered
+        :columns="fabricTransferQuantityColumns"
+        :data-source="fabricTransferQuantityData"
+        :pagination="false"
+      >
+      </a-table>
+      <!-- 导出 打印 返回  -->
+      <a-row style="marginTop:20px;">
+        <a-col :md="24" :sm="12">
+          <span style="float: right;" class="table-operator">
+            <a-button type="primary" icon="download" @click="handleExportXls('转入数量')">导出</a-button>
+            <a-button type="primary" @click="print" icon="printer" style="margin:0 10px;">打印</a-button>
+            <a-button type="primary" @click="cancel" icon="rollback">取消</a-button>
+          </span>
+        </a-col>
+      </a-row>
+    </a-spin>
+  </a-modal>
+</template>
+
+<script>
+import { JeecgListMixin } from '@/mixins/JeecgListMixin'
+import JEllipsis from '@/components/jeecg/JEllipsis'
+export default {
+  name: 'FabricTransferQuantityModal', // 面料 转入数量 弹框
+  mixins: [JeecgListMixin],
+  components: { JEllipsis },
+  data() {
+    return {
+      // 面料- 转入数量 表头
+      fabricTransferQuantityColumns: [
+        {
+          title: '存货名称',
+          dataIndex: 'inventoryName',
+          width: 120,
+          className: 'replacecolor'
+        },
+        {
+          title: '颜色',
+          dataIndex: 'color',
+          width: 120,
+          className: 'replacecolor'
+        },
+        {
+          title: '计划单号',
+          dataIndex: 'planNum',
+          width: 120,
+          className: 'replacecolor'
+        },
+        {
+          title: '转入数量',
+          dataIndex: 'transferQuantity',
+          width: 120,
+          className: 'replacecolor'
+        },
+        {
+          title: '单位成本',
+          dataIndex: 'unitCost',
+          width: 120,
+          className: 'replacecolor'
+        },
+        {
+          title: '总成本',
+          dataIndex: 'totalCost',
+          width: 120,
+          className: 'replacecolor'
+        }
+      ],
+      fabricTransferQuantityData: [{}],
+      loading: false, // 表格加载
+      // orderDataform: this.$form.createForm(this),
+      confirmLoading: false,
+      fabricTransferQuantityModVis: false
+    }
+  },
+  // 接收父组件 方法
+  props: {
+    father: {
+      type: Function,
+      default: null
+    }
+  },
+  created() {},
+  methods: {
+    // 第一行 导出
+    // handleExportXls() {},
+    // 打印
+    print() {},
+    // 取消
+    cancel() {
+      console.log('返回成本分配统计表')
+      // this.$router.push('fabricLoss-table')
+      // this.fabricTransferQuantityModVis = false
+      this.close()
+    },
+
+    close() {
+      this.$emit('close')
+      this.fabricTransferQuantityModVis = false
+    }
+  }
+}
+</script>
+<style lang="less" scoped>
+@import '~@assets/less/common.less';
+@import '~@assets/less/overwriter.less';
+/deep/ .ant-table-thead > tr > th {
+  text-align: center;
+  // font-weight: 700;
+}
+
+/deep/ .ant-table-tbody {
+  text-align: center;
+}
+
+// /deep/ th.replacecolor {
+//   background-color: #ccc;
+// }
+</style>

+ 127 - 0
src/views/cost-allocation-total/modal/ingredientsRemainingQuantityModal.vue

@@ -0,0 +1,127 @@
+<template>
+  <!-- 成本分配统计表  辅料 余下数量 -->
+  <a-modal
+    title="余下数量"
+    v-model="ingredientsRemainingQuantityModVis"
+    :confirmLoading="confirmLoading"
+    width="86%"
+    style="top:330px;left:100px;"
+    :footer="null"
+  >
+    <!-- tabel 加载 -->
+    <a-spin :spinning="confirmLoading">
+      <a-table
+        :loading="loading"
+        bordered
+        :columns="ingredientsRemainingQuantityColumns"
+        :data-source="ingredientsRemainingQuantityData"
+        :pagination="false"
+      >
+      </a-table>
+      <!-- 导出 打印 返回  -->
+      <a-row style="marginTop:20px;">
+        <a-col :md="24" :sm="12">
+          <span style="float: right;" class="table-operator">
+            <a-button type="primary" icon="download" @click="handleExportXls('转入数量')">导出</a-button>
+            <a-button type="primary" @click="print" icon="printer" style="margin:0 10px;">打印</a-button>
+            <a-button type="primary" @click="cancel" icon="rollback">取消</a-button>
+          </span>
+        </a-col>
+      </a-row>
+    </a-spin>
+  </a-modal>
+</template>
+
+<script>
+import { JeecgListMixin } from '@/mixins/JeecgListMixin'
+import JEllipsis from '@/components/jeecg/JEllipsis'
+export default {
+  name: 'IngredientsRemainingQuantityModal', // 辅料 余下数量 弹框
+  mixins: [JeecgListMixin],
+  components: { JEllipsis },
+  data() {
+    return {
+      // 辅料 - 余下数量 表头
+      ingredientsRemainingQuantityColumns: [
+        {
+          title: '存货名称',
+          dataIndex: 'inventoryName',
+          width: 120,
+          className: 'replacecolor'
+        },
+        {
+          title: '计划单号',
+          dataIndex: 'planNum',
+          width: 120,
+          className: 'replacecolor'
+        },
+        {
+          title: '使用数量',
+          dataIndex: 'usageQuantity',
+          width: 120,
+          className: 'replacecolor'
+        },
+        {
+          title: '单位成本',
+          dataIndex: 'unitCost',
+          width: 120,
+          className: 'replacecolor'
+        },
+        {
+          title: '总成本',
+          dataIndex: 'totalCost',
+          width: 120,
+          className: 'replacecolor'
+        }
+      ],
+      ingredientsRemainingQuantityData: [{}],
+      loading: false, // 表格加载
+      // orderDataform: this.$form.createForm(this),
+      confirmLoading: false,
+      ingredientsRemainingQuantityModVis: false
+    }
+  },
+  // 接收父组件 方法
+  props: {
+    father: {
+      type: Function,
+      default: null
+    }
+  },
+  created() {},
+  methods: {
+    // 第一行 导出
+    // handleExportXls() {},
+    // 打印
+    print() {},
+    // 取消
+    cancel() {
+      console.log('返回成本分配统计表')
+      // this.$router.push('fabricLoss-table')
+      // this.ingredientsRemainingQuantityModVis = false
+      this.close()
+    },
+
+    close() {
+      this.$emit('close')
+      this.ingredientsRemainingQuantityModVis = false
+    }
+  }
+}
+</script>
+<style lang="less" scoped>
+@import '~@assets/less/common.less';
+@import '~@assets/less/overwriter.less';
+/deep/ .ant-table-thead > tr > th {
+  text-align: center;
+  // font-weight: 700;
+}
+
+/deep/ .ant-table-tbody {
+  text-align: center;
+}
+
+// /deep/ th.replacecolor {
+//   background-color: #ccc;
+// }
+</style>

+ 128 - 0
src/views/cost-allocation-total/modal/ingredientsTransferQuantityModal.vue

@@ -0,0 +1,128 @@
+<template>
+  <!-- 成本分配统计表  辅料 转入数量 -->
+  <a-modal
+    title="转入数量"
+    v-model="ingredientsTransferQuantityModVis"
+    :confirmLoading="confirmLoading"
+    width="86%"
+    style="top:330px;left:100px;"
+    :footer="null"
+  >
+    <!-- tabel 加载 -->
+    <a-spin :spinning="confirmLoading">
+      <a-table
+        :loading="loading"
+        bordered
+        :columns="ingredientsTransferQuantityColumns"
+        :data-source="ingredientsTransferQuantityData"
+        :pagination="false"
+      >
+      </a-table>
+      <!-- 导出 打印 返回  -->
+      <a-row style="marginTop:20px;">
+        <a-col :md="24" :sm="12">
+          <span style="float: right;" class="table-operator">
+            <a-button type="primary" icon="download" @click="handleExportXls('转入数量')">导出</a-button>
+            <a-button type="primary" @click="print" icon="printer" style="margin:0 10px;">打印</a-button>
+            <a-button type="primary" @click="cancel" icon="rollback">取消</a-button>
+          </span>
+        </a-col>
+      </a-row>
+    </a-spin>
+  </a-modal>
+</template>
+
+<script>
+import { JeecgListMixin } from '@/mixins/JeecgListMixin'
+import JEllipsis from '@/components/jeecg/JEllipsis'
+export default {
+  name: 'IngredientsTransferQuantityModal', // 辅料 转入数量 弹框
+  mixins: [JeecgListMixin],
+  components: { JEllipsis },
+  data() {
+    return {
+      // 辅料- 转入数量 表头
+      ingredientsTransferQuantityColumns: [
+        {
+          title: '存货名称',
+          dataIndex: 'inventoryName',
+          width: 120,
+          className: 'replacecolor'
+        },
+        {
+          title: '计划单号',
+          dataIndex: 'planNum',
+          width: 120,
+          className: 'replacecolor'
+        },
+
+        {
+          title: '转入数量',
+          dataIndex: 'transferQuantity',
+          width: 120,
+          className: 'replacecolor'
+        },
+        {
+          title: '单位成本',
+          dataIndex: 'unitCost',
+          width: 120,
+          className: 'replacecolor'
+        },
+        {
+          title: '总成本',
+          dataIndex: 'totalCost',
+          width: 120,
+          className: 'replacecolor'
+        }
+      ],
+      ingredientsTransferQuantityData: [{}],
+      loading: false, // 表格加载
+      // orderDataform: this.$form.createForm(this),
+      confirmLoading: false,
+      ingredientsTransferQuantityModVis: false
+    }
+  },
+  // 接收父组件 方法
+  props: {
+    father: {
+      type: Function,
+      default: null
+    }
+  },
+  created() {},
+  methods: {
+    // 第一行 导出
+    // handleExportXls() {},
+    // 打印
+    print() {},
+    // 取消
+    cancel() {
+      console.log('返回成本分配统计表')
+      // this.$router.push('fabricLoss-table')
+      // this.ingredientsTransferQuantityModVis = false
+      this.close()
+    },
+
+    close() {
+      this.$emit('close')
+      this.ingredientsTransferQuantityModVis = false
+    }
+  }
+}
+</script>
+<style lang="less" scoped>
+@import '~@assets/less/common.less';
+@import '~@assets/less/overwriter.less';
+/deep/ .ant-table-thead > tr > th {
+  text-align: center;
+  // font-weight: 700;
+}
+
+/deep/ .ant-table-tbody {
+  text-align: center;
+}
+
+// /deep/ th.replacecolor {
+//   background-color: #ccc;
+// }
+</style>

+ 164 - 0
src/views/cost-allocation-total/modal/mainTableExpenseCNYModal.vue

@@ -0,0 +1,164 @@
+<template>
+  <!-- 成本分配 主表 人民币费用支出 弹框 -->
+  <a-modal
+    title="人民币费用支出"
+    v-model="mainTableExpenseCNYModVis"
+    :confirmLoading="confirmLoading"
+    width="86%"
+    style="top:330px;left:100px;"
+    :footer="null"
+  >
+    <!-- tabel 加载 -->
+    <a-spin :spinning="confirmLoading">
+      <!-- 查询  -->
+      <div class="table-page-search-wrapper">
+        <a-form layout="inline" @keyup.enter.native="searchQuery">
+          <a-row :gutter="24">
+            <a-col :md="6" :sm="8">
+              <a-form-item label="账套号" v-model="queryParam.setNo">
+                <!--  -->
+                <a-input></a-input>
+              </a-form-item>
+            </a-col>
+
+            <a-col :md="6" :sm="8">
+              <a-form-item label="供应商" v-model="queryParam.supplier">
+                <a-input></a-input>
+              </a-form-item>
+            </a-col>
+
+            <a-col :md="6" :sm="8">
+              <span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
+                <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 @click="handleToggleSearch" style="margin-left: 8px">
+                  {{ toggleSearchStatus ? '收起' : '展开' }}
+                  <a-icon :type="toggleSearchStatus ? 'up' : 'down'" />
+                </a>
+              </span>
+            </a-col>
+          </a-row>
+        </a-form>
+      </div>
+
+      <!-- table -->
+      <div>
+        <a-table
+          bordered
+          :loading="loading"
+          :columns="mainTableExpenseCNYColumns"
+          :data-source="mainTableExpenseCNYData"
+          :pagination="false"
+        >
+        </a-table>
+        <!-- 返回  -->
+        <a-row style="marginTop:20px;">
+          <a-col :md="24" :sm="12">
+            <span style="float: right;" class="table-operator">
+              <a-button type="primary" @click="backCostAllocationTable" icon="rollback">返回</a-button>
+            </span>
+          </a-col>
+        </a-row>
+      </div>
+    </a-spin>
+  </a-modal>
+</template>
+
+<script>
+import { JeecgListMixin } from '@/mixins/JeecgListMixin'
+import JEllipsis from '@/components/jeecg/JEllipsis'
+export default {
+  name: 'MainTableExpenseCNYModVis', //  成本分配统计 主表 人民币费用支出
+  mixins: [JeecgListMixin],
+  components: { JEllipsis },
+  data() {
+    return {
+      loading: false, // 表格加载
+      // orderDataform: this.$form.createForm(this),
+      confirmLoading: false,
+      mainTableExpenseCNYModVis: false,
+      // 人民币费用支出 表头
+      mainTableExpenseCNYColumns: [
+        {
+          title: '账套号',
+          dataIndex: 'setNo',
+          width: 120,
+          className: 'replacecolor'
+        },
+        {
+          title: '项目',
+          dataIndex: 'project',
+          width: 120,
+          className: 'replacecolor'
+        },
+        {
+          title: '金额',
+          dataIndex: 'money',
+          width: 120,
+          className: 'replacecolor'
+        },
+        {
+          title: '供应商',
+          dataIndex: 'supplier',
+          width: 120,
+          className: 'replacecolor'
+        }
+      ],
+      mainTableExpenseCNYData: [{}, {}],
+
+      // 查询条件
+      queryParam: {
+        setNo: '', // 账套号
+        supplier: '' // 供应商
+      }
+    }
+  },
+  // 接收父组件 方法
+  props: {
+    father: {
+      type: Function,
+      default: null
+    }
+  },
+  created() {},
+  methods: {
+    // 返回
+    backCostAllocationTable() {
+      console.log('返回成本分配统计表')
+      // this.$router.push('fabricLoss-table')
+      // this.invoiceNumModVis = false
+      this.close()
+    },
+    // 弹框查询按钮
+    searchQuery() {},
+    // 重置
+    searchReset() {
+      // console.log('人民币重置查询条件')
+      // this.queryParam = {}
+      this.queryParam.setNo = ''
+      this.queryParam.supplier = ''
+      // this.getShipmentList()
+    },
+    close() {
+      this.$emit('close')
+      this.mainTableExpenseCNYModVis = false
+    }
+  }
+}
+</script>
+<style lang="less" scoped>
+@import '~@assets/less/common.less';
+@import '~@assets/less/overwriter.less';
+/deep/ .ant-table-thead > tr > th {
+  text-align: center;
+  // font-weight: 700;
+}
+
+/deep/ .ant-table-tbody {
+  text-align: center;
+}
+
+// /deep/ th.replacecolor {
+//   background-color: #ccc;
+// }
+</style>

+ 164 - 0
src/views/cost-allocation-total/modal/mainTableExpenseUSDModal.vue

@@ -0,0 +1,164 @@
+<template>
+  <!-- 成本分配 主表 美元费用支出 弹框 -->
+  <a-modal
+    title="美元费用支出"
+    v-model="mainTableExpenseUSDModVis"
+    :confirmLoading="confirmLoading"
+    width="86%"
+    style="top:330px;left:100px;"
+    :footer="null"
+  >
+    <!-- tabel 加载 -->
+    <a-spin :spinning="confirmLoading">
+      <!-- 查询  -->
+      <div class="table-page-search-wrapper">
+        <a-form layout="inline" @keyup.enter.native="searchQuery">
+          <a-row :gutter="24">
+            <a-col :md="6" :sm="8">
+              <a-form-item label="账套号">
+                <a-input placeholder="请输入账套号" v-model="queryParam.setNo"></a-input>
+              </a-form-item>
+            </a-col>
+
+            <a-col :md="6" :sm="8">
+              <a-form-item label="供应商">
+                <a-input placeholder="请输入供应商" v-model="queryParam.supplier"></a-input>
+              </a-form-item>
+            </a-col>
+
+            <!-- 重置 -->
+            <a-col :md="6" :sm="8">
+              <span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
+                <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 @click="handleToggleSearch" style="margin-left: 8px">
+                  {{ toggleSearchStatus ? '收起' : '展开' }}
+                  <a-icon :type="toggleSearchStatus ? 'up' : 'down'" />
+                </a>
+              </span>
+            </a-col>
+          </a-row>
+        </a-form>
+      </div>
+
+      <!-- table -->
+      <div>
+        <a-table
+          bordered
+          :loading="loading"
+          :columns="mainTableExpenseUSDColumns"
+          :data-source="mainTableExpenseUSDData"
+          :pagination="false"
+        >
+        </a-table>
+        <!-- 返回  -->
+        <a-row style="marginTop:20px;">
+          <a-col :md="24" :sm="12">
+            <span style="float: right;" class="table-operator">
+              <a-button type="primary" @click="backCostAllocationTable" icon="rollback">返回</a-button>
+            </span>
+          </a-col>
+        </a-row>
+      </div>
+    </a-spin>
+  </a-modal>
+</template>
+
+<script>
+import { JeecgListMixin } from '@/mixins/JeecgListMixin'
+import JEllipsis from '@/components/jeecg/JEllipsis'
+export default {
+  name: 'MainTableExpenseUSDModVis', //  成本分配统计 主表 美元费用支出
+  mixins: [JeecgListMixin],
+  components: { JEllipsis },
+  data() {
+    return {
+      loading: false, // 表格加载
+      // orderDataform: this.$form.createForm(this),
+      confirmLoading: false,
+      mainTableExpenseUSDModVis: false,
+      // 表头
+      mainTableExpenseUSDColumns: [
+        {
+          title: '账套号',
+          dataIndex: 'setNo',
+          width: 120,
+          className: 'replacecolor'
+        },
+        {
+          title: '项目',
+          dataIndex: 'project',
+          width: 120,
+          className: 'replacecolor'
+        },
+        {
+          title: '金额',
+          dataIndex: 'money',
+          width: 120,
+          className: 'replacecolor'
+        },
+        {
+          title: '供应商',
+          dataIndex: 'supplier',
+          width: 120,
+          className: 'replacecolor'
+        }
+      ],
+      mainTableExpenseUSDData: [{}, {}],
+
+      // 查询条件
+      queryParam: {
+        setNo: '', // 账套号
+        supplier: '' // 供应商
+      }
+    }
+  },
+  // 接收父组件 方法
+  props: {
+    father: {
+      type: Function,
+      default: null
+    }
+  },
+  created() {},
+  methods: {
+    // 返回
+    backCostAllocationTable() {
+      console.log('返回成本分配统计表')
+      // this.$router.push('fabricLoss-table')
+      // this.invoiceNumModVis = false
+      this.close()
+    },
+    // 弹框查询按钮
+    searchQuery() {},
+    // 重置
+    searchReset() {
+      console.log('美元重置查询条件')
+      // this.queryParam = {}
+      this.queryParam.setNo = ''
+      this.queryParam.supplier = ''
+      // this.getShipmentList()
+    },
+    close() {
+      this.$emit('close')
+      this.mainTableExpenseUSDModVis = false
+    }
+  }
+}
+</script>
+<style lang="less" scoped>
+@import '~@assets/less/common.less';
+@import '~@assets/less/overwriter.less';
+/deep/ .ant-table-thead > tr > th {
+  text-align: center;
+  // font-weight: 700;
+}
+
+/deep/ .ant-table-tbody {
+  text-align: center;
+}
+
+// /deep/ th.replacecolor {
+//   background-color: #ccc;
+// }
+</style>

+ 941 - 0
src/views/cost-allocation-total/tabs.vue

@@ -0,0 +1,941 @@
+<template>
+  <!-- 成本分配汇总 详情tabs (单证) -->
+  <div id="tabs">
+    <a-tabs default-active-key="1" @change="tabsCallback">
+      <a-tab-pane key="1" tab="加工单位1">
+        <!-- tabs 面料 -->
+        <div>
+          <h6 class="table-title">面料</h6>
+          <a-table
+            rowKey="(item)=>item.id"
+            :loading="loading"
+            :columns="fabricColumns"
+            :data-source="fabricData"
+            bordered
+            :pagination="false"
+          >
+            <!-- 面料 -转入数量 弹框-->
+            <span slot="fabricTransferQuantity" slot-scope="text">
+              <a>{{ text }}</a>
+            </span>
+
+            <!-- 余下数量-->
+            <span slot="fabricRemainingQuantity" slot-scope="text">
+              <a>{{ text }}</a>
+            </span>
+          </a-table>
+        </div>
+
+        <!-- tabs 辅料   :scroll="{ x: 1500 }"-->
+        <div style="margin:30px 0">
+          <h6 class="table-title">辅料</h6>
+          <a-table
+            rowKey="id"
+            :loading="loading"
+            :columns="ingredientsColumns"
+            :data-source="ingredientsData"
+            bordered
+            :pagination="false"
+          >
+            <!--辅料-转入数量 弹框-->
+            <span slot="ingredientsTransferQuantity" slot-scope="text">
+              <a>{{ text }}</a>
+            </span>
+            <!--辅料-余下数量 弹框-->
+            <span slot="ingredientsRemainingQuantity" slot-scope="text">
+              <a>{{ text }}</a>
+            </span>
+          </a-table>
+        </div>
+
+        <!-- tabs 发运明细   :scroll="{ x: 1500 }"-->
+        <div>
+          <h6 class="table-title">发运明细</h6>
+          <a-table
+            rowKey="id"
+            :loading="loading"
+            :columns="shipDetailsColumns"
+            :data-source="shipDetailsData"
+            bordered
+            :pagination="false"
+          >
+          </a-table>
+        </div>
+
+        <!-- tabs 合计 信息 -->
+        <div style="marginTop:30px;">
+          <h6 class="table-title">合计信息</h6>
+          <div style="border: 1px solid #e8e8e8;padding: 20px 20px 0 20px;">
+            <a-row :gutter="24">
+              <div class="table-page-search-wrapper">
+                <a-form layout="inline">
+                  <a-col :md="6" :sm="8">
+                    <a-form-item label="出货数量合计">
+                      <a-input v-model="totalInfo.shipmentQuantity"></a-input>
+                    </a-form-item>
+                  </a-col>
+
+                  <a-col :md="6" :sm="8">
+                    <a-form-item label="辅料金额合计">
+                      <a-input v-model="totalInfo.accessoriesAmount"></a-input>
+                    </a-form-item>
+                  </a-col>
+
+                  <a-col :md="6" :sm="8">
+                    <a-form-item label="辅料不含税金额合计">
+                      <a-input v-model="totalInfo.accessoriesExcludTax"></a-input>
+                    </a-form-item>
+                  </a-col>
+
+                  <a-col :md="6" :sm="8">
+                    <a-form-item label="出运美元外销总价">
+                      <a-input v-model="totalInfo.exportPriceUSD"></a-input>
+                    </a-form-item>
+                  </a-col>
+
+                  <a-col :md="6" :sm="8">
+                    <a-form-item label="出运加工费">
+                      <a-input v-model="totalInfo.shipProcesFees"></a-input>
+                    </a-form-item>
+                  </a-col>
+
+                  <a-col :md="6" :sm="8">
+                    <a-form-item label="面料不含税金额合计">
+                      <a-input v-model="totalInfo.fabricExcludTax"></a-input>
+                    </a-form-item>
+                  </a-col>
+
+                  <a-col :md="6" :sm="8">
+                    <a-form-item label="出运人民币外销金额">
+                      <a-input v-model="totalInfo.exportedAmountRMB"></a-input>
+                    </a-form-item>
+                  </a-col>
+
+                  <a-col :md="6" :sm="8">
+                    <a-form-item label="合计金额">
+                      <a-input v-model="totalInfo.amountTotal"></a-input>
+                    </a-form-item>
+                  </a-col>
+
+                  <a-col :md="6" :sm="8">
+                    <a-form-item label="面料金额合计">
+                      <a-input v-model="totalInfo.fabricAmount"></a-input>
+                    </a-form-item>
+                  </a-col>
+                </a-form>
+              </div>
+            </a-row>
+          </div>
+        </div>
+      </a-tab-pane>
+
+      <!-- 加工单位 2 -->
+      <a-tab-pane key="2" tab="加工单位2" force-render>
+        <!-- tabs 面料 -->
+        <div>
+          <h6 class="table-title">面料</h6>
+
+          <a-table
+            rowKey="id"
+            :loading="loading"
+            :columns="twofabricColumns"
+            :data-source="twofabricData"
+            bordered
+            :pagination="false"
+          >
+            <!-- 转入数量 弹框-->
+            <span slot="twofabricTransferQuantity" slot-scope="text">
+              <a>{{ text }}</a>
+            </span>
+
+            <!-- 余下数量 弹框-->
+            <span slot="twofabricRemainingQuantity" slot-scope="text">
+              <a>{{ text }}</a>
+            </span>
+          </a-table>
+        </div>
+
+        <!-- tabs 辅料 -->
+        <div style="margin:40px 0">
+          <h6 class="table-title">辅料</h6>
+
+          <a-table
+            rowKey="id"
+            :loading="loading"
+            :columns="twoingredientsColumns"
+            :data-source="twoingredientsData"
+            bordered
+            :pagination="false"
+          >
+            <!--辅料-转入数量 弹框-->
+            <span slot="twoingredientsTransferQuantity" slot-scope="text">
+              <a>{{ text }}</a>
+            </span>
+            <!--辅料-余下数量 弹框-->
+            <span slot="twoingredientsRemainingQuantity" slot-scope="text">
+              <a>{{ text }}</a>
+            </span>
+          </a-table>
+        </div>
+
+        <!-- tabs 发运明细 -->
+        <div>
+          <h6 class="table-title">发运明细</h6>
+          <a-table
+            rowKey="id"
+            :loading="loading"
+            :columns="twoshipDetailsColumns"
+            :data-source="twoshipDetailsData"
+            bordered
+            :pagination="false"
+          >
+          </a-table>
+        </div>
+
+        <!-- tabs 合计 信息 -->
+        <div style="marginTop:30px;">
+          <h6 class="table-title">合计信息</h6>
+          <div style="border: 1px solid #e8e8e8;padding: 20px 20px 0 20px;">
+            <a-row :gutter="24">
+              <div class="table-page-search-wrapper">
+                <a-form layout="inline">
+                  <a-col :md="6" :sm="8">
+                    <a-form-item label="出货数量合计">
+                      <a-input v-model="totalInfo.shipmentQuantity"></a-input>
+                    </a-form-item>
+                  </a-col>
+
+                  <a-col :md="6" :sm="8">
+                    <a-form-item label="辅料金额合计">
+                      <a-input v-model="totalInfo.accessoriesAmount"></a-input>
+                    </a-form-item>
+                  </a-col>
+
+                  <a-col :md="6" :sm="8">
+                    <a-form-item label="辅料不含税金额合计">
+                      <a-input v-model="totalInfo.accessoriesExcludTax"></a-input>
+                    </a-form-item>
+                  </a-col>
+
+                  <a-col :md="6" :sm="8">
+                    <a-form-item label="出运美元外销总价">
+                      <a-input v-model="totalInfo.exportPriceUSD"></a-input>
+                    </a-form-item>
+                  </a-col>
+
+                  <a-col :md="6" :sm="8">
+                    <a-form-item label="出运加工费">
+                      <a-input v-model="totalInfo.shipProcesFees"></a-input>
+                    </a-form-item>
+                  </a-col>
+
+                  <a-col :md="6" :sm="8">
+                    <a-form-item label="面料不含税金额合计">
+                      <a-input v-model="totalInfo.fabricExcludTax"></a-input>
+                    </a-form-item>
+                  </a-col>
+
+                  <a-col :md="6" :sm="8">
+                    <a-form-item label="出运人民币外销金额">
+                      <a-input v-model="totalInfo.exportedAmountRMB"></a-input>
+                    </a-form-item>
+                  </a-col>
+
+                  <a-col :md="6" :sm="8">
+                    <a-form-item label="合计金额">
+                      <a-input v-model="totalInfo.amountTotal"></a-input>
+                    </a-form-item>
+                  </a-col>
+
+                  <a-col :md="6" :sm="8">
+                    <a-form-item label="面料金额合计">
+                      <a-input v-model="totalInfo.fabricAmount"></a-input>
+                    </a-form-item>
+                  </a-col>
+                </a-form>
+              </div>
+            </a-row>
+          </div>
+        </div>
+      </a-tab-pane>
+    </a-tabs>
+
+    <!-- tabs 弹框 -->
+    <div>
+      <!-- 面料 转入数量 -->
+      <fabricTransferQuantity-modal ref="fabricTransferQuantityModal" :father="aa"></fabricTransferQuantity-modal>
+      <!-- 面料 余下数量 -->
+      <fabricRemainingQuantity-modal ref="fabricRemainingQuantityModal" :father="bb"></fabricRemainingQuantity-modal>
+
+      <!-- 辅料 转入数量 -->
+      <ingredientsTransferQuantity-modal
+        ref="ingredientsTransferQuantityModal"
+        :father="cc"
+      ></ingredientsTransferQuantity-modal>
+      <!-- 辅料 余下数量 -->
+      <ingredientsRemainingQuantity-modal
+        ref="ingredientsRemainingQuantityModal"
+        :father="bb"
+      ></ingredientsRemainingQuantity-modal>
+    </div>
+  </div>
+</template>
+
+<script>
+import { JeecgListMixin } from '@/mixins/JeecgListMixin'
+import JEllipsis from '@/components/jeecg/JEllipsis'
+import moment from 'moment'
+
+import fabricTransferQuantityModal from '@views/cost-allocation-total/modal/fabricTransferQuantityModal.vue'
+import fabricRemainingQuantityModal from '@views/cost-allocation-total/modal/fabricRemainingQuantityModal.vue'
+import ingredientsTransferQuantityModal from '@views/cost-allocation-total/modal/ingredientsTransferQuantityModal.vue'
+import ingredientsRemainingQuantityModal from '@views/cost-allocation-total/modal/ingredientsRemainingQuantityModal.vue'
+
+export default {
+  name: 'Tabs', //  成本分配汇总 详情tabs (单证)
+  mixins: [JeecgListMixin],
+  components: {
+    JEllipsis,
+    moment,
+    fabricTransferQuantityModal, // 面料 转入数量
+    fabricRemainingQuantityModal, //  余下数量
+    ingredientsTransferQuantityModal, // 辅料 转入数量
+    ingredientsRemainingQuantityModal // 余下数量
+  },
+  data() {
+    // let ellipsis = (v, l = 20) => <j-ellipsis value={v} length={l} /> // 省略
+    return {
+      totalInfo: {}, // tabs 中合计信息
+      // one 面料 表头
+      fabricColumns: [
+        /*
+          text     序号一列默认显示的数据
+          record   一行的所有数据
+          index    tbale表格数据的下标,即数组的下标
+        */
+        {
+          title: '序号',
+          width: 50,
+          dataIndex: 'index',
+          key: 'index',
+          customRender: (text, record, index) => `${index + 1}`,
+          className: 'replacecolor'
+        },
+        { title: '货物名称', width: 160, dataIndex: 'goodsName', className: 'replacecolor' },
+        {
+          title: '转入数量',
+          dataIndex: 'fabricTransferQuantity',
+          width: 120,
+          className: 'replacecolor',
+          customCell: this.fabricTransferQuantityCustomCell,
+          scopedSlots: { customRender: 'fabricTransferQuantity' }
+        },
+        {
+          title: '转入成本',
+          dataIndex: 'transferCost',
+          width: 120,
+          className: 'replacecolor'
+        },
+
+        { title: '单耗/件', dataIndex: 'unitConsumption', width: 120, className: 'replacecolor' },
+        { title: '使用数量', dataIndex: 'usageQuantity', width: 120, className: 'replacecolor' },
+        { title: '计划数量', dataIndex: 'planQuantity', width: 120, className: 'replacecolor' },
+        {
+          title: '购入数量',
+          dataIndex: 'purchaseQuantity',
+          width: 120,
+          className: 'replacecolor'
+        },
+        {
+          title: '余下数量',
+          dataIndex: 'fabricRemainingQuantity',
+          width: 100,
+          className: 'replacecolor',
+          customCell: this.fabricRemainingQuantityCustomCell,
+          scopedSlots: { customRender: 'fabricRemainingQuantity' }
+        },
+        {
+          title: '损耗',
+          dataIndex: 'loss',
+          width: 120,
+          className: 'replacecolor'
+        },
+        {
+          title: '余下数量的成本',
+          dataIndex: 'remainingQuantityCost',
+          width: 120,
+          className: 'replacecolor'
+        }
+      ],
+      fabricData: [
+        { fabricTransferQuantity: '8987', fabricRemainingQuantity: '67', loss: '1.17%' },
+        { fabricTransferQuantity: '6752', fabricRemainingQuantity: '37', loss: '1.17%' }
+      ],
+      // one 辅料 表头
+      ingredientsColumns: [
+        {
+          title: '序号',
+          width: 90,
+          dataIndex: 'index',
+          key: 'index',
+          fixed: 'left',
+          customRender: (text, record, index) => `${index + 1}`,
+          className: 'replacecolor'
+        },
+        { title: '货物名称', width: 170, dataIndex: 'goodsName', fixed: 'left', className: 'replacecolor' },
+        {
+          title: '转入数量',
+          dataIndex: 'ingredientsTransferQuantity',
+          width: 120,
+          className: 'replacecolor',
+          customCell: this.ingredientsTransferQuantityCustomCell,
+          scopedSlots: { customRender: 'ingredientsTransferQuantity' }
+        },
+        {
+          title: '转入成本',
+          dataIndex: 'transferCost',
+          width: 120,
+          className: 'replacecolor'
+        },
+
+        { title: '使用数量', dataIndex: 'usageQuantity', width: 120, className: 'replacecolor' },
+        {
+          title: '购入数量',
+          dataIndex: 'purchaseQuantity',
+          width: 120,
+          className: 'replacecolor'
+        },
+        {
+          title: '余下数量',
+          dataIndex: 'ingredientsRemainingQuantity',
+          width: 140,
+          className: 'replacecolor',
+          customCell: this.ingredientsRemainingQuantityCustomCell,
+          scopedSlots: { customRender: 'ingredientsRemainingQuantity' }
+        },
+        {
+          title: '损耗',
+          dataIndex: 'loss',
+          width: 120,
+          className: 'replacecolor'
+        },
+        {
+          title: '人民币金额',
+          dataIndex: 'RMBAmount',
+          width: 160,
+          className: 'replacecolor'
+        },
+        {
+          title: '美元金额',
+          dataIndex: 'USDAmount',
+          width: 160,
+          className: 'replacecolor'
+        },
+        {
+          title: '不含税金额',
+          dataIndex: 'priceExcludingTax',
+          width: 120,
+          className: 'replacecolor'
+        },
+        {
+          title: '转出率',
+          dataIndex: 'transferOutRate',
+          width: 120,
+          className: 'replacecolor'
+        },
+        {
+          title: '进项税转出',
+          dataIndex: 'inputTaxTransferOut',
+          width: 160,
+          className: 'replacecolor'
+        },
+        {
+          title: '用量',
+          dataIndex: 'dosage',
+          width: 120,
+          className: 'replacecolor'
+        }
+      ],
+      ingredientsData: [
+        { ingredientsTransferQuantity: '7899', transferCost: '12536', ingredientsRemainingQuantity: '6698' }
+      ],
+      // one 发运明细 表头
+      shipDetailsColumns: [
+        {
+          title: '序号',
+          width: 90,
+          dataIndex: 'index',
+          key: 'index',
+          fixed: 'left',
+          customRender: (text, record, index) => `${index + 1}`,
+          className: 'replacecolor'
+        },
+        { title: '发票号码', width: 180, dataIndex: 'invoiceNum', fixed: 'left', className: 'replacecolor' },
+        {
+          title: '出运日期',
+          dataIndex: 'outData',
+          width: 130,
+          className: 'replacecolor',
+          customCell: this.ingredientsTransferQuantityCustomCell,
+          scopedSlots: { customRender: 'ingredientsTransferQuantity' }
+        },
+        {
+          title: '汇率',
+          dataIndex: 'exchangeRate',
+          width: 120,
+          className: 'replacecolor'
+        },
+
+        { title: '订单号', dataIndex: 'orderNum', width: 160, className: 'replacecolor' },
+        {
+          title: '产品款号',
+          dataIndex: 'poStyleNum',
+          width: 120,
+          className: 'replacecolor'
+        },
+        {
+          title: '出货数量',
+          dataIndex: 'shipQuantity',
+          width: 120,
+          className: 'replacecolor',
+          customCell: this.ingredientsRemainingQuantityCustomCell,
+          scopedSlots: { customRender: 'ingredientsRemainingQuantity' }
+        },
+        {
+          title: '外销单价',
+          dataIndex: 'loss',
+          width: 120,
+          className: 'exportUnitPrice'
+        },
+        {
+          title: '外销总价',
+          dataIndex: 'exportPrice',
+          width: 160,
+          className: 'replacecolor'
+        },
+        {
+          title: '人民币金额',
+          dataIndex: 'RMBAmount',
+          width: 160,
+          className: 'replacecolor'
+        },
+        {
+          title: '加工单价(人民币)',
+          dataIndex: 'procesUnitPriceRMB',
+          width: 160,
+          className: 'replacecolor'
+        },
+        {
+          title: '加工单价(美元)',
+          dataIndex: 'procesUnitPriceUSD',
+          width: 160,
+          className: 'replacecolor'
+        },
+        {
+          title: '加工费',
+          dataIndex: 'processCost',
+          width: 160,
+          className: 'replacecolor'
+        }
+      ],
+      shipDetailsData: [{ invoiceNum: '19TW-PRU-138S', outData: '2019-10-16', exchangeRate: '7.1338' }],
+      // two 面料 表头
+      twofabricColumns: [
+        {
+          title: '序号',
+          width: 90,
+          dataIndex: 'index',
+          key: 'index',
+          customRender: (text, record, index) => `${index + 1}`,
+          className: 'replacecolor'
+        },
+        { title: '面料', width: 160, dataIndex: 'fabric', className: 'replacecolor' },
+        {
+          title: '单位成本',
+          dataIndex: 'unitCost',
+          width: 120,
+          className: 'replacecolor'
+        },
+        { title: '存货名称', width: 160, dataIndex: 'inventoryName', className: 'replacecolor' },
+
+        {
+          title: '转入数量',
+          dataIndex: 'twofabricTransferQuantity',
+          width: 120,
+          className: 'replacecolor',
+          customCell: this.twoFabricTransferQuantityCustomCell,
+          scopedSlots: { customRender: 'twofabricTransferQuantity' }
+        },
+        { title: '转入成本', width: 160, dataIndex: 'transferCost', className: 'replacecolor' },
+
+        { title: '单耗/件', dataIndex: 'unitConsumption', width: 120, className: 'replacecolor' },
+        { title: '使用数量', dataIndex: 'usageQuantity', width: 120, className: 'replacecolor' },
+        { title: '计划数量', dataIndex: 'planQuantity', width: 120, className: 'replacecolor' },
+        {
+          title: '购入数量',
+          dataIndex: 'purchaseQuantity',
+          width: 120,
+          className: 'replacecolor'
+        },
+        {
+          title: '余下数量',
+          dataIndex: 'twofabricRemainingQuantity',
+          width: 100,
+          className: 'replacecolor',
+          customCell: this.twofabricRemainingQuantityCustomCell,
+          scopedSlots: { customRender: 'twofabricRemainingQuantity' }
+        },
+        {
+          title: '损耗',
+          dataIndex: 'loss',
+          width: 120,
+          className: 'replacecolor'
+        },
+        {
+          title: '余下数量的成本',
+          dataIndex: 'remainingQuantityCost',
+          width: 120,
+          className: 'replacecolor'
+        }
+      ],
+      twofabricData: [
+        {
+          fabric: '裤绳',
+          inventoryName: 'XXSS',
+          twofabricTransferQuantity: '8987',
+          twofabricRemainingQuantity: '67',
+          loss: '1.17%'
+        },
+        {
+          fabric: '裤绳',
+          inventoryName: 'XXSS',
+          twofabricTransferQuantity: '6752',
+          twofabricRemainingQuantity: '37',
+          loss: '1.17%'
+        }
+      ],
+      // two 辅料 表头
+      twoingredientsColumns: [
+        {
+          title: '序号',
+          width: 90,
+          dataIndex: 'index',
+          key: 'index',
+          fixed: 'left',
+          customRender: (text, record, index) => `${index + 1}`,
+          className: 'replacecolor'
+        },
+        { title: '辅料', width: 170, dataIndex: 'ingredients', fixed: 'left', className: 'replacecolor' },
+        {
+          title: '转入数量',
+          dataIndex: 'twoingredientsTransferQuantity',
+          width: 120,
+          className: 'replacecolor',
+          customCell: this.twoingredientsTransferQuantityCustomCell,
+          scopedSlots: { customRender: 'twoingredientsTransferQuantity' }
+        },
+        {
+          title: '转入成本',
+          dataIndex: 'transferCost',
+          width: 120,
+          className: 'replacecolor'
+        },
+
+        { title: '使用数量', dataIndex: 'usageQuantity', width: 120, className: 'replacecolor' },
+        {
+          title: '购入数量',
+          dataIndex: 'purchaseQuantity',
+          width: 120,
+          className: 'replacecolor'
+        },
+        {
+          title: '余下数量',
+          dataIndex: 'twoingredientsRemainingQuantity',
+          width: 140,
+          className: 'replacecolor',
+          customCell: this.twoingredientsRemainingQuantityCustomCell,
+          scopedSlots: { customRender: 'twoingredientsRemainingQuantity' }
+        },
+        {
+          title: '损耗',
+          dataIndex: 'loss',
+          width: 120,
+          className: 'replacecolor'
+        },
+        {
+          title: '人民币金额',
+          dataIndex: 'RMBAmount',
+          width: 160,
+          className: 'replacecolor'
+        },
+        {
+          title: '美元金额',
+          dataIndex: 'USDAmount',
+          width: 160,
+          className: 'replacecolor'
+        },
+        {
+          title: '不含税金额',
+          dataIndex: 'priceExcludingTax',
+          width: 120,
+          className: 'replacecolor'
+        },
+        {
+          title: '转出率',
+          dataIndex: 'transferOutRate',
+          width: 120,
+          className: 'replacecolor'
+        },
+        {
+          title: '进项税转出',
+          dataIndex: 'inputTaxTransferOut',
+          width: 160,
+          className: 'replacecolor'
+        },
+        {
+          title: '用量',
+          dataIndex: 'dosage',
+          width: 120,
+          className: 'replacecolor'
+        }
+      ],
+      twoingredientsData: [
+        {
+          twoingredientsTransferQuantity: '7899',
+          transferCost: '12536',
+          twoingredientsRemainingQuantity: '6698'
+        }
+      ],
+      // two 发运明细 表头
+      twoshipDetailsColumns: [
+        {
+          title: '序号',
+          width: 90,
+          dataIndex: 'index',
+          key: 'index',
+          fixed: 'left',
+          customRender: (text, record, index) => `${index + 1}`,
+          className: 'replacecolor'
+        },
+        { title: '发票号码', width: 180, dataIndex: 'invoiceNum', fixed: 'left', className: 'replacecolor' },
+        {
+          title: '出运日期',
+          dataIndex: 'outData',
+          width: 130,
+          className: 'replacecolor',
+          customCell: this.ingredientsTransferQuantityCustomCell,
+          scopedSlots: { customRender: 'ingredientsTransferQuantity' }
+        },
+        {
+          title: '汇率',
+          dataIndex: 'exchangeRate',
+          width: 120,
+          className: 'replacecolor'
+        },
+
+        { title: '订单号', dataIndex: 'orderNum', width: 160, className: 'replacecolor' },
+        {
+          title: '产品款号',
+          dataIndex: 'poStyleNum',
+          width: 120,
+          className: 'replacecolor'
+        },
+        {
+          title: '出货数量',
+          dataIndex: 'shipQuantity',
+          width: 120,
+          className: 'replacecolor',
+          customCell: this.ingredientsRemainingQuantityCustomCell,
+          scopedSlots: { customRender: 'ingredientsRemainingQuantity' }
+        },
+        {
+          title: '外销单价',
+          dataIndex: 'loss',
+          width: 120,
+          className: 'exportUnitPrice'
+        },
+        {
+          title: '外销总价',
+          dataIndex: 'exportPrice',
+          width: 160,
+          className: 'replacecolor'
+        },
+        {
+          title: '人民币金额',
+          dataIndex: 'RMBAmount',
+          width: 160,
+          className: 'replacecolor'
+        },
+        {
+          title: '加工单价(人民币)',
+          dataIndex: 'procesUnitPriceRMB',
+          width: 160,
+          className: 'replacecolor'
+        },
+        {
+          title: '加工单价(美元)',
+          dataIndex: 'procesUnitPriceUSD',
+          width: 160,
+          className: 'replacecolor'
+        },
+        {
+          title: '加工费',
+          dataIndex: 'processCost',
+          width: 160,
+          className: 'replacecolor'
+        }
+      ],
+      twoshipDetailsData: [
+        { invoiceNum: '19TW-PRU-138S', outData: '2019-11-16', exchangeRate: '7.1338', RMBAmount: '160689.83' }
+      ]
+    }
+  },
+  created() {
+    // 渲染订单销售列表
+  },
+  methods: {
+    // tbas
+    tabsCallback(key) {
+      console.log(key)
+    },
+    // --------------------------------------------------------
+    // 面料 -转入数量 弹框
+    fabricTransferQuantityCustomCell(record) {
+      return {
+        on: {
+          click: event => {
+            console.log('点击单元格-面料-转入数量')
+            this.$refs.fabricTransferQuantityModal.fabricTransferQuantityModVis = true
+          }
+        }
+      }
+    },
+    // 面料 -余下数量 弹框
+    fabricRemainingQuantityCustomCell() {
+      return {
+        on: {
+          click: event => {
+            console.log('点击单元格-面料-余下数量')
+            this.$refs.fabricRemainingQuantityModal.fabricRemainingQuantityModVis = true
+          }
+        }
+      }
+    },
+
+    // 辅料-转入数量 弹框
+    ingredientsTransferQuantityCustomCell() {
+      return {
+        on: {
+          click: event => {
+            console.log('点击单元格-辅料-转入数量')
+            this.$refs.ingredientsTransferQuantityModal.ingredientsTransferQuantityModVis = true
+          }
+        }
+      }
+    },
+    // 辅料-余下数量 弹框
+    ingredientsRemainingQuantityCustomCell() {
+      return {
+        on: {
+          click: event => {
+            console.log('点击单元格-辅料-余下数量')
+            this.$refs.ingredientsRemainingQuantityModal.ingredientsRemainingQuantityModVis = true
+          }
+        }
+      }
+    },
+    // ---------------------------
+    //  加工单位2 面料 -转入数量 弹框
+    twoFabricTransferQuantityCustomCell() {
+      return {
+        on: {
+          click: event => {
+            console.log('点击单元格-加工单位2 面料-转入数量')
+            this.$refs.fabricTransferQuantityModal.fabricTransferQuantityModVis = true
+          }
+        }
+      }
+    },
+
+    //  加工单位2 面料 -余下数量 弹框
+    twofabricRemainingQuantityCustomCell() {
+      return {
+        on: {
+          click: event => {
+            console.log('点击单元格-辅料-余下数量')
+            this.$refs.fabricRemainingQuantityModal.fabricRemainingQuantityModVis = true
+          }
+        }
+      }
+    },
+    // 加工单位2 辅料-转入数量 弹框
+    twoingredientsTransferQuantityCustomCell() {
+      return {
+        on: {
+          click: event => {
+            console.log('点击单元格-辅料-转入数量')
+            this.$refs.ingredientsTransferQuantityModal.ingredientsTransferQuantityModVis = true
+          }
+        }
+      }
+    },
+    // 加工单位2 辅料-余下数量 弹框
+    twoingredientsRemainingQuantityCustomCell() {
+      return {
+        on: {
+          click: event => {
+            console.log('点击单元格-辅料-余下数量')
+            this.$refs.ingredientsRemainingQuantityModal.ingredientsRemainingQuantityModVis = true
+          }
+        }
+      }
+    },
+
+    // 事故单 单号 弹框
+    accidentListCustomCell(record) {
+      return {
+        on: {
+          click: event => {
+            console.log('this:', this)
+            this.$refs.accidentListModal.accidentListModVis = true
+          }
+        }
+      }
+    },
+
+    // -弹框接收父组件方法---------------------------------------
+    aa() {},
+    bb() {},
+    cc() {}
+  }
+}
+</script>
+
+<style lang="less" scoped>
+@import '~@assets/less/common.less';
+@import '~@assets/less/overwriter.less';
+/deep/ .ant-table-thead > tr > th {
+  text-align: center;
+  // font-weight: 700;
+}
+
+/deep/ .ant-table-tbody {
+  text-align: center;
+}
+
+// /deep/ th.replacecolor {
+//   background-color: #ccc;
+// }
+
+//tbas内 小标签
+.table-title {
+  font-weight: 700;
+}
+
+/deep/ .ant-tabs-nav .ant-tabs-tab-active {
+  font-size: 18px;
+}
+/deep/ .ant-tabs-nav .ant-tabs-tab {
+  font-size: 18px;
+}
+</style>

+ 1 - 1
src/views/reportForms/cost-allocation-table.vue

@@ -78,7 +78,7 @@ import moment from 'moment'
 import costAllocationDrawer from '@views/reportForms/cost-allocation-table/costAllocationDrawer.vue'
 
 export default {
-  name: 'OrderList',
+  name: 'CostAllocationTable', // 成本分配汇总
   mixins: [JeecgListMixin],
   components: { JEllipsis, moment, costAllocationDrawer },
 

+ 102 - 71
src/views/reportForms/dye-loss-table.vue

@@ -1,98 +1,119 @@
 <template>
   <!-- 染损表报 -->
-  <a-card :bordered="false">
-    <!-- 查询区域 -->
-    <div class="table-page-search-wrapper">
-      <a-form layout="inline" @keyup.enter.native="searchQuery">
-        <a-row :gutter="24">
-          <a-col :md="6" :sm="8">
-            <a-form-item label="订单号">
-              <a-input placeholder="请输入订单号" v-model="queryParam.orderNum"></a-input>
-            </a-form-item>
-          </a-col>
-
-          <a-col :md="6" :sm="8">
-            <a-form-item label="订单类型">
-              <a-select placeholder="请选择订单类型" v-model="queryParam.orderType">
-                <a-select-option :value="''">请选择</a-select-option>
-                <a-select-option :value="0">订单类型1</a-select-option>
-                <a-select-option :value="1">订单类型2</a-select-option>
-                <a-select-option :value="2">订单类型3</a-select-option>
-              </a-select>
-            </a-form-item>
-          </a-col>
-
-          <a-col :md="6" :sm="8">
-            <a-form-item label="供应商">
-              <a-input placeholder="请输入供应商" v-model="queryParam.supplier"></a-input>
-            </a-form-item>
-          </a-col>
+  <div id="dyeLossTable">
+    <a-card :bordered="false">
+      <!-- 查询区域 -->
+      <div class="table-page-search-wrapper">
+        <a-form layout="inline" @keyup.enter.native="searchQuery">
+          <a-row :gutter="24">
+            <a-col :md="6" :sm="8">
+              <a-form-item label="订单号">
+                <a-input placeholder="请输入订单号" v-model="queryParam.orderNum"></a-input>
+              </a-form-item>
+            </a-col>
 
-          <template v-if="toggleSearchStatus">
             <a-col :md="6" :sm="8">
-              <a-form-item label="计划单号">
-                <a-input placeholder="请输入计划单号" v-model="queryParam.planNum"></a-input>
+              <a-form-item label="订单类型">
+                <a-select placeholder="请选择订单类型" v-model="queryParam.orderType">
+                  <a-select-option :value="''">请选择</a-select-option>
+                  <a-select-option :value="0">订单类型1</a-select-option>
+                  <a-select-option :value="1">订单类型2</a-select-option>
+                  <a-select-option :value="2">订单类型3</a-select-option>
+                </a-select>
               </a-form-item>
             </a-col>
 
             <a-col :md="6" :sm="8">
-              <a-form-item label="销售订单号">
-                <a-input placeholder="请输入销售订单号" v-model="queryParam.salesOrderNum"></a-input>
+              <a-form-item label="供应商">
+                <a-input placeholder="请输入供应商" v-model="queryParam.supplier"></a-input>
               </a-form-item>
             </a-col>
-          </template>
 
-          <a-col :md="6" :sm="8">
-            <span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
-              <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 @click="handleToggleSearch" style="margin-left: 8px">
-                {{ toggleSearchStatus ? '收起' : '展开' }}
-                <a-icon :type="toggleSearchStatus ? 'up' : 'down'" />
-              </a>
-            </span>
-          </a-col>
-        </a-row>
-      </a-form>
-    </div>
+            <template v-if="toggleSearchStatus">
+              <a-col :md="6" :sm="8">
+                <a-form-item label="计划单号">
+                  <a-input placeholder="请输入计划单号" v-model="queryParam.planNum"></a-input>
+                </a-form-item>
+              </a-col>
+
+              <a-col :md="6" :sm="8">
+                <a-form-item label="销售订单号">
+                  <a-input placeholder="请输入销售订单号" v-model="queryParam.salesOrderNum"></a-input>
+                </a-form-item>
+              </a-col>
+            </template>
+
+            <a-col :md="6" :sm="8">
+              <span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
+                <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 @click="handleToggleSearch" style="margin-left: 8px">
+                  {{ toggleSearchStatus ? '收起' : '展开' }}
+                  <a-icon :type="toggleSearchStatus ? 'up' : 'down'" />
+                </a>
+              </span>
+            </a-col>
+          </a-row>
+        </a-form>
+      </div>
+    </a-card>
 
     <!-- 操作按钮区域 -->
-    <div class="table-operator">
-      <a-button type="primary" @click="handleExportXls('染损报表')" icon="download">导出</a-button>
-    </div>
+    <a-card :bordered="false" style="margin:10px 0;">
+      <div class="table-operator">
+        <a-button type="primary" @click="handleExportXls('染损报表')" icon="download">导出</a-button>
+      </div>
+
+      <!-- 子表合计 table rowKey="id" :scroll="{ x: 1500 }"-->
+      <div>
+        <a-table
+          bordered
+          :row-key="record => record.id"
+          :columns="dyeLossColumns"
+          :data-source="dyeLossData"
+          :loading="loading"
+          :pagination="ipagination"
+          @change="handleTableChange"
+          ref="table"
+          :footer="totalFooterShow"
+        >
+        </a-table>
+      </div>
+    </a-card>
 
-    <!-- 合计 table  rowKey="id" :scroll="{ x: 1500 }"  -->
-    <div>
-      <a-table
-        bordered
-        :row-key="record => record.id"
-        :columns="dyeLossColumns"
-        :data-source="dyeLossData"
-        :loading="loading"
-        :pagination="ipagination"
-        @change="handleTableChange"
-        ref="table"
-        :footer="totalFooterShow"
-      >
-      </a-table>
-    </div>
-  </a-card>
+    <!-- 引入分析图 组件 -->
+    <a-card :bordered="false">
+      <div class="chart">
+        <a-row type="flex" justify="space-between">
+          <!-- <a-col :md="12" :sm="12" class="someoneLossChart"> -->
+          <a-col :span="11" class="someoneLossChart">
+            <someoneLossChart />
+          </a-col>
+          <!-- <a-col :md="12" :sm="12" class="allLossChart"> -->
+          <a-col :span="11" class="allLossChart">
+            <allLossChart />
+          </a-col>
+        </a-row>
+      </div>
+    </a-card>
+  </div>
 </template>
 
 <script>
 import { JeecgListMixin } from '@/mixins/JeecgListMixin'
 import JEllipsis from '@/components/jeecg/JEllipsis'
 import moment from 'moment'
+import allLossChart from '@views/reportForms/dye-loss-table/allLossChart.vue'
+import someoneLossChart from '@views/reportForms/dye-loss-table/someoneLossChart'
 
 export default {
   name: 'DyeLossTable', // 染损报表
   mixins: [JeecgListMixin],
-  components: { JEllipsis, moment },
+  components: { JEllipsis, moment, allLossChart, someoneLossChart },
 
   data() {
     // let ellipsis = (v, l = 20) => <j-ellipsis value={v} length={l} /> // 省略
     return {
-      description: '染损报表',
       // 表头
       dyeLossColumns: [
         {
@@ -198,7 +219,8 @@ export default {
   },
   methods: {
     // 合计行
-    totalFooterShow(data) { // 后端传递的合计的数据
+    totalFooterShow(data) {
+      // 后端传递的合计的数据
       console.log('染损报表----合计行')
       console.log('data', data)
       return (
@@ -213,9 +235,6 @@ export default {
       )
     },
 
-    // 同步
-    synchronization() {},
-
     // 查询按钮
     searchQuery() {
       // 渲染染损列表
@@ -254,4 +273,16 @@ export default {
   border: none;
   padding: 0;
 }
+.allLossChart,
+.someoneLossChart {
+  height: 600px;
+  text-align: center;
+  border: 1px solid #e8e8e8;
+  padding-top: 10px;
+  font-size: 18px;
+}
+
+.someoneLossChart {
+  border: 1px solid #e8e8e8;
+}
 </style>

+ 37 - 0
src/views/reportForms/dye-loss-table/allLossChart.vue

@@ -0,0 +1,37 @@
+<template>
+  <!-- 染损报表 中的 分析图 -->
+  <div id="allLossChart">
+    <p>未指定供应商物料染损分析图</p>
+  </div>
+</template>
+
+<script>
+export default {
+  name: 'AllLossChart' // 未筛选供应商,展示所有供应商染损分析图
+}
+</script>
+
+<style lang="less" scoped>
+@import '~@assets/less/common.less';
+@import '~@assets/less/overwriter.less';
+/deep/ .ant-table-thead > tr > th {
+  text-align: center;
+  // font-weight: 700;
+}
+
+/deep/ .ant-table-tbody {
+  text-align: center;
+}
+
+// /deep/ th.replacecolor {
+//   background-color: #ccc;
+// }
+
+/deep/ .ant-table-footer .ant-table.body {
+  // overflow: hidden !important;
+}
+/deep/ .ant-table.ant-table-bordered .ant-table-footer {
+  border: none;
+  padding: 0;
+}
+</style>

+ 38 - 0
src/views/reportForms/dye-loss-table/someoneLossChart.vue

@@ -0,0 +1,38 @@
+<template>
+  <!-- 染损报表 中的 分析图 -->
+  <div id="someoneLossChart">
+    <p>指定供应商物料染损分析图</p>
+  </div>
+</template>
+
+<script>
+export default {
+
+}
+</script>
+
+<style lang="less" scoped>
+@import '~@assets/less/common.less';
+@import '~@assets/less/overwriter.less';
+/deep/ .ant-table-thead > tr > th {
+  text-align: center;
+  // font-weight: 700;
+}
+
+/deep/ .ant-table-tbody {
+  text-align: center;
+}
+
+// /deep/ th.replacecolor {
+//   background-color: #ccc;
+// }
+
+/deep/ .ant-table-footer .ant-table.body {
+  // overflow: hidden !important;
+}
+/deep/ .ant-table.ant-table-bordered .ant-table-footer {
+  border: none;
+  padding: 0;
+}
+
+</style>

+ 27 - 13
src/views/reportForms/order-statistics/chart/externalChartModal.vue

@@ -3,15 +3,18 @@
     title="订单外部分析图"
     v-model="externalChartModVis"
     :confirmLoading="confirmLoading"
-    @ok="onSubmit"
-    @cancel="handleCancel"
-    width="60%"
+    width="70%"
     style="top:330px;left:100px;"
+    :footer="null"
   >
     <a-spin :spinning="confirmLoading">
       <a-tabs default-active-key="1" @change="tabsCallback">
-        <a-tab-pane key="1" tab="按部门"> </a-tab-pane>
-        <a-tab-pane key="2" tab="按客户" force-render></a-tab-pane>
+        <a-tab-pane key="1" tab="按部门">
+          此处应该是订单外部分析图--按部门
+        </a-tab-pane>
+        <a-tab-pane key="2" tab="按客户" force-render>
+          此处应该是订单外部分析图--按客户
+        </a-tab-pane>
       </a-tabs>
     </a-spin>
   </a-modal>
@@ -42,14 +45,10 @@ export default {
   },
   created() {},
   methods: {
-    // 操作按钮 保存
-    save(record) {},
-
-    // 弹框确定
-    onSubmit() {},
-
-    // 弹框取消
-    handleCancel() {}
+    // 切换面板的回调
+    tabsCallback(key) {
+      console.log(key)
+    }
   },
   computed: {}
 }
@@ -66,4 +65,19 @@ export default {
 // th.replacecolor {
 // background-color:  #ccc;
 // }
+
+/deep/ .ant-modal-body {
+  // min-height: 300px;
+  // background-color: orange;
+}
+
+/deep/ .ant-tabs-content,
+.ant-tabs-content-animated,
+.ant-tabs-tabpane,
+.ant-tabs-tabpane-active,
+.ant-tabs-top-content {
+  height: 600px;
+  // border: 1px solid red; //#e8e8e8
+  background-color: #e8e8e8;
+}
 </style>

+ 26 - 12
src/views/reportForms/order-statistics/chart/interiorChartModal.vue

@@ -3,15 +3,18 @@
     title="订单内部分析图"
     v-model="interiorChartModVis"
     :confirmLoading="confirmLoading"
-    @ok="onSubmit"
-    @cancel="handleCancel"
+    :footer="null"
     width="80%"
     style="top:330px;left:100px;"
   >
     <a-spin :spinning="confirmLoading">
       <a-tabs default-active-key="1" @change="tabsCallback">
-        <a-tab-pane key="1" tab="按部门"> </a-tab-pane>
-        <a-tab-pane key="2" tab="按客户" force-render></a-tab-pane>
+        <a-tab-pane key="1" tab="按部门">
+          此处应该是订单内部分析图--按部门
+        </a-tab-pane>
+        <a-tab-pane key="2" tab="按客户" force-render>
+          此处应该是订单内部分析图--按客户
+        </a-tab-pane>
       </a-tabs>
     </a-spin>
   </a-modal>
@@ -42,14 +45,10 @@ export default {
   },
   created() {},
   methods: {
-    // 操作按钮 保存
-    save(record) {},
-
-    // 弹框确定
-    onSubmit() {},
-
-    // 弹框取消
-    handleCancel() {}
+    // 切换面板的回调
+    tabsCallback(key) {
+      console.log(key)
+    }
   },
   computed: {}
 }
@@ -66,4 +65,19 @@ export default {
 // th.replacecolor {
 // background-color:  #ccc;
 // }
+
+/deep/ .ant-modal-body {
+  // min-height: 300px;
+  // background-color: orange;
+}
+
+/deep/ .ant-tabs-content,
+.ant-tabs-content-animated,
+.ant-tabs-tabpane,
+.ant-tabs-tabpane-active,
+.ant-tabs-top-content {
+  height: 600px;
+  // border: 1px solid red; //#e8e8e8
+  background-color: #e8e8e8;
+}
 </style>

+ 70 - 68
src/views/reportForms/pro-progress-report.vue

@@ -1,88 +1,90 @@
 <template>
   <!-- 生产进度报表 -->
-  <a-card :bordered="false">
-    <!-- 查询区域 -->
-    <div class="table-page-search-wrapper">
-      <a-form layout="inline" @keyup.enter.native="searchQuery">
-        <a-row :gutter="24">
-          <a-col :md="6" :sm="8">
-            <a-form-item label="销售订单号">
-              <a-input placeholder="请输入订单号" v-model="queryParam.salesOrderNo"></a-input>
-            </a-form-item>
-          </a-col>
-
-          <a-col :md="6" :sm="8">
-            <a-form-item label="部门">
-              <a-input placeholder="请输入部门" v-model="queryParam.department"></a-input>
-            </a-form-item>
-          </a-col>
-
-          <a-col :md="6" :sm="8">
-            <a-form-item label="物料名称">
-              <a-input placeholder="请输入物料名称" v-model="queryParam.materialName"></a-input>
-            </a-form-item>
-          </a-col>
-
-          <template v-if="toggleSearchStatus">
+  <div id="proProgressReport">
+    <a-card :bordered="false">
+      <!-- 查询区域 -->
+      <div class="table-page-search-wrapper">
+        <a-form layout="inline" @keyup.enter.native="searchQuery">
+          <a-row :gutter="24">
             <a-col :md="6" :sm="8">
-              <a-form-item label="成衣加工厂">
-                <a-select placeholder="请选择成衣加工厂" v-model="queryParam.garmentFactory">
-                  <a-select-option :value="''">请选择</a-select-option>
-                  <a-select-option :value="0">成衣加工厂1</a-select-option>
-                  <a-select-option :value="1">成衣加工厂2</a-select-option>
-                  <a-select-option :value="2">成衣加工厂3</a-select-option>
-                </a-select>
+              <a-form-item label="销售订单号">
+                <a-input placeholder="请输入订单号" v-model="queryParam.salesOrderNo"></a-input>
               </a-form-item>
             </a-col>
 
             <a-col :md="6" :sm="8">
-              <a-form-item label="业务员">
-                <a-input placeholder="请输入业务员" v-model="queryParam.salesman"></a-input>
+              <a-form-item label="部门">
+                <a-input placeholder="请输入部门" v-model="queryParam.department"></a-input>
               </a-form-item>
             </a-col>
 
             <a-col :md="6" :sm="8">
-              <a-form-item label="计划单号">
-                <a-input placeholder="请输入计划单号" v-model="queryParam.planOrderNo"></a-input>
+              <a-form-item label="物料名称">
+                <a-input placeholder="请输入物料名称" v-model="queryParam.materialName"></a-input>
               </a-form-item>
             </a-col>
 
-            <a-col :md="6" :sm="8">
-              <a-form-item label="日期" has-feedback>
-                <a-date-picker style="width: 100%" v-model="queryParam.date"></a-date-picker>
-              </a-form-item>
-            </a-col>
+            <template v-if="toggleSearchStatus">
+              <a-col :md="6" :sm="8">
+                <a-form-item label="成衣加工厂">
+                  <a-select placeholder="请选择成衣加工厂" v-model="queryParam.garmentFactory">
+                    <a-select-option :value="''">请选择</a-select-option>
+                    <a-select-option :value="0">成衣加工厂1</a-select-option>
+                    <a-select-option :value="1">成衣加工厂2</a-select-option>
+                    <a-select-option :value="2">成衣加工厂3</a-select-option>
+                  </a-select>
+                </a-form-item>
+              </a-col>
 
-            <a-col :md="6" :sm="8">
-              <a-form-item label="颜色">
-                <a-input placeholder="请输入颜色" v-model="queryParam.color"></a-input>
-              </a-form-item>
-            </a-col>
+              <a-col :md="6" :sm="8">
+                <a-form-item label="业务员">
+                  <a-input placeholder="请输入业务员" v-model="queryParam.salesman"></a-input>
+                </a-form-item>
+              </a-col>
+
+              <a-col :md="6" :sm="8">
+                <a-form-item label="计划单号">
+                  <a-input placeholder="请输入计划单号" v-model="queryParam.planOrderNo"></a-input>
+                </a-form-item>
+              </a-col>
+
+              <a-col :md="6" :sm="8">
+                <a-form-item label="日期" has-feedback>
+                  <a-date-picker style="width: 100%" v-model="queryParam.date"></a-date-picker>
+                </a-form-item>
+              </a-col>
+
+              <a-col :md="6" :sm="8">
+                <a-form-item label="颜色">
+                  <a-input placeholder="请输入颜色" v-model="queryParam.color"></a-input>
+                </a-form-item>
+              </a-col>
 
+              <a-col :md="6" :sm="8">
+                <a-form-item label="交期" has-feedback>
+                  <a-date-picker style="width: 100%" v-model="queryParam.deliveryDate"></a-date-picker>
+                </a-form-item>
+              </a-col>
+            </template>
+
+            <!-- 重置 -->
             <a-col :md="6" :sm="8">
-              <a-form-item label="交期" has-feedback>
-                <a-date-picker style="width: 100%" v-model="queryParam.deliveryDate"></a-date-picker>
-              </a-form-item>
+              <span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
+                <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 @click="handleToggleSearch" style="margin-left: 8px">
+                  {{ toggleSearchStatus ? '收起' : '展开' }}
+                  <a-icon :type="toggleSearchStatus ? 'up' : 'down'" />
+                </a>
+              </span>
             </a-col>
-          </template>
-
-          <!-- 重置 -->
-          <a-col :md="6" :sm="8">
-            <span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
-              <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 @click="handleToggleSearch" style="margin-left: 8px">
-                {{ toggleSearchStatus ? '收起' : '展开' }}
-                <a-icon :type="toggleSearchStatus ? 'up' : 'down'" />
-              </a>
-            </span>
-          </a-col>
-        </a-row>
-      </a-form>
-    </div>
+          </a-row>
+        </a-form>
+      </div>
+    </a-card>
 
     <!-- table区域  -->
-    <div>
+    <a-card :bordered="false" style="marginTop:10px;">
       <a-table
         bordered
         rowKey="id"
@@ -103,11 +105,11 @@
           <img style="width:50px;heigth:50px" :src="record.image" />
         </span>
       </a-table>
-    </div>
 
+    </a-card>
     <!-- 单个订单报表 抽屉 -->
     <singleOrderReport-drawer ref="singleOrderReportDrawer" :father="aa" @ok="modalFormOk"></singleOrderReport-drawer>
-  </a-card>
+  </div>
 </template>
 
 <script>
@@ -117,7 +119,7 @@ import moment from 'moment'
 import singleOrderReportDrawer from '@views/reportForms/pro-progress-report/singleOrderReportDrawer.vue'
 
 export default {
-  name: 'OrderList',
+  name: 'ProProgressReport', // 生产进度报表
   mixins: [JeecgListMixin],
   components: { JEllipsis, moment, singleOrderReportDrawer },
 

+ 128 - 105
src/views/reportForms/pro-progress-report/singleOrderReportDrawer.vue

@@ -1,125 +1,144 @@
 <template>
-  <!-- 详情-----点击【销售订单号】后 -->
-  <a-card :bordered="false">
+  <!-- 订单报表详情-----点击【销售订单号】后 -->
+  <div id="singleOrderReportDrawer">
     <a-drawer
-      title="详情"
+      title="订单报表详情"
       width="89%"
       placement="right"
       :closable="true"
       :visible="visible"
       @close="onClose">
+      <!-- 主表 展示 -->
+      <a-card :bordered="true" style="marginBottom:10px;">
+        <div class="table-page-search-wrapper">
+          <a-form layout="inline">
+            <a-row :gutter="24">
+              <a-col :md="6" :sm="8">
+                <a-form-item label="部门">
+                  业务二部
+                  <!-- <a-input v-model="singleOrder.department"></a-input> -->
+                </a-form-item>
+              </a-col>
 
-      <!--展示 主表  -->
-      <div class="table-page-search-wrapper">
-        <a-form layout="inline">
-          <a-row :gutter="24">
-            <a-col :md="6" :sm="8">
-              <a-form-item label="部门">
-                <a-input v-model="singleOrder.department"></a-input>
-              </a-form-item>
-            </a-col>
-
-            <a-col :md="6" :sm="8">
-              <a-form-item label="业务员">
-                <a-input v-model="singleOrder.salesman"></a-input>
-              </a-form-item>
-            </a-col>
+              <a-col :md="6" :sm="8">
+                <a-form-item label="业务员">
+                  业务员1
+                  <!-- <a-input v-model="singleOrder.salesman"></a-input> -->
+                </a-form-item>
+              </a-col>
 
-            <a-col :md="6" :sm="8">
-              <a-form-item label="客户">
-                <a-input v-model="singleOrder.customer"></a-input>
-              </a-form-item>
-            </a-col>
-            <a-col :md="6" :sm="8">
-              <a-form-item label="物料编号">
-                <a-input v-model="singleOrder.materialNum"></a-input>
-              </a-form-item>
-            </a-col>
+              <a-col :md="6" :sm="8">
+                <a-form-item label="客户">
+                  客户1
+                  <!-- <a-input v-model="singleOrder.customer"></a-input> -->
+                </a-form-item>
+              </a-col>
+              <a-col :md="6" :sm="8">
+                <a-form-item label="物料编号">
+                  物料编号763dz9
+                  <!-- <a-input v-model="singleOrder.materialNum"></a-input> -->
+                </a-form-item>
+              </a-col>
 
-            <a-col :md="6" :sm="8">
-              <a-form-item label="物料名称">
-                <a-input v-model="singleOrder.materialName"></a-input>
-              </a-form-item>
-            </a-col>
+              <a-col :md="6" :sm="8">
+                <a-form-item label="物料名称">
+                  4.5CM黑色橡胶丝进口橡筋
+                  <!-- <a-input v-model="singleOrder.materialName"></a-input> -->
+                </a-form-item>
+              </a-col>
 
-            <a-col :md="6" :sm="8">
-              <a-form-item label="款号">
-                <a-input v-model="singleOrder.styleNum"></a-input>
-              </a-form-item>
-            </a-col>
+              <a-col :md="6" :sm="8">
+                <a-form-item label="款号">
+                  AW3572833
+                  <!-- <a-input v-model="singleOrder.styleNum"></a-input> -->
+                </a-form-item>
+              </a-col>
 
-            <a-col :md="6" :sm="8">
-              <a-form-item label="颜色">
-                <a-input v-model="singleOrder.color"></a-input>
-              </a-form-item>
-            </a-col>
-            <a-col :md="6" :sm="8">
-              <a-form-item label="交期">
-                <!-- <a-date-picker style="width: 100%" v-model="queryParam.deliveryDate"></a-date-picker> -->
-                <a-input v-model="singleOrder.deliveryDate"></a-input>
-              </a-form-item>
-            </a-col>
+              <a-col :md="6" :sm="8">
+                <a-form-item label="颜色">
+                  65#碳麻灰
+                  <!-- <a-input v-model="singleOrder.color"></a-input> -->
+                </a-form-item>
+              </a-col>
+              <a-col :md="6" :sm="8">
+                <a-form-item label="交期">
+                  2022-04-11
+                  <!-- <a-date-picker style="width: 100%" v-model="queryParam.deliveryDate"></a-date-picker> -->
+                  <!-- <a-input v-model="singleOrder.deliveryDate"></a-input> -->
+                </a-form-item>
+              </a-col>
 
-            <a-col :md="6" :sm="8">
-              <a-form-item label="订单数量">
-                <a-input v-model="singleOrder.orderQuantity"></a-input>
-              </a-form-item>
-            </a-col>
+              <a-col :md="6" :sm="8">
+                <a-form-item label="订单数量">
+                  8765
+                  <!-- <a-input v-model="singleOrder.orderQuantity"></a-input> -->
+                </a-form-item>
+              </a-col>
 
-            <a-col :md="6" :sm="8">
-              <a-form-item label="单价(原币)">
-                <a-input v-model="singleOrder.priceOriginal"></a-input>
-              </a-form-item>
-            </a-col>
+              <a-col :md="6" :sm="8">
+                <a-form-item label="单价(原币)">
+                  88.80
+                  <!-- <a-input v-model="singleOrder.priceOriginal"></a-input> -->
+                </a-form-item>
+              </a-col>
 
-            <a-col :md="6" :sm="8">
-              <a-form-item label="总额(原币)">
-                <a-input v-model="singleOrder.totalAmountOriginal"></a-input>
-              </a-form-item>
-            </a-col>
+              <a-col :md="6" :sm="8">
+                <a-form-item label="总额(原币)">
+                  274364,283
+                  <!-- <a-input v-model="singleOrder.totalAmountOriginal"></a-input> -->
+                </a-form-item>
+              </a-col>
 
-            <a-col :md="6" :sm="8">
-              <a-form-item label="单价(本币)">
-                <a-input v-model="singleOrder.priceLocal"></a-input>
-              </a-form-item>
-            </a-col>
-            <a-col :md="6" :sm="8">
-              <a-form-item label="总额(本币)">
-                <a-input v-model="singleOrder.totalAmountLocal"></a-input>
-              </a-form-item>
-            </a-col>
+              <a-col :md="6" :sm="8">
+                <a-form-item label="单价(本币)">
+                  76.89
+                  <!-- <a-input v-model="singleOrder.priceLocal"></a-input> -->
+                </a-form-item>
+              </a-col>
+              <a-col :md="6" :sm="8">
+                <a-form-item label="总额(本币)">
+                  9998,8990
+                  <!-- <a-input v-model="singleOrder.totalAmountLocal"></a-input> -->
+                </a-form-item>
+              </a-col>
 
-            <a-col :md="6" :sm="8">
-              <a-form-item label="单件成本(本币)">
-                <a-input v-model="singleOrder.UnitCostLocal"></a-input>
-              </a-form-item>
-            </a-col>
+              <a-col :md="6" :sm="8">
+                <a-form-item label="单件成本(本币)">
+                  67.88
+                  <!-- <a-input v-model="singleOrder.UnitCostLocal"></a-input> -->
+                </a-form-item>
+              </a-col>
 
-            <a-col :md="6" :sm="8">
-              <a-form-item label="已出库数量">
-                <a-input v-model="singleOrder.quantityDelivered"></a-input>
-              </a-form-item>
-            </a-col>
+              <a-col :md="6" :sm="8">
+                <a-form-item label="已出库数量">
+                  77689
+                  <!-- <a-input v-model="singleOrder.quantityDelivered"></a-input> -->
+                </a-form-item>
+              </a-col>
 
-            <a-col :md="6" :sm="8">
-              <a-form-item label="累计开票数量">
-                <a-input v-model="singleOrder.invoicesCumulativeNum"></a-input>
-              </a-form-item>
-            </a-col>
-            <a-col :md="6" :sm="8">
-              <a-form-item label="计划单号">
-                <a-input v-model="singleOrder.planOrderNo"></a-input>
-              </a-form-item>
-            </a-col>
+              <a-col :md="6" :sm="8">
+                <a-form-item label="累计开票数量">
+                  25374
+                  <!-- <a-input v-model="singleOrder.invoicesCumulativeNum"></a-input> -->
+                </a-form-item>
+              </a-col>
+              <a-col :md="6" :sm="8">
+                <a-form-item label="计划单号">
+                  FR546
+                  <!-- <a-input v-model="singleOrder.planOrderNo"></a-input> -->
+                </a-form-item>
+              </a-col>
 
-            <a-col :md="6" :sm="8">
-              <a-form-item label="业务填写">
-                <a-input v-model="singleOrder.businessFill"></a-input>
-              </a-form-item>
-            </a-col>
-          </a-row>
-        </a-form>
-      </div>
+              <a-col :md="6" :sm="8">
+                <a-form-item label="业务填写">
+                  业务填写test
+                  <!-- <a-input v-model="singleOrder.businessFill"></a-input> -->
+                </a-form-item>
+              </a-col>
+            </a-row>
+          </a-form>
+        </div>
+      </a-card>
 
       <!-- 展示 子表 采购 -->
       <div style="marginTop:30px;">
@@ -168,7 +187,11 @@
             <a-row :gutter="24">
               <a-col :md="6" :sm="8">
                 <a-form-item label="日期">
-                  <a-date-picker style="width: 100%" placeholder="请选择日期" v-model="queryParam.data"></a-date-picker>
+                  <a-date-picker
+                    style="width: 100%"
+                    placeholder="请选择日期"
+                    v-model="queryParam.data"
+                  ></a-date-picker>
                 </a-form-item>
               </a-col>
 
@@ -218,7 +241,7 @@
 
     <!-- 点击【物料编号】----出入库详细数据 抽屉 -->
     <outInDetailData-drawer ref="outInDetailDataDrawer" :father="aa" @ok="modalFormOk"></outInDetailData-drawer>
-  </a-card>
+  </div>
 </template>
 
 <script>
@@ -229,7 +252,7 @@ import moment from 'moment'
 import outInDetailDataDrawer from '@views/reportForms/pro-progress-report/outInDetailDataDrawer.vue'
 
 export default {
-  name: 'SingleOrderReportDrawer',
+  name: 'SingleOrderReportDrawer', // 订单报表详情
   mixins: [JeecgListMixin],
   components: { JEllipsis, moment, outInDetailDataDrawer },
   data() {

+ 3 - 3
src/views/shipment-details/addShipDetDrawer.vue

@@ -73,16 +73,16 @@
         <a-button type="primary" @click="handleAddColumn" icon="plus" style="margin-left: 20px">増行</a-button>
       </div>
 
-      <!-- 子表  :pagination="ipagination" -->
+      <!-- 子表  :model="form" :pagination="ipagination" -->
       <a-spin :spinning="confirmLoading">
         <a-form-model ref="formRef" :rules="validatorRules">
           <a-table
             bordered
             :row-key="record => record.id"
             :columns="columns"
-            :data-source="form.data"
+            :data-source="data"
             :loading="loading"
-            :pagination="fasle"
+            :pagination="false"
             :scroll="{ x: 1500 }"
             @change="handleTableChange"
           >

+ 4 - 5
src/views/shipment-details/editShipDetDrawer.vue

@@ -73,17 +73,16 @@
         <a-button type="primary" @click="handleAddColumn" icon="plus" style="margin-left: 20px">増行</a-button>
       </div>
 
-      <!-- 子表  -->
+      <!-- 子表  :model="form" :pagination="ipagination"-->
       <a-spin :spinning="confirmLoading">
-        <a-form-model ref="formRef" :model="form" :rules="validatorRules">
+        <a-form-model ref="formRef" :rules="validatorRules">
           <a-table
             bordered
             rowKey="id"
-            size="middle"
             :columns="columns"
-            :data-source="form.data"
+            :data-source="data"
             :loading="loading"
-            :pagination="ipagination"
+            :pagination="false"
             :scroll="{ x: 1500 }"
             @change="handleTableChange"
           >

+ 134 - 131
src/views/shipment-details/shipmentList.vue

@@ -1,154 +1,158 @@
 <template>
   <!-- 发运明细列表 -->
-  <a-card :bordered="false">
-    <!-- 查询 -->
-    <div class="table-page-search-wrapper">
-      <a-form layout="inline" @keyup.enter.native="searchQuery">
-        <a-row :gutter="24">
-          <a-col :md="6" :sm="8">
-            <a-form-item label="单据号">
-              <a-input placeholder="请输入单据号" v-model="queryParam.documentNum"></a-input>
-            </a-form-item>
-          </a-col>
-
-          <a-col :md="6" :sm="8">
-            <a-form-item label="开始时间">
-              <a-date-picker
-                placeholder="请选择开始时间"
-                @change="startTimeChange"
-                style="width: 100%"
-                v-model="queryParam.startTime"
-              />
-            </a-form-item>
-          </a-col>
-
-          <a-col :md="6" :sm="8">
-            <a-form-item label="结束时间" style="width:100%;">
-              <a-month-picker
-                placeholder="请选择结束时间"
-                @change="endTimeChange"
-                style="width: 100%"
-                v-model="queryParam.endTime"
-              />
-            </a-form-item>
-          </a-col>
-
-          <template v-if="toggleSearchStatus">
+  <div id="ShipmentList">
+    <a-card :bordered="false">
+      <!-- 查询 -->
+      <div class="table-page-search-wrapper">
+        <a-form layout="inline" @keyup.enter.native="searchQuery">
+          <a-row :gutter="24">
             <a-col :md="6" :sm="8">
-              <a-form-item label="发货日期">
-                <a-date-picker
-                  placeholder="请选择发货日期"
-                  @change="shipDateChange"
-                  style="width: 100%"
-                  v-model="queryParam.deliveryDate"
-                />
+              <a-form-item label="单据号">
+                <a-input placeholder="请输入单据号" v-model="queryParam.documentNum"></a-input>
               </a-form-item>
             </a-col>
 
             <a-col :md="6" :sm="8">
-              <a-form-item label="业务员">
-                <a-input placeholder="请输入业务员" v-model="queryParam.salesman"></a-input>
+              <a-form-item label="开始时间">
+                <a-date-picker
+                  placeholder="请选择开始时间"
+                  @change="startTimeChange"
+                  style="width: 100%"
+                  v-model="queryParam.startTime"
+                />
               </a-form-item>
             </a-col>
 
             <a-col :md="6" :sm="8">
-              <a-form-item label="款号">
-                <a-input placeholder="请输入款号" v-model="queryParam.styleNum"></a-input>
+              <a-form-item label="结束时间" style="width:100%;">
+                <a-month-picker
+                  placeholder="请选择结束时间"
+                  @change="endTimeChange"
+                  style="width: 100%"
+                  v-model="queryParam.endTime"
+                />
               </a-form-item>
             </a-col>
 
+            <template v-if="toggleSearchStatus">
+              <a-col :md="6" :sm="8">
+                <a-form-item label="发货日期">
+                  <a-date-picker
+                    placeholder="请选择发货日期"
+                    @change="shipDateChange"
+                    style="width: 100%"
+                    v-model="queryParam.deliveryDate"
+                  />
+                </a-form-item>
+              </a-col>
+
+              <a-col :md="6" :sm="8">
+                <a-form-item label="业务员">
+                  <a-input placeholder="请输入业务员" v-model="queryParam.salesman"></a-input>
+                </a-form-item>
+              </a-col>
+
+              <a-col :md="6" :sm="8">
+                <a-form-item label="款号">
+                  <a-input placeholder="请输入款号" v-model="queryParam.styleNum"></a-input>
+                </a-form-item>
+              </a-col>
+
+              <a-col :md="6" :sm="8">
+                <a-form-item label="是否被参照">
+                  <a-select v-model="queryParam.refer">
+                    <a-select-option value="">请选择</a-select-option>
+                    <a-select-option :value="0">否</a-select-option>
+                    <a-select-option :value="1">是</a-select-option>
+                  </a-select>
+                </a-form-item>
+              </a-col>
+            </template>
+
             <a-col :md="6" :sm="8">
-              <a-form-item label="是否被参照">
-                <a-select v-model="queryParam.refer">
-                  <a-select-option value="">请选择</a-select-option>
-                  <a-select-option :value="0">否</a-select-option>
-                  <a-select-option :value="1">是</a-select-option>
-                </a-select>
-              </a-form-item>
+              <span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
+                <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 @click="handleToggleSearch" style="margin-left: 8px">
+                  {{ toggleSearchStatus ? '收起' : '展开' }}
+                  <a-icon :type="toggleSearchStatus ? 'up' : 'down'" />
+                </a>
+              </span>
             </a-col>
-          </template>
-
-          <a-col :md="6" :sm="8">
-            <span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
-              <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 @click="handleToggleSearch" style="margin-left: 8px">
-                {{ toggleSearchStatus ? '收起' : '展开' }}
-                <a-icon :type="toggleSearchStatus ? 'up' : 'down'" />
-              </a>
-            </span>
-          </a-col>
-        </a-row>
-      </a-form>
-    </div>
+          </a-row>
+        </a-form>
+      </div>
+    </a-card>
 
     <!-- 操作按钮区域 -->
-    <div class="table-operator">
-      <a-button type="primary" @click="addShipDet" icon="plus">新增</a-button>
-    </div>
-
-    <!-- table  y: 300 -->
-    <div>
-      <a-row>
-        <a-table
-          bordered
-          :row-key="record => record.id"
-          :columns="shipmentListColumns"
-          :data-source="shipmentListData"
-          :loading="loading"
-          :pagination="ipagination"
-          :scroll="{ x: 1500 }"
-          @change="handleTableChange"
-        >
-          <!-- 推送状态 -->
-          <!-- slot-scope="text, record" -->
-          <span slot="pushStateSlot">
-            <!-- v-if="record.isRelease == '0'" -->
-            <a-tag color="#f50">失败</a-tag>
-            <!-- <a-tag color="#87d068" v-else>已发布</a-tag> -->
-          </span>
-
-          <!-- 单据状态 -->
-          <span slot="documentStateSlot">
-            <a-tag color="#2db7f5">已保存</a-tag>
-          </span>
-
-          <!-- 操作 -->
-          <span slot="operationSlot" slot-scope="text, record">
-            <a href="javascript:void(0);" @click="declareElements(record)" style="color:green">申报要素</a>
-            <a-divider type="vertical" />
-            <a-dropdown>
-              <a class="ant-dropdown-link">更多<a-icon type="down"/></a>
-              <a-menu slot="overlay">
-                <a-menu-item>
-                  <a @click="details(record)">详情</a>
-                </a-menu-item>
-
-                <a-menu-item>
-                  <a @click="submit(record)">提交</a>
-                </a-menu-item>
-                <a-menu-item>
-                  <a @click="edit(record)">编辑</a>
-                </a-menu-item>
-                <a-menu-item>
-                  <a @click="push(record)">推送</a>
-                </a-menu-item>
-                <a-menu-item>
-                  <a-popconfirm title="确定删除吗?" ok-text="是" cancel-text="否" @confirm="handleDelete(record.id)">
-                    <a href="javascript:void(0);" style="color:red;">删除</a>
-                  </a-popconfirm>
-                </a-menu-item>
-              </a-menu>
-            </a-dropdown>
-          </span>
-        </a-table>
-      </a-row>
-    </div>
+    <a-card :bordered="false" style=" marginTop:10px;">
+      <div class="table-operator">
+        <a-button type="primary" @click="addShipDet" icon="plus">新增</a-button>
+      </div>
+
+      <!-- table  y: 300 -->
+      <div>
+        <a-row>
+          <a-table
+            bordered
+            :row-key="record => record.id"
+            :columns="shipmentListColumns"
+            :data-source="shipmentListData"
+            :loading="loading"
+            :pagination="ipagination"
+            :scroll="{ x: 1500 }"
+            @change="handleTableChange"
+          >
+            <!-- 推送状态 -->
+            <!-- slot-scope="text, record" -->
+            <span slot="pushStateSlot">
+              <!-- v-if="record.isRelease == '0'" -->
+              <a-tag color="#f50">失败</a-tag>
+              <!-- <a-tag color="#87d068" v-else>已发布</a-tag> -->
+            </span>
+
+            <!-- 单据状态 -->
+            <span slot="documentStateSlot">
+              <a-tag color="#2db7f5">已保存</a-tag>
+            </span>
+
+            <!-- 操作 -->
+            <span slot="operationSlot" slot-scope="text, record">
+              <a href="javascript:void(0);" @click="declareElements(record)" style="color:green">申报要素</a>
+              <a-divider type="vertical" />
+              <a-dropdown>
+                <a class="ant-dropdown-link">更多<a-icon type="down"/></a>
+                <a-menu slot="overlay">
+                  <a-menu-item>
+                    <a @click="details(record)">详情</a>
+                  </a-menu-item>
+
+                  <a-menu-item>
+                    <a @click="submit(record)">提交</a>
+                  </a-menu-item>
+                  <a-menu-item>
+                    <a @click="edit(record)">编辑</a>
+                  </a-menu-item>
+                  <a-menu-item>
+                    <a @click="push(record)">推送</a>
+                  </a-menu-item>
+                  <a-menu-item>
+                    <a-popconfirm title="确定删除吗?" ok-text="是" cancel-text="否" @confirm="handleDelete(record.id)">
+                      <a href="javascript:void(0);" style="color:red;">删除</a>
+                    </a-popconfirm>
+                  </a-menu-item>
+                </a-menu>
+              </a-dropdown>
+            </span>
+          </a-table>
+        </a-row>
+      </div>
+    </a-card>
     <!-- 新增 详情 修改 抽屉 -->
     <addShipDet-drawer ref="addShipDetDrawer" :father="aa" @ok="modalFormOk"></addShipDet-drawer>
     <detailsShipDet-drawer ref="detailsShipDetDrawer" :father="bb" @ok="modalFormOk"></detailsShipDet-drawer>
     <editShipDet-drawer ref="editShipDetDrawer" :father="cc" @ok="modalFormOk"></editShipDet-drawer>
-  </a-card>
+  </div>
 </template>
 
 <script>
@@ -165,8 +169,7 @@ export default {
   components: { JEllipsis, moment, addShipDetDrawer, detailsShipDetDrawer, editShipDetDrawer },
 
   data() {
-    let ellipsis = (v, l = 20) => <j-ellipsis value={v} length={l} /> // 省略
-
+    let ellipsis = (v, l = 20) => <j-ellipsis value={v} length={l} />
     return {
       loading: false, // 表格加载
       id: '',