消费项目排序和样式
This commit is contained in:
parent
43203ff88d
commit
2ad86d7945
@ -1,11 +1,8 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="app-container">
|
<div class="app-container">
|
||||||
<el-form
|
<el-form :model="queryParams" ref="queryForm" label-width="70px">
|
||||||
:model="queryParams"
|
<el-row :gutter="10">
|
||||||
ref="queryForm"
|
<el-col :xs="24" :ms="12" :md="5">
|
||||||
:inline="true"
|
|
||||||
label-width="88px"
|
|
||||||
>
|
|
||||||
<el-form-item label="客户姓名" prop="name">
|
<el-form-item label="客户姓名" prop="name">
|
||||||
<el-input
|
<el-input
|
||||||
v-model="queryParams.name"
|
v-model="queryParams.name"
|
||||||
@ -15,6 +12,8 @@
|
|||||||
@keyup.enter.native="handleQuery"
|
@keyup.enter.native="handleQuery"
|
||||||
/>
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :xs="24" :ms="12" :md="5">
|
||||||
<el-form-item label="联系电话" prop="lxdh">
|
<el-form-item label="联系电话" prop="lxdh">
|
||||||
<el-input
|
<el-input
|
||||||
v-model="queryParams.lxdh"
|
v-model="queryParams.lxdh"
|
||||||
@ -24,15 +23,19 @@
|
|||||||
@keyup.enter.native="handleQuery"
|
@keyup.enter.native="handleQuery"
|
||||||
/>
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="幼儿园名称" prop="schoolname">
|
</el-col>
|
||||||
|
<el-col :xs="24" :ms="12" :md="5">
|
||||||
|
<el-form-item label="园所名称" prop="schoolname">
|
||||||
<el-input
|
<el-input
|
||||||
v-model="queryParams.schoolname"
|
v-model="queryParams.schoolname"
|
||||||
placeholder="请输入幼儿园名称"
|
placeholder="请输入园所名称"
|
||||||
clearable
|
clearable
|
||||||
size="small"
|
size="small"
|
||||||
@keyup.enter.native="handleQuery"
|
@keyup.enter.native="handleQuery"
|
||||||
/>
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :xs="24" :ms="12" :md="5">
|
||||||
<el-form-item label="所在省" prop="sheng">
|
<el-form-item label="所在省" prop="sheng">
|
||||||
<el-input
|
<el-input
|
||||||
v-model="queryParams.sheng"
|
v-model="queryParams.sheng"
|
||||||
@ -42,6 +45,8 @@
|
|||||||
@keyup.enter.native="handleQuery"
|
@keyup.enter.native="handleQuery"
|
||||||
/>
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :xs="24" :ms="12" :md="5">
|
||||||
<el-form-item label="客户来源" prop="khly">
|
<el-form-item label="客户来源" prop="khly">
|
||||||
<el-select v-model="queryParams.khly" placeholder="请选择客户来源">
|
<el-select v-model="queryParams.khly" placeholder="请选择客户来源">
|
||||||
<el-option
|
<el-option
|
||||||
@ -52,6 +57,8 @@
|
|||||||
></el-option>
|
></el-option>
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :xs="24" :ms="12" :md="5">
|
||||||
<el-form-item label="客户身份" prop="sflx">
|
<el-form-item label="客户身份" prop="sflx">
|
||||||
<el-select v-model="queryParams.sflx" placeholder="请选择客户身份">
|
<el-select v-model="queryParams.sflx" placeholder="请选择客户身份">
|
||||||
<el-option
|
<el-option
|
||||||
@ -62,7 +69,9 @@
|
|||||||
></el-option>
|
></el-option>
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item>
|
</el-col>
|
||||||
|
<el-col :xs="24" :ms="12" :md="4">
|
||||||
|
<el-form-item class="no-margin">
|
||||||
<el-button
|
<el-button
|
||||||
type="primary"
|
type="primary"
|
||||||
icon="el-icon-search"
|
icon="el-icon-search"
|
||||||
@ -74,10 +83,11 @@
|
|||||||
>重置</el-button
|
>重置</el-button
|
||||||
>
|
>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
</el-form>
|
</el-form>
|
||||||
|
|
||||||
<el-row :gutter="10" class="mb8">
|
<div class="mb8 btn-list">
|
||||||
<el-col :span="1.5">
|
|
||||||
<el-button
|
<el-button
|
||||||
type="primary"
|
type="primary"
|
||||||
icon="el-icon-plus"
|
icon="el-icon-plus"
|
||||||
@ -86,8 +96,6 @@
|
|||||||
v-hasPermi="['benyi:customer:add']"
|
v-hasPermi="['benyi:customer:add']"
|
||||||
>新增</el-button
|
>新增</el-button
|
||||||
>
|
>
|
||||||
</el-col>
|
|
||||||
<el-col :span="1.5">
|
|
||||||
<el-button
|
<el-button
|
||||||
type="success"
|
type="success"
|
||||||
icon="el-icon-edit"
|
icon="el-icon-edit"
|
||||||
@ -97,8 +105,6 @@
|
|||||||
v-hasPermi="['benyi:customer:edit']"
|
v-hasPermi="['benyi:customer:edit']"
|
||||||
>修改</el-button
|
>修改</el-button
|
||||||
>
|
>
|
||||||
</el-col>
|
|
||||||
<el-col :span="1.5">
|
|
||||||
<el-button
|
<el-button
|
||||||
type="danger"
|
type="danger"
|
||||||
icon="el-icon-delete"
|
icon="el-icon-delete"
|
||||||
@ -108,20 +114,26 @@
|
|||||||
v-hasPermi="['benyi:customer:remove']"
|
v-hasPermi="['benyi:customer:remove']"
|
||||||
>删除</el-button
|
>删除</el-button
|
||||||
>
|
>
|
||||||
</el-col>
|
</div>
|
||||||
</el-row>
|
|
||||||
|
|
||||||
<el-table
|
<el-table
|
||||||
v-loading="loading"
|
v-loading="loading"
|
||||||
|
border
|
||||||
:data="customerList"
|
:data="customerList"
|
||||||
@selection-change="handleSelectionChange"
|
@selection-change="handleSelectionChange"
|
||||||
@sort-change="sortChange"
|
@sort-change="sortChange"
|
||||||
>
|
>
|
||||||
<el-table-column type="selection" width="55" align="center" />
|
<el-table-column type="selection" width="55" align="center" />
|
||||||
<el-table-column label="客户姓名" align="center" prop="name" />
|
<el-table-column fixed label="客户姓名" align="center" prop="name" />
|
||||||
<el-table-column label="幼儿园名称" align="center" prop="schoolname" />
|
|
||||||
<el-table-column
|
<el-table-column
|
||||||
label="幼儿园人数"
|
fixed
|
||||||
|
label="园所名称"
|
||||||
|
align="center"
|
||||||
|
prop="schoolname"
|
||||||
|
/>
|
||||||
|
<el-table-column
|
||||||
|
label="园所人数"
|
||||||
|
width="100"
|
||||||
align="center"
|
align="center"
|
||||||
prop="rs"
|
prop="rs"
|
||||||
sortable="rs"
|
sortable="rs"
|
||||||
@ -141,11 +153,23 @@
|
|||||||
<el-table-column label="联系电话" align="center" prop="lxdh" />
|
<el-table-column label="联系电话" align="center" prop="lxdh" />
|
||||||
<el-table-column label="微信号" align="center" prop="wx" />
|
<el-table-column label="微信号" align="center" prop="wx" />
|
||||||
<el-table-column label="抖音号" align="center" prop="dy" />
|
<el-table-column label="抖音号" align="center" prop="dy" />
|
||||||
<el-table-column label="其他联系方式" align="center" prop="qt" />
|
<el-table-column label="其他联系方式" width="100" align="center" prop="qt" />
|
||||||
<el-table-column label="所在省" align="center" prop="sheng" />
|
<el-table-column label="所在省" align="center" prop="sheng" />
|
||||||
<el-table-column label="所在市" align="center" prop="shi" />
|
<el-table-column label="所在市" align="center" prop="shi" />
|
||||||
<el-table-column label="消费项目" align="center" prop="xfxm" sortable="xfxm" />
|
<el-table-column
|
||||||
<el-table-column label="消费价值" align="center" prop="xfjz" sortable="xfjz" />
|
label="消费项目"
|
||||||
|
align="center"
|
||||||
|
prop="xfxm"
|
||||||
|
width="110"
|
||||||
|
sortable="xfxm"
|
||||||
|
/>
|
||||||
|
<el-table-column
|
||||||
|
label="消费价值"
|
||||||
|
width="110"
|
||||||
|
align="center"
|
||||||
|
prop="xfjz"
|
||||||
|
sortable="xfjz"
|
||||||
|
/>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
label="录入人"
|
label="录入人"
|
||||||
align="center"
|
align="center"
|
||||||
@ -154,11 +178,13 @@
|
|||||||
/>
|
/>
|
||||||
<el-table-column label="录入时间" align="center" prop="createTime" />
|
<el-table-column label="录入时间" align="center" prop="createTime" />
|
||||||
<el-table-column label="过保时间" align="center" prop="gbtime" />
|
<el-table-column label="过保时间" align="center" prop="gbtime" />
|
||||||
<el-table-column label="转换跟进" align="center" prop="zhgj" />
|
<el-table-column label="转换跟进" show-overflow-tooltip align="center" prop="zhgj" />
|
||||||
<el-table-column
|
<el-table-column
|
||||||
|
fixed="right"
|
||||||
label="操作"
|
label="操作"
|
||||||
align="center"
|
align="center"
|
||||||
class-name="small-padding fixed-width"
|
width="60"
|
||||||
|
class-name="small-padding fixed-width edit-btns"
|
||||||
>
|
>
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<el-button
|
<el-button
|
||||||
@ -199,18 +225,18 @@
|
|||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<el-form-item label="幼儿园名称" prop="schoolname">
|
<el-form-item label="园所名称" prop="schoolname">
|
||||||
<el-input
|
<el-input
|
||||||
v-model="form.schoolname"
|
v-model="form.schoolname"
|
||||||
placeholder="请输入幼儿园名称"
|
placeholder="请输入园所名称"
|
||||||
/>
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<el-form-item label="幼儿园人数" prop="rs">
|
<el-form-item label="园所人数" prop="rs">
|
||||||
<el-input-number
|
<el-input-number
|
||||||
v-model="form.rs"
|
v-model="form.rs"
|
||||||
placeholder="请输入幼儿园人数"
|
placeholder="请输入园所人数"
|
||||||
/>
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
@ -402,10 +428,10 @@ export default {
|
|||||||
{ required: true, message: "客户姓名不能为空", trigger: "blur" },
|
{ required: true, message: "客户姓名不能为空", trigger: "blur" },
|
||||||
],
|
],
|
||||||
schoolname: [
|
schoolname: [
|
||||||
{ required: true, message: "幼儿园名称不能为空", trigger: "blur" },
|
{ required: true, message: "园所名称不能为空", trigger: "blur" },
|
||||||
],
|
],
|
||||||
lxdh: [
|
lxdh: [
|
||||||
{ required: true, message: "幼儿园名称不能为空", trigger: "blur" },
|
{ required: true, message: "联系电话不能为空", trigger: "blur" },
|
||||||
],
|
],
|
||||||
sheng: [
|
sheng: [
|
||||||
{
|
{
|
||||||
@ -630,3 +656,20 @@ export default {
|
|||||||
},
|
},
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
|
<style lang="scss" scoped>
|
||||||
|
.el-select {
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
.my-date-picker {
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
.edit-btns {
|
||||||
|
.el-button {
|
||||||
|
display: block;
|
||||||
|
margin: 0 auto;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.no-margin ::v-deep.el-form-item__content {
|
||||||
|
margin: 0 !important;
|
||||||
|
}
|
||||||
|
</style>
|
@ -82,6 +82,7 @@ public class SysLoginService {
|
|||||||
Collection<String> keys = redisCache.keys(Constants.LOGIN_TOKEN_KEY + "*");
|
Collection<String> keys = redisCache.keys(Constants.LOGIN_TOKEN_KEY + "*");
|
||||||
List<SysUserOnline> userOnlineList = new ArrayList<SysUserOnline>();
|
List<SysUserOnline> userOnlineList = new ArrayList<SysUserOnline>();
|
||||||
for (String key : keys) {
|
for (String key : keys) {
|
||||||
|
try {
|
||||||
LoginUser user = redisCache.getCacheObject(key);
|
LoginUser user = redisCache.getCacheObject(key);
|
||||||
if (StringUtils.isNotEmpty(username) && StringUtils.isNotNull(user.getUser())) {
|
if (StringUtils.isNotEmpty(username) && StringUtils.isNotNull(user.getUser())) {
|
||||||
if (StringUtils.equals(username, user.getUsername())) {
|
if (StringUtils.equals(username, user.getUsername())) {
|
||||||
@ -92,6 +93,8 @@ public class SysLoginService {
|
|||||||
redisCache.deleteObject(key);
|
redisCache.deleteObject(key);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
} catch (Exception e) {
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
AsyncManager.me().execute(AsyncFactory.recordLogininfor(username, Constants.LOGIN_SUCCESS, MessageUtils.message("user.login.success")));
|
AsyncManager.me().execute(AsyncFactory.recordLogininfor(username, Constants.LOGIN_SUCCESS, MessageUtils.message("user.login.success")));
|
||||||
|
@ -27,12 +27,10 @@ import com.ruoyi.framework.web.page.TableSupport;
|
|||||||
*
|
*
|
||||||
* @author ruoyi
|
* @author ruoyi
|
||||||
*/
|
*/
|
||||||
public class BaseController
|
public class BaseController {
|
||||||
{
|
|
||||||
protected final Logger logger = LoggerFactory.getLogger(BaseController.class);
|
protected final Logger logger = LoggerFactory.getLogger(BaseController.class);
|
||||||
|
|
||||||
public static String getUUID32()
|
public static String getUUID32() {
|
||||||
{
|
|
||||||
return UUID.randomUUID().toString().replace("-", "").toLowerCase();
|
return UUID.randomUUID().toString().replace("-", "").toLowerCase();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -40,14 +38,11 @@ public class BaseController
|
|||||||
* 将前台传递过来的日期格式的字符串,自动转化为Date类型
|
* 将前台传递过来的日期格式的字符串,自动转化为Date类型
|
||||||
*/
|
*/
|
||||||
@InitBinder
|
@InitBinder
|
||||||
public void initBinder(WebDataBinder binder)
|
public void initBinder(WebDataBinder binder) {
|
||||||
{
|
|
||||||
// Date 类型转换
|
// Date 类型转换
|
||||||
binder.registerCustomEditor(Date.class, new PropertyEditorSupport()
|
binder.registerCustomEditor(Date.class, new PropertyEditorSupport() {
|
||||||
{
|
|
||||||
@Override
|
@Override
|
||||||
public void setAsText(String text)
|
public void setAsText(String text) {
|
||||||
{
|
|
||||||
setValue(DateUtils.parseDate(text));
|
setValue(DateUtils.parseDate(text));
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
@ -56,14 +51,19 @@ public class BaseController
|
|||||||
/**
|
/**
|
||||||
* 设置请求分页数据
|
* 设置请求分页数据
|
||||||
*/
|
*/
|
||||||
protected void startPage()
|
protected void startPage() {
|
||||||
{
|
|
||||||
PageDomain pageDomain = TableSupport.buildPageRequest();
|
PageDomain pageDomain = TableSupport.buildPageRequest();
|
||||||
Integer pageNum = pageDomain.getPageNum();
|
Integer pageNum = pageDomain.getPageNum();
|
||||||
Integer pageSize = pageDomain.getPageSize();
|
Integer pageSize = pageDomain.getPageSize();
|
||||||
if (StringUtils.isNotNull(pageNum) && StringUtils.isNotNull(pageSize))
|
if (StringUtils.isNotNull(pageNum) && StringUtils.isNotNull(pageSize)) {
|
||||||
{
|
|
||||||
String orderBy = SqlUtil.escapeOrderBySql(pageDomain.getOrderBy());
|
String orderBy = SqlUtil.escapeOrderBySql(pageDomain.getOrderBy());
|
||||||
|
// System.out.println("order:" + orderBy);
|
||||||
|
//特殊情况处理 汉字排序
|
||||||
|
if (orderBy.equals("xfxm asc")) {
|
||||||
|
orderBy = "CONVERT(xfxm USING gbk) asc";
|
||||||
|
} else if (orderBy.equals("xfxm desc")) {
|
||||||
|
orderBy = "CONVERT(xfxm USING gbk) desc";
|
||||||
|
}
|
||||||
PageHelper.startPage(pageNum, pageSize, orderBy);
|
PageHelper.startPage(pageNum, pageSize, orderBy);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -72,8 +72,7 @@ public class BaseController
|
|||||||
* 响应请求分页数据
|
* 响应请求分页数据
|
||||||
*/
|
*/
|
||||||
@SuppressWarnings({"rawtypes", "unchecked"})
|
@SuppressWarnings({"rawtypes", "unchecked"})
|
||||||
protected TableDataInfo getDataTable(List<?> list)
|
protected TableDataInfo getDataTable(List<?> list) {
|
||||||
{
|
|
||||||
TableDataInfo rspData = new TableDataInfo();
|
TableDataInfo rspData = new TableDataInfo();
|
||||||
rspData.setCode(HttpStatus.SUCCESS);
|
rspData.setCode(HttpStatus.SUCCESS);
|
||||||
rspData.setRows(list);
|
rspData.setRows(list);
|
||||||
@ -87,8 +86,7 @@ public class BaseController
|
|||||||
* @param rows 影响行数
|
* @param rows 影响行数
|
||||||
* @return 操作结果
|
* @return 操作结果
|
||||||
*/
|
*/
|
||||||
protected AjaxResult toAjax(int rows)
|
protected AjaxResult toAjax(int rows) {
|
||||||
{
|
|
||||||
return rows > 0 ? AjaxResult.success() : AjaxResult.error();
|
return rows > 0 ? AjaxResult.success() : AjaxResult.error();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user