修复
This commit is contained in:
1 parent
4d10c86446
commit
3499ec6dbb
5 files changed
+85
-71
No files matched your search
@@ -1,41 +1,49 @@
|
|||||||
import request from "/@/utils/request"
|
import request from "/@/utils/request"
|
||||||
|
|
||||||
export function fetchList(query?: Object) {
|
export function fetchList(query?: Object) {
|
||||||
return request({
|
return request({
|
||||||
url: '/wallet/walletType/page',
|
url: "/wallet/walletType/page",
|
||||||
method: 'get',
|
method: "get",
|
||||||
params: query
|
params: query,
|
||||||
})
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 获取钱包类型下拉列表
|
||||||
|
export function getWalletTypeSimple(query?: Object) {
|
||||||
|
return request({
|
||||||
|
url: "/wallet/walletType/list",
|
||||||
|
method: "get",
|
||||||
|
params: query,
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
export function addObj(obj?: Object) {
|
export function addObj(obj?: Object) {
|
||||||
return request({
|
return request({
|
||||||
url: '/wallet/walletType',
|
url: "/wallet/walletType",
|
||||||
method: 'post',
|
method: "post",
|
||||||
data: obj
|
data: obj,
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
export function getObj(id?: string) {
|
export function getObj(id?: string) {
|
||||||
return request({
|
return request({
|
||||||
url: '/wallet/walletType/' + id,
|
url: "/wallet/walletType/" + id,
|
||||||
method: 'get'
|
method: "get",
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
export function delObjs(ids?: Object) {
|
export function delObjs(ids?: Object) {
|
||||||
return request({
|
return request({
|
||||||
url: '/wallet/walletType',
|
url: "/wallet/walletType",
|
||||||
method: 'delete',
|
method: "delete",
|
||||||
data: ids
|
data: ids,
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
export function putObj(obj?: Object) {
|
export function putObj(obj?: Object) {
|
||||||
return request({
|
return request({
|
||||||
url: '/wallet/walletType',
|
url: "/wallet/walletType",
|
||||||
method: 'put',
|
method: "put",
|
||||||
data: obj
|
data: obj,
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -26,8 +26,8 @@
|
|||||||
|
|
||||||
<script setup lang="ts" name="select-wallet-type">
|
<script setup lang="ts" name="select-wallet-type">
|
||||||
import { reactive } from "vue"
|
import { reactive } from "vue"
|
||||||
import * as walletTypeApi from "/@/api/wallet/wallet-type"
|
|
||||||
import { useDict } from "/@/hooks/dict"
|
import { useDict } from "/@/hooks/dict"
|
||||||
|
import { getWalletTypeSimple } from "/@/api/wallet/wallet-type"
|
||||||
|
|
||||||
const selectId = defineModel()
|
const selectId = defineModel()
|
||||||
|
|
||||||
@@ -67,7 +67,7 @@ async function getOptions() {
|
|||||||
const _pa = {
|
const _pa = {
|
||||||
...queryForm,
|
...queryForm,
|
||||||
}
|
}
|
||||||
const { data } = await walletTypeApi.fetchList(_pa)
|
const { data } = await getWalletTypeSimple(_pa)
|
||||||
state.options = data.records ?? []
|
state.options = data.records ?? []
|
||||||
|
|
||||||
const { wallet_type } = useDict("wallet_type")
|
const { wallet_type } = useDict("wallet_type")
|
||||||
|
|||||||
@@ -11,18 +11,17 @@
|
|||||||
:data="linkCodeTableData"
|
:data="linkCodeTableData"
|
||||||
@radio-change="radioChangeEvent"
|
@radio-change="radioChangeEvent"
|
||||||
>
|
>
|
||||||
<vxe-column type="radio" width="60" align="center"></vxe-column>
|
<vxe-column type="radio" width="60" align="center" />
|
||||||
<!-- <vxe-column field="id" title="id" align="center" width="200"></vxe-column>-->
|
<vxe-column field="planCode" title="编号" align="center" width="200" />
|
||||||
<vxe-column field="planCode" title="编号" align="center" width="200"></vxe-column>
|
<vxe-column field="planDate" title="单据日期" align="center" width="200" />
|
||||||
<vxe-column field="planDate" title="单据日期" align="center" width="200"></vxe-column>
|
<vxe-column field="productName" title="商品名称" align="center" width="200" />
|
||||||
<vxe-column field="productName" title="商品名称" align="center" width="200"></vxe-column>
|
<vxe-column field="handlerUserName" title="经办人" align="center" width="100" />
|
||||||
<vxe-column field="handlerUserName" title="经办人" align="center" width="100"></vxe-column>
|
<!-- <vxe-column field="checkStatus" title="审批状态" align="center" width="100">-->
|
||||||
<!-- <vxe-column field="checkStatus" title="审批状态" align="center" width="100">-->
|
<!-- <template #default="{ row }">-->
|
||||||
<!-- <template #default="{ row }">-->
|
<!-- <dict-tag :options="check_status" :value="row.checkStatus" />-->
|
||||||
<!-- <dict-tag :options="check_status" :value="row.checkStatus" />-->
|
<!-- </template>-->
|
||||||
<!-- </template>-->
|
<!-- </vxe-column>-->
|
||||||
<!-- </vxe-column>-->
|
<vxe-column field="remark" title="备注" show-overflow align="center" min-width="100" />
|
||||||
<vxe-column field="remark" title="备注" show-overflow align="center" min-width="100"></vxe-column>
|
|
||||||
</vxe-table>
|
</vxe-table>
|
||||||
<!-- <pagination
|
<!-- <pagination
|
||||||
@size-change="sizeChangeHandle"
|
@size-change="sizeChangeHandle"
|
||||||
@@ -40,7 +39,6 @@
|
|||||||
:data="currRadioRowItems"
|
:data="currRadioRowItems"
|
||||||
>
|
>
|
||||||
<vxe-column type="checkbox" width="60" align="center"></vxe-column>
|
<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="unit" title="包装单位" align="center" width="200"></vxe-column>
|
||||||
<vxe-column field="quantity" title="数量" align="center" width="100"></vxe-column>
|
<vxe-column field="quantity" title="数量" align="center" width="100"></vxe-column>
|
||||||
<vxe-column field="purchasePrice" 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">
|
<script setup lang="ts" name="linkCgCodeDialog">
|
||||||
import { ref } from "vue"
|
import { ref } from "vue"
|
||||||
import { VxeTableEvents } from "vxe-table"
|
import { VxeTableEvents } from "vxe-table"
|
||||||
import { useDict } from "/@/hooks/dict"
|
|
||||||
|
|
||||||
const { check_status } = useDict("check_status")
|
|
||||||
const linkCodeDialogVisible = defineModel()
|
const linkCodeDialogVisible = defineModel()
|
||||||
const emit = defineEmits(["getSelectedLinkCode"])
|
const emit = defineEmits(["getSelectedLinkCode"])
|
||||||
const props = withDefaults(
|
const props = withDefaults(
|
||||||
|
|||||||
@@ -33,20 +33,23 @@
|
|||||||
<vxe-column field="unit" title="单位" :edit-render="{}">
|
<vxe-column field="unit" title="单位" :edit-render="{}">
|
||||||
<template #edit="{ row }">
|
<template #edit="{ row }">
|
||||||
<el-select v-model="row.unitId">
|
<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" />
|
<el-option :label="item.unit" :value="item.id" />
|
||||||
</div>
|
</div>
|
||||||
</el-select>
|
</el-select>
|
||||||
</template>
|
</template>
|
||||||
<template #default="{ row }">
|
<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>
|
<span v-else style="color: #c0c4cf">请选择</span>
|
||||||
</template>
|
</template>
|
||||||
</vxe-column>
|
</vxe-column>
|
||||||
<vxe-column field="barCode" title="条码">
|
<vxe-column field="barCode" title="辅助条码" :edit-render="{ autoFocus: 'input', placeholder: '请输入' }">
|
||||||
<template #default="{ row }">
|
<template #edit="{ row }">
|
||||||
{{ smErpUnitEntityList?.find((item) => item.id == row.unitId)?.barCode }}
|
<el-input v-model.trim="row.barCode" />
|
||||||
</template>
|
</template>
|
||||||
|
<!-- <template #default="{ row }">
|
||||||
|
{{ computedSmErpUnitEntityList?.find((item) => item.id == row.unitId)?.barCode }}
|
||||||
|
</template> -->
|
||||||
</vxe-column>
|
</vxe-column>
|
||||||
</vxe-table>
|
</vxe-table>
|
||||||
</div>
|
</div>
|
||||||
@@ -55,7 +58,7 @@
|
|||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import { nanoid } from "nanoid"
|
import { nanoid } from "nanoid"
|
||||||
import { useMessage } from "/@/hooks/message"
|
import { useMessage } from "/@/hooks/message"
|
||||||
import { rowVU } from "./packageUnit.vue"
|
import { type rowVU } from "./packageUnit.vue"
|
||||||
|
|
||||||
export interface rowVC {
|
export interface rowVC {
|
||||||
id: string
|
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 removeSelectRowEvent = () => {
|
||||||
const $table = editableTableRef.value
|
const $table = editableTableRef.value
|
||||||
|
|||||||
@@ -25,7 +25,7 @@
|
|||||||
<el-button @click="visible = false">取消</el-button>
|
<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 != 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="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>
|
</template>
|
||||||
</el-dialog>
|
</el-dialog>
|
||||||
</template>
|
</template>
|
||||||
@@ -34,7 +34,7 @@
|
|||||||
import baseInfo from "./components/baseInfo.vue"
|
import baseInfo from "./components/baseInfo.vue"
|
||||||
import packageUnit, { type rowVU } from "./components/packageUnit.vue"
|
import packageUnit, { type rowVU } from "./components/packageUnit.vue"
|
||||||
import productInventory from "./components/productInventory.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 { getObj, addObj, putObj } from "/@/api/supermarketerp/supermarketSpu"
|
||||||
import { TabPaneName } from "element-plus"
|
import { TabPaneName } from "element-plus"
|
||||||
import { useMessage } from "/@/hooks/message"
|
import { useMessage } from "/@/hooks/message"
|
||||||
@@ -161,10 +161,10 @@ const resetForm = () => {
|
|||||||
// tab栏切换
|
// tab栏切换
|
||||||
const handleTabChange = (name: TabPaneName) => (currentTabPaneIndex.value = tabPaneEnum.findIndex((item) => item === name))
|
const handleTabChange = (name: TabPaneName) => (currentTabPaneIndex.value = tabPaneEnum.findIndex((item) => item === name))
|
||||||
|
|
||||||
// 整理包装单位列表
|
// 计算包装单位列表
|
||||||
const usePackageUnitList = () => {
|
const usePackageUnitList = computed(() => {
|
||||||
const curRadioRowUnit = packageUnitRef.value.getRadioEvent()
|
const curRadioRowUnit = packageUnitRef.value.getRadioEvent()
|
||||||
return form.smErpUnitEntityList.map((item: rowVU) => {
|
return [...form.smErpUnitEntityList].map((item: rowVU) => {
|
||||||
if (item.id === curRadioRowUnit.id) {
|
if (item.id === curRadioRowUnit.id) {
|
||||||
item.isBase = true
|
item.isBase = true
|
||||||
} else {
|
} else {
|
||||||
@@ -180,23 +180,23 @@ const usePackageUnitList = () => {
|
|||||||
}
|
}
|
||||||
return item
|
return item
|
||||||
})
|
})
|
||||||
}
|
})
|
||||||
|
|
||||||
// 整理辅助条码列表
|
// 计算辅助条码列表
|
||||||
const useAuxiliaryCode = () => {
|
const useAuxiliaryCode = computed(() => {
|
||||||
return form.smErpAuxiliaryCodeEntityList
|
return form.smErpAuxiliaryCodeEntityList
|
||||||
.filter((item: rowVC) => item.unitId)
|
.filter((item: rowVC) => item.unitId)
|
||||||
.map((item: rowVC) => {
|
.map((item: rowVC) => {
|
||||||
const curAuxiliaryCodeItem = form.smErpUnitEntityList.find((unitItem: any) => unitItem.id === item.unitId)
|
// const curAuxiliaryCodeItem = form.smErpUnitEntityList.find((unitItem: any) => unitItem.id === item.unitId)
|
||||||
if (curAuxiliaryCodeItem.barCode) item.barCode = curAuxiliaryCodeItem.barCode
|
// if (curAuxiliaryCodeItem.barCode) item.barCode = curAuxiliaryCodeItem.barCode
|
||||||
if (item.isNew) {
|
if (item.isNew) {
|
||||||
item.id = ""
|
item.id = ""
|
||||||
if (curAuxiliaryCodeItem.isNew) item.unitId = ""
|
// if (curAuxiliaryCodeItem.isNew) item.unitId = ""
|
||||||
delete item.isNew
|
delete item.isNew
|
||||||
}
|
}
|
||||||
return item
|
return item
|
||||||
})
|
})
|
||||||
}
|
})
|
||||||
|
|
||||||
// 提交
|
// 提交
|
||||||
const onSubmit = async () => {
|
const onSubmit = async () => {
|
||||||
@@ -210,23 +210,17 @@ const onSubmit = async () => {
|
|||||||
// if (!form.smErpAuxiliaryCodeEntityList || form.smErpAuxiliaryCodeEntityList.length <= 0) return useMessage().warning("请添加辅助条码")
|
// if (!form.smErpAuxiliaryCodeEntityList || form.smErpAuxiliaryCodeEntityList.length <= 0) return useMessage().warning("请添加辅助条码")
|
||||||
// if (!(await auxiliaryCodeRef.value.editableTableValidate())) 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 {
|
try {
|
||||||
loading.value = true
|
loading.value = true
|
||||||
const _pa = {
|
const _pa = {
|
||||||
...form,
|
...form,
|
||||||
grossMargin: storePrice(form.grossMargin),
|
grossMargin: storePrice(form.grossMargin),
|
||||||
smErpUnitEntityList: handlePackageUnit,
|
smErpUnitEntityList: usePackageUnitList.value,
|
||||||
smErpAuxiliaryCodeEntityList: handleAuxiliaryCode,
|
smErpAuxiliaryCodeEntityList: useAuxiliaryCode.value,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
console.log("提交的数据", _pa)
|
||||||
|
|
||||||
const res = form.id ? await putObj(_pa) : await addObj(_pa)
|
const res = form.id ? await putObj(_pa) : await addObj(_pa)
|
||||||
if (res.code === 0) {
|
if (res.code === 0) {
|
||||||
useMessage().success(form.id ? "修改成功" : "添加成功")
|
useMessage().success(form.id ? "修改成功" : "添加成功")
|
||||||
|
|||||||
Reference in new issue
Block a user