Commit edecb3ac by 陶光胜

Merge branch 'developer' of http://115.159.76.241/base_platform_enterprise/gic-store into developer

parents c2877566 9f803764
package com.gic.store.constant;
/**
*
* @Description:
* @author zhiwj
* @date 2019-11-11 11:01
*/
public enum ClerkGenderEnum {
MALE(1, "男"),
FEMALE(2, "女")
;
private int code;
private String message;
ClerkGenderEnum(int code, String message) {
this.code = code;
this.message = message;
}
public int getCode() {
return code;
}
public String getMessage() {
return message;
}
public static String parseCode(int code){
for(ClerkGenderEnum transactType : values()){
if (transactType.getCode() == code) {
return transactType.message;
}
}
return null;
}
}
package com.gic.store.constant;
/**
*
* @Description:
* @author zhiwj
* @date 2019-11-11 10:28
*/
public enum ClerkLogReasonEnum {
WEB(1, "WEB后台操作"),
EXTERNAL(2, "外部触发"),
ORDER(3, "订单同步"),
MEMBER (4, "会员同步"),
;
private int code;
private String message;
ClerkLogReasonEnum(int code, String message) {
this.code = code;
this.message = message;
}
public int getCode() {
return code;
}
public String getMessage() {
return message;
}
}
package com.gic.store.constant;
/**
*
* @Description:
* @author zhiwj
* @date 2019-11-11 10:31
*/
public enum ClerkLogTypeEnum {
SAVE(1, "导购新增"),
UPDATE(2, "信息变更"),
HAOBAN(3, "好办用户绑定")
;
private int code;
private String message;
ClerkLogTypeEnum(int code, String message) {
this.code = code;
this.message = message;
}
public int getCode() {
return code;
}
public String getMessage() {
return message;
}
}
......@@ -59,6 +59,14 @@ public class ClerkDTO implements Serializable {
*/
private Integer status;
/**
* 事由 1:web后台操作 2:外部触发 3:订单同步 4:会员同步 5:系统配置触发
*/
private Integer reason;
private String remark;
private Integer operatorId;
private String operatorName;
public Integer getClerkId() {
return clerkId;
}
......@@ -138,4 +146,36 @@ public class ClerkDTO implements Serializable {
public void setStatus(Integer status) {
this.status = status;
}
public Integer getReason() {
return reason;
}
public void setReason(Integer reason) {
this.reason = reason;
}
public void setRemark(String remark) {
this.remark = remark;
}
public String getRemark() {
return remark;
}
public Integer getOperatorId() {
return operatorId;
}
public void setOperatorId(Integer operatorId) {
this.operatorId = operatorId;
}
public String getOperatorName() {
return operatorName;
}
public void setOperatorName(String operatorName) {
this.operatorName = operatorName;
}
}
package com.gic.store.dto;
import java.io.Serializable;
import java.util.Date;
/**
*
* @Description:
* @author zhiwj
* @date 2019-11-11 11:12
*/
public class ClerkLogDTO implements Serializable {
private static final long serialVersionUID = 1461561087810835423L;
/**
*
*/
private Integer clerkLogId;
/**
*
*/
private Integer enterpriseId;
/**
*
*/
private Integer clerkId;
/**
* 日志内容
*/
private String content;
/**
* 事由 1:web后台操作 2:外部触发 3:订单同步 4:会员同步
*/
private Integer reason;
/**
* 日志类型 1:导购新增 2:信息变更 3:好办用户绑定
*/
private Integer logType;
/**
* 备注
*/
private String remark;
/**
*
*/
private Date createTime;
/**
*
*/
private Date updateTime;
/**
*
*/
private Integer status;
/**
*
*/
private Integer operatorId;
/**
*
*/
private String operatorName;
public Integer getClerkLogId() {
return clerkLogId;
}
public void setClerkLogId(Integer clerkLogId) {
this.clerkLogId = clerkLogId;
}
public Integer getEnterpriseId() {
return enterpriseId;
}
public void setEnterpriseId(Integer enterpriseId) {
this.enterpriseId = enterpriseId;
}
public Integer getClerkId() {
return clerkId;
}
public void setClerkId(Integer clerkId) {
this.clerkId = clerkId;
}
public String getContent() {
return content;
}
public void setContent(String content) {
this.content = content;
}
public Integer getReason() {
return reason;
}
public void setReason(Integer reason) {
this.reason = reason;
}
public Integer getLogType() {
return logType;
}
public void setLogType(Integer logType) {
this.logType = logType;
}
public String getRemark() {
return remark;
}
public void setRemark(String remark) {
this.remark = remark;
}
public Date getCreateTime() {
return createTime;
}
public void setCreateTime(Date createTime) {
this.createTime = createTime;
}
public Date getUpdateTime() {
return updateTime;
}
public void setUpdateTime(Date updateTime) {
this.updateTime = updateTime;
}
public Integer getStatus() {
return status;
}
public void setStatus(Integer status) {
this.status = status;
}
public Integer getOperatorId() {
return operatorId;
}
public void setOperatorId(Integer operatorId) {
this.operatorId = operatorId;
}
public String getOperatorName() {
return operatorName;
}
public void setOperatorName(String operatorName) {
this.operatorName = operatorName;
}
}
......@@ -72,6 +72,16 @@ public class ClerkTmpDTO implements Serializable {
private Date updateTime;
/**
*
*/
private Integer operatorId;
/**
*
*/
private String operatorName;
public Integer getClerkTmpId() {
return clerkTmpId;
}
......@@ -175,4 +185,20 @@ public class ClerkTmpDTO implements Serializable {
public void setUpdateTime(Date updateTime) {
this.updateTime = updateTime;
}
public Integer getOperatorId() {
return operatorId;
}
public void setOperatorId(Integer operatorId) {
this.operatorId = operatorId;
}
public String getOperatorName() {
return operatorName;
}
public void setOperatorName(String operatorName) {
this.operatorName = operatorName;
}
}
package com.gic.store.service;
import com.gic.api.base.commons.Page;
import com.gic.api.base.commons.ServiceResponse;
import com.gic.store.dto.ClerkLogDTO;
/**
* 导购日志
* @ClassName: ClerkLogApiService
* @Description:
* @author zhiwj
* @date 2019-11-11 14:18
*/
public interface ClerkLogApiService {
/**
* @Title: listClerkLog
* @Description:
* @author zhiwj
* @param clerkLogDTO
* @param pageNum
* @param pageSize
* @return com.gic.api.base.commons.ServiceResponse<com.gic.api.base.commons.Page<com.gic.store.dto.ClerkLogDTO>>
* @throws
*/
ServiceResponse<Page<ClerkLogDTO>> listClerkLog(ClerkLogDTO clerkLogDTO, Integer pageNum, Integer pageSize);
}
package com.gic.store.dao.mapper;
import com.gic.store.dto.ClerkLogDTO;
import com.gic.store.entity.TabClerkLog;
import com.github.pagehelper.Page;
public interface TabClerkLogMapper {
/**
* 根据主键删除
*
* @param clerkLogId 主键
* @return 更新条目数
*/
int deleteByPrimaryKey(Integer clerkLogId);
/**
* 插入一条记录
*
* @param record 实体对象
* @return 更新条目数
*/
int insert(TabClerkLog record);
/**
* 动态插入一条记录
*
* @param record 实体对象
* @return 更新条目数
*/
int insertSelective(TabClerkLog record);
/**
* 根据主键查询
*
* @param clerkLogId 主键
* @return 实体对象
*/
TabClerkLog selectByPrimaryKey(Integer clerkLogId);
/**
* 根据主键动态更新记录
*
* @param record 实体对象
* @return 更新条目数
*/
int updateByPrimaryKeySelective(TabClerkLog record);
/**
* 根据主键更新记录
*
* @param record 实体对象
* @return 更新条目数
*/
int updateByPrimaryKey(TabClerkLog record);
Page<TabClerkLog> listClerkLog(ClerkLogDTO clerkLogDTO);
}
\ No newline at end of file
......@@ -36,7 +36,7 @@ public interface TabClerkMapper {
* @param clerkId 主键
* @return 实体对象
*/
TabClerk selectByPrimaryKey(String clerkId);
TabClerk selectByPrimaryKey(Integer clerkId);
/**
* 根据主键动态更新记录
......
package com.gic.store.dao.mapper;
import com.gic.store.entity.TabStoreLog;
public interface TabStoreLogMapper {
/**
* 根据主键删除
*
* @param storeLogId 主键
* @return 更新条目数
*/
int deleteByPrimaryKey(Integer storeLogId);
/**
* 插入一条记录
*
* @param record 实体对象
* @return 更新条目数
*/
int insert(TabStoreLog record);
/**
* 动态插入一条记录
*
* @param record 实体对象
* @return 更新条目数
*/
int insertSelective(TabStoreLog record);
/**
* 根据主键查询
*
* @param storeLogId 主键
* @return 实体对象
*/
TabStoreLog selectByPrimaryKey(Integer storeLogId);
/**
* 根据主键动态更新记录
*
* @param record 实体对象
* @return 更新条目数
*/
int updateByPrimaryKeySelective(TabStoreLog record);
/**
* 根据主键更新记录
*
* @param record 实体对象
* @return 更新条目数
*/
int updateByPrimaryKey(TabStoreLog record);
}
\ No newline at end of file
package com.gic.store.entity;
import java.util.Date;
/**
* tab_clerk_log
*/
public class TabClerkLog {
/**
*
*/
private Integer clerkLogId;
/**
*
*/
private Integer enterpriseId;
/**
*
*/
private Integer clerkId;
/**
* 日志内容
*/
private String content;
/**
* 事由 1:web后台操作 2:外部触发 3:订单同步 4:会员同步
*/
private Integer reason;
/**
* 日志类型 1:导购新增 2:信息变更 3:好办用户绑定
*/
private Integer logType;
/**
* 备注
*/
private String remark;
/**
*
*/
private Date createTime;
/**
*
*/
private Date updateTime;
/**
*
*/
private Integer status;
/**
*
*/
private Integer operatorId;
/**
*
*/
private String operatorName;
public Integer getClerkLogId() {
return clerkLogId;
}
public void setClerkLogId(Integer clerkLogId) {
this.clerkLogId = clerkLogId;
}
public Integer getEnterpriseId() {
return enterpriseId;
}
public void setEnterpriseId(Integer enterpriseId) {
this.enterpriseId = enterpriseId;
}
public Integer getClerkId() {
return clerkId;
}
public void setClerkId(Integer clerkId) {
this.clerkId = clerkId;
}
public String getContent() {
return content;
}
public void setContent(String content) {
this.content = content;
}
public Integer getReason() {
return reason;
}
public void setReason(Integer reason) {
this.reason = reason;
}
public Integer getLogType() {
return logType;
}
public void setLogType(Integer logType) {
this.logType = logType;
}
public String getRemark() {
return remark;
}
public void setRemark(String remark) {
this.remark = remark;
}
public Date getCreateTime() {
return createTime;
}
public void setCreateTime(Date createTime) {
this.createTime = createTime;
}
public Date getUpdateTime() {
return updateTime;
}
public void setUpdateTime(Date updateTime) {
this.updateTime = updateTime;
}
public Integer getStatus() {
return status;
}
public void setStatus(Integer status) {
this.status = status;
}
public Integer getOperatorId() {
return operatorId;
}
public void setOperatorId(Integer operatorId) {
this.operatorId = operatorId;
}
public String getOperatorName() {
return operatorName;
}
public void setOperatorName(String operatorName) {
this.operatorName = operatorName;
}
}
\ No newline at end of file
......@@ -76,6 +76,16 @@ public class TabClerkTmp {
*/
private String signKey;
/**
*
*/
private Integer operatorId;
/**
*
*/
private String operatorName;
public Integer getClerkTmpId() {
return clerkTmpId;
}
......@@ -187,4 +197,20 @@ public class TabClerkTmp {
public void setSignKey(String signKey) {
this.signKey = signKey;
}
public Integer getOperatorId() {
return operatorId;
}
public void setOperatorId(Integer operatorId) {
this.operatorId = operatorId;
}
public String getOperatorName() {
return operatorName;
}
public void setOperatorName(String operatorName) {
this.operatorName = operatorName;
}
}
\ No newline at end of file
package com.gic.store.entity;
import java.util.Date;
/**
* tab_store_log
*/
public class TabStoreLog {
/**
*
*/
private Integer storeLogId;
/**
*
*/
private Integer enterpriseId;
/**
*
*/
private Integer storeId;
/**
*
*/
private String content;
/**
* 事由 1:web后台操作 2:外部触发 3:订单同步 4:会员同步 5:系统配置触发
*/
private Integer reason;
/**
* 日志类型 1:门店新增 2:关联导购 3:信息变更 4:门店分组变更 5:状态变更
*/
private Integer logType;
/**
*
*/
private String remark;
/**
*
*/
private Date createTime;
/**
*
*/
private Date updateTime;
/**
*
*/
private Integer status;
/**
*
*/
private Integer operatorId;
/**
*
*/
private String operatorName;
public Integer getStoreLogId() {
return storeLogId;
}
public void setStoreLogId(Integer storeLogId) {
this.storeLogId = storeLogId;
}
public Integer getEnterpriseId() {
return enterpriseId;
}
public void setEnterpriseId(Integer enterpriseId) {
this.enterpriseId = enterpriseId;
}
public Integer getStoreId() {
return storeId;
}
public void setStoreId(Integer storeId) {
this.storeId = storeId;
}
public String getContent() {
return content;
}
public void setContent(String content) {
this.content = content;
}
public Integer getReason() {
return reason;
}
public void setReason(Integer reason) {
this.reason = reason;
}
public Integer getLogType() {
return logType;
}
public void setLogType(Integer logType) {
this.logType = logType;
}
public String getRemark() {
return remark;
}
public void setRemark(String remark) {
this.remark = remark;
}
public Date getCreateTime() {
return createTime;
}
public void setCreateTime(Date createTime) {
this.createTime = createTime;
}
public Date getUpdateTime() {
return updateTime;
}
public void setUpdateTime(Date updateTime) {
this.updateTime = updateTime;
}
public Integer getStatus() {
return status;
}
public void setStatus(Integer status) {
this.status = status;
}
public Integer getOperatorId() {
return operatorId;
}
public void setOperatorId(Integer operatorId) {
this.operatorId = operatorId;
}
public String getOperatorName() {
return operatorName;
}
public void setOperatorName(String operatorName) {
this.operatorName = operatorName;
}
}
\ No newline at end of file
package com.gic.store.service;
import com.gic.store.dto.ClerkDTO;
import com.gic.store.dto.ClerkLogDTO;
import com.gic.store.entity.TabClerk;
import com.gic.store.entity.TabClerkLog;
import com.github.pagehelper.Page;
/**
*
* @Description:
* @author zhiwj
* @date 2019-11-11 9:39
*/
public interface ClerkLogService {
Integer saveClerkLogBySaveClerk(Integer enterpriseId, Integer clerkId, Integer reason, String remark, Integer operatorId, String operatorName);
Integer saveClerkLogByUpdateClerk(TabClerk oldClerk, ClerkDTO newClerk, Integer enterpriseId, Integer clerkId, Integer reason, String remark, Integer operatorId, String operatorName);
Page<TabClerkLog> listClerkLog(ClerkLogDTO clerkLogDTO, Integer pageNum, Integer pageSize);
}
......@@ -104,4 +104,6 @@ public interface ClerkService {
Integer updateClerkStatus(Integer enterpriseId, String clerkIds, Integer status);
List<TabClerk> listClerkByIds(Integer enterpriseId, String clerkIds);
TabClerk getById(Integer clerkId);
}
package com.gic.store.service.impl;
import com.gic.commons.util.GlobalInfo;
import com.gic.store.constant.ClerkGenderEnum;
import com.gic.store.constant.ClerkLogTypeEnum;
import com.gic.store.dao.mapper.TabClerkLogMapper;
import com.gic.store.dto.ClerkDTO;
import com.gic.store.dto.ClerkLogDTO;
import com.gic.store.entity.TabClerk;
import com.gic.store.entity.TabClerkLog;
import com.gic.store.service.ClerkLogService;
import com.github.pagehelper.Page;
import com.github.pagehelper.PageHelper;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.Date;
/**
*
* @Description:
* @author zhiwj
* @date 2019-11-11 9:43
*/
@Service
public class ClerkLogServiceImpl implements ClerkLogService {
@Autowired
private TabClerkLogMapper tabClerkLogMapper;
@Override
public Integer saveClerkLogBySaveClerk(Integer enterpriseId, Integer clerkId, Integer reason, String remark, Integer operatorId, String operatorName) {
TabClerkLog clerkLog = new TabClerkLog();
clerkLog.setEnterpriseId(enterpriseId);
clerkLog.setClerkId(clerkId);
clerkLog.setContent("导购新增");
clerkLog.setReason(reason);
clerkLog.setLogType(ClerkLogTypeEnum.SAVE.getCode());
clerkLog.setRemark(remark);
clerkLog.setCreateTime(new Date());
clerkLog.setStatus(GlobalInfo.DATA_STATUS_NORMAL);
clerkLog.setOperatorId(operatorId);
clerkLog.setOperatorName(operatorName);
return tabClerkLogMapper.insertSelective(clerkLog);
}
@Override
public Integer saveClerkLogByUpdateClerk(TabClerk oldClerk, ClerkDTO newClerk, Integer enterpriseId, Integer clerkId, Integer reason, String remark, Integer operatorId, String operatorName) {
TabClerkLog clerkLog = new TabClerkLog();
clerkLog.setEnterpriseId(enterpriseId);
clerkLog.setClerkId(clerkId);
clerkLog.setReason(reason);
clerkLog.setLogType(ClerkLogTypeEnum.UPDATE.getCode());
clerkLog.setRemark(remark);
clerkLog.setCreateTime(new Date());
clerkLog.setStatus(GlobalInfo.DATA_STATUS_NORMAL);
clerkLog.setOperatorId(operatorId);
clerkLog.setOperatorName(operatorName);
StringBuilder sb = new StringBuilder();
if (StringUtils.isNotBlank(newClerk.getClerkName()) && !StringUtils.equals(newClerk.getClerkName(), oldClerk.getClerkName())) {
sb.append("导购名称").append("【").append(oldClerk.getClerkName()).append("】")
.append("变更为【").append(newClerk.getClerkName()).append("】");
}
if (newClerk.getClerkGender() != null && !newClerk.getClerkGender().equals(oldClerk.getClerkGender())) {
sb.append("性别").append("【").append(ClerkGenderEnum.parseCode(oldClerk.getClerkGender())).append("】")
.append("变更为【").append(ClerkGenderEnum.parseCode(newClerk.getClerkGender())).append("】");
}
if (StringUtils.isNotBlank(newClerk.getNationcode()) && !StringUtils.equals(newClerk.getNationcode(), oldClerk.getNationcode())) {
sb.append("区号").append("【").append(oldClerk.getNationcode()).append("】")
.append("变更为【").append(newClerk.getNationcode()).append("】");
}
if (StringUtils.isNotBlank(newClerk.getPhoneNumber()) && !StringUtils.equals(newClerk.getPhoneNumber(), oldClerk.getPhoneNumber())) {
sb.append("手机号").append("【").append(oldClerk.getPhoneNumber()).append("】")
.append("变更为【").append(newClerk.getPhoneNumber()).append("】");
}
if (StringUtils.isNotBlank(newClerk.getPositionName()) && !StringUtils.equals(newClerk.getPositionName(), oldClerk.getPositionName())) {
sb.append("职位").append("【").append(oldClerk.getPositionName()).append("】")
.append("变更为【").append(newClerk.getPositionName()).append("】");
}
clerkLog.setContent(sb.toString());
return tabClerkLogMapper.insertSelective(clerkLog);
}
@Override
public Page<TabClerkLog> listClerkLog(ClerkLogDTO clerkLogDTO, Integer pageNum, Integer pageSize) {
PageHelper.startPage(pageNum, pageSize);
return tabClerkLogMapper.listClerkLog(clerkLogDTO);
}
}
......@@ -117,4 +117,9 @@ public class ClerkServiceImpl implements ClerkService {
}
}
@Override
public TabClerk getById(Integer clerkId) {
return this.tabClerkMapper.selectByPrimaryKey(clerkId);
}
}
......@@ -32,9 +32,10 @@ public class ClerkApiServiceImpl implements ClerkApiService {
private StoreGroupService storeGroupService;
@Autowired
private StoreService storeService;
@Autowired
private StoreApiService storeApiService;
@Autowired
private ClerkLogService clerkLogService;
@Override
public ServiceResponse saveOrUpdate(ClerkDTO clerkDTO) {
......@@ -52,9 +53,13 @@ public class ClerkApiServiceImpl implements ClerkApiService {
return ServiceResponse.failure(ErrorCode.PARAMETER_ERROR.getCode(), "导购名称重复");
}
if (clerkDTO.getClerkId() == null) {
clerkService.save(clerkDTO);
// Integer saveClerkLogBySaveClerk(Integer reason, Integer enterpriseId, Integer clerkId, String remark, Integer operatorId, String operatorName);
Integer id = clerkService.save(clerkDTO);
clerkLogService.saveClerkLogBySaveClerk(clerkDTO.getEnterpriseId(), id, clerkDTO.getReason(), clerkDTO.getRemark(), clerkDTO.getOperatorId(), clerkDTO.getOperatorName());
} else {
TabClerk oldClerk = this.clerkService.getById(clerkDTO.getClerkId());
clerkService.update(clerkDTO);
clerkLogService.saveClerkLogByUpdateClerk(oldClerk, clerkDTO, clerkDTO.getEnterpriseId(), clerkDTO.getClerkId(), clerkDTO.getReason(), clerkDTO.getRemark(), clerkDTO.getOperatorId(), clerkDTO.getOperatorName());
}
return ServiceResponse.success();
}
......
package com.gic.store.service.outer.impl;
import com.gic.api.base.commons.Page;
import com.gic.api.base.commons.ServiceResponse;
import com.gic.commons.util.PageHelperUtils;
import com.gic.enterprise.response.EnterpriseServiceResponse;
import com.gic.store.dto.ClerkLogDTO;
import com.gic.store.entity.TabClerkLog;
import com.gic.store.service.ClerkLogApiService;
import com.gic.store.service.ClerkLogService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
/**
*
* @Description:
* @author zhiwj
* @date 2019-11-11 14:18
*/
@Service("clerkLogApiService")
public class ClerkLogApiServiceImpl implements ClerkLogApiService {
@Autowired
private ClerkLogService clerkLogService;
@Override
public ServiceResponse<Page<ClerkLogDTO>> listClerkLog(ClerkLogDTO clerkLogDTO, Integer pageNum, Integer pageSize) {
com.github.pagehelper.Page<TabClerkLog> clerkLog = clerkLogService.listClerkLog(clerkLogDTO, pageNum, pageSize);
Page<ClerkLogDTO> page = PageHelperUtils.changePageHelperToCurrentPage(clerkLog, ClerkLogDTO.class);
return EnterpriseServiceResponse.success(page);
}
}
......@@ -2,10 +2,7 @@ package com.gic.store.service.outer.impl;
import com.gic.api.base.commons.ServiceResponse;
import com.gic.commons.util.EntityUtil;
import com.gic.store.constant.Constants;
import com.gic.store.constant.GenderEnum;
import com.gic.store.constant.StoreImportEnum;
import com.gic.store.constant.StoreOwnTypeEnum;
import com.gic.store.constant.*;
import com.gic.store.dto.ClerkDTO;
import com.gic.store.dto.ClerkTmpDTO;
import com.gic.store.dto.StoreDTO;
......@@ -110,6 +107,11 @@ public class ClerkTaskServiceImpl extends AbstractTaskAllocationOperation implem
clerkDTO.setPhoneNumber(t.getPhoneNumber());
clerkDTO.setPositionName(t.getPositionName());
clerkDTO.setReason(ClerkLogReasonEnum.WEB.getCode());
clerkDTO.setRemark("批量导入");
clerkDTO.setOperatorId(t.getOperatorId());
clerkDTO.setOperatorName(t.getOperatorName());
ServiceResponse serviceResponse = clerkApiService.saveOrUpdate(clerkDTO);
String msg;
if (serviceResponse.isSuccess()) {
......
......@@ -46,6 +46,7 @@
<dubbo:reference interface="com.gic.search.business.api.service.EsBusinessOperaApiService" id="esBusinessOperaApiService" timeout="60000" />
<dubbo:service interface="com.gic.store.service.ClerkImportApiService" ref="clerkImportApiService" timeout="6000" />
<dubbo:service interface="com.gic.store.service.ClerkTaskApiService" ref="clerkTaskApiService" timeout="6000" />
<dubbo:service interface="com.gic.store.service.ClerkLogApiService" ref="clerkLogApiService" timeout="6000" />
<dubbo:service interface="com.gic.store.service.StoreWidgetApiService" ref="storeWidgetApiService" timeout="6000" />
<dubbo:service interface="com.gic.store.service.StoreAuthorizationApiService" ref="storeAuthorizationApiService" timeout="60000" />
<dubbo:reference interface="com.gic.enterprise.service.PlatformBrandApiService" id="platformBrandApiService" timeout="6000" />
......
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.gic.store.dao.mapper.TabClerkLogMapper">
<resultMap id="BaseResultMap" type="com.gic.store.entity.TabClerkLog">
<id column="clerk_log_id" jdbcType="INTEGER" property="clerkLogId" />
<result column="enterprise_id" jdbcType="INTEGER" property="enterpriseId" />
<result column="clerk_id" jdbcType="INTEGER" property="clerkId" />
<result column="content" jdbcType="VARCHAR" property="content" />
<result column="reason" jdbcType="INTEGER" property="reason" />
<result column="log_type" jdbcType="INTEGER" property="logType" />
<result column="remark" jdbcType="VARCHAR" property="remark" />
<result column="create_time" jdbcType="TIMESTAMP" property="createTime" />
<result column="update_time" jdbcType="TIMESTAMP" property="updateTime" />
<result column="status" jdbcType="INTEGER" property="status" />
<result column="operator_id" jdbcType="INTEGER" property="operatorId" />
<result column="operator_name" jdbcType="VARCHAR" property="operatorName" />
</resultMap>
<sql id="Base_Column_List">
clerk_log_id, enterprise_id, clerk_id, content, reason, log_type, remark, create_time,
update_time, status, operator_id, operator_name
</sql>
<select id="selectByPrimaryKey" parameterType="java.lang.Integer" resultMap="BaseResultMap">
select
<include refid="Base_Column_List" />
from tab_clerk_log
where clerk_log_id = #{clerkLogId,jdbcType=INTEGER}
</select>
<delete id="deleteByPrimaryKey" parameterType="java.lang.Integer">
delete from tab_clerk_log
where clerk_log_id = #{clerkLogId,jdbcType=INTEGER}
</delete>
<insert id="insert" parameterType="com.gic.store.entity.TabClerkLog">
insert into tab_clerk_log (clerk_log_id, enterprise_id, clerk_id,
content, reason, log_type,
remark, create_time, update_time,
status, operator_id, operator_name
)
values (#{clerkLogId,jdbcType=INTEGER}, #{enterpriseId,jdbcType=INTEGER}, #{clerkId,jdbcType=INTEGER},
#{content,jdbcType=VARCHAR}, #{reason,jdbcType=INTEGER}, #{logType,jdbcType=INTEGER},
#{remark,jdbcType=VARCHAR}, #{createTime,jdbcType=TIMESTAMP}, #{updateTime,jdbcType=TIMESTAMP},
#{status,jdbcType=INTEGER}, #{operatorId,jdbcType=INTEGER}, #{operatorName,jdbcType=VARCHAR}
)
</insert>
<insert id="insertSelective" parameterType="com.gic.store.entity.TabClerkLog">
insert into tab_clerk_log
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="clerkLogId != null">
clerk_log_id,
</if>
<if test="enterpriseId != null">
enterprise_id,
</if>
<if test="clerkId != null">
clerk_id,
</if>
<if test="content != null">
content,
</if>
<if test="reason != null">
reason,
</if>
<if test="logType != null">
log_type,
</if>
<if test="remark != null">
remark,
</if>
<if test="createTime != null">
create_time,
</if>
<if test="updateTime != null">
update_time,
</if>
<if test="status != null">
status,
</if>
<if test="operatorId != null">
operator_id,
</if>
<if test="operatorName != null">
operator_name,
</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="clerkLogId != null">
#{clerkLogId,jdbcType=INTEGER},
</if>
<if test="enterpriseId != null">
#{enterpriseId,jdbcType=INTEGER},
</if>
<if test="clerkId != null">
#{clerkId,jdbcType=INTEGER},
</if>
<if test="content != null">
#{content,jdbcType=VARCHAR},
</if>
<if test="reason != null">
#{reason,jdbcType=INTEGER},
</if>
<if test="logType != null">
#{logType,jdbcType=INTEGER},
</if>
<if test="remark != null">
#{remark,jdbcType=VARCHAR},
</if>
<if test="createTime != null">
#{createTime,jdbcType=TIMESTAMP},
</if>
<if test="updateTime != null">
#{updateTime,jdbcType=TIMESTAMP},
</if>
<if test="status != null">
#{status,jdbcType=INTEGER},
</if>
<if test="operatorId != null">
#{operatorId,jdbcType=INTEGER},
</if>
<if test="operatorName != null">
#{operatorName,jdbcType=VARCHAR},
</if>
</trim>
</insert>
<update id="updateByPrimaryKeySelective" parameterType="com.gic.store.entity.TabClerkLog">
update tab_clerk_log
<set>
<if test="enterpriseId != null">
enterprise_id = #{enterpriseId,jdbcType=INTEGER},
</if>
<if test="clerkId != null">
clerk_id = #{clerkId,jdbcType=INTEGER},
</if>
<if test="content != null">
content = #{content,jdbcType=VARCHAR},
</if>
<if test="reason != null">
reason = #{reason,jdbcType=INTEGER},
</if>
<if test="logType != null">
log_type = #{logType,jdbcType=INTEGER},
</if>
<if test="remark != null">
remark = #{remark,jdbcType=VARCHAR},
</if>
<if test="createTime != null">
create_time = #{createTime,jdbcType=TIMESTAMP},
</if>
<if test="updateTime != null">
update_time = #{updateTime,jdbcType=TIMESTAMP},
</if>
<if test="status != null">
status = #{status,jdbcType=INTEGER},
</if>
<if test="operatorId != null">
operator_id = #{operatorId,jdbcType=INTEGER},
</if>
<if test="operatorName != null">
operator_name = #{operatorName,jdbcType=VARCHAR},
</if>
</set>
where clerk_log_id = #{clerkLogId,jdbcType=INTEGER}
</update>
<update id="updateByPrimaryKey" parameterType="com.gic.store.entity.TabClerkLog">
update tab_clerk_log
set enterprise_id = #{enterpriseId,jdbcType=INTEGER},
clerk_id = #{clerkId,jdbcType=INTEGER},
content = #{content,jdbcType=VARCHAR},
reason = #{reason,jdbcType=INTEGER},
log_type = #{logType,jdbcType=INTEGER},
remark = #{remark,jdbcType=VARCHAR},
create_time = #{createTime,jdbcType=TIMESTAMP},
update_time = #{updateTime,jdbcType=TIMESTAMP},
status = #{status,jdbcType=INTEGER},
operator_id = #{operatorId,jdbcType=INTEGER},
operator_name = #{operatorName,jdbcType=VARCHAR}
where clerk_log_id = #{clerkLogId,jdbcType=INTEGER}
</update>
<select id="listClerkLog" resultMap="BaseResultMap">
select
<include refid="Base_Column_List" />
from tab_clerk_log
where status = 1
<if test="reason != null ">
and reason = #{reason}
</if>
<if test="logType != null ">
and log_type = #{logType}
</if>
<if test="content != null and content != '' ">
and content like concat('%', #{content}, '%')
</if>
</select>
</mapper>
\ No newline at end of file
......@@ -43,6 +43,9 @@
#{status,jdbcType=INTEGER})
</insert>
<insert id="insertSelective" parameterType="com.gic.store.entity.TabClerk">
<selectKey keyProperty="clerkId" order="AFTER" resultType="java.lang.Integer">
SELECT LAST_INSERT_ID()
</selectKey>
insert into tab_clerk
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="clerkId != null">
......
......@@ -16,11 +16,13 @@
<result column="update_time" jdbcType="TIMESTAMP" property="updateTime" />
<result column="error_message" jdbcType="VARCHAR" property="errorMessage" />
<result column="sign_key" jdbcType="VARCHAR" property="signKey" />
<result column="operator_id" jdbcType="INTEGER" property="operatorId" />
<result column="operator_name" jdbcType="VARCHAR" property="operatorName" />
</resultMap>
<sql id="Base_Column_List">
clerk_tmp_id, enterprise_id, clerk_name, clerk_code, store_name, store_code, position_name,
clerk_gender, nationcode, phone_number, create_time, update_time, error_message,
sign_key
sign_key, operator_id, operator_name
</sql>
<select id="selectByPrimaryKey" parameterType="java.lang.Integer" resultMap="BaseResultMap">
select
......@@ -37,12 +39,14 @@
clerk_code, store_name, store_code,
position_name, clerk_gender, nationcode,
phone_number, create_time, update_time,
error_message, sign_key)
error_message, sign_key, operator_id,
operator_name)
values (#{clerkTmpId,jdbcType=INTEGER}, #{enterpriseId,jdbcType=INTEGER}, #{clerkName,jdbcType=VARCHAR},
#{clerkCode,jdbcType=VARCHAR}, #{storeName,jdbcType=VARCHAR}, #{storeCode,jdbcType=VARCHAR},
#{positionName,jdbcType=VARCHAR}, #{clerkGender,jdbcType=VARCHAR}, #{nationcode,jdbcType=VARCHAR},
#{phoneNumber,jdbcType=VARCHAR}, #{createTime,jdbcType=TIMESTAMP}, #{updateTime,jdbcType=TIMESTAMP},
#{errorMessage,jdbcType=VARCHAR}, #{signKey,jdbcType=VARCHAR})
#{errorMessage,jdbcType=VARCHAR}, #{signKey,jdbcType=VARCHAR}, #{operatorId,jdbcType=INTEGER},
#{operatorName,jdbcType=VARCHAR})
</insert>
<insert id="insertSelective" parameterType="com.gic.store.entity.TabClerkTmp">
insert into tab_clerk_tmp
......@@ -89,6 +93,12 @@
<if test="signKey != null">
sign_key,
</if>
<if test="operatorId != null">
operator_id,
</if>
<if test="operatorName != null">
operator_name,
</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="clerkTmpId != null">
......@@ -133,6 +143,12 @@
<if test="signKey != null">
#{signKey,jdbcType=VARCHAR},
</if>
<if test="operatorId != null">
#{operatorId,jdbcType=INTEGER},
</if>
<if test="operatorName != null">
#{operatorName,jdbcType=VARCHAR},
</if>
</trim>
</insert>
<update id="updateByPrimaryKeySelective" parameterType="com.gic.store.entity.TabClerkTmp">
......@@ -177,6 +193,12 @@
<if test="signKey != null">
sign_key = #{signKey,jdbcType=VARCHAR},
</if>
<if test="operatorId != null">
operator_id = #{operatorId,jdbcType=INTEGER},
</if>
<if test="operatorName != null">
operator_name = #{operatorName,jdbcType=VARCHAR},
</if>
</set>
where clerk_tmp_id = #{clerkTmpId,jdbcType=INTEGER}
</update>
......@@ -194,7 +216,9 @@
create_time = #{createTime,jdbcType=TIMESTAMP},
update_time = #{updateTime,jdbcType=TIMESTAMP},
error_message = #{errorMessage,jdbcType=VARCHAR},
sign_key = #{signKey,jdbcType=VARCHAR}
sign_key = #{signKey,jdbcType=VARCHAR},
operator_id = #{operatorId,jdbcType=INTEGER},
operator_name = #{operatorName,jdbcType=VARCHAR}
where clerk_tmp_id = #{clerkTmpId,jdbcType=INTEGER}
</update>
<select id="countByClerk" resultType="java.lang.Integer">
......
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.gic.store.dao.mapper.TabStoreLogMapper">
<resultMap id="BaseResultMap" type="com.gic.store.entity.TabStoreLog">
<id column="store_log_id" jdbcType="INTEGER" property="storeLogId" />
<result column="enterprise_id" jdbcType="INTEGER" property="enterpriseId" />
<result column="store_id" jdbcType="INTEGER" property="storeId" />
<result column="content" jdbcType="VARCHAR" property="content" />
<result column="reason" jdbcType="INTEGER" property="reason" />
<result column="log_type" jdbcType="INTEGER" property="logType" />
<result column="remark" jdbcType="VARCHAR" property="remark" />
<result column="create_time" jdbcType="TIMESTAMP" property="createTime" />
<result column="update_time" jdbcType="TIMESTAMP" property="updateTime" />
<result column="status" jdbcType="INTEGER" property="status" />
<result column="operator_id" jdbcType="INTEGER" property="operatorId" />
<result column="operator_name" jdbcType="VARCHAR" property="operatorName" />
</resultMap>
<sql id="Base_Column_List">
store_log_id, enterprise_id, store_id, content, reason, log_type, remark, create_time,
update_time, status, operator_id, operator_name
</sql>
<select id="selectByPrimaryKey" parameterType="java.lang.Integer" resultMap="BaseResultMap">
select
<include refid="Base_Column_List" />
from tab_store_log
where store_log_id = #{storeLogId,jdbcType=INTEGER}
</select>
<delete id="deleteByPrimaryKey" parameterType="java.lang.Integer">
delete from tab_store_log
where store_log_id = #{storeLogId,jdbcType=INTEGER}
</delete>
<insert id="insert" parameterType="com.gic.store.entity.TabStoreLog">
insert into tab_store_log (store_log_id, enterprise_id, store_id,
content, reason, log_type,
remark, create_time, update_time,
status, operator_id, operator_name
)
values (#{storeLogId,jdbcType=INTEGER}, #{enterpriseId,jdbcType=INTEGER}, #{storeId,jdbcType=INTEGER},
#{content,jdbcType=VARCHAR}, #{reason,jdbcType=INTEGER}, #{logType,jdbcType=INTEGER},
#{remark,jdbcType=VARCHAR}, #{createTime,jdbcType=TIMESTAMP}, #{updateTime,jdbcType=TIMESTAMP},
#{status,jdbcType=INTEGER}, #{operatorId,jdbcType=INTEGER}, #{operatorName,jdbcType=VARCHAR}
)
</insert>
<insert id="insertSelective" parameterType="com.gic.store.entity.TabStoreLog">
insert into tab_store_log
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="storeLogId != null">
store_log_id,
</if>
<if test="enterpriseId != null">
enterprise_id,
</if>
<if test="storeId != null">
store_id,
</if>
<if test="content != null">
content,
</if>
<if test="reason != null">
reason,
</if>
<if test="logType != null">
log_type,
</if>
<if test="remark != null">
remark,
</if>
<if test="createTime != null">
create_time,
</if>
<if test="updateTime != null">
update_time,
</if>
<if test="status != null">
status,
</if>
<if test="operatorId != null">
operator_id,
</if>
<if test="operatorName != null">
operator_name,
</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="storeLogId != null">
#{storeLogId,jdbcType=INTEGER},
</if>
<if test="enterpriseId != null">
#{enterpriseId,jdbcType=INTEGER},
</if>
<if test="storeId != null">
#{storeId,jdbcType=INTEGER},
</if>
<if test="content != null">
#{content,jdbcType=VARCHAR},
</if>
<if test="reason != null">
#{reason,jdbcType=INTEGER},
</if>
<if test="logType != null">
#{logType,jdbcType=INTEGER},
</if>
<if test="remark != null">
#{remark,jdbcType=VARCHAR},
</if>
<if test="createTime != null">
#{createTime,jdbcType=TIMESTAMP},
</if>
<if test="updateTime != null">
#{updateTime,jdbcType=TIMESTAMP},
</if>
<if test="status != null">
#{status,jdbcType=INTEGER},
</if>
<if test="operatorId != null">
#{operatorId,jdbcType=INTEGER},
</if>
<if test="operatorName != null">
#{operatorName,jdbcType=VARCHAR},
</if>
</trim>
</insert>
<update id="updateByPrimaryKeySelective" parameterType="com.gic.store.entity.TabStoreLog">
update tab_store_log
<set>
<if test="enterpriseId != null">
enterprise_id = #{enterpriseId,jdbcType=INTEGER},
</if>
<if test="storeId != null">
store_id = #{storeId,jdbcType=INTEGER},
</if>
<if test="content != null">
content = #{content,jdbcType=VARCHAR},
</if>
<if test="reason != null">
reason = #{reason,jdbcType=INTEGER},
</if>
<if test="logType != null">
log_type = #{logType,jdbcType=INTEGER},
</if>
<if test="remark != null">
remark = #{remark,jdbcType=VARCHAR},
</if>
<if test="createTime != null">
create_time = #{createTime,jdbcType=TIMESTAMP},
</if>
<if test="updateTime != null">
update_time = #{updateTime,jdbcType=TIMESTAMP},
</if>
<if test="status != null">
status = #{status,jdbcType=INTEGER},
</if>
<if test="operatorId != null">
operator_id = #{operatorId,jdbcType=INTEGER},
</if>
<if test="operatorName != null">
operator_name = #{operatorName,jdbcType=VARCHAR},
</if>
</set>
where store_log_id = #{storeLogId,jdbcType=INTEGER}
</update>
<update id="updateByPrimaryKey" parameterType="com.gic.store.entity.TabStoreLog">
update tab_store_log
set enterprise_id = #{enterpriseId,jdbcType=INTEGER},
store_id = #{storeId,jdbcType=INTEGER},
content = #{content,jdbcType=VARCHAR},
reason = #{reason,jdbcType=INTEGER},
log_type = #{logType,jdbcType=INTEGER},
remark = #{remark,jdbcType=VARCHAR},
create_time = #{createTime,jdbcType=TIMESTAMP},
update_time = #{updateTime,jdbcType=TIMESTAMP},
status = #{status,jdbcType=INTEGER},
operator_id = #{operatorId,jdbcType=INTEGER},
operator_name = #{operatorName,jdbcType=VARCHAR}
where store_log_id = #{storeLogId,jdbcType=INTEGER}
</update>
</mapper>
\ No newline at end of file
package com.gic.store.web.controller;
import com.alibaba.fastjson.JSON;
import com.gic.api.base.commons.Page;
import com.gic.api.base.commons.ServiceResponse;
import com.gic.commons.util.EntityUtil;
import com.gic.commons.webapi.reponse.RestResponse;
import com.gic.download.utils.log.LogUtils;
import com.gic.enterprise.constants.Constants;
import com.gic.enterprise.utils.ResultControllerUtils;
import com.gic.enterprise.utils.UserDetailUtils;
import com.gic.store.constant.ClerkLogReasonEnum;
import com.gic.store.dto.ClerkDTO;
import com.gic.store.dto.ClerkLogDTO;
import com.gic.store.dto.ClerkSearchDTO;
import com.gic.store.service.ClerkApiService;
import com.gic.store.service.ClerkLogApiService;
import com.gic.store.web.qo.PageQO;
import com.gic.store.web.qo.clerk.ClerkQO;
import org.apache.commons.collections.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -29,6 +35,8 @@ public class ClerkController {
@Autowired
private ClerkApiService clerkApiService;
@Autowired
private ClerkLogApiService clerkLogApiService;
@RequestMapping("/list-clerk-field")
public RestResponse listClerkField() {
......@@ -42,6 +50,10 @@ public class ClerkController {
Integer enterpriseId = UserDetailUtils.getUserDetail().getEnterpriseId();
ClerkDTO clerkDTO = EntityUtil.changeEntityByOrika(ClerkDTO.class, clerkQO);
clerkDTO.setEnterpriseId(enterpriseId);
clerkDTO.setReason(ClerkLogReasonEnum.WEB.getCode());
clerkDTO.setRemark("手工新增");
clerkDTO.setOperatorId(UserDetailUtils.getUserDetail().getUserId());
clerkDTO.setOperatorName(UserDetailUtils.getUserDetail().getUserInfo().getUserName());
ServiceResponse serviceResponse = clerkApiService.saveOrUpdate(clerkDTO);
if (serviceResponse.isSuccess()) {
LogUtils.createLog((clerkQO.getClerkId() == null ? "新增" : "修改") + "导购", clerkQO.getClerkName());
......@@ -81,4 +93,14 @@ public class ClerkController {
}
}
@RequestMapping("/list-clerk-log")
public RestResponse listClerkLog(PageQO pageQO, String content, Integer reason, Integer logType) {
ClerkLogDTO clerkLogDTO = new ClerkLogDTO();
clerkLogDTO.setContent(content);
clerkLogDTO.setReason(reason);
clerkLogDTO.setLogType(logType);
ServiceResponse<Page<ClerkLogDTO>> response = clerkLogApiService.listClerkLog(clerkLogDTO, pageQO.getCurrentPage(), pageQO.getPageSize());
return ResultControllerUtils.commonResult(response);
}
}
......@@ -116,6 +116,8 @@ public class ClerkImportController {
try {
bean.setSignKey(uuId);
// 保存数据到临时表
bean.setOperatorId(UserDetailUtils.getUserDetail().getUserId());
bean.setOperatorName(UserDetailUtils.getUserDetail().getUserInfo().getUserName());
clerkImportApiService.save(bean);
} catch (Exception e) {
logger.warn(e);
......
......@@ -39,6 +39,7 @@
<!--导购-->
<dubbo:reference interface="com.gic.store.service.ClerkApiService" id="clerkApiService" timeout="60000" />
<dubbo:reference interface="com.gic.store.service.ClerkImportApiService" id="clerkImportApiService" timeout="60000" />
<dubbo:reference interface="com.gic.store.service.ClerkLogApiService" id="clerkLogApiService" timeout="60000" />
<!-- 平台品牌 -->
<dubbo:reference interface="com.gic.enterprise.service.PlatformBrandApiService" id="platformBrandApiService" timeout="60000" />
<dubbo:reference interface="com.gic.store.service.StoreAuthorizationApiService" id="storeAuthorizationApiService" timeout="60000" />
......
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