修改产品信息

master
username 8 months ago
parent 2b35818720
commit 86c9c80068

@ -1,11 +1,13 @@
package com.bs.df.controller;
import java.util.Comparator;
import java.util.Date;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import javax.servlet.http.HttpServletResponse;
import com.baomidou.mybatisplus.annotation.TableField;
import com.bs.common.annotation.Anonymous;
import com.bs.common.constant.Constants;
import com.bs.common.core.domain.entity.SysUser;
@ -76,11 +78,9 @@ public class DfOrderController extends BaseController {
@ApiOperation("分页查询客户订单列表")
@GetMapping("/pageList")
public TableDataInfo pageList(DfOrder dfOrder) {
// startPage();
Integer pageNum = ServletUtils.getParameterToInt(Constants.PAGE_NUM);
Integer pageSize = ServletUtils.getParameterToInt(Constants.PAGE_SIZE);
LambdaQueryWrapper<DfOrder> queryWrapper = new LambdaQueryWrapper();
queryWrapper.orderByDesc(DfOrder::getSubmitTime);
condition(queryWrapper, dfOrder);
boolean admin = SecurityUtils.isAdmin(SecurityUtils.getUserId());
if (!admin) {
@ -89,23 +89,19 @@ public class DfOrderController extends BaseController {
queryWrapper.eq(DfOrder::getBrokerId, SecurityUtils.getUserId());
}
}
String orderByColumn = dfOrder.getOrderByColumn();
String isAsc = dfOrder.getIsAsc();
if (StringUtils.isNotEmpty(orderByColumn) && StringUtils.isNotEmpty(isAsc)) {
applyOrderBy(queryWrapper, orderByColumn, isAsc);
}
List<DfOrder> list = dfOrderService.list(queryWrapper);
List<DfOrder> dfOrders = setOrderList(list);
// if (StringUtils.isNotEmpty(dfOrder.getUserName())) {
// dfOrders = dfOrders.stream()
// .filter(info -> info.getUserName() != null && info.getUserName().contains(dfOrder.getUserName()))
// .collect(Collectors.toList());
// }
if (StringUtils.isNotEmpty(dfOrder.getBrokerName())) {
dfOrders = dfOrders.stream()
.filter(info -> info.getBrokerName() != null && info.getBrokerName().contains(dfOrder.getBrokerName()))
.collect(Collectors.toList());
}
// if (StringUtils.isNotEmpty(dfOrder.getPhone())) {
// dfOrders = dfOrders.stream()
// .filter(info -> info.getPhone() != null && info.getPhone().contains(dfOrder.getPhone()))
// .collect(Collectors.toList());
// }
Integer start = (pageNum - 1) * pageSize;
List<DfOrder> result = dfOrders.stream()
.skip(start)
@ -116,6 +112,108 @@ public class DfOrderController extends BaseController {
return data;
}
public void applyOrderBy(LambdaQueryWrapper<DfOrder> queryWrapper, String orderName, String orderType) {
boolean isAsc = "ASC".equalsIgnoreCase(orderType);
switch (orderName) {
case "orderNo":
if (isAsc) {
queryWrapper.orderByAsc(DfOrder::getOrderNo);
} else {
queryWrapper.orderByDesc(DfOrder::getOrderNo);
}
break;
case "userName":
if (isAsc) {
queryWrapper.orderByAsc(DfOrder::getUserName);
} else {
queryWrapper.orderByDesc(DfOrder::getUserName);
}
break;
case "productName":
if (isAsc) {
queryWrapper.orderByAsc(DfOrder::getProductName);
} else {
queryWrapper.orderByDesc(DfOrder::getProductName);
}
break;
case "submitTime":
if (isAsc) {
queryWrapper.orderByAsc(DfOrder::getSubmitTime);
} else {
queryWrapper.orderByDesc(DfOrder::getSubmitTime);
}
break;
case "applyAmount":
if (isAsc) {
queryWrapper.orderByAsc(DfOrder::getApplyAmount);
} else {
queryWrapper.orderByDesc(DfOrder::getApplyAmount);
}
break;
case "limitAmount":
if (isAsc) {
queryWrapper.orderByAsc(DfOrder::getLimitAmount);
} else {
queryWrapper.orderByDesc(DfOrder::getLimitAmount);
}
break;
case "loanAmount":
if (isAsc) {
queryWrapper.orderByAsc(DfOrder::getLoanAmount);
} else {
queryWrapper.orderByDesc(DfOrder::getLoanAmount);
}
break;
case "loanRate":
if (isAsc) {
queryWrapper.orderByAsc(DfOrder::getLoanRate);
} else {
queryWrapper.orderByDesc(DfOrder::getLoanRate);
}
break;
case "loadMonth":
if (isAsc) {
queryWrapper.orderByAsc(DfOrder::getLoadMonth);
} else {
queryWrapper.orderByDesc(DfOrder::getLoadMonth);
}
break;
case "isFirst":
if (isAsc) {
queryWrapper.orderByAsc(DfOrder::getIsFirst);
} else {
queryWrapper.orderByDesc(DfOrder::getIsFirst);
}
break;
case "settleAmount":
if (isAsc) {
queryWrapper.orderByAsc(DfOrder::getSettleAmount);
} else {
queryWrapper.orderByDesc(DfOrder::getSettleAmount);
}
break;
case "staus":
if (isAsc) {
queryWrapper.orderByAsc(DfOrder::getStaus);
} else {
queryWrapper.orderByDesc(DfOrder::getStaus);
}
break;
case "remark":
if (isAsc) {
queryWrapper.orderByAsc(DfOrder::getRemark);
} else {
queryWrapper.orderByDesc(DfOrder::getRemark);
}
break;
default:
queryWrapper.orderByDesc(DfOrder::getSubmitTime);
break;
}
}
private List<DfOrder> setOrderList(List<DfOrder> list) {
List<SysUser> userList = userService.list();
List<DfBizClue> clueList = dfBizClueService.list(new LambdaQueryWrapper<DfBizClue>().orderByDesc(DfBizClue::getCreateTime));

@ -65,8 +65,8 @@ public class DfProductArticleController extends BaseController {
@ApiOperation("分页查询产品文章列表")
@GetMapping("/pageList")
public TableDataInfo pageList(DfProductArticle dfProductArticle) {
startPage();
SysUser sysUser = sysUserMapper.selectById(getUserId());
startPage();
String reviewStatus = sysUser.getReviewStatus();
if ("1".equals(reviewStatus)) {
return null;

@ -74,7 +74,6 @@ public class DfProductInfoController extends BaseController {
@ApiOperation("分页查询产品信息列表")
@GetMapping("/pageList")
public TableDataInfo pageList(DfProductInfo dfProductInfo) {
startPage();
SysUser sysUser = sysUserMapper.selectById(getUserId());
String reviewStatus = sysUser.getReviewStatus();
if ("1".equals(reviewStatus)) {
@ -115,6 +114,7 @@ public class DfProductInfoController extends BaseController {
}
}
condition(queryWrapper,dfProductInfo);
startPage();
List<DfProductInfo> list = dfProductInfoService.list(queryWrapper);
List<DfOrder> dfOrders = dfOrderService.list();
Map<Long, Integer> productOrderCounts = new HashMap<>();

@ -63,8 +63,8 @@ public class DfProductMomentController extends BaseController {
@ApiOperation("分页查询产品朋友圈列表")
@GetMapping("/pageList")
public TableDataInfo pageList(DfProductMoment dfProductMoment) {
startPage();
SysUser sysUser = sysUserMapper.selectById(getUserId());
startPage();
String reviewStatus = sysUser.getReviewStatus();
if ("1".equals(reviewStatus)) {
return null;

@ -70,7 +70,6 @@ public class DfProductPosterController extends BaseController {
@ApiOperation("分页查询产品海报列表")
@GetMapping("/pageList")
public TableDataInfo pageList(DfProductPoster dfProductPoster) {
startPage();
SysUser sysUser = sysUserMapper.selectById(getUserId());
String reviewStatus = sysUser.getReviewStatus();
if ("1".equals(reviewStatus)) {
@ -86,10 +85,18 @@ public class DfProductPosterController extends BaseController {
} else {
List<Long> productIdsByBrokerId = dfBrokerService.getProductIdsByBrokerId();
List<DfProductPoster> list = dfProductPosterService.list(new LambdaQueryWrapper<DfProductPoster>()
.eq(DfProductPoster::getPosterType, "1"));
List<Long> productIds = list.stream()
.map(DfProductPoster::getProductId)
.collect(Collectors.toList());
if (productIdsByBrokerId.size() == 0) {
productIdsByBrokerId.add(0L);
}
queryWrapper.in(DfProductPoster::getProductId, productIdsByBrokerId);
productIdsByBrokerId.addAll(productIds);
queryWrapper.nested(wrapper -> wrapper.in(DfProductPoster::getProductId, productIdsByBrokerId)
.or()
.isNull(DfProductPoster::getProductId));
SysUser byId = userService.getById(SecurityUtils.getUserId());
if ("jj".equals(byId.getUserType()) || "kh".equals(byId.getUserType())) {
queryWrapper.eq(DfProductPoster::getStatus,"1");
@ -97,6 +104,7 @@ public class DfProductPosterController extends BaseController {
}
}
conditionByMPJ(queryWrapper,dfProductPoster);
startPage();
List<DfProductPoster> list = dfProductPosterService.list(queryWrapper);
List<CmAttach> attachVo = cmAttachService.list();
Map<String, List<CmAttach>> attachMap = attachVo.stream()
@ -108,6 +116,9 @@ public class DfProductPosterController extends BaseController {
if (matchingAttachments != null) {
dfProductPosterVo.setFiles(matchingAttachments);
}
if ("1".equals(dfProductPosterVo.getPosterType())) {
dfProductPosterVo.setProductName(null);
}
}
return getDataTable(list);
}
@ -161,6 +172,9 @@ public class DfProductPosterController extends BaseController {
@Log(title = "产品海报新增", businessType = BusinessType.INSERT)
@PostMapping
public AjaxResult add(@RequestBody DfProductPoster dfProductPoster) {
if ("1".equals(dfProductPoster.getPosterType())) {
dfProductPoster.setProductId(null);
}
return toAjax(dfProductPosterService.save(dfProductPoster));
}
@ -171,6 +185,9 @@ public class DfProductPosterController extends BaseController {
@Log(title = "产品海报修改", businessType = BusinessType.UPDATE)
@PutMapping
public AjaxResult edit(@RequestBody DfProductPoster dfProductPoster) {
if ("1".equals(dfProductPoster.getPosterType())) {
dfProductPoster.setProductId(null);
}
return toAjax(dfProductPosterService.updateById(dfProductPoster));
}

@ -171,7 +171,11 @@ public class DfOrder extends BaseEntity{
@TableField(exist = false)
private Date submitTimeEnd;
@TableField(exist = false)
private String orderByColumn;
@TableField(exist = false)
private String isAsc;
}

@ -315,6 +315,7 @@ public class SysUserController extends BaseController {
dfUserBroker.setBrokerId(user.getDeptId());
dfUserBrokerService.updateById(dfUserBroker);
}
user.setPassword(null);
return toAjax(userService.updateUser(user));
}

@ -95,7 +95,7 @@
</el-table-column>
<!-- <el-table-column label="产品细类" align="center" prop="productSubtype" sortable='custom' width="100"/> -->
<el-table-column label="最高额度(万)" prop="maxAmount" sortable='custom' width="120"/>
<el-table-column label="年利率(单利)" prop="interestRate" sortable='custom' width="120"/>
<el-table-column label="年利率(单利)" prop="interestRate" width="120"/>
<!-- <el-table-column label="产品简介" align="center" prop="productIntro" sortable='custom' show-overflow-tooltip
width="100"/> -->
<!-- <el-table-column label="产品详情" align="center" prop="productDetail" sortable='custom' show-overflow-tooltip

@ -1,5 +1,7 @@
<template>
<div ref="list">
<p style="margin: 10px 0; border-bottom: 1px solid #eee; padding-bottom: 5px;">经纪人</p>
<el-form :model="queryParams" ref="queryForm" size="mini" :inline="true" v-show="showSearch" label-width="100px">
<el-form-item label="产品名称" prop="productName">
<el-input

@ -1,5 +1,7 @@
<template>
<div ref="list">
<p style="margin: 10px 0; border-bottom: 1px solid #eee; padding-bottom: 5px;">代理商</p>
<el-form :model="queryParams" ref="queryForm" size="mini" :inline="true" v-show="showSearch" label-width="100px">
<el-form-item label="产品名称" prop="productName">
<el-input

@ -14,7 +14,7 @@
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery"></el-button>
</el-form-item>
</el-form>
<el-table v-loading="loading" :data="userList" @sort-change="handleSortChange" :height="370" ref="table"
<el-table v-loading="loading" :data="userList" @sort-change="handleSortChange" :height="340" ref="table"
@selection-change="handleSelectionChange" row-key="id" :highlight-current-row="true" @row-click="handleRowClick" >
<el-table-column label="经纪人" prop="userName" sortable='custom' min-width="200px"/>
</el-table>

@ -182,15 +182,6 @@
<el-dialog :title="title" :visible.sync="open" width="70%" append-to-body :close-on-click-modal="false">
<el-form ref="form" :model="form" :rules="rules" label-width="100px">
<el-row>
<el-col :span="12">
<el-form-item label="产品名称" prop="productId">
<el-select style="width: 100%;" filterable v-model="form.productId" placeholder="请选择产品名称" :disabled="readonly"
clearable>
<el-option v-for="info in lsInfo" :key="info.id" :label="info.productName"
:value="info.id"/>
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="海报分类" prop="posterType">
<el-select style="width: 100%;" v-model="form.posterType" placeholder="选择海报分类" :disabled="readonly">
@ -199,13 +190,13 @@
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="海报名称" prop="posterName">
<el-input v-model="form.posterName" placeholder="请输入海报名称" :disabled="readonly"/>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="海报标签" prop="posterTag">
<el-select style="width: 100%;" v-model="form.posterTag" placeholder="选择海报标签" filterable clearable :disabled="readonly"
@ -215,6 +206,14 @@
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="状态" prop="status">
<el-select style="width: 100%;" v-model="form.status" placeholder="选择状态" clearable :disabled="readonly">
<el-option v-for="dict in dict.type.product_status" :key="dict.value" :label="dict.label"
:value="dict.value"/>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<!-- <el-col :span="12">-->
@ -222,11 +221,13 @@
<!-- <el-input v-model="form.posterFileId" placeholder="请输入海报图片"/>-->
<!-- </el-form-item>-->
<!-- </el-col>-->
<el-col :span="12">
<el-form-item label="状态" prop="status">
<el-select style="width: 100%;" v-model="form.status" placeholder="选择状态" clearable :disabled="readonly">
<el-option v-for="dict in dict.type.product_status" :key="dict.value" :label="dict.label"
:value="dict.value"/>
<el-col :span="12" v-if="form.posterType != '1'">
<el-form-item label="产品名称" prop="productId">
<el-select style="width: 100%;" filterable v-model="form.productId" placeholder="请选择产品名称" :disabled="readonly"
clearable>
<el-option v-for="info in lsInfo" :key="info.id" :label="info.productName"
:value="info.id"/>
</el-select>
</el-form-item>
</el-col>

@ -198,14 +198,14 @@
</el-table-column>
<!-- <el-table-column label="产品细类" align="center" prop="productSubtype" sortable='custom' min-width="100"/> -->
<el-table-column label="最高额度(万)" align="center" prop="maxAmount" sortable='custom' min-width="120"/>
<el-table-column label="年利率(单利)" align="center" prop="interestRate" sortable='custom' min-width="120"/>
<el-table-column label="年利率(单利)" align="center" prop="interestRate" min-width="120"/>
<!-- <el-table-column label="产品简介" align="center" prop="productIntro" sortable='custom' show-overflow-tooltip
min-width="100"/> -->
<!-- <el-table-column label="产品详情" align="center" prop="productDetail" sortable='custom' show-overflow-tooltip
min-width="100"/> -->
<!-- <el-table-column label="还款周期" align="center" prop="repaymentCycle" sortable='custom' min-width="100"/> -->
<!-- <el-table-column label="还款方式" align="center" prop="repaymentMethod" sortable='custom' min-width="100"/> -->
<el-table-column label="展业城市" align="center" prop="businessCity" sortable='custom' min-width="150" show-overflow-tooltip/>
<el-table-column label="展业城市" align="center" prop="businessCity" min-width="150" show-overflow-tooltip/>
<el-table-column label="综合费率" align="center" prop="combinedRates" sortable='custom' min-width="100"/>
<el-table-column label="上架时间起" align="center" prop="listBegin" min-width="120" sortable='custom'>
<template slot-scope="scope">

Loading…
Cancel
Save