✨ ERP:增加 ERP 销售订单的实现 40%(列表)
							parent
							
								
									b55c8417fb
								
							
						
					
					
						commit
						2615054fb2
					
				| 
						 | 
				
			
			@ -2,14 +2,16 @@ import request from '@/config/axios'
 | 
			
		|||
 | 
			
		||||
// ERP 销售订单 VO
 | 
			
		||||
export interface SaleOrderVO {
 | 
			
		||||
  id: number // 迪卡侬工单编号
 | 
			
		||||
  id: number // 订单工单编号
 | 
			
		||||
  no: string // 销售订单号
 | 
			
		||||
  customerId: number // 客户编号
 | 
			
		||||
  orderTime: Date // 迪卡侬工单时间
 | 
			
		||||
  orderTime: Date // 订单工单时间
 | 
			
		||||
  totalCount: number // 合计数量
 | 
			
		||||
  totalPrice: number // 合计金额,单位:元
 | 
			
		||||
  status: number // 状态
 | 
			
		||||
  remark: string // 备注
 | 
			
		||||
  inCount: number // 销售入库数量
 | 
			
		||||
  returnCount: number // 销售退货数量
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// ERP 销售订单 API
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -20,6 +20,7 @@
 | 
			
		|||
      <el-form-item label="产品" prop="productId">
 | 
			
		||||
        <el-select
 | 
			
		||||
          v-model="queryParams.productId"
 | 
			
		||||
          clearable
 | 
			
		||||
          filterable
 | 
			
		||||
          placeholder="请选择产品"
 | 
			
		||||
          class="!w-240px"
 | 
			
		||||
| 
						 | 
				
			
			@ -92,6 +93,30 @@
 | 
			
		|||
          class="!w-240px"
 | 
			
		||||
        />
 | 
			
		||||
      </el-form-item>
 | 
			
		||||
      <el-form-item label="入库数量" prop="inStatus">
 | 
			
		||||
        <el-select
 | 
			
		||||
          v-model="queryParams.inStatus"
 | 
			
		||||
          placeholder="请选择入库数量"
 | 
			
		||||
          clearable
 | 
			
		||||
          class="!w-240px"
 | 
			
		||||
        >
 | 
			
		||||
          <el-option label="未入库" value="0" />
 | 
			
		||||
          <el-option label="部分入库" value="1" />
 | 
			
		||||
          <el-option label="全部入库" value="2" />
 | 
			
		||||
        </el-select>
 | 
			
		||||
      </el-form-item>
 | 
			
		||||
      <el-form-item label="退货数量" prop="inStatus">
 | 
			
		||||
        <el-select
 | 
			
		||||
          v-model="queryParams.inStatus"
 | 
			
		||||
          placeholder="请选择退货数量"
 | 
			
		||||
          clearable
 | 
			
		||||
          class="!w-240px"
 | 
			
		||||
        >
 | 
			
		||||
          <el-option label="未退货" value="0" />
 | 
			
		||||
          <el-option label="部分退货" value="1" />
 | 
			
		||||
          <el-option label="全部退货" value="2" />
 | 
			
		||||
        </el-select>
 | 
			
		||||
      </el-form-item>
 | 
			
		||||
      <el-form-item>
 | 
			
		||||
        <el-button @click="handleQuery"><Icon icon="ep:search" class="mr-5px" /> 搜索</el-button>
 | 
			
		||||
        <el-button @click="resetQuery"><Icon icon="ep:refresh" class="mr-5px" /> 重置</el-button>
 | 
			
		||||
| 
						 | 
				
			
			@ -99,7 +124,7 @@
 | 
			
		|||
          type="primary"
 | 
			
		||||
          plain
 | 
			
		||||
          @click="openForm('create')"
 | 
			
		||||
          v-hasPermi="['erp:stock-order:create']"
 | 
			
		||||
          v-hasPermi="['erp:sale-order:create']"
 | 
			
		||||
        >
 | 
			
		||||
          <Icon icon="ep:plus" class="mr-5px" /> 新增
 | 
			
		||||
        </el-button>
 | 
			
		||||
| 
						 | 
				
			
			@ -108,7 +133,7 @@
 | 
			
		|||
          plain
 | 
			
		||||
          @click="handleExport"
 | 
			
