Merge remote-tracking branch 'origin/master'
This commit is contained in:
commit
c7d5f372a6
6 files changed
+45
-63
No files matched your search
@@ -295,7 +295,7 @@ const resetQuery = () => {
|
|||||||
selectObjs.value = []
|
selectObjs.value = []
|
||||||
state.queryForm.deptId = ""
|
state.queryForm.deptId = ""
|
||||||
state.queryForm.deptIds = []
|
state.queryForm.deptIds = []
|
||||||
draggableDepTreeRef.value.resetData()
|
// draggableDepTreeRef.value.resetData()
|
||||||
getDataList()
|
getDataList()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -31,9 +31,22 @@
|
|||||||
>
|
>
|
||||||
<vxe-column type="checkbox" width="40" fixed="left" />
|
<vxe-column type="checkbox" width="40" fixed="left" />
|
||||||
<vxe-column type="seq" width="50" fixed="left" />
|
<vxe-column type="seq" width="50" fixed="left" />
|
||||||
<vxe-column field="barCode" title="条码" :edit-render="{ autoFocus: 'input', placeholder: '请输入' }">
|
<vxe-column field="unit" title="单位" :edit-render="{}">
|
||||||
<template #edit="{ row }">
|
<template #edit="{ row }">
|
||||||
<el-input v-model.trim="row.barCode" />
|
<el-select v-model="row.unit">
|
||||||
|
<div v-for="item in smErpUnitEntityList">
|
||||||
|
<el-option v-if="item.unit !== ''" :label="item.unit" :value="item.unit" />
|
||||||
|
</div>
|
||||||
|
</el-select>
|
||||||
|
</template>
|
||||||
|
<template #default="{ row }">
|
||||||
|
<span v-if="row.unit">{{ row.unit }}</span>
|
||||||
|
<span v-else style="color: #c0c4cf">请选择</span>
|
||||||
|
</template>
|
||||||
|
</vxe-column>
|
||||||
|
<vxe-column field="barCode" title="条码">
|
||||||
|
<template #default="{ row }">
|
||||||
|
{{ smErpUnitEntityList?.find((item: any) => item.unit == row.unit)?.barCode }}
|
||||||
</template>
|
</template>
|
||||||
</vxe-column>
|
</vxe-column>
|
||||||
</vxe-table>
|
</vxe-table>
|
||||||
@@ -47,20 +60,27 @@ const supermarketAuxiliaryCodeEntityList = defineModel("supermarketAuxiliaryCode
|
|||||||
default: [
|
default: [
|
||||||
{
|
{
|
||||||
id: nanoid(5),
|
id: nanoid(5),
|
||||||
|
unit: "",
|
||||||
barCode: "",
|
barCode: "",
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
})
|
})
|
||||||
|
|
||||||
|
defineProps<{
|
||||||
|
smErpUnitEntityList: any[]
|
||||||
|
}>()
|
||||||
|
|
||||||
const editableTableRef = ref()
|
const editableTableRef = ref()
|
||||||
const validRules = {
|
const validRules = {
|
||||||
barCode: [{ required: true, message: "条码不能为空", trigger: "blur" }],
|
unit: [{ required: true, message: "包装单位不能为空", trigger: "blur" }],
|
||||||
|
// barCode: [{ required: true, message: "条码不能为空", trigger: "blur" }],
|
||||||
}
|
}
|
||||||
|
|
||||||
// 底部表格行新增
|
// 底部表格行新增
|
||||||
const pushEvent = () => {
|
const pushEvent = () => {
|
||||||
const newRow: any = {
|
const newRow: any = {
|
||||||
id: nanoid(5),
|
id: nanoid(5),
|
||||||
|
unit: "",
|
||||||
barCode: "",
|
barCode: "",
|
||||||
isNew: true,
|
isNew: true,
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -59,7 +59,7 @@
|
|||||||
<el-input v-model.trim="row.unit" />
|
<el-input v-model.trim="row.unit" />
|
||||||
</template>
|
</template>
|
||||||
</vxe-column>
|
</vxe-column>
|
||||||
<vxe-column field="status" title="状态" :edit-render="{ autoFocus: 'input', placeholder: '请选择' }">
|
<vxe-column field="status" title="状态" :edit-render="{}">
|
||||||
<template #edit="{ row }">
|
<template #edit="{ row }">
|
||||||
<el-select v-model="row.status">
|
<el-select v-model="row.status">
|
||||||
<el-option label="正常" :value="0" />
|
<el-option label="正常" :value="0" />
|
||||||
|
|||||||
@@ -138,6 +138,7 @@
|
|||||||
<el-tab-pane label="辅助条码" name="辅助条码" style="overflow-y: auto; height: 60vh">
|
<el-tab-pane label="辅助条码" name="辅助条码" style="overflow-y: auto; height: 60vh">
|
||||||
<supermarket-auxiliaryCode
|
<supermarket-auxiliaryCode
|
||||||
ref="supermarketAuxiliaryCodeEntityList"
|
ref="supermarketAuxiliaryCodeEntityList"
|
||||||
|
:smErpUnitEntityList="form.smErpUnitEntityList"
|
||||||
v-model:supermarketAuxiliaryCodeEntityList="form.smErpAuxiliaryCodeEntityList"
|
v-model:supermarketAuxiliaryCodeEntityList="form.smErpAuxiliaryCodeEntityList"
|
||||||
/>
|
/>
|
||||||
</el-tab-pane>
|
</el-tab-pane>
|
||||||
@@ -330,6 +331,8 @@ const useHandleUnit = () => {
|
|||||||
// 整理辅助条码列表
|
// 整理辅助条码列表
|
||||||
const useHandleAuxiliaryCode = () => {
|
const useHandleAuxiliaryCode = () => {
|
||||||
return form.smErpAuxiliaryCodeEntityList.map((item: any) => {
|
return form.smErpAuxiliaryCodeEntityList.map((item: any) => {
|
||||||
|
const barCode = form.smErpUnitEntityList.find((item2: any) => item2.unit === item.unit).barCode
|
||||||
|
item.barCode = barCode
|
||||||
if (item.isNew) {
|
if (item.isNew) {
|
||||||
item.id = ""
|
item.id = ""
|
||||||
delete item.isNew
|
delete item.isNew
|
||||||
@@ -340,8 +343,6 @@ const useHandleAuxiliaryCode = () => {
|
|||||||
|
|
||||||
// 提交
|
// 提交
|
||||||
const onSubmit = async () => {
|
const onSubmit = async () => {
|
||||||
console.log("提交的数据", form)
|
|
||||||
|
|
||||||
const valid = await dataFormRef.value.validate().catch(() => {})
|
const valid = await dataFormRef.value.validate().catch(() => {})
|
||||||
if (!valid) return useMessage().warning("基础信息必填项未填写完整")
|
if (!valid) return useMessage().warning("基础信息必填项未填写完整")
|
||||||
if (!form.smErpUnitEntityList || form.smErpUnitEntityList.length <= 0) return useMessage().warning("请添加包装单位")
|
if (!form.smErpUnitEntityList || form.smErpUnitEntityList.length <= 0) return useMessage().warning("请添加包装单位")
|
||||||
@@ -353,6 +354,8 @@ const onSubmit = async () => {
|
|||||||
|
|
||||||
const handleUnit = useHandleUnit()
|
const handleUnit = useHandleUnit()
|
||||||
const handleAuxiliaryCode = useHandleAuxiliaryCode()
|
const handleAuxiliaryCode = useHandleAuxiliaryCode()
|
||||||
|
console.log("提交的数据", { ...form, smErpUnitEntityList: handleUnit, smErpAuxiliaryCodeEntityList: handleAuxiliaryCode })
|
||||||
|
|
||||||
try {
|
try {
|
||||||
loading.value = true
|
loading.value = true
|
||||||
const _pa = { ...form, smErpUnitEntityList: handleUnit, smErpAuxiliaryCodeEntityList: handleAuxiliaryCode }
|
const _pa = { ...form, smErpUnitEntityList: handleUnit, smErpAuxiliaryCodeEntityList: handleAuxiliaryCode }
|
||||||
|
|||||||
@@ -17,8 +17,8 @@
|
|||||||
<el-form-item style="width: 300px" label="用户" prop="userId">
|
<el-form-item style="width: 300px" label="用户" prop="userId">
|
||||||
<select-user v-model="state.queryForm.userId" />
|
<select-user v-model="state.queryForm.userId" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item style="width: 200px" label="饭卡卡号" prop="cardNumber">
|
<el-form-item style="width: 200px" label="饭卡类型" prop="walletTypeId">
|
||||||
<el-input v-model="state.queryForm.cardNumber" placeholder="饭卡卡号" clearable />
|
<select-wallet-type v-model="state.queryForm.walletTypeId" placeholder="饭卡类型" clearable />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item style="width: 200px" label="月份" prop="walletRecordMonth">
|
<el-form-item style="width: 200px" label="月份" prop="walletRecordMonth">
|
||||||
<el-date-picker
|
<el-date-picker
|
||||||
@@ -29,9 +29,6 @@
|
|||||||
placeholder="选择月份"
|
placeholder="选择月份"
|
||||||
/>
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item style="width: 200px" label="饭卡类型" prop="walletTypeId">
|
|
||||||
<select-wallet-type v-model="state.queryForm.walletTypeId" placeholder="饭卡类型" clearable />
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item>
|
<el-form-item>
|
||||||
<el-button icon="Search" type="primary" @click="getDataList">{{ $t("common.queryBtn") }}</el-button>
|
<el-button icon="Search" type="primary" @click="getDataList">{{ $t("common.queryBtn") }}</el-button>
|
||||||
<el-button icon="Refresh" @click="resetQuery">{{ $t("common.resetBtn") }}</el-button>
|
<el-button icon="Refresh" @click="resetQuery">{{ $t("common.resetBtn") }}</el-button>
|
||||||
@@ -52,7 +49,7 @@
|
|||||||
</el-button>
|
</el-button>
|
||||||
<right-toolbar
|
<right-toolbar
|
||||||
v-model:showSearch="showSearch"
|
v-model:showSearch="showSearch"
|
||||||
:export="'wallet_walletManage_export'"
|
:export="'wallet_walletRecord_export'"
|
||||||
@exportExcel="exportExcel"
|
@exportExcel="exportExcel"
|
||||||
class="ml10 mr20"
|
class="ml10 mr20"
|
||||||
style="float: right"
|
style="float: right"
|
||||||
@@ -97,23 +94,18 @@
|
|||||||
<div class="color-primary">{{ displayPrice(row.balance) }}</div>
|
<div class="color-primary">{{ displayPrice(row.balance) }}</div>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column prop="totalExpense" align="center" width="100" label="累计支出">
|
|
||||||
<template #default="{ row }">
|
|
||||||
<div class="color-danger">{{ displayPrice(row.totalExpense) }}</div>
|
|
||||||
</template>
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column prop="totalRecharge" align="center" width="100" label="累计充值">
|
|
||||||
<template #default="{ row }">
|
|
||||||
<div class="color-success">{{ displayPrice(row.totalRecharge) }}</div>
|
|
||||||
</template>
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column prop="isFreeze" width="120" label="是否冻结饭卡">
|
<el-table-column prop="isFreeze" width="120" label="是否冻结饭卡">
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<dict-tag :options="yes_no_type" :value="row.isFreeze" />
|
<dict-tag :options="yes_no_type" :value="row.isFreeze" />
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column v-if="false" prop="activeBindStatus" width="120" label="饭卡绑定状态" />
|
<el-table-column v-if="false" prop="activeBindStatus" width="120" label="饭卡绑定状态" />
|
||||||
<el-table-column prop="createTime" width="200" label="创建时间" />
|
<el-table-column prop="lastTopUpTime" width="200" label="最后充值时间">
|
||||||
|
<template #default="{ row }">
|
||||||
|
<span v-if="row.lastTopUpTime">{{ row.lastTopUpTime }}</span>
|
||||||
|
<span v-else class="color-danger">本月未充值</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
</el-table>
|
</el-table>
|
||||||
<pagination @size-change="sizeChangeHandle" @current-change="currentChangeHandle" v-bind="state.pagination" />
|
<pagination @size-change="sizeChangeHandle" @current-change="currentChangeHandle" v-bind="state.pagination" />
|
||||||
</template>
|
</template>
|
||||||
@@ -165,15 +157,15 @@ const resetQuery = () => {
|
|||||||
// 导出excel
|
// 导出excel
|
||||||
const exportExcel = () => {
|
const exportExcel = () => {
|
||||||
postDownBlobFile(
|
postDownBlobFile(
|
||||||
"/wallet/wallet-manage/export",
|
"/wallet/wallet-manage/export-qb",
|
||||||
Object.assign(state.queryForm, { current: state.pagination?.current, size: state.pagination?.size }),
|
Object.assign(state.queryForm, { current: state.pagination?.current, size: state.pagination?.size }),
|
||||||
"walletManage.xlsx",
|
"wallet_walletRecord.xlsx",
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
const getSummaries = (param: any) => {
|
const getSummaries = (param: any) => {
|
||||||
const { columns, data } = param
|
const { columns, data } = param
|
||||||
const totalColumns = ["balance", "totalExpense", "totalRecharge"]
|
const totalColumns = ["balance"]
|
||||||
const totalRow = Array.from({ length: columns.length })
|
const totalRow = Array.from({ length: columns.length })
|
||||||
columns.forEach((i: any, index: number) => {
|
columns.forEach((i: any, index: number) => {
|
||||||
if (totalColumns.includes(i.property)) {
|
if (totalColumns.includes(i.property)) {
|
||||||
@@ -218,39 +210,3 @@ const handleDelete = async (ids: string[]) => {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<!-- <style scoped>
|
|
||||||
.cell {
|
|
||||||
height: 30px;
|
|
||||||
padding: 3px 0;
|
|
||||||
box-sizing: border-box;
|
|
||||||
}
|
|
||||||
|
|
||||||
.cell .text {
|
|
||||||
width: 24px;
|
|
||||||
height: 24px;
|
|
||||||
display: block;
|
|
||||||
margin: 0 auto;
|
|
||||||
line-height: 24px;
|
|
||||||
position: absolute;
|
|
||||||
left: 50%;
|
|
||||||
transform: translateX(-50%);
|
|
||||||
border-radius: 50%;
|
|
||||||
}
|
|
||||||
|
|
||||||
.cell.current .text {
|
|
||||||
background: #626aef;
|
|
||||||
color: #fff;
|
|
||||||
}
|
|
||||||
|
|
||||||
.cell .holiday {
|
|
||||||
position: absolute;
|
|
||||||
width: 6px;
|
|
||||||
height: 6px;
|
|
||||||
background: var(--el-color-danger);
|
|
||||||
border-radius: 50%;
|
|
||||||
bottom: 0px;
|
|
||||||
left: 50%;
|
|
||||||
transform: translateX(-50%);
|
|
||||||
}
|
|
||||||
</style> -->
|
|
||||||
@@ -17,6 +17,9 @@
|
|||||||
<el-form-item style="width: 300px" label="用户" prop="userId">
|
<el-form-item style="width: 300px" label="用户" prop="userId">
|
||||||
<select-user v-model="state.queryForm.userId" />
|
<select-user v-model="state.queryForm.userId" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
<el-form-item style="width: 200px" label="充值方式" prop="bizType">
|
||||||
|
<dict-select v-model="state.queryForm.bizType" dict-code="wallet_biz" />
|
||||||
|
</el-form-item>
|
||||||
<el-form-item style="width: 300px" label="消费时间" prop="createTimeList">
|
<el-form-item style="width: 300px" label="消费时间" prop="createTimeList">
|
||||||
<el-date-picker v-model="state.queryForm.createTimeList" value-format="YYYY-MM-DD" type="daterange" />
|
<el-date-picker v-model="state.queryForm.createTimeList" value-format="YYYY-MM-DD" type="daterange" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|||||||
Reference in new issue
Block a user