Commit 28e6fa88 authored by 邓学云's avatar 邓学云

登录

parents 38e0a9cc 1e81933d
const homeUrl= 'http://localhost/dengxueyun/newshopBack/backend/web/v1/'; const homeUrl= 'http://localhost/hantengfei/newShopBack1/backend/web/v1/';
export default homeUrl export default homeUrl
\ No newline at end of file
...@@ -78,8 +78,103 @@ export function loadAddress (parameter) { ...@@ -78,8 +78,103 @@ export function loadAddress (parameter) {
params: parameter params: parameter
}) })
} }
// 获取门店服务类目管理
export function getScategorymg(parameter) {
console.log(parameter)
// let newParameter = {
// 'page': parameter.page,
// 'pageSize': parameter.pageSize
// }
return axios({
url: homeUrl + 'branch/branch-service-types/branch-service-list',
method: 'get',
headers: {
"Authorization": loginToken
},
params: parameter
})
}
// 新增门店服务类目
export function addScategorymg (parameter) {
return axios({
url: homeUrl+'branch/branch-service-types/add-branch-service',
method: 'post',
data: parameter,
headers: {
"Authorization": loginToken
}
})
}
// 获取门店服务类目详情
export function getScategorymgDetails(id) {
return axios({
url: homeUrl + 'branch/branch-service-types/branch-service-info?code='+id,
method: 'get',
headers: {
"Authorization": loginToken
}
})
}
//修改门店服务类目
export function modifyScategorymgDetails(parameter) {
// console.log(parameter)
return axios({
url: homeUrl + 'branch/branch-service-types/revise-branch-service',
// url:'http://localhost/hantengfei/newShopBack1/backend/web/v1/branch/branch-service-types/revise-branch-service',
method: 'put',
headers: {
"Authorization": loginToken
},
data: parameter
})
}
// 删除门店服务类目管理
export function deleteScategorymg(id) {
console.log(id)
return axios({
url: homeUrl + 'branch/branch-service-types/del-branch-service',
method: 'delete',
headers: {
"Authorization": loginToken
},
data: { "GUID": id }
})
}
// 获取证照管理列表
export function getCerfmg(parameter) {
console.log(parameter)
return axios({
url: homeUrl + 'branch/branch-licences/licence-list',
method: 'get',
headers: {
"Authorization": loginToken
},
params: parameter
})
}
// 获取证照管理详情
export function getCerfmgDetails(id) {
return axios({
url: homeUrl + 'branch/branch-licences/licence-detail?GUID=' + id,
method: 'get',
headers: {
"Authorization": loginToken
},
data: { "GUID": id }
})
}
// 新增证照管理
export function addCerfmg (parameter) {
return axios({
url: homeUrl+'branch/branch-licences/licence-insert',
method: 'post',
data: parameter,
headers: {
"Authorization": loginToken
}
})
}
/** /**
* get user 2step code open? * get user 2step code open?
* @param parameter {*} * @param parameter {*}
......
const loginToken = "Bearer p3j7YjxIDP2MpWgtDUl5hkalsbrFl6KV"; const loginToken = "Bearer y7PPfQxs7plOe8o8K8zDhPlpQVgYWrsE";
export default loginToken export default loginToken
\ No newline at end of file
...@@ -14,6 +14,64 @@ import homeUrl from './homeURL' ...@@ -14,6 +14,64 @@ import homeUrl from './homeURL'
* @param parameter * @param parameter
* @returns {*} * @returns {*}
*/ */
//员工信息管理
export function getPermissions(parameter) {
console.log(parameter)
// let newparameter = parameter;
// newparameter.page=parameter.page;
// 'page': parameter.page-1
// }
return axios({
url: homeUrl+"shopuser/shop-users/employee-list",
method: 'get',
headers: {
'Authorization': loginToken
},
params: parameter
})
}
// 获取员工信息详情
export function getEminformanDetails(id) {
return axios({
url: homeUrl + 'shopuser/shop-users/employee-info?id=' + id,
method: 'get',
headers: {
"Authorization": loginToken
}
// data: { "GUID": id }
})
}
//用户留言列表
export function getServiceList(parameter) {
console.log(parameter);
// let newparameter = {
// 'page': parameter.page,
// // 'pageSize': parameter.pageSize,
// }
return axios({
url: homeUrl+"shopuser/user-complains/user-complain",
method: 'get',
headers: {
'Authorization':loginToken
},
params: parameter
})
}
//部门信息管理
export function getOrgTree(parameter) {
console.log(parameter);
// let newparameter = parameter;
// newparameter.page = parameter.page;
// console.log(parameter)
return axios({
url: homeUrl+"shopuser/user-departments/department",
method: 'get',
headers: {
'Authorization':loginToken
},
params: parameter
})
}
// 获取用户组列表 // 获取用户组列表
export function getUserGroup (parameter) { export function getUserGroup (parameter) {
// console.log(parameter) // console.log(parameter)
......
...@@ -102,11 +102,32 @@ export const asyncRouterMap = [ ...@@ -102,11 +102,32 @@ export const asyncRouterMap = [
component: () => import('@/views/storedc/Scategorymg'), component: () => import('@/views/storedc/Scategorymg'),
meta: { title: '门店服务类目管理', keepAlive: true, permission: ['table'] } meta: { title: '门店服务类目管理', keepAlive: true, permission: ['table'] }
}, },
{
path: '/storedc/branchservice_editor',
name: 'branchService_editor',
hidden: true,
component: () => import('@/views/storedc/details/branchService_editor'),
meta: { title: '编辑服务类目', keepAlive: true, permission: [ 'table' ] }
},
{
path: '/storedc/branchservice_add',
name: 'branchservice_add',
hidden: true,
component: () => import('@/views/storedc/details/branchservice_add'),
meta: { title: '添加服务类目', keepAlive: true, permission: [ 'table' ] }
},
{ {
path: '/storedc/cerfmg', path: '/storedc/cerfmg',
name: 'Cerfmg', name: 'Cerfmg',
component: () => import('@/views/storedc/Cerfmg'), component: () => import('@/views/storedc/Cerfmg'),
meta: { title: '证照管理', keepAlive: true, permission: ['table'] } meta: { title: '证照管理', keepAlive: true, permission: ['table'] }
},
{
path: '/storedc/branchcerfmg_add',
name: 'branchcerfmg_add',
hidden: true,
component: () => import('@/views/storedc/branchcerfmg_add'),
meta: { title: '添加证照管理', keepAlive: true, permission: [ 'table' ] }
} }
] ]
}, },
......
This diff is collapsed.
...@@ -38,34 +38,12 @@ ...@@ -38,34 +38,12 @@
</a-form> </a-form>
</div> </div>
<div class="table-operator">
<!-- <a-button type="primary" icon="plus" @click="$refs.createModal.add()">新建</a-button> -->
<a-button type="dashed" @click="tableOption">{{ optionAlertShow && '关闭' || '开启' }} alert</a-button>
<a-dropdown>
<a-menu slot="overlay">
<a-menu-item key="1">
<a-icon type="delete" />删除
</a-menu-item>
<!-- lock | unlock -->
<a-menu-item key="2">
<a-icon type="lock" />锁定
</a-menu-item>
</a-menu>
<a-button style="margin-left: 8px">
批量操作
<a-icon type="down" />
</a-button>
</a-dropdown>
</div>
<s-table <s-table
ref="table" ref="table"
size="default" size="default"
rowKey="GUID" rowKey="GUID"
:columns="columns" :columns="columns"
:data="loadData" :data="loadData"
:alert="options.alert"
:rowSelection="options.rowSelection"
showPagination="auto" showPagination="auto"
> >
<span slot="action" slot-scope="text, record"> <span slot="action" slot-scope="text, record">
...@@ -167,23 +145,39 @@ export default { ...@@ -167,23 +145,39 @@ export default {
// 表头 // 表头
columns: [ columns: [
{ {
title: '用户GUID', title: '门店GUID',
dataIndex: 'GUID' dataIndex: 'GUID'
}, },
{ {
title: '姓名', title: '门店名称',
dataIndex: 'NAME' dataIndex: 'NAME'
}, },
{ {
title: '员工编号', title: '',
dataIndex: 'EMPLOYEE_CODE' dataIndex: 'EMPLOYEE_CODE'
}, },
{ {
title: '手机号', title: '',
dataIndex: 'MOBILE_PHONE' dataIndex: 'MOBILE_PHONE'
}, },
{ {
title: '用户所属门店GUID', title: '区/县',
dataIndex: 'EMPLOYEE_BRANCH_GUID'
},
{
title: '电话',
dataIndex: 'EMPLOYEE_BRANCH_GUID'
},
{
title: '门店地址',
dataIndex: 'EMPLOYEE_BRANCH_GUID'
},
{
title: '是否画O2O围栏',
dataIndex: 'EMPLOYEE_BRANCH_GUID'
},
{
title: '是否画B2C围栏',
dataIndex: 'EMPLOYEE_BRANCH_GUID' dataIndex: 'EMPLOYEE_BRANCH_GUID'
}, },
...@@ -211,91 +205,19 @@ export default { ...@@ -211,91 +205,19 @@ export default {
}, },
selectedRowKeys: [], selectedRowKeys: [],
selectedRows: [], selectedRows: [],
// custom table alert & rowSelection
options: {
alert: {
show: true,
clear: () => {
this.selectedRowKeys = []
}
},
rowSelection: {
selectedRowKeys: this.selectedRowKeys,
onChange: this.onSelectChange
}
},
optionAlertShow: false
} }
}, },
// filters: {
// statusFilter(type) {
// return statusMap[type].text
// },
// statusTypeFilter(type) {
// return statusMap[type].status
// }
// },
created() { created() {
this.tableOption()
}, },
methods: { methods: {
tableOption() {
if (!this.optionAlertShow) {
this.options = {
alert: {
show: true,
clear: () => {
this.selectedRowKeys = []
}
},
rowSelection: {
selectedRowKeys: this.selectedRowKeys,
onChange: this.onSelectChange,
getCheckboxProps: record => ({
props: {
disabled: record.no === 'No 2', // Column configuration not to be checked
name: record.no
}
})
}
}
this.optionAlertShow = true
} else {
this.options = {
alert: false,
rowSelection: null
}
this.optionAlertShow = false
}
},
getData() {
this.loading = true
getRoleList(this.params).then(res => {
this.loading = false
console.log(res)
this.data = res.data.map(item => {
item.checked = item.state === 0 // 正常状态state==0转换为开关状态1
return item
})
})
},
// handleEdit(record) {
// console.log(record)
// this.$refs.modal.edit(record)
// },
handleEdit(record) { handleEdit(record) {
this.queryParam = Object.assign({}, record) this.queryParam = Object.assign({}, record)
console.log(this.queryParam) console.log(this.queryParam)
this.visible = true this.visible = true
}, },
handleSub(record) {
if (record.status !== 0) {
this.$message.info(`${record.no} 订阅成功`)
} else {
this.$message.error(`${record.no} 订阅失败,规则已关闭`)
}
},
handleOk() { handleOk() {
this.$refs.table.refresh() this.$refs.table.refresh()
}, },
......
This diff is collapsed.
<template>
<a-card :body-style="{padding: '24px 32px'}" :bordered="false">
<a-form :form="form">
<a-form-item
label="证照名称"
:labelCol="{lg: {span: 7}, sm: {span: 7}}"
:wrapperCol="{lg: {span: 10}, sm: {span: 17} }"
>
<a-input
placeholder="请输入证照名称"
v-decorator="['LICENCE_NAME',{rules: [{ required: true, message: '请输入证照名称' }]}]"
name="LICENCE_NAME"
/>
</a-form-item>
<a-form-item
label="证照编码"
:labelCol="{lg: {span: 7}, sm: {span: 7}}"
:wrapperCol="{lg: {span: 10}, sm: {span: 17} }"
>
<a-input
placeholder="请输入证照编码"
v-decorator="[
'LICENCE_CODE',
{rules: [{ required: true, message: '请输入证照编码' }]}
]"
name="LICENCE_CODE"
/>
</a-form-item>
<a-form-item
label="门店编码"
:labelCol="{lg: {span: 7}, sm: {span: 7}}"
:wrapperCol="{lg: {span: 10}, sm: {span: 17} }"
:required="false"
>
<a-input
placeholder="请输入门店编码"
v-decorator="[
'BRANCH_CODE',
{rules: [{ required: true, message: '请输入门店编码' }]}
]"
name="BRANCH_CODE"
/>
</a-form-item>
<a-form-item
label="到期时间"
:labelCol="{lg: {span: 7}, sm: {span: 7}}"
:wrapperCol="{lg: {span: 10}, sm: {span: 17} }"
>
<a-date-picker showTime v-decorator="['LICENCE_EXPIRY_DATE']" />
</a-form-item>
<a-form-item
label="来源"
:labelCol="{lg: {span: 7}, sm: {span: 7}}"
:wrapperCol="{lg: {span: 10}, sm: {span: 17} }"
:required="false"
>
<a-radio-group v-decorator="['IS_FROM',{initialValue:'1',normalize:checkRadioVal}]">
<a-radio value="1">自动登录</a-radio>
<a-radio value="0">OA系统</a-radio>
</a-radio-group>
</a-form-item>
<a-form-item
label="是否显示"
:labelCol="{lg: {span: 7}, sm: {span: 7}}"
:wrapperCol="{lg: {span: 10}, sm: {span: 17} }"
>
<!-- v-decorator="['IS_SHOW']" -->
<a-radio-group v-decorator="['IS_SHOW',{initialValue:'1',normalize:checkRadioVal}]">
<a-radio value="1"></a-radio>
<a-radio value="0"></a-radio>
</a-radio-group>
</a-form-item>
<a-form-item
label="证照文本说明"
:labelCol="{lg: {span: 7}, sm: {span: 7}}"
:wrapperCol="{lg: {span: 10}, sm: {span: 17} }"
>
<a-input v-decorator="['LICENCE_CONTENT']" name="LICENCE_CONTENT" placeholder="请输入证照文本说明" />
</a-form-item>
<a-form-item :wrapperCol="{ span: 24 }" style="text-align: center">
<a-button @click="handleSubmit()" htmlType="submit" type="primary">提交</a-button>
<a-button @click="goBack" style="margin-left: 8px">返回</a-button>
</a-form-item>
</a-form>
</a-card>
</template>
<script>
import moment from 'moment'
import { addCerfmg } from '@/api/store'
export default {
name: 'BaseForm',
data() {
return {
description: '表单页用于向用户收集或验证信息,基础表单常见于数据项较少的表单场景。',
value: Object,
labelCol: {
xs: { span: 24 },
sm: { span: 5 }
},
wrapperCol: {
xs: { span: 24 },
sm: { span: 16 }
},
// form
form: this.$form.createForm(this)
}
},
// props: {
// },
// mounted() {
// },
methods: {
//time
// DateCheck(value) {
// if (value || value != null || value != '') {
// return moment(value, 'YYYY-MM-DD')
// }
// },
//radio
checkRadioVal(value) {
// let value = event.target.value;
return value.toString()
// console.log("jjjjj"+event.target.value)
},
handleSubmit() {
alert(111)
const {
form: { validateFields }
} = this
validateFields({ force: true }, (err, values) => {
if (!err) {
const CerfmgParams = { ...values }
// CerfmgParams.LICENCE_EXPIRY_DATE=CerfmgParams.LICENCE_EXPIRY_DATE.format("YYYY-MM-DD HH:mm:ss");
CerfmgParams.LICENCE_EXPIRY_DATE=CerfmgParams.LICENCE_EXPIRY_DATE.format("YYYY-MM-DD");
addCerfmg(CerfmgParams)
this.$router.push({ path: '/storedc/cerfmg' })
// const CerfmgParams = { ...values }
// addCerfmg(CerfmgParams)
// this.$router.push({ path: '/storedc/cerfmg' })
}
})
},
// handleSubmit1() {
// alert(121)
// let GUID = this.GUID
// //
// const {
// form: { validateFields }
// } = this
// validateFields({ force: true }, (err, values) => {
// if (!err) {
// const ScategorymgModify = Object.assign({ ...values }, { GUID: GUID })
// ScategorymgModify.CREATE_TIME = ScategorymgModify.CREATE_TIME.format('YYYY-MM-DD HH:mm:ss')
// modifyScategorymgDetails(ScategorymgModify)
// this.$router.push({ path: '/storedc/cerfmg' })
// }
// })
// },
goBack() {
this.$router.push({ path: '/storedc/cerfmg' })
}
}
}
</script>
<template>
<a-card :body-style="{padding: '24px 32px'}" :bordered="false">
<a-form :form="form">
<a-form-item
label="服务类目名称"
:labelCol="{lg: {span: 7}, sm: {span: 7}}"
:wrapperCol="{lg: {span: 10}, sm: {span: 17} }"
>
<a-input
placeholder="请输入服务类目名称"
v-decorator="['NAME',{rules: [{ required: true, message: '请输入服务类目名称' }]}]"
name="NAME"
/>
</a-form-item>
<a-form-item
label="服务类目编号"
:labelCol="{lg: {span: 7}, sm: {span: 7}}"
:wrapperCol="{lg: {span: 10}, sm: {span: 17} }"
>
<a-input
placeholder="服务类目编号"
v-decorator="[
'CODE',
{rules: [{ required: true, message: '服务类目编号' }]}
]"
name="CODE"
/>
</a-form-item>
<a-form-item
label="主题颜色"
:labelCol="{lg: {span: 7}, sm: {span: 7}}"
:wrapperCol="{lg: {span: 10}, sm: {span: 17} }"
:required="false"
>
<a-input
placeholder="请输入主题颜色"
v-decorator="[
'THEME_COLOR',
{rules: [{ required: true, message: '请输入主题颜色' }]}
]"
name="THEME_COLOR"
/>
</a-form-item>
<a-form-item
label="服务类目描述"
:labelCol="{lg: {span: 7}, sm: {span: 7}}"
:wrapperCol="{lg: {span: 10}, sm: {span: 17} }"
:required="false"
>
<a-input
placeholder="请输入服务类目描述"
v-decorator="[
'DESCRIPTION',
{rules: [{ required: true, message: '请输入服务类目描述' }]}
]"
name="DESCRIPTION"
/>
</a-form-item>
<a-form-item
label="服务类目描述"
:labelCol="{lg: {span: 7}, sm: {span: 7}}"
:wrapperCol="{lg: {span: 10}, sm: {span: 17} }"
:required="false"
>
<a-date-picker showTime v-decorator="['CREATE_TIME',{normalize:DateCheck}]" />
<!-- <a-input
placeholder="请输入创建时间"
v-decorator="[
'CREATE_TIME',
{rules: [{ required: true, message: '请输入创建时间' }]}
]"
name="CREATE_TIME"
/> -->
</a-form-item>
<a-form-item :wrapperCol="{ span: 24 }" style="text-align: center">
<a-button @click="handleSubmit1()" htmlType="submit" type="primary">提交</a-button>
<a-button @click="goBack" style="margin-left: 8px">返回</a-button>
</a-form-item>
</a-form>
</a-card>
</template>
<script>
import moment from 'moment'
// 获取门店服务类目详情
import { getScategorymgDetails } from '@/api/store'
//修改门店服务类目
import { modifyScategorymgDetails } from '@/api/store'
export default {
name: 'BaseForm',
data() {
return {
description: '表单页用于向用户收集或验证信息,基础表单常见于数据项较少的表单场景。',
value: Object,
// form
form: this.$form.createForm(this)
}
},
// props: {
// },
mounted() {
console.log(this.$route.query)
var id = this.$route.query.GUID
// var coDe = this.$route.query.code
// this.coDe = coDe
// this.scateId = id
// if (coDe == 0) {
// this.scateId = id
getScategorymgDetails(id)
.then(res => {
console.log(res)
this.$nextTick(() => {
this.GUID = res.data[0].GUID
this.form.setFieldsValue(res.data[0])
})
// this.form.initialValue(res)
// this.form.setFieldsValue(res)
})
.catch(err => {})
},
methods: {
// 时间处理
DateCheck(value){
if(value || value!=null || value!=""){
return moment(value,'YYYY-MM-DD HH:mm:ss')
}
},
checkRadio(value) {
return value.toString()
},
// handleSubmit() {
// alert(111)
// const {
// form: { validateFields }
// } = this
// validateFields({ force: true }, (err, values) => {
// if (!err) {
// const ScategorymgParams = { ...values }
// addScategorymg(ScategorymgParams)
// this.$router.push({ path: '/storedc/scategorymg' })
// }
// })
// },
handleSubmit1() {
alert(121)
let GUID = this.GUID
//
const {
form: { validateFields }
} = this
validateFields({ force: true }, (err, values) => {
if (!err) {
const ScategorymgModify = Object.assign({ ...values }, { GUID: GUID })
ScategorymgModify.CREATE_TIME=ScategorymgModify.CREATE_TIME.format("YYYY-MM-DD HH:mm:ss");
modifyScategorymgDetails(ScategorymgModify)
this.$router.push({ path: '/storedc/scategorymg' })
}
})
},
goBack() {
this.$router.push({ path: '/storedc/scategorymg' })
}
}
}
</script>
<template>
<a-card :body-style="{padding: '24px 32px'}" :bordered="false">
<a-form :form="form">
<a-form-item
label="服务类目名称"
:labelCol="{lg: {span: 7}, sm: {span: 7}}"
:wrapperCol="{lg: {span: 10}, sm: {span: 17} }"
>
<a-input
placeholder="请输入服务类目名称"
v-decorator="['NAME',{rules: [{ required: true, message: '请输入服务类目名称' }]}]"
name="NAME"
/>
</a-form-item>
<a-form-item
label="服务类目编号"
:labelCol="{lg: {span: 7}, sm: {span: 7}}"
:wrapperCol="{lg: {span: 10}, sm: {span: 17} }"
>
<a-input
placeholder="服务类目编号"
v-decorator="[
'CODE',
{rules: [{ required: true, message: '服务类目编号' }]}
]"
name="CODE"
/>
</a-form-item>
<a-form-item
label="主题颜色"
:labelCol="{lg: {span: 7}, sm: {span: 7}}"
:wrapperCol="{lg: {span: 10}, sm: {span: 17} }"
:required="false"
>
<a-input
placeholder="请输入主题颜色"
v-decorator="[
'THEME_COLOR',
{rules: [{ required: true, message: '请输入主题颜色' }]}
]"
name="THEME_COLOR"
/>
</a-form-item>
<a-form-item
label="服务类目描述"
:labelCol="{lg: {span: 7}, sm: {span: 7}}"
:wrapperCol="{lg: {span: 10}, sm: {span: 17} }"
:required="false"
>
<a-input
placeholder="请输入服务类目描述"
v-decorator="[
'DESCRIPTION',
{rules: [{ required: true, message: '请输入服务类目描述' }]}
]"
name="DESCRIPTION"
/>
</a-form-item>
<a-form-item :wrapperCol="{ span: 24 }" style="text-align: center">
<a-button @click="handleSubmit()" htmlType="submit" type="primary">提交</a-button>
<a-button @click="goBack" style="margin-left: 8px">返回</a-button>
</a-form-item>
</a-form>
</a-card>
</template>
<script>
import moment from 'moment'
// 新增门店服务类目
import { addScategorymg } from '@/api/store'
export default {
name: 'BaseForm',
data() {
return {
description: '表单页用于向用户收集或验证信息,基础表单常见于数据项较少的表单场景。',
coDe: 1,
scateId: '',
value: Object,
// form
form: this.$form.createForm(this)
}
},
// props: {
// },
mounted() {
// console.log(this.$route.query)
// var id = this.$route.query.scateId
// var coDe = this.$route.query.code
// this.coDe = coDe
// this.scateId = id
// if (coDe == 0) {
// getScategorymgDetails(id)
// .then(res => {
// console.log(res)
// this.$nextTick(() => {
// this.GUID = res.data[0].GUID
// this.form.setFieldsValue(res.data[0])
// })
// // this.form.initialValue(res)
// // this.form.setFieldsValue(res)
// })
// .catch(err => {})
// }
},
methods: {
// 时间处理
DateCheck(value){
if(value || value!=null || value!=""){
return moment(value,'YYYY-MM-DD HH:mm:ss')
}
},
checkRadio(value) {
return value.toString()
},
handleSubmit() {
// alert(111)
const {
form: { validateFields }
} = this
validateFields({ force: true }, (err, values) => {
if (!err) {
const ScategorymgParams = { ...values }
addScategorymg(ScategorymgParams)
this.$router.push({ path: '/storedc/scategorymg' })
}
})
},
// handleSubmit1() {
// alert(121)
// let GUID = this.GUID
// //
// const {
// form: { validateFields }
// } = this
// validateFields({ force: true }, (err, values) => {
// if (!err) {
// const ScategorymgModify = Object.assign({ ...values }, { GUID: GUID })
// ScategorymgModify.CREATE_TIME=ScategorymgModify.CREATE_TIME.format("YYYY-MM-DD HH:mm:ss");
// modifyScategorymgDetails(ScategorymgModify)
// this.$router.push({ path: '/storedc/scategorymg' })
// }
// })
// },
goBack() {
this.$router.push({ path: '/storedc/scategorymg' })
}
}
}
</script>
<template> <template>
<a-card :bordered="false"> <a-card :bordered="false">
<div class="table-page-search-wrapper"> <div class="table-page-search-wrapper">
<a-form layout="inline"> <a-form :Form="(form)=>{this.form = form}" layout="inline">
<a-row :gutter="48"> <a-row :gutter="48">
<a-col :md="8" :sm="24"> <a-col :md="8" :sm="24">
<a-form-item label="部门编号"> <a-form-item label="部门编号">
<a-input v-model="queryParam.id" placeholder=""/> <a-input v-model="queryParam.code" placeholder />
</a-form-item> </a-form-item>
</a-col> </a-col>
<a-col :md="8" :sm="24"> <a-col :md="8" :sm="24">
<a-form-item label="部门名称"> <a-form-item label="部门名称">
<a-select v-model="queryParam.status" placeholder="请选择" default-value="0"> <a-input v-model="queryParam.name" placeholder />
<a-select-option value="0">全部</a-select-option>
<a-select-option value="1">关闭</a-select-option>
<a-select-option value="2">运行中</a-select-option>
</a-select>
</a-form-item> </a-form-item>
</a-col> </a-col>
<a-col :md="!advanced && 8 || 24" :sm="24"> <a-col :md="!advanced && 8 || 24" :sm="24">
<span class="table-page-search-submitButtons" :style="advanced && { float: 'right', overflow: 'hidden' } || {} "> <span
class="table-page-search-submitButtons"
:style="advanced && { float: 'right', overflow: 'hidden' } || {} "
>
<a-button type="primary" @click="$refs.table.refresh(true)">查询</a-button> <a-button type="primary" @click="$refs.table.refresh(true)">查询</a-button>
<a-button style="margin-left: 8px" @click="() => queryParam = {}">重置</a-button> <a-button style="margin-left: 8px" @click="() => queryParam = {}">重置</a-button>
<!-- <a @click="toggleAdvanced" style="margin-left: 8px">
{{ advanced ? '收起' : '展开' }}
<a-icon :type="advanced ? 'up' : 'down'"/>
</a> -->
</span> </span>
</a-col> </a-col>
</a-row> </a-row>
</a-form> </a-form>
</div> </div>
<div class="table-operator">
<!-- <a-button type="primary" icon="plus" @click="$refs.createModal.add()">新建</a-button> -->
<a-button type="dashed" @click="tableOption">{{ optionAlertShow && '关闭' || '开启' }} alert</a-button>
<a-dropdown v-action:edit v-if="selectedRowKeys.length > 0">
<a-menu slot="overlay">
<a-menu-item key="1"><a-icon type="delete" />删除</a-menu-item>
<!-- lock | unlock -->
<a-menu-item key="2"><a-icon type="lock" />锁定</a-menu-item>
</a-menu>
<a-button style="margin-left: 8px">
批量操作 <a-icon type="down" />
</a-button>
</a-dropdown>
</div>
<s-table <s-table
ref="table" ref="table"
size="default" size="default"
rowKey="key" rowKey="GUID"
:columns="columns" :columns="columns"
:data="loadData" :data="loadData"
:alert="options.alert" showPagination="auto"
:rowSelection="options.rowSelection"
> >
<span slot="serial" slot-scope="text, record, index">
{{ index + 1 }}
</span>
<span slot="status" slot-scope="text">
<a-badge :status="text | statusTypeFilter" :text="text | statusFilter" />
</span>
<span slot="description" slot-scope="text">
<ellipsis :length="4" tooltip>{{ text }}</ellipsis>
</span>
<span slot="action" slot-scope="text, record">
<template>
<a @click="handleEdit(record)">配置</a>
<a-divider type="vertical" />
<a @click="handleSub(record)">订阅报警</a>
</template>
</span>
</s-table> </s-table>
<!-- <create-form ref="createModal" @ok="handleOk" />
<step-by-step-modal ref="modal" @ok="handleOk"/> -->
</a-card> </a-card>
</template> </template>
<script> <script>
import moment from 'moment' import moment from 'moment'
import { STable, Ellipsis } from '@/components' import { STable } from '@/components'
// import StepByStepModal from './modules/StepByStepModal' import { getOrgTree } from '@/api/userstaff'
// import CreateForm from './modules/CreateForm'
// , getServiceList
import { getRoleList } from '@/api/manage'
const statusMap = {
0: {
status: 'default',
text: '关闭'
},
1: {
status: 'processing',
text: '运行中'
},
2: {
status: 'success',
text: '已上线'
},
3: {
status: 'error',
text: '异常'
}
}
export default { export default {
name: 'TableList', name: 'TableList',
components: { components: {
STable, STable,
Ellipsis,
// CreateForm,
// StepByStepModal
}, },
data () { data() {
return { return {
mdl: {}, mdl: {},
// 高级搜索 展开/关闭 // 高级搜索 展开/关闭
advanced: false, advanced: false,
// 查询参数 // 查询参数
queryParam: {}, queryParam: {},
form: null,
// 表头 // 表头
columns: [ columns: [
{ {
title: '#', title: '#',
scopedSlots: { customRender: 'serial' } dataIndex:'GUID'
}, },
{ {
title: '部门编号', title: '部门编号',
dataIndex: 'no' dataIndex: 'CODE'
}, },
{ {
title: '部门名称', title: '部门名称',
dataIndex: 'description', dataIndex: 'NAME'
scopedSlots: { customRender: 'description' }
}, },
{ {
title: '所属公司', title: '所属公司',
dataIndex: 'callNo', dataIndex: 'COMPANY'
sorter: true,
needTotal: true,
customRender: (text) => text + ' 次'
}, },
{ {
title: '所属分公司', title: '所属分公司',
dataIndex: 'status', dataIndex: 'SUB_COMPANY'
scopedSlots: { customRender: 'status' }
}, },
{ {
title: '更新时间', title: '更新时间',
dataIndex: 'updatedAt', dataIndex: 'UPDATE_TIME'
sorter: true }
},
// { // {
// title: '操作', // title: '操作',
// dataIndex: 'action', // dataIndex: 'action',
...@@ -161,91 +92,32 @@ export default { ...@@ -161,91 +92,32 @@ export default {
], ],
// 加载数据方法 必须为 Promise 对象 // 加载数据方法 必须为 Promise 对象
loadData: parameter => { loadData: parameter => {
console.log('loadData.parameter', parameter) console.log('loadData.parameter', parameter)
return getServiceList(Object.assign(parameter, this.queryParam)) return getOrgTree(Object.assign(parameter, this.queryParam)).then(res => {
.then(res => { console.log('loadData.parameter', parameter)
return res.result console.log(res)
}) res.pageSize = res._meta.perPage
res.page = res._meta.currentPage
res.totalPage = res._meta.pageCount
res.totalCount = res._meta.totalCount
// res.data = []
// res.data = res.userdepartment
console.log(res.data)
return res
})
}, },
selectedRowKeys: [], selectedRowKeys: [],
selectedRows: [], selectedRows: [],
// custom table alert & rowSelection
options: {
alert: { show: true, clear: () => { this.selectedRowKeys = [] } },
rowSelection: {
selectedRowKeys: this.selectedRowKeys,
onChange: this.onSelectChange
}
},
optionAlertShow: false
}
},
filters: {
statusFilter (type) {
return statusMap[type].text
},
statusTypeFilter (type) {
return statusMap[type].status
} }
}, },
created () {
this.tableOption() created() {
getRoleList({ t: new Date() })
}, },
methods: { methods: {
tableOption () { onSelectChange(selectedRowKeys, selectedRows) {
if (!this.optionAlertShow) {
this.options = {
alert: { show: true, clear: () => { this.selectedRowKeys = [] } },
rowSelection: {
selectedRowKeys: this.selectedRowKeys,
onChange: this.onSelectChange,
getCheckboxProps: record => ({
props: {
disabled: record.no === 'No 2', // Column configuration not to be checked
name: record.no
}
})
}
}
this.optionAlertShow = true
} else {
this.options = {
alert: false,
rowSelection: null
}
this.optionAlertShow = false
}
},
handleEdit (record) {
console.log(record)
this.$refs.modal.edit(record)
},
handleSub (record) {
if (record.status !== 0) {
this.$message.info(`${record.no} 订阅成功`)
} else {
this.$message.error(`${record.no} 订阅失败,规则已关闭`)
}
},
// handleOk () {
// console.log(123)
// this.$refs.table.refresh()
// },
onSelectChange (selectedRowKeys, selectedRows) {
this.selectedRowKeys = selectedRowKeys this.selectedRowKeys = selectedRowKeys
this.selectedRows = selectedRows this.selectedRows = selectedRows
}, },
// toggleAdvanced () {
// this.advanced = !this.advanced
// },
resetSearchForm () {
this.queryParam = {
date: moment(new Date())
}
}
} }
} }
</script> </script>
This diff is collapsed.
<template> <template>
<div> <a-card :bordered="false">
<s-table <s-table
ref="table" ref="table"
size="default" size="default"
rowKey="GUID" rowKey="GUID"
:columns="columns" :columns="columns"
:data="loadData" :data="loadData"
:rowSelection="options.rowSelection"
showPagination="auto"
> >
<span slot="serial" slot-scope="text, record, index">{{ index + 1 }}</span>
<span slot="status" slot-scope="text">
<a-badge :status="text | statusTypeFilter" :text="text | statusFilter" />
</span>
<span slot="description" slot-scope="text">
<ellipsis :length="4" tooltip>{{ text }}</ellipsis>
</span>
</s-table> </s-table>
</div> </a-card>
</template> </template>
<script> <script>
import moment from 'moment' import moment from 'moment'
import { STable } from '@/components' import { STable } from '@/components'
import { getServiceList } from '@/api/manage' import { getServiceList } from '@/api/userstaff'
export default { export default {
name: 'TableList', name: 'TableList',
components: { components: {
STable STable,
}, },
data () { data() {
return { return {
mdl: {}, mdl: {},
// 高级搜索 展开/关闭 // 高级搜索 展开/关闭
advanced: false, advanced: false,
// 查询参数
queryParam: {},
// 表头
columns: [ columns: [
{
title: '#',
dataIndex: 'GUID'
},
{ {
title: '用户名', title: '用户名',
dataIndex: 'NAME' dataIndex: 'NAME'
}, },
{ {
title: '手机号', title: '手机号',
dataIndex: 'TS_PHONE' dataIndex: 'TS_PHONE',
scopedSlots: { customRender: 'TS_PHONE' }
}, },
// {
// title: '手机号',
// dataIndex: 'callNo',
// sorter: true,
// needTotal: true,
// customRender: (text) => text + ' 次'
// },
{ {
title: '留言内容', title: '留言内容',
dataIndex: 'TS_CONTENT' dataIndex: 'TS_CONTENT'
...@@ -51,35 +68,111 @@ export default { ...@@ -51,35 +68,111 @@ export default {
{ {
title: '留言类型', title: '留言类型',
dataIndex: 'COMPLAIN_TYPE', dataIndex: 'COMPLAIN_TYPE',
width: '150px' width: '150px',
scopedSlots: { customRender: 'COMPLAIN_TYPE' }
} }
], ],
// 查询参数 pagination:{
queryParam: {},
removeKey: '', },
// 加载数据方法 必须为 Promise 对象 // 加载数据方法 必须为 Promise 对象
loadData: parameter => { loadData: parameter => {
console.log('loadData.parameter', parameter) console.log('loadData.parameter', parameter)
return getServiceList(Object.assign(parameter, this.queryParam)).then(res => { return getServiceList(Object.assign(parameter, this.queryParam)).then(res => {
console.log(res) console.log(res)
res.data = [] // res.data = []
res.data = res.usercomplain // res.data = res.usercomplain
res.pageSize = res._meta.perPage res.pageSize = res._meta.perPage
res.page = res._meta.currentPage res.page = res._meta.currentPage
res.totalPage = res._meta.pageCount res.totalPage = res._meta.pageCount
res.totalCount = res._meta.totalCount res.totalCount = res._meta.totalCount
console.log(res.data)
console.log(res)
return res return res
}) })
} },
selectedRowKeys: [],
selectedRows: [],
// custom table alert & rowSelection
options: {
alert: {
show: true,
clear: () => {
this.selectedRowKeys = []
}
},
rowSelection: {
selectedRowKeys: this.selectedRowKeys,
onChange: this.onSelectChange
}
},
optionAlertShow: false
} }
}, },
mounted(){
created() {
this.tableOption()
}, },
methods: { methods: {
tableOption() {
if (!this.optionAlertShow) {
this.options = {
alert: {
show: true,
clear: () => {
this.selectedRowKeys = []
}
},
rowSelection: {
selectedRowKeys: this.selectedRowKeys,
onChange: this.onSelectChange,
getCheckboxProps: record => ({
props: {
disabled: record.no === 'No 2', // Column configuration not to be checked
name: record.no
}
})
}
}
this.optionAlertShow = true
} else {
this.options = {
alert: false,
rowSelection: null
}
this.optionAlertShow = false
}
},
// getData() {
// this.loading = true
// getRoleList(this.params).then(res => {
// this.loading = false
// console.log(res)
// this.data = res.result.data.map(item => {
// item.checked = item.state === 0 // 正常状态state==0转换为开关状态1
// return item
// })
// })
// },
// handleEdit (record) {
// console.log(record)
// this.$refs.modal.edit(record)
// },
// handleSub(record) {
// if (record.status !== 0) {
// this.$message.info(`${record.no} 订阅成功`)
// } else {
// this.$message.error(`${record.no} 订阅失败,规则已关闭`)
// }
// },
handleOk() {
this.$refs.table.refresh()
},
onSelectChange(selectedRowKeys, selectedRows) {
this.selectedRowKeys = selectedRowKeys
this.selectedRows = selectedRows
}
} }
} }
</script> </script>
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