		||||
          :loading="exportLoading"
 | 
			
		||||
          v-hasPermi="['erp:stock-order:export']"
 | 
			
		||||
          v-hasPermi="['erp:sale-order:export']"
 | 
			
		||||
        >
 | 
			
		||||
          <Icon icon="ep:download" class="mr-5px" /> 导出
 | 
			
		||||
        </el-button>
 | 
			
		||||
| 
						 | 
				
			
			@ -116,7 +141,7 @@
 | 
			
		|||
          type="danger"
 | 
			
		||||
          plain
 | 
			
		||||
          @click="handleDelete(selectionList.map((item) => item.id))"
 | 
			
		||||
          v-hasPermi="['erp:stock-order:delete']"
 | 
			
		||||
          v-hasPermi="['erp:sale-order:delete']"
 | 
			
		||||
          :disabled="selectionList.length === 0"
 | 
			
		||||
        >
 | 
			
		||||
          <Icon icon="ep:delete" class="mr-5px" /> 删除
 | 
			
		||||
| 
						 | 
				
			
			@ -147,17 +172,41 @@
 | 
			
		|||
      />
 | 
			
		||||
      <el-table-column label="创建人" align="center" prop="creatorName" />
 | 
			
		||||
      <el-table-column
 | 
			
		||||
        label="数量"
 | 
			
		||||
        label="总数量"
 | 
			
		||||
        align="center"
 | 
			
		||||
        prop="totalCount"
 | 
			
		||||
        :formatter="erpCountTableColumnFormatter"
 | 
			
		||||
      />
 | 
			
		||||
      <el-table-column
 | 
			
		||||
        label="金额"
 | 
			
		||||
        label="入库数量"
 | 
			
		||||
        align="center"
 | 
			
		||||
        prop="inCount"
 | 
			
		||||
        :formatter="erpCountTableColumnFormatter"
 | 
			
		||||
      />
 | 
			
		||||
      <el-table-column
 | 
			
		||||
        label="退货数量"
 | 
			
		||||
        align="center"
 | 
			
		||||
        prop="returnCount"
 | 
			
		||||
        :formatter="erpCountTableColumnFormatter"
 | 
			
		||||
      />
 | 
			
		||||
      <el-table-column
 | 
			
		||||
        label="金额合计"
 | 
			
		||||
        align="center"
 | 
			
		||||
        prop="totalProductPrice"
 | 
			
		||||
        :formatter="erpPriceTableColumnFormatter"
 | 
			
		||||
      />
 | 
			
		||||
      <el-table-column
 | 
			
		||||
        label="含税金额"
 | 
			
		||||
        align="center"
 | 
			
		||||
        prop="totalPrice"
 | 
			
		||||
        :formatter="erpPriceTableColumnFormatter"
 | 
			
		||||
      />
 | 
			
		||||
      <el-table-column
 | 
			
		||||
        label="收取订金"
 | 
			
		||||
        align="center"
 | 
			
		||||
        prop="depositPrice"
 | 
			
		||||
        :formatter="erpPriceTableColumnFormatter"
 | 
			
		||||
      />
 | 
			
		||||
      <el-table-column label="状态" align="center" fixed="right" width="90" prop="status">
 | 
			
		||||
        <template #default="scope">
 | 
			
		||||
          <dict-tag :type="DICT_TYPE.ERP_AUDIT_STATUS" :value="scope.row.status" />
 | 
			
		||||
| 
						 | 
				
			
			@ -168,7 +217,7 @@
 | 
			
		|||
          <el-button
 | 
			
		||||
            link
 | 
			
		||||
            @click="openForm('detail', scope.row.id)"
 | 
			
		||||
            v-hasPermi="['erp:stock-order:query']"
 | 
			
		||||
            v-hasPermi="['erp:sale-order:query']"
 | 
			
		||||
          >
 | 
			
		||||
            详情
 | 
			
		||||
          </el-button>
 | 
			
		||||
| 
						 | 
				
			
			@ -176,7 +225,7 @@
 | 
			
		|||
            link
 | 
			
		||||
            type="primary"
 | 
			
		||||
            @click="openForm('update', scope.row.id)"
 | 
			
		||||
            v-hasPermi="['erp:stock-order:update']"
 | 
			
