Merge remote-tracking branch 'origin/master'
This commit is contained in:
commit
9597bf921d
26 files changed
+465
-178
No files matched your search
@@ -31,6 +31,24 @@ export function getErpSpuSimpleAll() {
|
||||
})
|
||||
}
|
||||
|
||||
// 采购申请单分页查询
|
||||
export function getCgsqPage(query?: Object) {
|
||||
return request({
|
||||
url: "/supermarket/smErpCgDd/cgsq/page",
|
||||
method: "get",
|
||||
params: query,
|
||||
})
|
||||
}
|
||||
|
||||
// 采购订单分页查询
|
||||
export function getCgddPage(params?: Object) {
|
||||
return request({
|
||||
url: "/supermarket/smErpInventoryRecords/cgdd/page",
|
||||
method: "get",
|
||||
params,
|
||||
})
|
||||
}
|
||||
|
||||
// 获取出入库订单列表
|
||||
export function getCgInventoryPage(params?: Object) {
|
||||
return request({
|
||||
|
||||
@@ -8,3 +8,12 @@ export function getInventoryPage(params?: object) {
|
||||
params,
|
||||
})
|
||||
}
|
||||
|
||||
// 分页获取出入库汇总 orderType: 1入库 2出库
|
||||
export function getInventoryPageSum(params?: object) {
|
||||
return request({
|
||||
url: "/supermarket/smErpInventoryRecords/inventoryTypeSum/page",
|
||||
method: "get",
|
||||
params,
|
||||
})
|
||||
}
|
||||
@@ -1,40 +0,0 @@
|
||||
import request from "/@/utils/request"
|
||||
|
||||
export function fetchList(query?: Object) {
|
||||
return request({
|
||||
url: "/supermarket/smErpCgBack/page",
|
||||
method: "get",
|
||||
params: query,
|
||||
})
|
||||
}
|
||||
|
||||
export function addObj(obj?: Object) {
|
||||
return request({
|
||||
url: "/supermarket/smErpCgBack",
|
||||
method: "post",
|
||||
data: obj,
|
||||
})
|
||||
}
|
||||
|
||||
export function getObj(id?: string) {
|
||||
return request({
|
||||
url: "/supermarket/smErpCgBack/" + id,
|
||||
method: "get",
|
||||
})
|
||||
}
|
||||
|
||||
export function delObjs(ids?: Object) {
|
||||
return request({
|
||||
url: "/supermarket/smErpCgBack",
|
||||
method: "delete",
|
||||
data: ids,
|
||||
})
|
||||
}
|
||||
|
||||
export function putObj(obj?: Object) {
|
||||
return request({
|
||||
url: "/supermarket/smErpCgBack",
|
||||
method: "put",
|
||||
data: obj,
|
||||
})
|
||||
}
|
||||
@@ -38,12 +38,3 @@ export function putObj(obj?: Object) {
|
||||
data: obj,
|
||||
})
|
||||
}
|
||||
|
||||
// 采购申请单分页查询
|
||||
export function getCgsqPage(query?: Object) {
|
||||
return request({
|
||||
url: "/supermarket/smErpCgDd/cgsq/page",
|
||||
method: "get",
|
||||
params: query,
|
||||
})
|
||||
}
|
||||
-8
@@ -38,11 +38,3 @@ export function putObj(obj?: Object) {
|
||||
data: obj,
|
||||
})
|
||||
}
|
||||
|
||||
export function getCgddPage(params?: Object) {
|
||||
return request({
|
||||
url: "/supermarket/smErpInventoryRecords/cgdd/page",
|
||||
method: "get",
|
||||
params,
|
||||
})
|
||||
}
|
||||
@@ -1,41 +1,49 @@
|
||||
import request from "/@/utils/request"
|
||||
|
||||
export function fetchList(query?: Object) {
|
||||
return request({
|
||||
url: '/wallet/walletType/page',
|
||||
method: 'get',
|
||||
params: query
|
||||
})
|
||||
return request({
|
||||
url: "/wallet/walletType/page",
|
||||
method: "get",
|
||||
params: query,
|
||||
})
|
||||
}
|
||||
|
||||
// 获取钱包类型下拉列表
|
||||
export function getWalletTypeSimple(query?: Object) {
|
||||
return request({
|
||||
url: "/wallet/walletType/list",
|
||||
method: "get",
|
||||
params: query,
|
||||
})
|
||||
}
|
||||
|
||||
export function addObj(obj?: Object) {
|
||||
return request({
|
||||
url: '/wallet/walletType',
|
||||
method: 'post',
|
||||
data: obj
|
||||
})
|
||||
return request({
|
||||
url: "/wallet/walletType",
|
||||
method: "post",
|
||||
data: obj,
|
||||
})
|
||||
}
|
||||
|
||||
export function getObj(id?: string) {
|
||||
return request({
|
||||
url: '/wallet/walletType/' + id,
|
||||
method: 'get'
|
||||
})
|
||||
return request({
|
||||
url: "/wallet/walletType/" + id,
|
||||
method: "get",
|
||||
})
|
||||
}
|
||||
|
||||
export function delObjs(ids?: Object) {
|
||||
return request({
|
||||
url: '/wallet/walletType',
|
||||
method: 'delete',
|
||||
data: ids
|
||||
})
|
||||
return request({
|
||||
url: "/wallet/walletType",
|
||||
method: "delete",
|
||||
data: ids,
|
||||
})
|
||||
}
|
||||
|
||||
export function putObj(obj?: Object) {
|
||||
return request({
|
||||
url: '/wallet/walletType',
|
||||
method: 'put',
|
||||
data: obj
|
||||
})
|
||||
return request({
|
||||
url: "/wallet/walletType",
|
||||
method: "put",
|
||||
data: obj,
|
||||
})
|
||||
}
|
||||
|
||||
@@ -50,7 +50,16 @@
|
||||
show-checkbox
|
||||
@node-click="handleNodeClick"
|
||||
@check="handleCheck"
|
||||
/>
|
||||
>
|
||||
<template #default="{ node, data }">
|
||||
<el-tooltip v-if="data.isLock" effect="dark" :content="$t('sysuser.noDataScopeTip')" placement="right">
|
||||
<span>
|
||||
{{ node.label }}
|
||||
<SvgIcon name="ele-Lock" />
|
||||
</span>
|
||||
</el-tooltip>
|
||||
</template>
|
||||
</el-tree>
|
||||
</div>
|
||||
|
||||
<!-- 底部区域 -->
|
||||
@@ -115,6 +124,7 @@ const props = withDefaults(
|
||||
label: "name",
|
||||
children: "children",
|
||||
value: "id",
|
||||
disabled: "isLock",
|
||||
}
|
||||
},
|
||||
nodeClickable: true,
|
||||
|
||||
@@ -26,8 +26,8 @@
|
||||
|
||||
<script setup lang="ts" name="select-wallet-type">
|
||||
import { reactive } from "vue"
|
||||
import * as walletTypeApi from "/@/api/wallet/wallet-type"
|
||||
import { useDict } from "/@/hooks/dict"
|
||||
import { getWalletTypeSimple } from "/@/api/wallet/wallet-type"
|
||||
|
||||
const selectId = defineModel()
|
||||
|
||||
@@ -67,7 +67,7 @@ async function getOptions() {
|
||||
const _pa = {
|
||||
...queryForm,
|
||||
}
|
||||
const { data } = await walletTypeApi.fetchList(_pa)
|
||||
const { data } = await getWalletTypeSimple(_pa)
|
||||
state.options = data.records ?? []
|
||||
|
||||
const { wallet_type } = useDict("wallet_type")
|
||||
|
||||
@@ -187,7 +187,6 @@
|
||||
<script lang="ts" name="systemUser" setup>
|
||||
import { delObj, pageList, putObj } from "/@/api/admin/user"
|
||||
import { putGlobalFace } from "/@/api/admin/userFace"
|
||||
import { deptTree } from "/@/api/admin/dept"
|
||||
import { BasicTableProps, useTable } from "/@/hooks/table"
|
||||
import { useMessage, useMessageBox } from "/@/hooks/message"
|
||||
import { useI18n } from "vue-i18n"
|
||||
|
||||
@@ -11,18 +11,17 @@
|
||||
:data="linkCodeTableData"
|
||||
@radio-change="radioChangeEvent"
|
||||
>
|
||||
<vxe-column type="radio" width="60" align="center"></vxe-column>
|
||||
<!-- <vxe-column field="id" title="id" align="center" width="200"></vxe-column>-->
|
||||
<vxe-column field="planCode" title="编号" align="center" width="200"></vxe-column>
|
||||
<vxe-column field="planDate" title="单据日期" align="center" width="200"></vxe-column>
|
||||
<vxe-column field="productName" title="商品名称" align="center" width="200"></vxe-column>
|
||||
<vxe-column field="handlerUserName" title="经办人" align="center" width="100"></vxe-column>
|
||||
<!-- <vxe-column field="checkStatus" title="审批状态" align="center" width="100">-->
|
||||
<!-- <template #default="{ row }">-->
|
||||
<!-- <dict-tag :options="check_status" :value="row.checkStatus" />-->
|
||||
<!-- </template>-->
|
||||
<!-- </vxe-column>-->
|
||||
<vxe-column field="remark" title="备注" show-overflow align="center" min-width="100"></vxe-column>
|
||||
<vxe-column type="radio" width="60" align="center" />
|
||||
<vxe-column field="planCode" title="编号" align="center" width="200" />
|
||||
<vxe-column field="planDate" title="单据日期" align="center" width="200" />
|
||||
<vxe-column field="productName" title="商品名称" align="center" width="200" />
|
||||
<vxe-column field="handlerUserName" title="经办人" align="center" width="100" />
|
||||
<!-- <vxe-column field="checkStatus" title="审批状态" align="center" width="100">-->
|
||||
<!-- <template #default="{ row }">-->
|
||||
<!-- <dict-tag :options="check_status" :value="row.checkStatus" />-->
|
||||
<!-- </template>-->
|
||||
<!-- </vxe-column>-->
|
||||
<vxe-column field="remark" title="备注" show-overflow align="center" min-width="100" />
|
||||
</vxe-table>
|
||||
<!-- <pagination
|
||||
@size-change="sizeChangeHandle"
|
||||
@@ -40,7 +39,6 @@
|
||||
:data="currRadioRowItems"
|
||||
>
|
||||
<vxe-column type="checkbox" width="60" align="center"></vxe-column>
|
||||
<!-- <vxe-column field="erpSpuId" title="erpSpuId" align="center" width="200"></vxe-column>-->
|
||||
<vxe-column field="unit" title="包装单位" align="center" width="200"></vxe-column>
|
||||
<vxe-column field="quantity" title="数量" align="center" width="100"></vxe-column>
|
||||
<vxe-column field="purchasePrice" title="进价" align="center" width="100"></vxe-column>
|
||||
@@ -61,9 +59,7 @@
|
||||
<script setup lang="ts" name="linkCgCodeDialog">
|
||||
import { ref } from "vue"
|
||||
import { VxeTableEvents } from "vxe-table"
|
||||
import { useDict } from "/@/hooks/dict"
|
||||
|
||||
const { check_status } = useDict("check_status")
|
||||
const linkCodeDialogVisible = defineModel()
|
||||
const emit = defineEmits(["getSelectedLinkCode"])
|
||||
const props = withDefaults(
|
||||
|
||||
@@ -172,14 +172,13 @@
|
||||
import { ref, reactive, computed, onMounted } from "vue"
|
||||
import { useRouter, useRoute } from "vue-router"
|
||||
import { useMessage } from "/@/hooks/message"
|
||||
import { getObj, addObj, putObj } from "/@/api/supermarketerp/smErpCgBack"
|
||||
import { getPlanCode, getErpSpuSimpleAll } from "/@/api/supermarketerp/common"
|
||||
import { getObj, addObj, putObj } from "/@/api/supermarketerp/smErpInventoryRecords"
|
||||
import { getPlanCode, getErpSpuSimpleAll, getCgInventoryPage } from "/@/api/supermarketerp/common"
|
||||
import { VxeTableEvents, VxeTablePropTypes, type VxeTableInstance } from "vxe-table"
|
||||
import { formatDate } from "/@/utils/formatTime"
|
||||
import { Search } from "@element-plus/icons-vue"
|
||||
import erpSpuSelectDialog from "/@/views/supermarketerp/components/erpSpuSelectDialog.vue"
|
||||
import linkCodeDialog from "/@/views/supermarketerp/components/linkCodeDialog.vue"
|
||||
import { getCgInventoryPage } from "/@/api/supermarketerp/common"
|
||||
import { displayPrice } from "/@/utils/formatMoney"
|
||||
|
||||
const router = useRouter()
|
||||
|
||||
@@ -115,7 +115,7 @@
|
||||
<script setup lang="ts">
|
||||
import { useRouter } from "vue-router"
|
||||
import { BasicTableProps, useTable } from "/@/hooks/table"
|
||||
import { fetchList, delObjs } from "/@/api/supermarketerp/smErpCgInventory"
|
||||
import { fetchList, delObjs } from "../../../../api/supermarketerp/smErpInventoryRecords"
|
||||
import { useMessage, useMessageBox } from "/@/hooks/message"
|
||||
import { useDict } from "/@/hooks/dict"
|
||||
|
||||
|
||||
@@ -173,13 +173,12 @@ import { ref, reactive, computed, onMounted } from "vue"
|
||||
import { useRouter, useRoute } from "vue-router"
|
||||
import { useMessage } from "/@/hooks/message"
|
||||
import { getObj, addObj, putObj } from "/@/api/supermarketerp/smErpCgDd"
|
||||
import { getPlanCode, getErpSpuSimpleAll } from "/@/api/supermarketerp/common"
|
||||
import { getPlanCode, getErpSpuSimpleAll, getCgsqPage } from "/@/api/supermarketerp/common"
|
||||
import { VxeTableEvents, VxeTablePropTypes, type VxeTableInstance } from "vxe-table"
|
||||
import { formatDate } from "/@/utils/formatTime"
|
||||
import { Search } from "@element-plus/icons-vue"
|
||||
import erpSpuSelectDialog from "/@/views/supermarketerp/components/erpSpuSelectDialog.vue"
|
||||
import linkCodeDialog from "/@/views/supermarketerp/components/linkCodeDialog.vue"
|
||||
import { getCgsqPage } from "/@/api/supermarketerp/smErpCgDd"
|
||||
import { displayPrice } from "/@/utils/formatMoney"
|
||||
import { useDict } from "/@/hooks/dict"
|
||||
|
||||
|
||||
@@ -177,14 +177,13 @@
|
||||
import { ref, reactive, computed, onMounted } from "vue"
|
||||
import { useRouter, useRoute } from "vue-router"
|
||||
import { useMessage } from "/@/hooks/message"
|
||||
import { getObj, addObj, putObj } from "/@/api/supermarketerp/smErpCgInventory"
|
||||
import { getPlanCode, getErpSpuSimpleAll } from "/@/api/supermarketerp/common"
|
||||
import { getObj, addObj, putObj } from "/@/api/supermarketerp/smErpInventoryRecords"
|
||||
import { getPlanCode, getErpSpuSimpleAll, getCgddPage } from "/@/api/supermarketerp/common"
|
||||
import { VxeTableEvents, VxeTablePropTypes, type VxeTableInstance } from "vxe-table"
|
||||
import { formatDate } from "/@/utils/formatTime"
|
||||
import { Search } from "@element-plus/icons-vue"
|
||||
import erpSpuSelectDialog from "/@/views/supermarketerp/components/erpSpuSelectDialog.vue"
|
||||
import linkCodeDialog from "/@/views/supermarketerp/components/linkCodeDialog.vue"
|
||||
import { getCgddPage } from "/@/api/supermarketerp/smErpCgInventory"
|
||||
import { displayPrice } from "/@/utils/formatMoney"
|
||||
import { useDict } from "/@/hooks/dict"
|
||||
|
||||
|
||||
@@ -115,7 +115,7 @@
|
||||
<script setup lang="ts">
|
||||
import { useRouter } from "vue-router"
|
||||
import { BasicTableProps, useTable } from "/@/hooks/table"
|
||||
import { fetchList, delObjs } from "/@/api/supermarketerp/smErpCgInventory"
|
||||
import { fetchList, delObjs } from "../../../../api/supermarketerp/smErpInventoryRecords"
|
||||
import { useMessage, useMessageBox } from "/@/hooks/message"
|
||||
import { useDict } from "/@/hooks/dict"
|
||||
|
||||
|
||||
@@ -0,0 +1,101 @@
|
||||
<template>
|
||||
<div class="layout-padding">
|
||||
<div class="layout-padding-auto layout-padding-view">
|
||||
<el-row v-show="showSearch">
|
||||
<el-form :model="state.queryForm" :inline="true" ref="queryRef" @keyup.enter="getDataList">
|
||||
<el-form-item label="关键字" prop="key">
|
||||
<el-input placeholder="请输入关键字" v-model.trim="state.queryForm.key" />
|
||||
</el-form-item>
|
||||
<el-form-item label="单据日期" prop="inventoryDate">
|
||||
<el-date-picker
|
||||
v-modeltrim="state.queryForm.inventoryDate"
|
||||
format="YYYY-MM-DD"
|
||||
value-format="YYYY-MM-DD"
|
||||
type="date"
|
||||
placeholder="请输入单据日期"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<el-button icon="search" type="primary" @click="getDataList">查询</el-button>
|
||||
<el-button icon="Refresh" @click="resetQuery">重置</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<div class="mb8" style="width: 100%">
|
||||
<right-toolbar
|
||||
v-model:showSearch="showSearch"
|
||||
:export="''"
|
||||
@exportExcel="exportExcel"
|
||||
class="ml10 mr20"
|
||||
style="float: right"
|
||||
@queryTable="getDataList"
|
||||
/>
|
||||
</div>
|
||||
</el-row>
|
||||
<el-table
|
||||
:data="state.dataList"
|
||||
v-loading="state.loading"
|
||||
border
|
||||
:cell-style="tableStyle.cellStyle"
|
||||
:header-cell-style="tableStyle.headerCellStyle"
|
||||
@selection-change="selectionChangHandle"
|
||||
>
|
||||
<!-- <el-table-column type="selection" width="40" align="center" fixed="left" />
|
||||
<el-table-column type="index" label="#" width="50" fixed="left" />
|
||||
<el-table-column prop="productName" label="商品名" show-overflow-tooltip min-width="160" />
|
||||
<el-table-column prop="unit" label="单位" show-overflow-tooltip />
|
||||
<el-table-column prop="spec" label="规格" show-overflow-tooltip />
|
||||
<el-table-column prop="stock" label="库存" show-overflow-tooltip />
|
||||
<el-table-column prop="warnType" label="预警类型" show-overflow-tooltip min-width="100" />
|
||||
<el-table-column prop="barcode" label="条码" show-overflow-tooltip min-width="120" />
|
||||
<el-table-column prop="categoryId" label="分类" show-overflow-tooltip min-width="100" />
|
||||
<el-table-column prop="inventoryLowerLimit" label="库存下限" show-overflow-tooltip min-width="90" />
|
||||
<el-table-column prop="inventoryUpperLimit" label="库存上限" show-overflow-tooltip min-width="90" />
|
||||
<el-table-column prop="packageNum" label="内装数量" show-overflow-tooltip min-width="90" />
|
||||
<el-table-column prop="picUrl" label="商品图" show-overflow-tooltip>
|
||||
<template #default="scope">
|
||||
<preview-image :src="scope.row.picUrl" />
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="productCode" label="货号" show-overflow-tooltip min-width="120" /> -->
|
||||
</el-table>
|
||||
<pagination @size-change="sizeChangeHandle" @current-change="currentChangeHandle" v-bind="state.pagination" />
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script setup lang="ts">
|
||||
import { BasicTableProps, useTable } from "/@/hooks/table"
|
||||
import { getInventoryPage } from "/@/api/supermarketerp/report"
|
||||
|
||||
const queryRef = ref()
|
||||
const showSearch = ref(true)
|
||||
const selectObjs = ref([]) as any
|
||||
|
||||
const state: BasicTableProps = reactive<BasicTableProps>({
|
||||
queryForm: {
|
||||
orderType: 2,
|
||||
},
|
||||
pageList: getInventoryPage,
|
||||
})
|
||||
|
||||
const { getDataList, currentChangeHandle, sizeChangeHandle, downBlobFile, tableStyle } = useTable(state)
|
||||
|
||||
// 清空搜索条件
|
||||
const resetQuery = () => {
|
||||
// 清空搜索条件
|
||||
queryRef.value?.resetFields()
|
||||
getDataList()
|
||||
}
|
||||
|
||||
// 多选事件
|
||||
const selectionChangHandle = (objs: { id: string }[]) => {
|
||||
selectObjs.value = objs.map(({ id }) => id)
|
||||
}
|
||||
|
||||
// 导出excel
|
||||
const exportExcel = () => {
|
||||
downBlobFile("/supermarketerp/smErpInventoryWarning/export", Object.assign(state.queryForm, { ids: selectObjs }), "出库记录.xlsx")
|
||||
}
|
||||
</script>
|
||||
@@ -0,0 +1,101 @@
|
||||
<template>
|
||||
<div class="layout-padding">
|
||||
<div class="layout-padding-auto layout-padding-view">
|
||||
<el-row v-show="showSearch">
|
||||
<el-form :model="state.queryForm" :inline="true" ref="queryRef" @keyup.enter="getDataList">
|
||||
<el-form-item label="关键字" prop="key">
|
||||
<el-input placeholder="请输入关键字" v-model.trim="state.queryForm.key" />
|
||||
</el-form-item>
|
||||
<el-form-item label="单据日期" prop="inventoryDate">
|
||||
<el-date-picker
|
||||
v-modeltrim="state.queryForm.inventoryDate"
|
||||
format="YYYY-MM-DD"
|
||||
value-format="YYYY-MM-DD"
|
||||
type="date"
|
||||
placeholder="请输入单据日期"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<el-button icon="search" type="primary" @click="getDataList">查询</el-button>
|
||||
<el-button icon="Refresh" @click="resetQuery">重置</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<div class="mb8" style="width: 100%">
|
||||
<right-toolbar
|
||||
v-model:showSearch="showSearch"
|
||||
:export="''"
|
||||
@exportExcel="exportExcel"
|
||||
class="ml10 mr20"
|
||||
style="float: right"
|
||||
@queryTable="getDataList"
|
||||
/>
|
||||
</div>
|
||||
</el-row>
|
||||
<el-table
|
||||
:data="state.dataList"
|
||||
v-loading="state.loading"
|
||||
border
|
||||
:cell-style="tableStyle.cellStyle"
|
||||
:header-cell-style="tableStyle.headerCellStyle"
|
||||
@selection-change="selectionChangHandle"
|
||||
>
|
||||
<!-- <el-table-column type="selection" width="40" align="center" fixed="left" />
|
||||
<el-table-column type="index" label="#" width="50" fixed="left" />
|
||||
<el-table-column prop="productName" label="商品名" show-overflow-tooltip min-width="160" />
|
||||
<el-table-column prop="unit" label="单位" show-overflow-tooltip />
|
||||
<el-table-column prop="spec" label="规格" show-overflow-tooltip />
|
||||
<el-table-column prop="stock" label="库存" show-overflow-tooltip />
|
||||
<el-table-column prop="warnType" label="预警类型" show-overflow-tooltip min-width="100" />
|
||||
<el-table-column prop="barcode" label="条码" show-overflow-tooltip min-width="120" />
|
||||
<el-table-column prop="categoryId" label="分类" show-overflow-tooltip min-width="100" />
|
||||
<el-table-column prop="inventoryLowerLimit" label="库存下限" show-overflow-tooltip min-width="90" />
|
||||
<el-table-column prop="inventoryUpperLimit" label="库存上限" show-overflow-tooltip min-width="90" />
|
||||
<el-table-column prop="packageNum" label="内装数量" show-overflow-tooltip min-width="90" />
|
||||
<el-table-column prop="picUrl" label="商品图" show-overflow-tooltip>
|
||||
<template #default="scope">
|
||||
<preview-image :src="scope.row.picUrl" />
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="productCode" label="货号" show-overflow-tooltip min-width="120" /> -->
|
||||
</el-table>
|
||||
<pagination @size-change="sizeChangeHandle" @current-change="currentChangeHandle" v-bind="state.pagination" />
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script setup lang="ts">
|
||||
import { BasicTableProps, useTable } from "/@/hooks/table"
|
||||
import { getInventoryPageSum } from "/@/api/supermarketerp/report"
|
||||
|
||||
const queryRef = ref()
|
||||
const showSearch = ref(true)
|
||||
const selectObjs = ref([]) as any
|
||||
|
||||
const state: BasicTableProps = reactive<BasicTableProps>({
|
||||
queryForm: {
|
||||
orderType: 2,
|
||||
},
|
||||
pageList: getInventoryPageSum,
|
||||
})
|
||||
|
||||
const { getDataList, currentChangeHandle, sizeChangeHandle, downBlobFile, tableStyle } = useTable(state)
|
||||
|
||||
// 清空搜索条件
|
||||
const resetQuery = () => {
|
||||
// 清空搜索条件
|
||||
queryRef.value?.resetFields()
|
||||
getDataList()
|
||||
}
|
||||
|
||||
// 多选事件
|
||||
const selectionChangHandle = (objs: { id: string }[]) => {
|
||||
selectObjs.value = objs.map(({ id }) => id)
|
||||
}
|
||||
|
||||
// 导出excel
|
||||
const exportExcel = () => {
|
||||
downBlobFile("/supermarketerp/smErpInventoryWarning/export", Object.assign(state.queryForm, { ids: selectObjs }), "出库汇总.xlsx")
|
||||
}
|
||||
</script>
|
||||
@@ -1,26 +1,26 @@
|
||||
<template>
|
||||
<div class="layout-padding">
|
||||
<div class="layout-padding-auto layout-padding-view">
|
||||
<!-- <el-row v-show="showSearch">
|
||||
<el-row v-show="showSearch">
|
||||
<el-form :model="state.queryForm" :inline="true" ref="queryRef" @keyup.enter="getDataList">
|
||||
<el-form-item label="商品名" prop="productName">
|
||||
<el-input placeholder="请输入商品名" v-model.trim="state.queryForm.productName" />
|
||||
<el-form-item label="关键字" prop="key">
|
||||
<el-input placeholder="请输入关键字" v-model.trim="state.queryForm.key" />
|
||||
</el-form-item>
|
||||
<el-form-item label="预警类型" prop="warnType">
|
||||
<el-select v-model="state.queryForm.warnType" placeholder="请选择">
|
||||
<el-option label="库存不足" :value="1" />
|
||||
<el-option label="库存超额" :value="2" />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="条码" prop="barcode">
|
||||
<el-input placeholder="请输入条码" v-model.trim="state.queryForm.barcode" />
|
||||
<el-form-item label="单据日期" prop="inventoryDate">
|
||||
<el-date-picker
|
||||
v-modeltrim="state.queryForm.inventoryDate"
|
||||
format="YYYY-MM-DD"
|
||||
value-format="YYYY-MM-DD"
|
||||
type="date"
|
||||
placeholder="请输入单据日期"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<el-button icon="search" type="primary" @click="getDataList">查询</el-button>
|
||||
<el-button icon="Refresh" @click="resetQuery">重置</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</el-row> -->
|
||||
</el-row>
|
||||
<el-row>
|
||||
<div class="mb8" style="width: 100%">
|
||||
<right-toolbar
|
||||
@@ -41,18 +41,13 @@
|
||||
:header-cell-style="tableStyle.headerCellStyle"
|
||||
@selection-change="selectionChangHandle"
|
||||
>
|
||||
<el-table-column type="selection" width="40" align="center" fixed="left" />
|
||||
<!-- <el-table-column type="selection" width="40" align="center" fixed="left" />
|
||||
<el-table-column type="index" label="#" width="50" fixed="left" />
|
||||
<el-table-column prop="productName" label="商品名" show-overflow-tooltip min-width="160" />
|
||||
<el-table-column prop="unit" label="单位" show-overflow-tooltip />
|
||||
<el-table-column prop="spec" label="规格" show-overflow-tooltip />
|
||||
<el-table-column prop="stock" label="库存" show-overflow-tooltip />
|
||||
<el-table-column prop="warnType" label="预警类型" show-overflow-tooltip min-width="100">
|
||||
<template #default="scope">
|
||||
<el-tag type="danger" v-if="scope.row.warnType == 1">库存不足</el-tag>
|
||||
<el-tag type="danger" v-if="scope.row.warnType == 2">库存超额</el-tag>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="warnType" label="预警类型" show-overflow-tooltip min-width="100" />
|
||||
<el-table-column prop="barcode" label="条码" show-overflow-tooltip min-width="120" />
|
||||
<el-table-column prop="categoryId" label="分类" show-overflow-tooltip min-width="100" />
|
||||
<el-table-column prop="inventoryLowerLimit" label="库存下限" show-overflow-tooltip min-width="90" />
|
||||
@@ -63,7 +58,7 @@
|
||||
<preview-image :src="scope.row.picUrl" />
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="productCode" label="货号" show-overflow-tooltip min-width="120" />
|
||||
<el-table-column prop="productCode" label="货号" show-overflow-tooltip min-width="120" /> -->
|
||||
</el-table>
|
||||
<pagination @size-change="sizeChangeHandle" @current-change="currentChangeHandle" v-bind="state.pagination" />
|
||||
</div>
|
||||
@@ -88,11 +83,11 @@ const state: BasicTableProps = reactive<BasicTableProps>({
|
||||
const { getDataList, currentChangeHandle, sizeChangeHandle, downBlobFile, tableStyle } = useTable(state)
|
||||
|
||||
// 清空搜索条件
|
||||
// const resetQuery = () => {
|
||||
// // 清空搜索条件
|
||||
// queryRef.value?.resetFields()
|
||||
// getDataList()
|
||||
// }
|
||||
const resetQuery = () => {
|
||||
// 清空搜索条件
|
||||
queryRef.value?.resetFields()
|
||||
getDataList()
|
||||
}
|
||||
|
||||
// 多选事件
|
||||
const selectionChangHandle = (objs: { id: string }[]) => {
|
||||
|
||||
@@ -0,0 +1,101 @@
|
||||
<template>
|
||||
<div class="layout-padding">
|
||||
<div class="layout-padding-auto layout-padding-view">
|
||||
<el-row v-show="showSearch">
|
||||
<el-form :model="state.queryForm" :inline="true" ref="queryRef" @keyup.enter="getDataList">
|
||||
<el-form-item label="关键字" prop="key">
|
||||
<el-input placeholder="请输入关键字" v-model.trim="state.queryForm.key" />
|
||||
</el-form-item>
|
||||
<el-form-item label="单据日期" prop="inventoryDate">
|
||||
<el-date-picker
|
||||
v-modeltrim="state.queryForm.inventoryDate"
|
||||
format="YYYY-MM-DD"
|
||||
value-format="YYYY-MM-DD"
|
||||
type="date"
|
||||
placeholder="请输入单据日期"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<el-button icon="search" type="primary" @click="getDataList">查询</el-button>
|
||||
<el-button icon="Refresh" @click="resetQuery">重置</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<div class="mb8" style="width: 100%">
|
||||
<right-toolbar
|
||||
v-model:showSearch="showSearch"
|
||||
:export="''"
|
||||
@exportExcel="exportExcel"
|
||||
class="ml10 mr20"
|
||||
style="float: right"
|
||||
@queryTable="getDataList"
|
||||
/>
|
||||
</div>
|
||||
</el-row>
|
||||
<el-table
|
||||
:data="state.dataList"
|
||||
v-loading="state.loading"
|
||||
border
|
||||
:cell-style="tableStyle.cellStyle"
|
||||
:header-cell-style="tableStyle.headerCellStyle"
|
||||
@selection-change="selectionChangHandle"
|
||||
>
|
||||
<!-- <el-table-column type="selection" width="40" align="center" fixed="left" />
|
||||
<el-table-column type="index" label="#" width="50" fixed="left" />
|
||||
<el-table-column prop="productName" label="商品名" show-overflow-tooltip min-width="160" />
|
||||
<el-table-column prop="unit" label="单位" show-overflow-tooltip />
|
||||
<el-table-column prop="spec" label="规格" show-overflow-tooltip />
|
||||
<el-table-column prop="stock" label="库存" show-overflow-tooltip />
|
||||
<el-table-column prop="warnType" label="预警类型" show-overflow-tooltip min-width="100" />
|
||||
<el-table-column prop="barcode" label="条码" show-overflow-tooltip min-width="120" />
|
||||
<el-table-column prop="categoryId" label="分类" show-overflow-tooltip min-width="100" />
|
||||
<el-table-column prop="inventoryLowerLimit" label="库存下限" show-overflow-tooltip min-width="90" />
|
||||
<el-table-column prop="inventoryUpperLimit" label="库存上限" show-overflow-tooltip min-width="90" />
|
||||
<el-table-column prop="packageNum" label="内装数量" show-overflow-tooltip min-width="90" />
|
||||
<el-table-column prop="picUrl" label="商品图" show-overflow-tooltip>
|
||||
<template #default="scope">
|
||||
<preview-image :src="scope.row.picUrl" />
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="productCode" label="货号" show-overflow-tooltip min-width="120" /> -->
|
||||
</el-table>
|
||||
<pagination @size-change="sizeChangeHandle" @current-change="currentChangeHandle" v-bind="state.pagination" />
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script setup lang="ts">
|
||||
import { BasicTableProps, useTable } from "/@/hooks/table"
|
||||
import { getInventoryPageSum } from "/@/api/supermarketerp/report"
|
||||
|
||||
const queryRef = ref()
|
||||
const showSearch = ref(true)
|
||||
const selectObjs = ref([]) as any
|
||||
|
||||
const state: BasicTableProps = reactive<BasicTableProps>({
|
||||
queryForm: {
|
||||
orderType: 1,
|
||||
},
|
||||
pageList: getInventoryPageSum,
|
||||
})
|
||||
|
||||
const { getDataList, currentChangeHandle, sizeChangeHandle, downBlobFile, tableStyle } = useTable(state)
|
||||
|
||||
// 清空搜索条件
|
||||
const resetQuery = () => {
|
||||
// 清空搜索条件
|
||||
queryRef.value?.resetFields()
|
||||
getDataList()
|
||||
}
|
||||
|
||||
// 多选事件
|
||||
const selectionChangHandle = (objs: { id: string }[]) => {
|
||||
selectObjs.value = objs.map(({ id }) => id)
|
||||
}
|
||||
|
||||
// 导出excel
|
||||
const exportExcel = () => {
|
||||
downBlobFile("/supermarketerp/smErpInventoryWarning/export", Object.assign(state.queryForm, { ids: selectObjs }), "入库汇总.xlsx")
|
||||
}
|
||||
</script>
|
||||
@@ -201,14 +201,13 @@
|
||||
import { ref, reactive, computed, onMounted } from "vue"
|
||||
import { useRouter, useRoute } from "vue-router"
|
||||
import { useMessage } from "/@/hooks/message"
|
||||
import { getObj, addObj, putObj } from "/@/api/supermarketerp/smErpCgInventory"
|
||||
import { getPlanCode, getErpSpuSimpleAll } from "/@/api/supermarketerp/common"
|
||||
import { getObj, addObj, putObj } from "/@/api/supermarketerp/smErpInventoryRecords"
|
||||
import { getPlanCode, getErpSpuSimpleAll, getCgInventoryPage } from "/@/api/supermarketerp/common"
|
||||
import { VxeTableEvents, VxeTablePropTypes, type VxeTableInstance } from "vxe-table"
|
||||
import { formatDate } from "/@/utils/formatTime"
|
||||
import { Search } from "@element-plus/icons-vue"
|
||||
import erpSpuSelectDialog from "/@/views/supermarketerp/components/erpSpuSelectDialog.vue"
|
||||
import linkCodeDialog from "/@/views/supermarketerp/components/linkCodeDialog.vue"
|
||||
import { getCgInventoryPage } from "/@/api/supermarketerp/common"
|
||||
import { displayPrice, storePrice } from "/@/utils/formatMoney"
|
||||
import { useDict } from "/@/hooks/dict"
|
||||
|
||||
@@ -279,7 +278,7 @@ const validRules = ref<VxeTablePropTypes.EditRules<any>>({
|
||||
const receiveAmountFormRules = ref({
|
||||
receiveAmount: [
|
||||
{ required: true, message: "不能为空", trigger: "blur" },
|
||||
{ pattern: /^\d+(\.\d{1,1})?$/, message: "格式错误" },
|
||||
{ pattern: /^\d+(\.\d{1,2})?$/, message: "格式错误" },
|
||||
],
|
||||
})
|
||||
|
||||
|
||||
@@ -115,7 +115,7 @@
|
||||
<script setup lang="ts">
|
||||
import { useRouter } from "vue-router"
|
||||
import { BasicTableProps, useTable } from "/@/hooks/table"
|
||||
import { fetchList, delObjs } from "/@/api/supermarketerp/smErpCgInventory"
|
||||
import { fetchList, delObjs } from "../../../../api/supermarketerp/smErpInventoryRecords"
|
||||
import { useMessage, useMessageBox } from "/@/hooks/message"
|
||||
|
||||
const router = useRouter()
|
||||
|
||||
@@ -201,14 +201,13 @@
|
||||
import { ref, reactive, computed, onMounted } from "vue"
|
||||
import { useRouter, useRoute } from "vue-router"
|
||||
import { useMessage } from "/@/hooks/message"
|
||||
import { getObj, addObj, putObj } from "/@/api/supermarketerp/smErpCgInventory"
|
||||
import { getPlanCode, getErpSpuSimpleAll } from "/@/api/supermarketerp/common"
|
||||
import { getObj, addObj, putObj } from "/@/api/supermarketerp/smErpInventoryRecords"
|
||||
import { getPlanCode, getErpSpuSimpleAll, getCgddPage } from "/@/api/supermarketerp/common"
|
||||
import { VxeTableEvents, VxeTablePropTypes, type VxeTableInstance } from "vxe-table"
|
||||
import { formatDate } from "/@/utils/formatTime"
|
||||
import { Search } from "@element-plus/icons-vue"
|
||||
import erpSpuSelectDialog from "/@/views/supermarketerp/components/erpSpuSelectDialog.vue"
|
||||
import linkCodeDialog from "/@/views/supermarketerp/components/linkCodeDialog.vue"
|
||||
import { getCgddPage } from "/@/api/supermarketerp/smErpCgInventory"
|
||||
import { displayPrice, storePrice } from "/@/utils/formatMoney"
|
||||
import { useDict } from "/@/hooks/dict"
|
||||
|
||||
@@ -279,7 +278,7 @@ const validRules = ref<VxeTablePropTypes.EditRules<any>>({
|
||||
const receiveAmountFormRules = ref({
|
||||
receiveAmount: [
|
||||
{ required: true, message: "不能为空", trigger: "blur" },
|
||||
{ pattern: /^\d+(\.\d{1,1})?$/, message: "格式错误" },
|
||||
{ pattern: /^\d+(\.\d{1,2})?$/, message: "格式错误" },
|
||||
],
|
||||
})
|
||||
|
||||
|
||||
@@ -115,7 +115,7 @@
|
||||
<script setup lang="ts">
|
||||
import { useRouter } from "vue-router"
|
||||
import { BasicTableProps, useTable } from "/@/hooks/table"
|
||||
import { fetchList, delObjs } from "/@/api/supermarketerp/smErpCgInventory"
|
||||
import { fetchList, delObjs } from "../../../../api/supermarketerp/smErpInventoryRecords"
|
||||
import { useMessage, useMessageBox } from "/@/hooks/message"
|
||||
import { useDict } from "/@/hooks/dict"
|
||||
|
||||
|
||||
@@ -48,9 +48,8 @@
|
||||
<el-table-column prop="spec" label="规格" show-overflow-tooltip />
|
||||
<el-table-column prop="stock" label="库存" show-overflow-tooltip />
|
||||
<el-table-column prop="warnType" label="预警类型" show-overflow-tooltip min-width="100">
|
||||
<template #default="scope">
|
||||
<el-tag type="danger" v-if="scope.row.warnType == 1">库存不足</el-tag>
|
||||
<el-tag type="danger" v-if="scope.row.warnType == 2">库存超额</el-tag>
|
||||
<template #default="{ row }">
|
||||
<dict-tag :options="sm_inventory_warning_type" :value="row.warnType" />
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="barcode" label="条码" show-overflow-tooltip min-width="120" />
|
||||
@@ -78,7 +77,9 @@
|
||||
import { BasicTableProps, useTable } from "/@/hooks/table"
|
||||
import { getSmErpInventoryWarningList } from "/@/api/supermarketerp/smErpInventoryWarning"
|
||||
import { getSupermarketCategory } from "/@/api/supermarketerp/supermarketSpu"
|
||||
import { useDict } from "/@/hooks/dict"
|
||||
|
||||
const { sm_inventory_warning_type } = useDict("sm_inventory_warning_type")
|
||||
const queryRef = ref()
|
||||
const showSearch = ref(true)
|
||||
const selectObjs = ref([]) as any
|
||||
|
||||
@@ -33,20 +33,23 @@
|
||||
<vxe-column field="unit" title="单位" :edit-render="{}">
|
||||
<template #edit="{ row }">
|
||||
<el-select v-model="row.unitId">
|
||||
<div v-for="item in smErpUnitEntityList">
|
||||
<div v-for="item in computedSmErpUnitEntityList">
|
||||
<el-option :label="item.unit" :value="item.id" />
|
||||
</div>
|
||||
</el-select>
|
||||
</template>
|
||||
<template #default="{ row }">
|
||||
<span v-if="row.unitId">{{ smErpUnitEntityList?.find((item) => item.id === row.unitId)?.unit }}</span>
|
||||
<span v-if="row.unitId">{{ computedSmErpUnitEntityList?.find((item: rowVU) => item.id === row.unitId)?.unit }}</span>
|
||||
<span v-else style="color: #c0c4cf">请选择</span>
|
||||
</template>
|
||||
</vxe-column>
|
||||
<vxe-column field="barCode" title="条码">
|
||||
<template #default="{ row }">
|
||||
{{ smErpUnitEntityList?.find((item) => item.id == row.unitId)?.barCode }}
|
||||
<vxe-column field="barCode" title="辅助条码" :edit-render="{ autoFocus: 'input', placeholder: '请输入' }">
|
||||
<template #edit="{ row }">
|
||||
<el-input v-model.trim="row.barCode" />
|
||||
</template>
|
||||
<!-- <template #default="{ row }">
|
||||
{{ computedSmErpUnitEntityList?.find((item) => item.id == row.unitId)?.barCode }}
|
||||
</template> -->
|
||||
</vxe-column>
|
||||
</vxe-table>
|
||||
</div>
|
||||
@@ -55,7 +58,7 @@
|
||||
<script setup lang="ts">
|
||||
import { nanoid } from "nanoid"
|
||||
import { useMessage } from "/@/hooks/message"
|
||||
import { rowVU } from "./packageUnit.vue"
|
||||
import { type rowVU } from "./packageUnit.vue"
|
||||
|
||||
export interface rowVC {
|
||||
id: string
|
||||
@@ -109,6 +112,19 @@ const pushEvent = () => {
|
||||
})
|
||||
}
|
||||
|
||||
// 包装单位行删除时清除辅助条码中选择该包装单位的行
|
||||
watch(
|
||||
() => props.smErpUnitEntityList?.length,
|
||||
() => {
|
||||
auxiliaryCodeList.value = auxiliaryCodeList.value.filter((codeItem: rowVC) =>
|
||||
props.smErpUnitEntityList?.some((item: rowVU) => codeItem.unitId === item.id),
|
||||
)
|
||||
},
|
||||
)
|
||||
|
||||
// 计算辅助条码中可选择的包装单位下拉菜单
|
||||
const computedSmErpUnitEntityList = computed(() => props.smErpUnitEntityList?.filter((item: rowVU) => item.unit))
|
||||
|
||||
// 删除选中的行
|
||||
const removeSelectRowEvent = () => {
|
||||
const $table = editableTableRef.value
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
<el-button @click="visible = false">取消</el-button>
|
||||
<el-button v-if="currentTabPaneIndex != 0" type="primary" @click="currentTabPaneIndex--" :disabled="loading">上一步</el-button>
|
||||
<el-button v-if="currentTabPaneIndex != 3" type="primary" @click="currentTabPaneIndex++">下一步</el-button>
|
||||
<el-button v-if="currentTabPaneIndex == 3" type="primary" @click="onSubmit" :disabled="loading">确 认</el-button>
|
||||
<el-button v-if="currentTabPaneIndex == 3" type="primary" @click="onSubmit" :disabled="loading">提 交</el-button>
|
||||
</template>
|
||||
</el-dialog>
|
||||
</template>
|
||||
@@ -34,7 +34,7 @@
|
||||
import baseInfo from "./components/baseInfo.vue"
|
||||
import packageUnit, { type rowVU } from "./components/packageUnit.vue"
|
||||
import productInventory from "./components/productInventory.vue"
|
||||
import auxiliaryCode, { rowVC } from "./components/auxiliaryCode.vue"
|
||||
import auxiliaryCode, { type rowVC } from "./components/auxiliaryCode.vue"
|
||||
import { getObj, addObj, putObj } from "/@/api/supermarketerp/supermarketSpu"
|
||||
import { TabPaneName } from "element-plus"
|
||||
import { useMessage } from "/@/hooks/message"
|
||||
@@ -161,10 +161,10 @@ const resetForm = () => {
|
||||
// tab栏切换
|
||||
const handleTabChange = (name: TabPaneName) => (currentTabPaneIndex.value = tabPaneEnum.findIndex((item) => item === name))
|
||||
|
||||
// 整理包装单位列表
|
||||
const usePackageUnitList = () => {
|
||||
// 计算包装单位列表
|
||||
const usePackageUnitList = computed(() => {
|
||||
const curRadioRowUnit = packageUnitRef.value.getRadioEvent()
|
||||
return form.smErpUnitEntityList.map((item: rowVU) => {
|
||||
return [...form.smErpUnitEntityList].map((item: rowVU) => {
|
||||
if (item.id === curRadioRowUnit.id) {
|
||||
item.isBase = true
|
||||
} else {
|
||||
@@ -180,23 +180,23 @@ const usePackageUnitList = () => {
|
||||
}
|
||||
return item
|
||||
})
|
||||
}
|
||||
})
|
||||
|
||||
// 整理辅助条码列表
|
||||
const useAuxiliaryCode = () => {
|
||||
// 计算辅助条码列表
|
||||
const useAuxiliaryCode = computed(() => {
|
||||
return form.smErpAuxiliaryCodeEntityList
|
||||
.filter((item: rowVC) => item.unitId)
|
||||
.map((item: rowVC) => {
|
||||
const curAuxiliaryCodeItem = form.smErpUnitEntityList.find((unitItem: any) => unitItem.id === item.unitId)
|
||||
if (curAuxiliaryCodeItem.barCode) item.barCode = curAuxiliaryCodeItem.barCode
|
||||
// const curAuxiliaryCodeItem = form.smErpUnitEntityList.find((unitItem: any) => unitItem.id === item.unitId)
|
||||
// if (curAuxiliaryCodeItem.barCode) item.barCode = curAuxiliaryCodeItem.barCode
|
||||
if (item.isNew) {
|
||||
item.id = ""
|
||||
if (curAuxiliaryCodeItem.isNew) item.unitId = ""
|
||||
// if (curAuxiliaryCodeItem.isNew) item.unitId = ""
|
||||
delete item.isNew
|
||||
}
|
||||
return item
|
||||
})
|
||||
}
|
||||
})
|
||||
|
||||
// 提交
|
||||
const onSubmit = async () => {
|
||||
@@ -210,23 +210,17 @@ const onSubmit = async () => {
|
||||
// if (!form.smErpAuxiliaryCodeEntityList || form.smErpAuxiliaryCodeEntityList.length <= 0) return useMessage().warning("请添加辅助条码")
|
||||
// if (!(await auxiliaryCodeRef.value.editableTableValidate())) return useMessage().warning("辅助条码必填项未填写完整")
|
||||
|
||||
const handleAuxiliaryCode = useAuxiliaryCode()
|
||||
const handlePackageUnit = usePackageUnitList()
|
||||
console.log("提交的数据", {
|
||||
...form,
|
||||
grossMargin: storePrice(form.grossMargin),
|
||||
smErpUnitEntityList: handlePackageUnit,
|
||||
smErpAuxiliaryCodeEntityList: handleAuxiliaryCode,
|
||||
})
|
||||
|
||||
try {
|
||||
loading.value = true
|
||||
const _pa = {
|
||||
...form,
|
||||
grossMargin: storePrice(form.grossMargin),
|
||||
smErpUnitEntityList: handlePackageUnit,
|
||||
smErpAuxiliaryCodeEntityList: handleAuxiliaryCode,
|
||||
smErpUnitEntityList: usePackageUnitList.value,
|
||||
smErpAuxiliaryCodeEntityList: useAuxiliaryCode.value,
|
||||
}
|
||||
|
||||
console.log("提交的数据", _pa)
|
||||
|
||||
const res = form.id ? await putObj(_pa) : await addObj(_pa)
|
||||
if (res.code === 0) {
|
||||
useMessage().success(form.id ? "修改成功" : "添加成功")
|
||||
|
||||
Reference in new issue
Block a user