Commit 098f79b2 by wusiyi

feat: 新增操作费管理

parent e3b6b5af
<script> <script lang="jsx">
export default { export default {
name: 'CustomForm', name: 'CustomForm',
components: {}, components: {},
...@@ -109,63 +109,82 @@ export default { ...@@ -109,63 +109,82 @@ export default {
inline inline
onSubmit={this.handleSubmit} onSubmit={this.handleSubmit}
onKeyupenterCapture={this.search}> onKeyupenterCapture={this.search}>
{this.formConfig?.map((item, index) => ( {this.formConfig?.map((item, index) => {
<el-form-item if (
style={{ typeof item.isShow === 'function' &&
width: item.type === 'textarea' ? '100%' : this.formItemWidth !item.isShow(this.formData)
}} ) {
class={item.type === 'textarea' ? 'textClass' : ''} return null
prop={item.prop} }
rules={(item.renderRules && item.renderRules(this.formData)) || []} return (
label-width={item.labelWidth || this.formLabelWidth} <el-form-item
key={index} style={{
label={item.name}> width: item.type === 'textarea' ? '100%' : this.formItemWidth
{item.type === 'input' && ( }}
<el-input class={item.type === 'textarea' ? 'textClass' : ''}
v-model={this.formData[item.prop]} prop={item.prop}
placeholder={item.placeholder || `请输入${item.name}`} rules={
clearable></el-input> (item.renderRules && item.renderRules(this.formData)) || []
)} }
{item.type === 'textarea' && ( label-width={item.labelWidth || this.formLabelWidth}
<el-input key={index}
type="textarea" label={item.name}>
v-model={this.formData[item.prop]} {item.type === 'input' && (
placeholder={item.placeholder || `请输入${item.name}`} <el-input
clearable></el-input>
)}
{item.type === 'select' && (
<el-select
v-model={this.formData[item.prop]}
placeholder={item.placeholder || `请选择${item.name}`}
clearable>
{item.options?.map((el, idx) => (
<el-option
label={el.label}
value={el.value}
key={idx}></el-option>
))}
</el-select>
)}
{item.type === 'datePicker' && (
<el-date-picker
value-format="yyyy-MM-dd"
type={item.dateType || 'date'}
placeholder="选择日期"
v-model={this.formData[item.prop]}
clearable
style="width: 100%;"></el-date-picker>
)}
{item.type === 'radio' &&
item.radioOptions?.map((el, idx) => (
<el-radio
v-model={this.formData[item.prop]} v-model={this.formData[item.prop]}
label={el.value} placeholder={item.placeholder || `请输入${item.name}`}
key={idx}> clearable></el-input>
{el.label} )}
</el-radio> {item.type === 'inputNumber' && (
))} <el-input-number
</el-form-item> v-model={this.formData[item.prop]}
))} placeholder={item.placeholder || `请输入${item.name}`}
clearable
step={item.step || 1}
controls-position={item.position || 'right'}
style="width: 100%;"></el-input-number>
)}
{item.type === 'textarea' && (
<el-input
type="textarea"
v-model={this.formData[item.prop]}
placeholder={item.placeholder || `请输入${item.name}`}
clearable></el-input>
)}
{item.type === 'select' && (
<el-select
v-model={this.formData[item.prop]}
placeholder={item.placeholder || `请选择${item.name}`}
clearable>
{item.options?.map((el, idx) => (
<el-option
label={el.label}
value={el.value}
key={idx}></el-option>
))}
</el-select>
)}
{item.type === 'datePicker' && (
<el-date-picker
value-format="yyyy-MM-dd"
type={item.dateType || 'date'}
placeholder="选择日期"
v-model={this.formData[item.prop]}
clearable
style="width: 100%;"></el-date-picker>
)}
{item.type === 'radio' &&
item.radioOptions?.map((el, idx) => (
<el-radio
v-model={this.formData[item.prop]}
label={el.value}
key={idx}>
{el.label}
</el-radio>
))}
</el-form-item>
)
})}
{this.isCustomButton && ( {this.isCustomButton && (
<el-form-item> <el-form-item>
<el-button <el-button
......
...@@ -8,6 +8,7 @@ import { ...@@ -8,6 +8,7 @@ import {
Form, Form,
FormItem, FormItem,
Input, Input,
InputNumber,
Message, Message,
MessageBox, MessageBox,
Pagination, Pagination,
...@@ -21,6 +22,7 @@ import { ...@@ -21,6 +22,7 @@ import {
Cascader, Cascader,
Radio, Radio,
RadioGroup, RadioGroup,
RadioButton,
Menu, Menu,
Submenu, Submenu,
MenuItem, MenuItem,
...@@ -36,6 +38,7 @@ import { ...@@ -36,6 +38,7 @@ import {
Tooltip, Tooltip,
ColorPicker, ColorPicker,
CheckboxGroup, CheckboxGroup,
CheckboxButton,
Divider, Divider,
Popover, Popover,
Upload Upload
...@@ -49,6 +52,7 @@ const components = [ ...@@ -49,6 +52,7 @@ const components = [
Form, Form,
FormItem, FormItem,
Input, Input,
InputNumber,
DatePicker, DatePicker,
Pagination, Pagination,
Switch, Switch,
...@@ -57,6 +61,7 @@ const components = [ ...@@ -57,6 +61,7 @@ const components = [
Cascader, Cascader,
Radio, Radio,
RadioGroup, RadioGroup,
RadioButton,
Menu, Menu,
MenuItem, MenuItem,
Submenu, Submenu,
...@@ -75,6 +80,7 @@ const components = [ ...@@ -75,6 +80,7 @@ const components = [
Tooltip, Tooltip,
ColorPicker, ColorPicker,
CheckboxGroup, CheckboxGroup,
CheckboxButton,
Popover, Popover,
Upload Upload
] ]
...@@ -88,13 +94,13 @@ export default { ...@@ -88,13 +94,13 @@ export default {
Vue.prototype.$message = (message) => Vue.prototype.$message = (message) =>
typeof message === 'string' typeof message === 'string'
? Message({ ? Message({
duration: 2500, duration: 2500,
message, message
}) })
: Message({ : Message({
duration: 2500, duration: 2500,
...message, ...message
}) })
Vue.prototype.$message.success = (message) => Vue.prototype.$message.success = (message) =>
typeof message === 'string' typeof message === 'string'
? Message.success({ duration: 2500, message }) ? Message.success({ duration: 2500, message })
...@@ -115,5 +121,5 @@ export default { ...@@ -115,5 +121,5 @@ export default {
Vue.prototype.$alert = MessageBox.alert Vue.prototype.$alert = MessageBox.alert
Vue.prototype.$confirm = MessageBox.confirm Vue.prototype.$confirm = MessageBox.confirm
Vue.prototype.$prompt = MessageBox.prompt Vue.prototype.$prompt = MessageBox.prompt
}, }
} }
...@@ -79,6 +79,12 @@ const routes = [ ...@@ -79,6 +79,12 @@ const routes = [
meta: { title: '服务管理' } meta: { title: '服务管理' }
}, },
{ {
path: '/saas/operationFee',
component: () => import('@/views/system/operationFee.vue'),
name: 'system_operationFee',
meta: { title: '操作费管理' }
},
{
path: '/saas/countryCode', path: '/saas/countryCode',
component: () => import('@/views/system/countryCode.vue'), component: () => import('@/views/system/countryCode.vue'),
name: 'system_countryCode', name: 'system_countryCode',
......
...@@ -275,6 +275,14 @@ export default { ...@@ -275,6 +275,14 @@ export default {
icon: 'el-icon-s-order', icon: 'el-icon-s-order',
index: '/saas/services', index: '/saas/services',
children: [] children: []
},
{
id: 6,
path: '',
label: '操作费管理',
icon: 'el-icon-s-order',
index: '/saas/operationFee',
children: []
} }
] ]
}, },
......
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