提交 fbd93681 authored 作者: 李秋林's avatar 李秋林

1、后台登录单独类文件删除,登录与查询共用controller;2、新增管理员账号开通功能;3、删除单独的xxljoncontroller;4、活动计划与其他controller分离;

上级 2e267ce5
......@@ -25,7 +25,6 @@ public class EmployeeQueryTemActivityController {
*
* @param loginQcId 员工
* @return 活动数据
* @RequestHeader("loginQcId") String loginQcId
*/
@PostMapping("/page")
public R findActivitys(String loginQcId, @RequestBody PageInfo pageInfo) {
......
......@@ -24,8 +24,8 @@ public class EmployeeQueryTemClockController {
* 查询员工打卡记录
*/
@PostMapping("/page")
public R findClockList(@RequestHeader("loginQcId") String loginQcId, @RequestBody PageInfo pageInfo) {
employeeQueryTemClockService.findClockList(loginQcId, pageInfo);
public R findClockList(@RequestBody PageInfo pageInfo) {
employeeQueryTemClockService.findClockList("", pageInfo);
return R.success(pageInfo);
}
......
......@@ -23,7 +23,6 @@ public class EmployeeQueryTemporaryInfoController {
/**
* 查询负责的促销员列表
* @RequestHeader("loginQcId") String loginQcId,
*/
@PostMapping("/page")
public R findTemporaryInfoPage(@RequestBody PageInfo pageInfo) {
......
......@@ -29,25 +29,25 @@ public class PromotionStoreCoreController {
@Autowired
RedisCache redisCache;
@PostMapping("/save")
public R saveStore(@RequestHeader("Authorization") String authorization, @RequestBody PromotionStoreDto promotionStoreDto) {
promotionStoreDto.verify();
// 是否重复提交
repetitiveSaveStore(authorization);
// 在缓存中查询
JSONObject userJson = redisCache.getToJson(RedisKeys.UserKeys.TEMPORARY_TOKEN.getKey() + authorization);
promotionStoreDto.setTemporaryId(userJson.getInteger("id"));
promotionStoreDto.setTemporaryName(userJson.getString("name"));
promotionStoreDto.setDeptQcId(userJson.getString("deptQcId"));
promotionStoreDto.setDeptQcOrgName(userJson.getString("deptQcOrgName"));
promotionStoreDto.setChargerQcId(userJson.getString("chargerQcId"));
promotionStoreDto.setChargerName(userJson.getString("chargerName"));
promotionStoreCoreService.saveStore(promotionStoreDto);
return R.success();
}
// @PostMapping("/save")
// public R saveStore(@RequestHeader("Authorization") String authorization, @RequestBody PromotionStoreDto promotionStoreDto) {
// promotionStoreDto.verify();
// // 是否重复提交
// repetitiveSaveStore(authorization);
//
// // 在缓存中查询
// JSONObject userJson = redisCache.getToJson(RedisKeys.UserKeys.TEMPORARY_TOKEN.getKey() + authorization);
//
// promotionStoreDto.setTemporaryId(userJson.getInteger("id"));
// promotionStoreDto.setTemporaryName(userJson.getString("name"));
// promotionStoreDto.setDeptQcId(userJson.getString("deptQcId"));
// promotionStoreDto.setDeptQcOrgName(userJson.getString("deptQcOrgName"));
// promotionStoreDto.setChargerQcId(userJson.getString("chargerQcId"));
// promotionStoreDto.setChargerName(userJson.getString("chargerName"));
//
// promotionStoreCoreService.saveStore(promotionStoreDto);
// return R.success();
// }
private void repetitiveSaveStore(String authorization) {
String recordKey = RedisKeys.TemporaryKeys.TEMPORARY_SAVE_STORE_REPETITIVE.getKey() + authorization;
......
package com.wangxiaolu.promotion.controller.activity.manage.activityplan;
package com.wangxiaolu.promotion.controller.activityplan;
import com.wangxiaolu.promotion.common.redis.RedisKeys;
import com.wangxiaolu.promotion.common.redis.service.RedisCache;
......
package com.wangxiaolu.promotion.controller.activity.manage.activityplan;
package com.wangxiaolu.promotion.controller.activityplan;
import com.wangxiaolu.promotion.pojo.PageInfo;
import com.wangxiaolu.promotion.pojo.activity.manage.vo.ActivityPlanInfoVo;
......
package com.wangxiaolu.promotion.controller.activity.manage.activityplan;
package com.wangxiaolu.promotion.controller.activityplan;
import com.wangxiaolu.promotion.common.util.NumberUtils;
import com.wangxiaolu.promotion.exception.DataException;
......
package com.wangxiaolu.promotion.controller.activity.manage.activityplan;
package com.wangxiaolu.promotion.controller.activityplan;
import com.wangxiaolu.promotion.pojo.PageInfo;
import com.wangxiaolu.promotion.pojo.activity.manage.dto.EmployeeActivityPlanRecordDto;
......
package com.wangxiaolu.promotion.controller.activity.manage.activityplan;
package com.wangxiaolu.promotion.controller.activityplan;
import com.wangxiaolu.promotion.result.basedata.R;
import com.wangxiaolu.promotion.service.activity.manage.ActivityTypeQueryService;
......
package com.wangxiaolu.promotion.controller.activity.manage;
package com.wangxiaolu.promotion.controller.activityplanv2;
import com.wangxiaolu.promotion.service.activity.manage.ActivityTypeQueryService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* @author : liqiulin
* @date : 2024-09-10 13
* @date : 2025-01-07 13
* @describe :
*/
@RestController
@RequestMapping("/activity/employee/xxl_job")
public class XxlJobController {
@Autowired
private ActivityTypeQueryService activityTypeQueryService;
@GetMapping("/activity_type_pattern")
public void activityTypePattern(){
activityTypeQueryService.patternToRedis();
@RequestMapping("/plan/v2/core")
public class PromPlanCoreController {
/**
* 城市经理 - 上传计划
* 当月只能上传次月的新增(当月需要新增需要交由职能角色上传)
*/
@GetMapping("/self/upload")
public void selfPlan() {
}
/**
* 职能角色 - 上传计划
*/
@GetMapping("/auth/upload")
public void authPlan() {
}
}
package com.wangxiaolu.promotion.controller.user.employee;
import com.wangxiaolu.promotion.pojo.user.vo.LoginVo;
import com.wangxiaolu.promotion.pojo.user.vo.UserLoginParam;
import com.wangxiaolu.promotion.result.basedata.R;
import com.wangxiaolu.promotion.service.user.WangxlEmployeeQueryService;
import com.wangxiaolu.promotion.result.basedata.RCode;
import com.wangxiaolu.promotion.service.user.ManageEmployeeCoreService;
import com.wangxiaolu.promotion.service.user.ManageEmployeeQueryService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.Objects;
/**
* @author : liqiulin
* @date : 2024-05-28 19
* @describe : 王小卤员工登录接口
* @date : 2025-01-13 13
* @describe :
*/
@RestController
@RequestMapping("/user/employee")
public class WangxlEmployeeLoginController {
@RequestMapping("/user/employee/core")
public class ManageEmployeeCoreController {
@Autowired
WangxlEmployeeQueryService wangxlEmployeeQueryService;
ManageEmployeeQueryService manageEmployeeQueryService;
@Autowired
ManageEmployeeCoreService manageEmployeeCoreService;
@PostMapping("/login")
public R wangxlEmployeelogin(@RequestBody UserLoginParam userLoginParam) {
userLoginParam.validate();
LoginVo loginVo = wangxlEmployeeQueryService.employeeLoginVerify(userLoginParam);
return R.success(loginVo);
/**
* 操作业务员账号
* 开通、关闭、修改权限
*/
@PostMapping ("/account")
public R openEmployeeAccount(@RequestBody UserLoginParam param) {
param.valLoginName();
if (Objects.isNull(param.getPrivilegeId())) {
return R.fail(RCode.EMP_PRIVILEGE_ERROR);
}
// 开通新账号、修改账号(账号信息、权限)
boolean hasEmp = manageEmployeeQueryService.hasByEmpNo(param.getLoginName());
if (hasEmp) {
manageEmployeeCoreService.putAccount(param);
}else {
manageEmployeeCoreService.openAccount(param);
}
return R.success();
}
}
......@@ -2,6 +2,8 @@ package com.wangxiaolu.promotion.controller.user.employee;
import com.wangxiaolu.promotion.pojo.activity.manage.vo.ManageEmployeeVo;
import com.wangxiaolu.promotion.pojo.user.dto.ManageEmployeeInfoDto;
import com.wangxiaolu.promotion.pojo.user.vo.LoginVo;
import com.wangxiaolu.promotion.pojo.user.vo.UserLoginParam;
import com.wangxiaolu.promotion.result.basedata.R;
import com.wangxiaolu.promotion.service.user.ManageEmployeeQueryService;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -15,22 +17,31 @@ import java.util.List;
* @describe : 王小卤员工登录接口
*/
@RestController
@RequestMapping("/user/employee/query")
@RequestMapping("/user/employee")
public class ManageEmployeeQueryController {
@Autowired
ManageEmployeeQueryService manageEmployeeQueryService;
@PostMapping("/one")
@PostMapping("/login")
public R wangxlEmployeelogin(@RequestBody UserLoginParam userLoginParam) {
userLoginParam.validate();
LoginVo loginVo = manageEmployeeQueryService.employeeLoginVerify(userLoginParam);
return R.success(loginVo);
}
@PostMapping("/query/one")
public R findOne(@RequestBody ManageEmployeeVo manageEmployeeVo){
ManageEmployeeInfoDto one = manageEmployeeQueryService.findOne(manageEmployeeVo);
return R.success(one);
}
@PostMapping("/list")
@PostMapping("/query/list")
public R findList(@RequestBody ManageEmployeeVo manageEmployeeVo){
List<ManageEmployeeInfoDto> dtos = manageEmployeeQueryService.findList(manageEmployeeVo);
return R.success(dtos);
}
}
......@@ -51,15 +51,15 @@ public class temporaryInfoQueryController {
/**
* 促销员信息查询
*/
@PostMapping("/temporary/phone_openid")
public R getTemporaryInfoByOpenIdAndPhone(@RequestHeader("Authorization") String authorization, @RequestBody WxTemporaryLoginVo wxTemporaryLoginVo) {
// 在缓存中查询
JSONObject userJson = redisCache.getToJson(RedisKeys.UserKeys.TEMPORARY_TOKEN.getKey() + authorization);
if (Objects.isNull(userJson)) {
throw new ParamException(RCode.NOT_LOGIN_ERROR, null);
}
return R.success(userJson);
}
// @PostMapping("/temporary/phone_openid")
// public R getTemporaryInfoByOpenIdAndPhone(@RequestHeader("Authorization") String authorization, @RequestBody WxTemporaryLoginVo wxTemporaryLoginVo) {
// // 在缓存中查询
// JSONObject userJson = redisCache.getToJson(RedisKeys.UserKeys.TEMPORARY_TOKEN.getKey() + authorization);
// if (Objects.isNull(userJson)) {
// throw new ParamException(RCode.NOT_LOGIN_ERROR, null);
// }
// return R.success(userJson);
// }
private void phontAndOpenIdVerify(WxTemporaryLoginVo wxTemporaryLoginVo) {
if (StringUtils.isBlank(wxTemporaryLoginVo.getOpenId()) || StringUtils.isBlank(wxTemporaryLoginVo.getPhone())) {
......
......@@ -19,4 +19,9 @@ public interface ManageEmployeeInfoDao {
List<ManageEmployeeInfoDto> selectList(ManageEmployeeWrapper ewrap);
void openAccount(String employeeNo, Integer privilegeId);
boolean hasByEmpNo(String employeeNo);
void updateAccount(String employeeNo, Integer privilegeId, String status);
}
......@@ -12,6 +12,7 @@ import com.wangxiaolu.promotion.result.basedata.RCode;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils;
import java.util.ArrayList;
......@@ -64,6 +65,42 @@ public class ManageEmployeeInfoInfoDaoImpl implements ManageEmployeeInfoDao {
return transitionDtos(dos);
}
@Transactional(rollbackFor = Exception.class)
@Override
public void openAccount(String employeeNo, Integer privilegeId) {
ManageEmployeeInfoDO eDo = new ManageEmployeeInfoDO();
eDo.setEmployeeNo(employeeNo);
manageEmployeeInfoMapper.insertOne(eDo);
addPrivilege(eDo.getId(),privilegeId);
}
@Override
public boolean hasByEmpNo(String employeeNo) {
Integer id = manageEmployeeInfoMapper.hasByEmpNo(employeeNo);
return Objects.nonNull(id);
}
@Transactional(rollbackFor = Exception.class)
@Override
public void updateAccount(String employeeNo, Integer privilegeId, String status) {
manageEmployeeInfoMapper.updateByEmployeeNo(employeeNo,status);
updatePrivilege(employeeNo,privilegeId);
}
/**
* 增加权限
*/
private void addPrivilege(Integer empId, Integer privilegeId) {
manageEmployeeInfoMapper.addPrivilege(empId,privilegeId);
}
/**
* 修改权限
*/
private void updatePrivilege(String employeeNo, Integer privilegeId) {
manageEmployeeInfoMapper.updatePrivilege(employeeNo,privilegeId);
}
private LambdaQueryWrapper<ManageEmployeeInfoDO> builderOneWrapper(ManageEmployeeWrapper ewrap){
LambdaQueryWrapper<ManageEmployeeInfoDO> qw = new LambdaQueryWrapper<>();
if (Objects.nonNull(ewrap.getId())){
......@@ -75,6 +112,7 @@ public class ManageEmployeeInfoInfoDaoImpl implements ManageEmployeeInfoDao {
if (Objects.nonNull(ewrap.getEmployeeNo())){
qw.eq(ManageEmployeeInfoDO::getEmployeeNo,ewrap.getEmployeeNo());
}
qw.eq(ManageEmployeeInfoDO::getStatus,"0");
return qw;
}
......@@ -89,6 +127,7 @@ public class ManageEmployeeInfoInfoDaoImpl implements ManageEmployeeInfoDao {
if (!CollectionUtils.isEmpty(ewrap.getEmployeeNos())){
qw.in(ManageEmployeeInfoDO::getEmployeeNo,ewrap.getEmployeeNos());
}
qw.eq(ManageEmployeeInfoDO::getStatus,"0");
return qw;
}
......
......@@ -3,6 +3,7 @@ package com.wangxiaolu.promotion.domain.activity.mapper;
import com.wangxiaolu.promotion.domain.activity.mapper.entity.ManageEmployeeInfoDO;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
/**
......@@ -16,6 +17,16 @@ import org.springframework.stereotype.Repository;
public interface ManageEmployeeInfoMapper extends BaseMapper<ManageEmployeeInfoDO> {
ManageEmployeeInfoDO selectToLogin(String employeeNo);
void insertOne(ManageEmployeeInfoDO eDo);
void addPrivilege(@Param("empId") Integer empId,@Param("privilegeId") Integer privilegeId);
Integer hasByEmpNo(String employeeNo);
void updateByEmployeeNo(@Param("employeeNo") String employeeNo,@Param("status") String status);
void updatePrivilege(@Param("employeeNo") String employeeNo,@Param("privilegeId") Integer privilegeId);
}
......
......@@ -52,6 +52,10 @@ public class ManageEmployeeInfoDO implements Serializable {
* 部门信息-勤策部门名称
*/
private String deptQcName;
/**
* 0正常 1停用
*/
private String status;
/**
* 备注,不过超过100字
......
......@@ -26,4 +26,5 @@ public class ManageEmployeeWrapper {
private Set<String> employeeNos;
private boolean hasDeptQcId;
private boolean statusIsNull;
}
......@@ -24,4 +24,7 @@ public interface QinCeEmployeeDao {
QinCeEmployeeDto selectOntByQcId(String qcId);
List<QinCeEmployeeDto> getEmployeeList(EmployeeWrapper ew);
QinCeEmployeeDto getEmployeeOne(EmployeeWrapper ew);
Integer count(EmployeeWrapper ew);
}
......@@ -52,6 +52,7 @@ public class QinCeClienteleStoreDaoImpl implements QinCeClienteleStoreDao {
qinCeShopDO.setDealersName(dealers.get(0).getString("dealer_name"));
qinCeShopDO.setDealerId(dealers.get(0).getString("dealer_code"));
}
qinCeShopDO.setExt();
qw.eq(QinCeClienteleStoreDO::getQcId, qinCeShopDO.getQcId());
QinCeClienteleStoreDO doExist = qinCeClienteleStoreMapper.selectOne(qw);
......
......@@ -3,6 +3,7 @@ package com.wangxiaolu.promotion.domain.user.dao.impl;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.wangxiaolu.promotion.common.enums.StatusType;
import com.wangxiaolu.promotion.domain.user.dao.QinCeEmployeeDao;
import com.wangxiaolu.promotion.domain.user.mapper.QinceEmployeeMapper;
import com.wangxiaolu.promotion.domain.user.mapper.entity.QinCeDepartmentDO;
......@@ -75,18 +76,34 @@ public class QinCeEmployeeDaoImpl implements QinCeEmployeeDao {
return transitionDtos(qinCeEmployeeDOS);
}
@Override
public QinCeEmployeeDto getEmployeeOne(EmployeeWrapper ew) {
LambdaQueryWrapper<QinCeEmployeeDO> qw = buildWrapper(ew);
QinCeEmployeeDO qinCeEmployeeDO = qinceEmployeeMapper.selectOne(qw);
return transitionDto(qinCeEmployeeDO);
}
@Override
public Integer count(EmployeeWrapper ew) {
LambdaQueryWrapper<QinCeEmployeeDO> qw = buildWrapper(ew);
return qinceEmployeeMapper.selectCount(qw);
}
private LambdaQueryWrapper<QinCeEmployeeDO> buildWrapper(EmployeeWrapper ew){
LambdaQueryWrapper<QinCeEmployeeDO> qw = new LambdaQueryWrapper<>();
if (StringUtils.isNotBlank(ew.getWaiqin365OrgId())){
qw.eq(QinCeEmployeeDO::getWaiqin365OrgId,ew.getWaiqin365OrgId());
}
if (StringUtils.isNotBlank(ew.getEmpCode())){
qw.eq(QinCeEmployeeDO::getEmpCode,ew.getEmpCode());
}
if (StringUtils.isNotBlank(ew.getEmpName())){
qw.like(QinCeEmployeeDO::getEmpName,ew.getEmpName());
}
if (StringUtils.isNotBlank(ew.getQcId())){
qw.eq(QinCeEmployeeDO::getQcId,ew.getQcId());
}
qw.eq(QinCeEmployeeDO::getEmpStatus,1);
qw.eq(QinCeEmployeeDO::getEmpStatus, StatusType.VALID.getType());
qw.last("limit 50");
return qw;
}
......
......@@ -5,13 +5,12 @@ import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
/**
* 勤策-客户管理-终端
* @TableName qc_clientele_shop
......@@ -192,6 +191,15 @@ public class QinCeClienteleStoreDO implements Serializable {
@JsonProperty("store_approval_status")
private String storeApprovalStatus;
/**
* 系统名称
*/
private String lineName;
/**
* 是否双T门店
*/
private String bothT;
/**
* 经销商名称
*/
......@@ -202,6 +210,14 @@ public class QinCeClienteleStoreDO implements Serializable {
@JsonProperty("dealers")
private List<JSONObject> dealers;
/**
* "store_ext_key": "系统名称",
* "store_ext_value": "永辉超市"
*/
@TableField(exist = false)
@JsonProperty("exts")
private List<Exts> exts;
/**
* 门店删除状态。0:删除,1:正常
*/
......@@ -216,4 +232,23 @@ public class QinCeClienteleStoreDO implements Serializable {
@TableField(exist = false)
private static final long serialVersionUID = 1L;
@Data
public class Exts{
@JsonProperty("store_ext_key")
private String storeExtKey;
@JsonProperty("store_ext_value")
private String storeExtValue;
}
public void setExt() {
for (Exts e : exts) {
if ("系统名称".equals(e.getStoreExtKey())) {
this.lineName = e.getStoreExtValue();
}
if ("是否双T门店".equals(e.getStoreExtKey())) {
this.bothT = e.getStoreExtValue();
}
}
}
}
\ No newline at end of file
......@@ -24,6 +24,7 @@ public class EmployeeWrapper {
private String waiqin365OrgId;
private String qcId;
private String empName;
private String empCode;
/**
* 员工账号状态。0:销户,1:正常,2:停用
......
......@@ -8,8 +8,6 @@ import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;
import org.apache.commons.lang3.StringUtils;
import javax.validation.constraints.NotBlank;
/**
* @author : liqiulin
* @date : 2024-03-28 18
......@@ -24,8 +22,25 @@ public class UserLoginParam {
String loginName;
String password;
/**
* 1, 'oneself', '个人权限'
* 2, 'admin', '超管权限'
*/
Integer privilegeId;
/**
* 0正常 1停用
*/
private String status;
public void validate(){
if (StringUtils.isBlank(loginName) || StringUtils.isBlank(password)){
if (StringUtils.isAnyBlank(loginName,password)){
throw new ParamException(RCode.LOGIN_PARAM_ERROR,null);
}
}
public void valLoginName(){
if (StringUtils.isBlank(loginName)){
throw new ParamException(RCode.LOGIN_PARAM_ERROR,null);
}
}
......
package com.wangxiaolu.promotion.service.user;
import com.wangxiaolu.promotion.pojo.user.vo.LoginVo;
import com.wangxiaolu.promotion.pojo.user.vo.UserLoginParam;
/**
* @author : liqiulin
* @date : 2024-05-29 13
* @date : 2025-01-13 14
* @describe :
*/
public interface WangxlEmployeeQueryService {
public interface ManageEmployeeCoreService {
void openAccount(UserLoginParam param);
LoginVo employeeLoginVerify(UserLoginParam userLoginParam);
void putAccount(UserLoginParam param);
}
......@@ -2,6 +2,8 @@ package com.wangxiaolu.promotion.service.user;
import com.wangxiaolu.promotion.pojo.activity.manage.vo.ManageEmployeeVo;
import com.wangxiaolu.promotion.pojo.user.dto.ManageEmployeeInfoDto;
import com.wangxiaolu.promotion.pojo.user.vo.LoginVo;
import com.wangxiaolu.promotion.pojo.user.vo.UserLoginParam;
import java.util.List;
......@@ -11,8 +13,12 @@ import java.util.List;
* @describe :
*/
public interface ManageEmployeeQueryService {
LoginVo employeeLoginVerify(UserLoginParam userLoginParam);
ManageEmployeeInfoDto findOne(ManageEmployeeVo manageEmployeeVo);
List<ManageEmployeeInfoDto> findList(ManageEmployeeVo manageEmployeeVo);
boolean hasByEmpNo(String employeeNo);
}
package com.wangxiaolu.promotion.service.user.impl;
import com.wangxiaolu.promotion.domain.activity.dao.ManageEmployeeInfoDao;
import com.wangxiaolu.promotion.domain.user.dao.QinCeEmployeeDao;
import com.wangxiaolu.promotion.domain.user.wrapperQo.EmployeeWrapper;
import com.wangxiaolu.promotion.exception.DataException;
import com.wangxiaolu.promotion.pojo.activity.temporary.dto.QinCeEmployeeDto;
import com.wangxiaolu.promotion.pojo.user.vo.UserLoginParam;
import com.wangxiaolu.promotion.result.basedata.RCode;
import com.wangxiaolu.promotion.service.user.ManageEmployeeCoreService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.Objects;
/**
* @author : liqiulin
* @date : 2025-01-13 14
* @describe :
*/
@Service
public class ManageEmployeeCoreServiceImpl implements ManageEmployeeCoreService {
@Autowired
ManageEmployeeInfoDao manageEmployeeInfoDao;
@Autowired
QinCeEmployeeDao qinCeEmployeeDao;
@Override
public void openAccount(UserLoginParam param) {
// todo 判断账号在勤策中是否存在
int count = qinCeEmployeeDao.count(new EmployeeWrapper().setEmpCode(param.getLoginName()));
if (count <= 0){
throw new DataException(RCode.QC_USER_IS_NULL_ERROR);
}
manageEmployeeInfoDao.openAccount(param.getLoginName(),param.getPrivilegeId());
}
/**
* 修改账号的状态,权限
*/
@Override
public void putAccount(UserLoginParam param) {
manageEmployeeInfoDao.updateAccount(param.getLoginName(), param.getPrivilegeId(), param.getStatus());
}
}
package com.wangxiaolu.promotion.service.user.impl;
import com.wangxiaolu.promotion.common.redis.RedisKeys;
import com.wangxiaolu.promotion.common.redis.service.RedisCache;
import com.wangxiaolu.promotion.common.util.JwtUtils;
import com.wangxiaolu.promotion.domain.activity.dao.ManageEmployeeInfoDao;
import com.wangxiaolu.promotion.domain.activity.wrapperQo.ManageEmployeeWrapper;
import com.wangxiaolu.promotion.pojo.activity.manage.vo.ManageEmployeeVo;
import com.wangxiaolu.promotion.pojo.user.dto.ManageEmployeeInfoDto;
import com.wangxiaolu.promotion.pojo.user.vo.LoginVo;
import com.wangxiaolu.promotion.pojo.user.vo.UserLoginParam;
import com.wangxiaolu.promotion.service.user.ManageEmployeeQueryService;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -18,10 +23,22 @@ import java.util.List;
*/
@Service
public class ManageEmployeeQueryServiceImpl implements ManageEmployeeQueryService {
@Autowired
RedisCache redisCache;
@Autowired
JwtUtils jwtUtils;
@Autowired
ManageEmployeeInfoDao manageEmployeeInfoDao;
@Override
public LoginVo employeeLoginVerify(UserLoginParam userLoginParam) {
ManageEmployeeInfoDto employeeDto = manageEmployeeInfoDao.loginByEmployeeNo(userLoginParam.getLoginName(),userLoginParam.getPassword());
String loginToken = jwtUtils.getEmployeeToken(userLoginParam.getLoginName(), userLoginParam.getPassword());
redisCache.addToJsonToMinute(RedisKeys.UserKeys.TEMPORARY_TOKEN.getKey()+loginToken,employeeDto,360);
LoginVo loginVo = new LoginVo<>(employeeDto,loginToken);
return loginVo;
}
@Override
public ManageEmployeeInfoDto findOne(ManageEmployeeVo manageEmployeeVo) {
ManageEmployeeWrapper ewrap = new ManageEmployeeWrapper();
......@@ -35,4 +52,9 @@ public class ManageEmployeeQueryServiceImpl implements ManageEmployeeQueryServic
BeanUtils.copyProperties(manageEmployeeVo,wrap);
return manageEmployeeInfoDao.selectList(wrap);
}
@Override
public boolean hasByEmpNo(String employeeNo) {
return manageEmployeeInfoDao.hasByEmpNo(employeeNo);
}
}
package com.wangxiaolu.promotion.service.user.impl;
import com.wangxiaolu.promotion.common.redis.RedisKeys;
import com.wangxiaolu.promotion.common.redis.service.RedisCache;
import com.wangxiaolu.promotion.common.util.JwtUtils;
import com.wangxiaolu.promotion.domain.activity.dao.ManageEmployeeInfoDao;
import com.wangxiaolu.promotion.pojo.user.dto.ManageEmployeeInfoDto;
import com.wangxiaolu.promotion.pojo.user.vo.LoginVo;
import com.wangxiaolu.promotion.pojo.user.vo.UserLoginParam;
import com.wangxiaolu.promotion.service.user.WangxlEmployeeQueryService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
/**
* @author : liqiulin
* @date : 2024-05-29 13
* @describe :
*/
@Service
@Slf4j
public class WangxlEmployeeQueryServiceImpl implements WangxlEmployeeQueryService {
@Autowired
RedisCache redisCache;
@Autowired
JwtUtils jwtUtils;
@Autowired
ManageEmployeeInfoDao manageEmployeeInfoDao;
@Override
public LoginVo employeeLoginVerify(UserLoginParam userLoginParam) {
ManageEmployeeInfoDto employeeDto = manageEmployeeInfoDao.loginByEmployeeNo(userLoginParam.getLoginName(),userLoginParam.getPassword());
String loginToken = jwtUtils.getEmployeeToken(userLoginParam.getLoginName(), userLoginParam.getPassword());
redisCache.addToJsonToMinute(RedisKeys.UserKeys.TEMPORARY_TOKEN.getKey()+loginToken,employeeDto,360);
LoginVo loginVo = new LoginVo<>(employeeDto,loginToken);
return loginVo;
}
}
......@@ -108,12 +108,13 @@ public class QinCeUtils {
*/
public Map<String, Object> queryShopParam(Integer pageNum) {
HashMap<String, Object> params = new HashMap<>();
// 分页页码,默认1
//todo 分页页码,默认1
params.put("page_number", pageNum);
params.put("store_code", "POS00038442");
// after_modify_date:更新时间之后,查询更新时间之后的门店数据。格式:yyyy-MM-dd HH:mm:SS
DateTime dateTime = DateUtil.offsetDay(new Date(), -2);
params.put("after_modify_date", DateUtil.format(dateTime, DatePattern.NORM_DATETIME_PATTERN));
//todo after_modify_date:更新时间之后,查询更新时间之后的门店数据。格式:yyyy-MM-dd HH:mm:SS
// DateTime dateTime = DateUtil.offsetDay(new Date(), -2);
// params.put("after_modify_date", DateUtil.format(dateTime, DatePattern.NORM_DATETIME_PATTERN));
return params;
}
......@@ -161,8 +162,8 @@ public class QinCeUtils {
params.put("status", "1");
// 全量数据同步后,再开启指定日期同步
DateTime dateTime = DateUtil.offsetDay(new Date(), -2);
params.put("after_create_date", DateUtil.format(dateTime, DatePattern.NORM_DATETIME_PATTERN));
//todo DateTime dateTime = DateUtil.offsetDay(new Date(), -2);
// params.put("after_create_date", DateUtil.format(dateTime, DatePattern.NORM_DATETIME_PATTERN));
return params;
}
}
......@@ -7,10 +7,10 @@ spring:
username: root
password: Zt%68Dsuv&M
redis:
port: 21101
host: bj-crs-oyzhz3c6.sql.tencentcdb.com
port: 6379
host: 192.168.100.40
database: 0
password: u)R3jrHk(qwt~mv$Tg=U
password: QjL6H5nH
main:
web-application-type: reactive
......
......@@ -18,16 +18,52 @@
</collection>
</resultMap>
<!-- <sql id="Base_Column_List">-->
<!-- id-->
<!-- ,name,employee_no,-->
<!-- passwork-->
<!-- </sql>-->
<!-- <sql id="Base_Column_List">-->
<!-- id-->
<!-- ,name,employee_no,-->
<!-- passwork-->
<!-- </sql>-->
<select id="selectToLogin" resultMap="BaseResultMap">
select pme.*, merp.privilege
from manage_employee_info pme
left join manage_employee_ref_privilege merp on pme.id = merp.employee_id
where employee_no = #{employeeNo};
where pme.employee_no = #{employeeNo}
and pme.status = '0';
</select>
<select id="hasByEmpNo" resultType="integer">
select id
from manage_employee_info
where employee_no = #{employeeNo}
</select>
<insert id="insertOne" useGeneratedKeys="true" keyProperty="id">
INSERT INTO manage_employee_info (qc_id, name, employee_no, passwork, dept_qc_id, dept_qc_name)
select qe.qc_id, qe.emp_name, qe.emp_code, "", qd.qc_id, qd.org_name
from qince_employee qe
inner join qince_department qd on qe.waiqin365_org_id = qd.qc_id
where qe.emp_code = #{employeeNo}
and qe.emp_status = '1';
</insert>
<insert id="addPrivilege">
INSERT INTO manage_employee_ref_privilege (employee_id, privilege_id, privilege)
select ${empId}, id, privilege
from manage_ref_privilege
where id = #{privilegeId}
</insert>
<update id="updateByEmployeeNo">
update manage_employee_info
set status = #{status}
where employee_no = #{employeeNo}
</update>
<update id="updatePrivilege">
update manage_employee_ref_privilege
set privilege_id = #{privilegeId},
privilege = (select privilege from manage_ref_privilege where id = #{privilegeId})
where employee_id = (select id from manage_employee_info where employee_no = #{employeeNo});
</update>
</mapper>
......@@ -18,15 +18,17 @@
<insert id="saveList">
insert into qince_dealer
(dealer_id, dealer_name, dealer_cooperate_status, create_time)
(dealer_id, dealer_name, dealer_cooperate_status, create_time,dealer_dept_waiqin365_id,dealer_dept_name)
VALUES
<foreach collection="dealerJsons" item="item" separator=",">
(#{item.dealer_id}, #{item.dealer_name},
#{item.dealer_cooperate_status},#{item.create_time})
#{item.dealer_cooperate_status},#{item.create_time},#{item.dealer_dept_waiqin365_id},#{item.dealer_dept_name})
</foreach>
ON DUPLICATE KEY UPDATE
dealer_name = values(dealer_name),
dealer_cooperate_status = values(dealer_cooperate_status);
dealer_cooperate_status = values(dealer_cooperate_status),
dealer_dept_waiqin365_id = values(dealer_dept_waiqin365_id),
dealer_dept_name = values(dealer_dept_name);
</insert>
</mapper>
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论