		||||
            v-hasPermi="['erp:sale-order:update']"
 | 
			
		||||
            :disabled="scope.row.status === 20"
 | 
			
		||||
          >
 | 
			
		||||
            编辑
 | 
			
		||||
| 
						 | 
				
			
			@ -185,7 +234,7 @@
 | 
			
		|||
            link
 | 
			
		||||
            type="primary"
 | 
			
		||||
            @click="handleUpdateStatus(scope.row.id, 20)"
 | 
			
		||||
            v-hasPermi="['erp:stock-order:update-status']"
 | 
			
		||||
            v-hasPermi="['erp:sale-order:update-status']"
 | 
			
		||||
            v-if="scope.row.status === 10"
 | 
			
		||||
          >
 | 
			
		||||
            审批
 | 
			
		||||
| 
						 | 
				
			
			@ -194,7 +243,7 @@
 | 
			
		|||
            link
 | 
			
		||||
            type="danger"
 | 
			
		||||
            @click="handleUpdateStatus(scope.row.id, 10)"
 | 
			
		||||
            v-hasPermi="['erp:stock-order:update-status']"
 | 
			
		||||
            v-hasPermi="['erp:sale-order:update-status']"
 | 
			
		||||
            v-else
 | 
			
		||||
          >
 | 
			
		||||
            反审批
 | 
			
		||||
| 
						 | 
				
			
			@ -203,7 +252,7 @@
 | 
			
		|||
            link
 | 
			
		||||
            type="danger"
 | 
			
		||||
            @click="handleDelete([scope.row.id])"
 | 
			
		||||
            v-hasPermi="['erp:stock-order:delete']"
 | 
			
		||||
            v-hasPermi="['erp:sale-order:delete']"
 | 
			
		||||
          >
 | 
			
		||||
            删除
 | 
			
		||||
          </el-button>
 | 
			
		||||
| 
						 | 
				
			
			@ -253,7 +302,8 @@ const queryParams = reactive({
 | 
			
		|||
  orderTime: [],
 | 
			
		||||
  status: undefined,
 | 
			
		||||
  remark: undefined,
 | 
			
		||||
  creator: undefined
 | 
			
		||||
  creator: undefined,
 | 
			
		||||
  inStatus: undefined
 | 
			
		||||
})
 | 
			
		||||
const queryFormRef = ref() // 搜索的表单
 | 
			
		||||
const exportLoading = ref(false) // 导出的加载中
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -20,6 +20,7 @@
 | 
			
		|||
      <el-form-item label="产品" prop="productId">
 | 
			
		||||
        <el-select
 | 
			
		||||
          v-model="queryParams.productId"
 | 
			
		||||
          clearable
 | 
			
		||||
          filterable
 | 
			
		||||
          placeholder="请选择产品"
 | 
			
		||||
          class="!w-240px"
 | 
			
		||||
| 
						 | 
				
			
			@ -34,7 +35,7 @@
 | 
			
		|||
      </el-form-item>
 | 
			
		||||
      <el-form-item label="盘点时间" prop="checkTime">
 | 
			
		||||
        <el-date-picker
 | 
			
		||||
          v-model="queryParams.inTime"
 | 
			
		||||
          v-model="queryParams.checkTime"
 | 
			
		||||
          value-format="YYYY-MM-DD HH:mm:ss"
 | 
			
		||||
          type="daterange"
 | 
			
		||||
          start-placeholder="开始日期"
 | 
			
