Commit 4e25ebe4 by wusiyi

fix: 操作费相关页面修改

parent 5b7d99c8
...@@ -57,3 +57,10 @@ export function getOperationFeeSelect(name) { ...@@ -57,3 +57,10 @@ export function getOperationFeeSelect(name) {
params: { name } params: { name }
}) })
} }
// 获取仓库列表
export function listErpWarehouse(namespace) {
return axios.get('/sys/domain/listErpWarehouse', {
params: { namespace }
})
}
...@@ -16,6 +16,10 @@ export default { ...@@ -16,6 +16,10 @@ export default {
type: Boolean, type: Boolean,
default: true default: true
}, },
size: {
type: String,
default: 'mini'
},
formLabelWidth: { formLabelWidth: {
type: String, type: String,
default: 'auto' default: 'auto'
...@@ -107,7 +111,7 @@ export default { ...@@ -107,7 +111,7 @@ export default {
props={{ props={{
model: this.formData model: this.formData
}} }}
size="mini" size={this.size || 'mini'}
inline inline
onSubmit={this.handleSubmit} onSubmit={this.handleSubmit}
onKeyupenterCapture={this.search} onKeyupenterCapture={this.search}
......
...@@ -270,7 +270,7 @@ ...@@ -270,7 +270,7 @@
:title="editId ? '编辑' : '新增'" :title="editId ? '编辑' : '新增'"
:visible.sync="addVisible" :visible.sync="addVisible"
:close-on-click-modal="false" :close-on-click-modal="false"
width="700px"> width="1000px">
<el-form <el-form
:model="editForm" :model="editForm"
size="small" size="small"
...@@ -283,7 +283,7 @@ ...@@ -283,7 +283,7 @@
prop="domain" prop="domain"
:rules="[{ required: true, message: '请输入域名' }]"> :rules="[{ required: true, message: '请输入域名' }]">
<el-input <el-input
style="width: 200px" style="width: 350px"
v-model.trim="editForm.domain" v-model.trim="editForm.domain"
size="small" size="small"
:disabled="!!editId" :disabled="!!editId"
...@@ -299,7 +299,7 @@ ...@@ -299,7 +299,7 @@
prop="companyName" prop="companyName"
:rules="[{ required: true, message: '请输入公司名称' }]"> :rules="[{ required: true, message: '请输入公司名称' }]">
<el-input <el-input
style="width: 200px" style="width: 350px"
v-model="editForm.companyName" v-model="editForm.companyName"
size="small" size="small"
placeholder="请输入公司名称" /> placeholder="请输入公司名称" />
...@@ -309,7 +309,7 @@ ...@@ -309,7 +309,7 @@
prop="packages" prop="packages"
:rules="[{ required: true, message: '请选择套餐' }]"> :rules="[{ required: true, message: '请选择套餐' }]">
<el-select <el-select
style="width: 200px" style="width: 350px"
v-model="editForm.packages" v-model="editForm.packages"
size="small" size="small"
@change="changeCharges" @change="changeCharges"
...@@ -326,7 +326,7 @@ ...@@ -326,7 +326,7 @@
prop="headName" prop="headName"
:rules="[{ required: true, message: '请输入负责人' }]"> :rules="[{ required: true, message: '请输入负责人' }]">
<el-input <el-input
style="width: 200px" style="width: 350px"
v-model="editForm.headName" v-model="editForm.headName"
size="small" size="small"
placeholder="负责人" /> placeholder="负责人" />
...@@ -343,7 +343,7 @@ ...@@ -343,7 +343,7 @@
} }
]"> ]">
<el-input <el-input
style="width: 200px" style="width: 350px"
v-model="editForm.contactPhone" v-model="editForm.contactPhone"
size="small" size="small"
placeholder="请输入联系电话" /> placeholder="请输入联系电话" />
...@@ -354,7 +354,7 @@ ...@@ -354,7 +354,7 @@
:rules="[{ required: true, message: '请输入资费' }]"> :rules="[{ required: true, message: '请输入资费' }]">
<el-input <el-input
disabled disabled
style="width: 200px" style="width: 350px"
v-model="editForm.charges" v-model="editForm.charges"
size="small" size="small"
placeholder="请输入资费" /> placeholder="请输入资费" />
...@@ -364,7 +364,7 @@ ...@@ -364,7 +364,7 @@
prop="expireTime" prop="expireTime"
:rules="[{ required: true, message: '请选择过期时间' }]"> :rules="[{ required: true, message: '请选择过期时间' }]">
<el-date-picker <el-date-picker
style="width: 200px" style="width: 350px"
v-model="editForm.expireTime" v-model="editForm.expireTime"
type="datetime" type="datetime"
value-format="yyyy-MM-dd HH:mm:ss" value-format="yyyy-MM-dd HH:mm:ss"
...@@ -385,7 +385,7 @@ ...@@ -385,7 +385,7 @@
{ required: true, message: '请选择操作费', trigger: 'blur' } { required: true, message: '请选择操作费', trigger: 'blur' }
]"> ]">
<el-select <el-select
style="width: 200px" style="width: 350px"
v-model="editForm.operationFeeId" v-model="editForm.operationFeeId"
size="small" size="small"
@change="changeCharges" @change="changeCharges"
...@@ -398,6 +398,29 @@ ...@@ -398,6 +398,29 @@
:label="item.name"></el-option> :label="item.name"></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item
v-if="editForm.operated === true"
label="扣费仓库"
prop="operationFeeWarehouseIds">
<div>
<el-select
style="width: 350px"
v-model="editForm.operationFeeWarehouseIds"
size="small"
multiple
placeholder="请选择扣费仓库"
filterable>
<el-option
v-for="item in warehouseList"
:key="item.id"
:value="item.id"
:label="item.name"></el-option>
</el-select>
<div style="color: #f56c6c; font-size: 12px; margin-top: 0px">
如果不选,则视为对所有仓库都进行扣费
</div>
</div>
</el-form-item>
</el-form> </el-form>
<span slot="footer"> <span slot="footer">
<el-button @click="addVisible = false" size="small">取消</el-button> <el-button @click="addVisible = false" size="small">取消</el-button>
...@@ -464,6 +487,7 @@ ...@@ -464,6 +487,7 @@
import { import {
getManageData, getManageData,
getStatusSelect, getStatusSelect,
listErpWarehouse,
addManageData, addManageData,
updateManageData, updateManageData,
getDataById, getDataById,
...@@ -578,7 +602,8 @@ export default { ...@@ -578,7 +602,8 @@ export default {
remark: '' remark: ''
}, },
currentRow: {}, currentRow: {},
operationList: [] operationList: [],
warehouseList: []
} }
}, },
async created() { async created() {
...@@ -609,6 +634,10 @@ export default { ...@@ -609,6 +634,10 @@ export default {
const { data } = await getStatusSelect() const { data } = await getStatusSelect()
this.statusList = data this.statusList = data
}, },
async getWarehouseList(namespace) {
const { data } = await listErpWarehouse(namespace)
this.warehouseList = data
},
async getOperationFee() { async getOperationFee() {
const { data } = await getOperationFeeSelect() const { data } = await getOperationFeeSelect()
this.operationList = data this.operationList = data
...@@ -620,6 +649,15 @@ export default { ...@@ -620,6 +649,15 @@ export default {
this.$set(this.editForm, 'charges', charges.oName) this.$set(this.editForm, 'charges', charges.oName)
} }
}, },
changeWarehouse(v) {
console.log(v)
// if (!v) return
// const charges = this.warehouseList.find((item) => item.id === v)
// if (charges) {
// this.$set(this.editForm, 'operationFeeWarehouseIds', charges.name)
// }
},
onChange(e) { onChange(e) {
this.$set(this.editForm, 'apiName', e) this.$set(this.editForm, 'apiName', e)
this.$set(this.editForm, 'databaseName', e) this.$set(this.editForm, 'databaseName', e)
...@@ -652,6 +690,7 @@ export default { ...@@ -652,6 +690,7 @@ export default {
this.editId = undefined this.editId = undefined
this.editForm = JSON.parse(JSON.stringify(this.cloneEditForm)) this.editForm = JSON.parse(JSON.stringify(this.cloneEditForm))
this.baseDomain = '.jomalls.com' this.baseDomain = '.jomalls.com'
this.warehouseList = []
this.$nextTick(() => { this.$nextTick(() => {
this.$refs.form.clearValidate() this.$refs.form.clearValidate()
}) })
...@@ -714,11 +753,16 @@ export default { ...@@ -714,11 +753,16 @@ export default {
}, },
async handleEdit(row) { async handleEdit(row) {
this.editId = row.id this.editId = row.id
this.warehouseList = []
const l = this.$loading({ const l = this.$loading({
background: 'rgba(0, 0, 0, 0.3)' background: 'rgba(0, 0, 0, 0.3)'
}) })
try { try {
await this.getStatusList() await Promise.all([
this.getStatusList(),
this.getWarehouseList(row.apiName)
])
const res = await getDataById(row.id) const res = await getDataById(row.id)
const parts = /^(.*)(\.(([^.]+)\.([^.]+)))$/.exec(res.data.domain) const parts = /^(.*)(\.(([^.]+)\.([^.]+)))$/.exec(res.data.domain)
if (parts) { if (parts) {
...@@ -727,7 +771,14 @@ export default { ...@@ -727,7 +771,14 @@ export default {
res.data.domain = name res.data.domain = name
this.baseDomain = tld this.baseDomain = tld
} }
this.editForm = res.data this.editForm = res.data
if (this.editForm.operationFeeWarehouseIds) {
this.editForm.operationFeeWarehouseIds =
this.editForm.operationFeeWarehouseIds
.split(',')
.map((id) => Number(id))
}
} catch (e) { } catch (e) {
this.$message.error(e) this.$message.error(e)
} finally { } finally {
...@@ -748,6 +799,11 @@ export default { ...@@ -748,6 +799,11 @@ export default {
if (!this.editId) { if (!this.editId) {
databaseName = 'saas_' + this.editForm.databaseName databaseName = 'saas_' + this.editForm.databaseName
} }
if (this.editForm.operationFeeWarehouseIds) {
this.editForm.operationFeeWarehouseIds =
this.editForm.operationFeeWarehouseIds.join(',')
}
const domain = this.editForm.domain + this.baseDomain const domain = this.editForm.domain + this.baseDomain
try { try {
if (this.editId) { if (this.editId) {
......
...@@ -31,14 +31,16 @@ ...@@ -31,14 +31,16 @@
:title="is_title == 1 ? '新增' : '编辑'" :title="is_title == 1 ? '新增' : '编辑'"
:visible.sync="dialogVisible" :visible.sync="dialogVisible"
@closed="closedFn" @closed="closedFn"
width="590px"> width="800px">
<CustomForm <CustomForm
class="editForm"
formItemWidth="50%" formItemWidth="50%"
ref="formRefs" ref="formRefs"
v-model="formData" v-model="formData"
:formConfig="editformConfig" :formConfig="editformConfig"
:isCustomButton="false" :isCustomButton="false"
formLabelWidth="100px"></CustomForm> size="small"
formLabelWidth="120px"></CustomForm>
<span slot="footer" class="dialog-footer"> <span slot="footer" class="dialog-footer">
<el-button <el-button
@click="dialogVisible = false" @click="dialogVisible = false"
...@@ -95,14 +97,12 @@ export default { ...@@ -95,14 +97,12 @@ export default {
{ {
prop: 'name', prop: 'name',
type: 'input', type: 'input',
name: '名称', name: '名称'
options: []
}, },
{ {
prop: 'type', prop: 'type',
name: '费用类型', name: '费用类型',
type: 'select', type: 'select',
labelWidth: '20',
options: [ options: [
{ label: '固定', value: 1 }, { label: '固定', value: 1 },
{ label: '浮动', value: 2 } { label: '浮动', value: 2 }
...@@ -114,7 +114,6 @@ export default { ...@@ -114,7 +114,6 @@ export default {
prop: 'name', prop: 'name',
type: 'input', type: 'input',
name: '名称', name: '名称',
options: [],
renderRules: (item) => [ renderRules: (item) => [
{ {
required: true, required: true,
...@@ -143,7 +142,7 @@ export default { ...@@ -143,7 +142,7 @@ export default {
{ {
prop: 'fixedFee', prop: 'fixedFee',
type: 'inputNumber', type: 'inputNumber',
name: '固定费用', name: '固定费用(¥)',
step: 0.01, step: 0.01,
min: 0, min: 0,
precision: 2, precision: 2,
...@@ -182,7 +181,7 @@ export default { ...@@ -182,7 +181,7 @@ export default {
{ {
prop: 'startFee', prop: 'startFee',
type: 'inputNumber', type: 'inputNumber',
name: '起收费用', name: '起收费用(¥)',
step: 0.01, step: 0.01,
min: 0, min: 0,
precision: 2, precision: 2,
...@@ -198,7 +197,7 @@ export default { ...@@ -198,7 +197,7 @@ export default {
{ {
prop: 'incrementalFee', prop: 'incrementalFee',
type: 'inputNumber', type: 'inputNumber',
name: '每件加收', name: '每件加收(¥)',
step: 0.01, step: 0.01,
min: 0, min: 0,
precision: 2, precision: 2,
...@@ -214,7 +213,7 @@ export default { ...@@ -214,7 +213,7 @@ export default {
{ {
prop: 'endFee', prop: 'endFee',
type: 'inputNumber', type: 'inputNumber',
name: '上限费用 ', name: '上限费用(¥)',
step: 0.01, step: 0.01,
min: 0, min: 0,
precision: 2, precision: 2,
...@@ -273,7 +272,7 @@ export default { ...@@ -273,7 +272,7 @@ export default {
) )
}, },
{ {
label: '固定费用', label: '固定费用(¥)',
key: 'fixedFee', key: 'fixedFee',
width: '150' width: '150'
}, },
...@@ -292,17 +291,17 @@ export default { ...@@ -292,17 +291,17 @@ export default {
) )
}, },
{ {
label: '起收费用', label: '起收费用(¥)',
key: 'startFee', key: 'startFee',
width: '150' width: '150'
}, },
{ {
label: '每件加收', label: '每件加收(¥)',
key: 'incrementalFee', key: 'incrementalFee',
width: '150' width: '150'
}, },
{ {
label: '上限费用', label: '上限费用(¥)',
key: 'endFee', key: 'endFee',
width: '150' width: '150'
}, },
...@@ -532,7 +531,7 @@ export default { ...@@ -532,7 +531,7 @@ export default {
} }
} }
</script> </script>
<style scoped> <style scoped lang="scss">
.wraper { .wraper {
display: flex; display: flex;
flex-direction: column; flex-direction: column;
...@@ -542,4 +541,10 @@ export default { ...@@ -542,4 +541,10 @@ export default {
.table_wrap { .table_wrap {
flex: 1; flex: 1;
} }
.editForm {
::v-deep .el-input--suffix .el-input__inner {
width: 235px;
}
}
</style> </style>
...@@ -59,7 +59,7 @@ export default { ...@@ -59,7 +59,7 @@ export default {
{ {
prop: 'timeRange', prop: 'timeRange',
type: 'dateRange', type: 'dateRange',
name: '时间范围' name: '称重时间'
}, },
{ {
prop: 'namespace', prop: 'namespace',
...@@ -95,7 +95,7 @@ export default { ...@@ -95,7 +95,7 @@ export default {
key: 'orderNum' key: 'orderNum'
}, },
{ {
label: '扣费金额', label: '扣费金额(¥)',
key: 'fee' key: 'fee'
}, },
{ {
...@@ -104,7 +104,7 @@ export default { ...@@ -104,7 +104,7 @@ export default {
}, },
{ {
label: '扣费时间', label: '称重时间',
key: 'createTime' key: 'createTime'
} }
] ]
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment