Commit d60f47ad by 罗承锋

放号登记、放号列表、放号修改

parent 62ee7f19
package com.winsun.controller;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.winsun.auth.core.annotion.Permission;
import com.winsun.auth.core.common.model.ResponseData;
import com.winsun.bean.School;
import com.winsun.mapper.SchoolMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
import java.util.Map;
/**
* 获取学校信息(因为manager使用未鉴权注解,导致访问401)
* @author chengfengluo
* @date 2021-03-09 10:15
*/
@RequestMapping("/appSchool")
@RestController
public class SchoolController {
@Autowired
private SchoolMapper schoolMapper;
@RequestMapping(name = "获取县分下拉列表", value = "substList", method = RequestMethod.POST)
public ResponseData<List<Map<String, Object>>> substList() {
// ShiroUser user = getShiroUser();
// if (!user.getRoleNames().stream().anyMatch(roleName -> StringUtils.equalsAny(roleName, "超级管理员"))) {
// return ResponseData.error("无数据权限");
// }
// 查询县分列表
Wrapper<School> wrapperSubName = new EntityWrapper<School>();
wrapperSubName.setSqlSelect("sub_name")
.ne("sub_name", "null")
.groupBy("sub_name");
List<Map<String, Object>> substNameList = schoolMapper.selectMaps(wrapperSubName);
return ResponseData.success(substNameList, "查询完毕!");
}
@RequestMapping(name = "获取学校下拉列表", value = "schoolList", method = RequestMethod.POST)
public ResponseData<List<Map<String, Object>>> schoolList(@RequestParam("substName") String substName) {
// ShiroUser user = getShiroUser();
// if (!user.getRoleNames().stream().anyMatch(roleName -> StringUtils.equalsAny(roleName, "超级管理员"))) {
// return ResponseData.error("无数据权限");
// }
// 查询县分列表
Wrapper<School> wrapper = new EntityWrapper<School>();
wrapper.setSqlSelect("id,school_name")
.eq("sub_name", substName)
.groupBy("school_name");
List<Map<String, Object>> schoolList = schoolMapper.selectMaps(wrapper);
return ResponseData.success(schoolList, "查询完毕!");
}
}
......@@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.enums.IdType;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
* 网点信息类
......@@ -35,4 +36,24 @@ public class NetworkInfo implements Serializable {
* 网点名称
*/
private String networkName;
/**
* 开学开始时间
*/
private Date springStartTime;
/**
* 开学结束时间
*/
private Date springEndTime;
/**
* 达标50元奖励
*/
private Integer greaterFifty;
/**
* 达标100元奖励
*/
private Integer greaterHundred;
}
......@@ -6,6 +6,9 @@ import lombok.Data;
import java.util.Date;
/**
* 用此销售清单(另一个字段不全)
*/
@Data
@TableName("hhr_sales_order")
public class SalesList {
......@@ -67,6 +70,11 @@ public class SalesList {
private Date auditTime ;
/**
* 数据异常提示
*/
private String dataErrorRemark;
/**
* 佣金状态
*/
private String bonusStatus;
......@@ -76,6 +84,10 @@ public class SalesList {
*/
private String orderType;
public void setOrderType(String orderType) {
this.orderType = orderType;
}
/**
* 订单编码
*/
......
package com.winsun.service;
import com.baomidou.mybatisplus.service.IService;
import com.winsun.auth.core.common.model.ResponseData;
import com.winsun.bean.SalesList;
/**
* @author chengfengluo
* @date 2021-03-08 17:39
*/
public interface ISalesListService extends IService<SalesList> {
ResponseData<String> addSalesList(SalesList salesList);
}
package com.winsun.service.impl;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
import com.winsun.auth.core.common.model.ResponseData;
import com.winsun.auth.core.util.DateUtil;
import com.winsun.bean.SalesList;
import com.winsun.mapper.SalesListMapper;
import com.winsun.service.ISalesListService;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.Calendar;
import java.util.Date;
import java.util.List;
/**
* @author chengfengluo
* @date 2021-03-08 17:40
*/
@Service
public class SalesListServiceImpl extends ServiceImpl<SalesListMapper, SalesList> implements ISalesListService {
@Autowired
private SalesListMapper salesListMapper;
/**
* 添加销售清单
* @return
*/
public ResponseData<String> addSalesList(SalesList salesList) {
// 获取4个月内记录号码数据是否重复
Wrapper<SalesList> wrapper = new EntityWrapper<>();
wrapper.eq("order_phone", salesList.getOrderPhone());
wrapper.ge("create_time", this.getFourMonthYearAgoData());
List<SalesList> salesOrders = salesListMapper.selectList(wrapper);
// 获取重复提示
String error = "";
String info = "";
String repeatSchoolName = "";
if (salesOrders != null && salesOrders.size() != 0) {
for(SalesList databaseSaleList : salesOrders) {
if (salesList.getSalesSchool().equals(databaseSaleList.getSalesSchool())) {
error = "该放号号码已经在该销售学校登记";
}else{
info = "该放号号码与其它学校有重复登记,请后期进行核对;";
repeatSchoolName += "号码在" + databaseSaleList.getSalesSchool() + "学校有重复记录,请后期进行核对;";
}
}
}
// 插入销售清单
if (StringUtils.isBlank(error)) {
Integer insert = salesListMapper.insert(salesList);
// 成功更新重复学校
if (StringUtils.isNotBlank(info)) {
salesOrders.add(salesList);
this.updateRepeatSchool(salesList.getOrderPhone(), "该号码在其他学校重复登记", repeatSchoolName);
return ResponseData.success(null, info);
}
return ResponseData.success(null, "登记成功");
}else{
return ResponseData.error(error);
}
}
/**
* 更新重复学校
* @param orderPhone
* @param remark 审核说明
* @param dataErrorRemark 数据错误提示
*/
public void updateRepeatSchool(String orderPhone, String remark, String dataErrorRemark) {
Wrapper<SalesList> wrapper = new EntityWrapper<>();
wrapper.eq("order_phone", orderPhone);
SalesList updateSalesList = new SalesList();
updateSalesList.setStatus("2");
updateSalesList.setRemark(remark);
updateSalesList.setDataErrorRemark(dataErrorRemark);
salesListMapper.update(updateSalesList, wrapper);
}
// 获取4个月前的日期
public String getFourMonthYearAgoData() {
Calendar fourMonthago = Calendar.getInstance();
fourMonthago.setTime(new Date());
fourMonthago.add(Calendar.MONTH, -4);
return DateUtil.format(fourMonthago.getTime(), DateUtil.YYYY_MM_DD_HH_MM_SS);
}
}
package com.winsun.controller;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.winsun.auth.core.base.controller.BaseController;
import com.winsun.auth.core.common.model.ResponseData;
import com.winsun.auth.core.shiro.ShiroUser;
import com.winsun.bean.AuthCode;
import com.winsun.bean.NetworkInfo;
import com.winsun.bean.SalesList;
import com.winsun.item.core.shiro.ShiroKit;
import com.winsun.mapper.AuthCodeMapper;
import com.winsun.mapper.NetworkInfoMapper;
import com.winsun.mapper.SalesListMapper;
import com.winsun.service.ISalesListService;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
import java.util.Date;
/**
* 放号登记
* @author chengfengluo
* @date 2021-03-08 15:15
*/
@RequestMapping("recordNumber")
@RestController
public class RecordNumberController extends BaseController {
@Autowired
@Qualifier("redisStringTemplate")
private RedisTemplate redisTemplate;
@Autowired
private SalesListMapper salesListMapper;
@Autowired
private ISalesListService salesListService;
@Autowired
private AuthCodeMapper authCodeMapper;
@Autowired
private NetworkInfoMapper networkInfoMapper;
/**
* 放号登记注册
* @param salesList
* @param code
* @return
*/
@RequestMapping(name = "放号登记注册", value = "register", method = RequestMethod.POST)
public ResponseData<String> register(SalesList salesList, String code) {
try{
ShiroUser shiroUser = ShiroKit.getUser();
// 登录用户校验
if(shiroUser == null) {
return ResponseData.error("请先登录。");
}
// 参数校验
if (StringUtils.isBlank(salesList.getOrderPhone()) ||
StringUtils.isBlank(salesList.getSalesSubst()) ||
StringUtils.isBlank(salesList.getSalesSchool())) {
return ResponseData.error("请填写号码、销售县分、销售学校。");
}
// 校验网点是否存在
boolean isNotNetWork = false;
Wrapper<NetworkInfo> wrapper = new EntityWrapper<>();
wrapper.eq("school_name", salesList.getSalesSchool());
Integer integer = networkInfoMapper.selectCount(wrapper);
if(integer == null || integer == 0) {
isNotNetWork = true;
}
// 校验验证码
AuthCode authCode = authCodeMapper.selectById(salesList.getOrderPhone());
Object o = redisTemplate.opsForValue().get(salesList.getOrderPhone());
if (o == null && authCode == null) {
return ResponseData.error("请先获取验证码");
}
if (!code.equals(o) && !code.equals(authCode.getUserAuthCode())) {
return ResponseData.error("验证码错误,若未收到验证码,请登录后台查询");
}
// 添加上传人信息
salesList.setStatus("1");
salesList.setLockState("否");
salesList.setOrderType("1");
salesList.setPreType("");
salesList.setAccount(shiroUser.getAccount());
salesList.setUserId(String.valueOf(shiroUser.getId()));
salesList.setName(shiroUser.getName());
salesList.setCreateTime(new Date());
salesList.setDelFlag("0");
salesList.setMonthAmount(0D);
salesList.setMonthBonus(0D);
salesList.setNonSendBonus(0D);
salesList.setSendBonus(0D);
salesList.setAllBonus(0D);
ResponseData<String> stringResponseData = salesListService.addSalesList(salesList);
if (stringResponseData.isSuccess() && isNotNetWork) {
stringResponseData.setData("该学校无网点,请联系县分管理员配置");
}
return stringResponseData;
}catch(Exception e) {
e.printStackTrace();
return ResponseData.error("放号失败,请记录号码和验证码,后续上报登记。");
}
}
}
......@@ -6,17 +6,17 @@ import com.baomidou.mybatisplus.plugins.Page;
import com.winsun.auth.core.annotion.Permission;
import com.winsun.auth.core.base.controller.BaseController;
import com.winsun.auth.core.common.model.ResponseData;
import com.winsun.auth.core.shiro.ShiroUser;
import com.winsun.bean.Order;
import com.winsun.bean.SalesList;
import com.winsun.mapper.AppMapper;
import com.winsun.mapper.OrderMapper;
import com.winsun.mapper.SalesListMapper;
import com.winsun.mapper.SysUserMapper;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import java.util.ArrayList;
import java.util.HashMap;
......@@ -35,6 +35,10 @@ public class hhrUserController extends BaseController {
@Autowired
private AppMapper appMapper;
@Autowired
private SalesListMapper salesListMapper;
/**
* 查询订单列表
*
......@@ -90,4 +94,63 @@ public class hhrUserController extends BaseController {
return ResponseData.success(resultMap, "查询成功");
}
/**
* 获取放号记录
* @return
*/
@Permission(menuname = "获取销售清单", value="getSallesList", method = RequestMethod.POST)
public ResponseData<Page<SalesList>> getSalesList(Integer pageNo, Integer pageSize) {
try{
ShiroUser shiroUser = getShiroUser();
if (shiroUser == null) {
return ResponseData.error("请先登录");
}
Page<SalesList> page = new Page<>();
page.setCurrent(pageNo);
page.setSize(pageSize);
Wrapper<SalesList> wrapper = new EntityWrapper<>();
wrapper.eq("user_id", shiroUser.getId());
wrapper.orderBy("create_time", false);
List<SalesList> salesLists = salesListMapper.selectPage(page, wrapper);
page.setRecords(salesLists);
return ResponseData.success(page, "查询成功");
}catch (Exception e){
e.printStackTrace();
return ResponseData.error("查询失败");
}
}
/**
* 更新销售县分
* @param salesList
* @return
*/
@Permission(menuname = "更新销售县分", value = "updateSalesList", method = RequestMethod.POST)
public ResponseData<String> updateSalesList(@RequestParam("id") Integer id,
@RequestParam("salesSubst") String salesSubst,
@RequestParam("salesSchool") String salesSchool) {
try {
ShiroUser shiroUser = getShiroUser();
if (shiroUser == null) {
return ResponseData.error("请先登录");
}
SalesList salesList = new SalesList();
salesList.setId(id);
salesList.setSalesSubst(salesSubst);
salesList.setSalesSchool(salesSchool);
salesListMapper.updateById(salesList);
return ResponseData.success(null, "更新成功");
}catch(Exception e) {
e.printStackTrace();
return ResponseData.error("更新失败");
}
}
}
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