		||||
| 
						 | 
				
			
			@ -247,6 +248,7 @@ const queryParams = reactive({
 | 
			
		|||
  pageNo: 1,
 | 
			
		||||
  pageSize: 10,
 | 
			
		||||
  no: undefined,
 | 
			
		||||
  productId: undefined,
 | 
			
		||||
  warehouseId: undefined,
 | 
			
		||||
  checkTime: [],
 | 
			
		||||
  status: undefined,
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -20,6 +20,7 @@
 | 
			
		|||
      <el-form-item label="产品" prop="productId">
 | 
			
		||||
        <el-select
 | 
			
		||||
          v-model="queryParams.productId"
 | 
			
		||||
          clearable
 | 
			
		||||
          filterable
 | 
			
		||||
          placeholder="请选择产品"
 | 
			
		||||
          class="!w-240px"
 | 
			
		||||
| 
						 | 
				
			
			@ -264,6 +265,7 @@ const queryParams = reactive({
 | 
			
		|||
  pageNo: 1,
 | 
			
		||||
  pageSize: 10,
 | 
			
		||||
  no: undefined,
 | 
			
		||||
  productId: undefined,
 | 
			
		||||
  supplierId: undefined,
 | 
			
		||||
  inTime: [],
 | 
			
		||||
  status: undefined,
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -20,6 +20,7 @@
 | 
			
		|||
      <el-form-item label="产品" prop="productId">
 | 
			
		||||
        <el-select
 | 
			
		||||
          v-model="queryParams.productId"
 | 
			
		||||
          productId
 | 
			
		||||
          filterable
 | 
			
		||||
          placeholder="请选择产品"
 | 
			
		||||
          class="!w-240px"
 | 
			
		||||
| 
						 | 
				
			
			@ -34,7 +35,7 @@
 | 
			
		|||
      </el-form-item>
 | 
			
		||||
      <el-form-item label="调度时间" prop="moveTime">
 | 
			
		||||
        <el-date-picker
 | 
			
		||||
          v-model="queryParams.inTime"
 | 
			
		||||
          v-model="queryParams.moveTime"
 | 
			
		||||
          value-format="YYYY-MM-DD HH:mm:ss"
 | 
			
		||||
          type="daterange"
 | 
			
		||||
          start-placeholder="开始日期"
 | 
			
		||||
| 
						 | 
				
			
			@ -247,6 +248,7 @@ const queryParams = reactive({
 | 
			
		|||
  pageNo: 1,
 | 
			
		||||
  pageSize: 10,
 | 
			
		||||
  no: undefined,
 | 
			
		||||
  productId: undefined,
 | 
			
		||||
  fromWarehouseId: undefined,
 | 
			
		||||
  moveTime: [],
 | 
			
		||||
  status: undefined,
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -20,6 +20,7 @@
 | 
			
		|||
      <el-form-item label="产品" prop="productId">
 | 
			
		||||
        <el-select
 | 
			
		||||
          v-model="queryParams.productId"
 | 
			
		||||
          clearable
 | 
			
		||||
          filterable
 | 
			
		||||
          placeholder="请选择产品"
 | 
			
		||||
          class="!w-240px"
 | 
			
		||||
| 
						 | 
				
			
			@ -34,7 +35,7 @@
 | 
			
		|||
      </el-form-item>
 | 
			
		||||
      <el-form-item label="出库时间" prop="outTime">
 | 
			
		||||
        <el-date-picker
 | 
			
		||||
          v-model="queryParams.inTime"
 | 
			
		||||
          v-model="queryParams.outTime"
 | 
			
		||||
          value-format="YYYY-MM-DD HH:mm:ss"
 | 
			
		||||
          type="daterange"
 | 
			
		||||
          start-placeholder="开始日期"
 | 
			
		||||
| 
						 | 
				
			
			@ -265,6 +266,7 @@ const queryParams = reactive({
 | 
			
		|||
  pageNo: 1,
 | 
			
		||||
  pageSize: 10,
 | 
			
		||||
  no: undefined,
 | 
			
		||||
  productId: undefined,
 | 
			
		||||
  customerId: undefined,
 | 
			
		||||
  outTime: [],
 | 
			
		||||
  status: undefined,
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -12,6 +12,7 @@
 | 
			
		|||
      <el-form-item label="产品" prop="productId">
 | 
			
		||||
        <el-select
 | 
			
		||||
          v-model="queryParams.productId"
 | 
			
		||||
          clearable
 | 
			
		||||
          filterable
 | 
			
		||||
          placeholder="请选择产品"
 | 
			
		||||
          class="!w-240px"
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -12,6 +12,7 @@
 | 
			
		|||
      <el-form-item label="产品" prop="productId">
 | 
			
		||||
        <el-select
 | 
			
		||||
          v-model="queryParams.productId"
 | 
			
		||||
          clearable
 | 
			
		||||
          filterable
 | 
			
		||||
          placeholder="请选择产品"
 | 
			
		||||
          class="!w-240px"
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue