diff --git a/src/api/erp/stock/out/index.ts b/src/api/erp/stock/out/index.ts
new file mode 100644
index 00000000..f0f40d34
--- /dev/null
+++ b/src/api/erp/stock/out/index.ts
@@ -0,0 +1,62 @@
+import request from '@/config/axios'
+
+// ERP 其它出库单 VO
+export interface StockOutVO {
+ id: number // 出库编号
+ no: string // 出库单号
+ customerId: number // 客户编号
+ outTime: Date // 出库时间
+ totalCount: number // 合计数量
+ totalPrice: number // 合计金额,单位:元
+ status: number // 状态
+ remark: string // 备注
+}
+
+// ERP 其它出库单 API
+export const StockOutApi = {
+ // 查询其它出库单分页
+ getStockOutPage: async (params: any) => {
+ return await request.get({ url: `/erp/stock-out/page`, params })
+ },
+
+ // 查询其它出库单详情
+ getStockOut: async (id: number) => {
+ return await request.get({ url: `/erp/stock-out/get?id=` + id })
+ },
+
+ // 新增其它出库单
+ createStockOut: async (data: StockOutVO) => {
+ return await request.post({ url: `/erp/stock-out/create`, data })
+ },
+
+ // 修改其它出库单
+ updateStockOut: async (data: StockOutVO) => {
+ return await request.put({ url: `/erp/stock-out/update`, data })
+ },
+
+ // 更新其它出库单的状态
+ updateStockOutStatus: async (id: number, status: number) => {
+ return await request.put({
+ url: `/erp/stock-out/update-status`,
+ params: {
+ id,
+ status
+ }
+ })
+ },
+
+ // 删除其它出库单
+ deleteStockOut: async (ids: number[]) => {
+ return await request.delete({
+ url: `/erp/stock-out/delete`,
+ params: {
+ ids: ids.join(',')
+ }
+ })
+ },
+
+ // 导出其它出库单 Excel
+ exportStockOut: async (params) => {
+ return await request.download({ url: `/erp/stock-out/export-excel`, params })
+ }
+}
diff --git a/src/views/erp/stock/in/StockInForm.vue b/src/views/erp/stock/in/StockInForm.vue
index fd339520..3522ec2d 100644
--- a/src/views/erp/stock/in/StockInForm.vue
+++ b/src/views/erp/stock/in/StockInForm.vue
@@ -62,8 +62,8 @@
-
-
+
+
@@ -106,8 +106,8 @@ const formRef = ref() // 表单 Ref
const supplierList = ref([]) // 供应商列表
/** 子表的表单 */
-const subTabsName = ref('stockInItem')
-const stockInItemFormRef = ref()
+const subTabsName = ref('item')
+const itemFormRef = ref()
/** 打开弹窗 */
const open = async (type: string, id?: number) => {
@@ -134,7 +134,7 @@ const emit = defineEmits(['success']) // 定义 success 事件,用于操作成
const submitForm = async () => {
// 校验表单
await formRef.value.validate()
- await stockInItemFormRef.value.validate()
+ await itemFormRef.value.validate()
// 提交请求
formLoading.value = true
try {
diff --git a/src/views/erp/stock/in/components/StockInItemForm.vue b/src/views/erp/stock/in/components/StockInItemForm.vue
index 5a397aa0..8bf980b7 100644
--- a/src/views/erp/stock/in/components/StockInItemForm.vue
+++ b/src/views/erp/stock/in/components/StockInItemForm.vue
@@ -142,7 +142,6 @@ import {
erpPriceMultiply,
getSumValue
} from '@/utils'
-import { fenToYuanFormat } from '@/utils/formatter'
const props = defineProps<{
items: undefined
diff --git a/src/views/erp/stock/in/index.vue b/src/views/erp/stock/in/index.vue
index c030375d..dd08c649 100644
--- a/src/views/erp/stock/in/index.vue
+++ b/src/views/erp/stock/in/index.vue
@@ -239,7 +239,7 @@
diff --git a/src/views/erp/stock/out/components/StockOutItemForm.vue b/src/views/erp/stock/out/components/StockOutItemForm.vue
new file mode 100644
index 00000000..8ac8b1ee
--- /dev/null
+++ b/src/views/erp/stock/out/components/StockOutItemForm.vue
@@ -0,0 +1,274 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ —
+
+
+
+
+
+ + 添加出库产品
+
+
+
diff --git a/src/views/erp/stock/out/index.vue b/src/views/erp/stock/out/index.vue
new file mode 100644
index 00000000..39fd61b3
--- /dev/null
+++ b/src/views/erp/stock/out/index.vue
@@ -0,0 +1,368 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 搜索
+ 重置
+
+ 新增
+
+
+ 导出
+
+ item.id))"
+ v-hasPermi="['erp:stock-out:delete']"
+ :disabled="selectionList.length === 0"
+ >
+ 删除
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 详情
+
+
+ 编辑
+
+
+ 审批
+
+
+ 反审批
+
+
+ 删除
+
+
+
+
+
+
+
+
+
+
+
+
+