Commit d8d67239 by 陶光胜

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

parents 0b173859 00a0d1e9
......@@ -221,4 +221,27 @@ public interface ClerkApiService {
* @return com.gic.api.base.commons.ServiceResponse<java.lang.Void>


*/
ServiceResponse<Void> syncClerkToWeimobWhenModify(String param);
/**
* 好办查询导购列表信息接口(请求参数:clekIds)
* @Title: listHaobanClerk
* @Description:
* @author zhiwj
* @param clerkIds
* @return com.gic.api.base.commons.ServiceResponse<java.util.List<com.gic.store.dto.ClerkDTO>>
* @throws
*/
ServiceResponse<List<ClerkDTO>> listHaobanClerk(List<Integer> clerkIds);
/**
* @Title: listHaobanClerk
* @Description:
* @author zhiwj
* @param enterpriseIdList
* @param keyword
* @param storeInfoIdList
* @return com.gic.api.base.commons.ServiceResponse<java.util.List<com.gic.store.dto.ClerkDTO>>
* @throws
*/
ServiceResponse<List<ClerkDTO>> listHaobanClerk(List<Integer> enterpriseIdList, String keyword, List<Integer> storeInfoIdList);
}
......@@ -78,4 +78,8 @@ public interface TabClerkMapper {
@MapKey("clerkPositionId")
Map<Integer, Map<String, Object>> countMapByPosition(@Param("enterpriseId") Integer enterpriseId, @Param("ids") List<Integer> positionList);
void updatePosition(@Param("enterpriseId") Integer enterpriseId, @Param("positionId") Integer clerkPositionId, @Param("positionName") String positionName);
List<TabClerk> listHaobanClerk(@Param("enterpriseIdList") List<Integer> enterpriseIdList, @Param("keyword") String keyword, @Param("storeInfoIdList") List<Integer> storeInfoIdList);
}
\ No newline at end of file
......@@ -114,6 +114,8 @@ public interface ClerkService {
List<TabClerk> listClerkByIds(Integer enterpriseId, String clerkIds);
List<TabClerk> listClerkByIds(List<Integer> clerkIdList);
TabClerk getById(Integer clerkId);
List<TabClerk> listClerkByStoreInfoId(Integer enterpriseId, String search);
......@@ -123,4 +125,8 @@ public interface ClerkService {
TabClerk getClerkLeaderByStoreInfoId(Integer enterpriseId, Integer storeInfoId);
Map<Integer, Integer> countMapByPosition(Integer enterpriseId, List<Integer> positionList);
void updatePosition(Integer enterpriseId, Integer clerkPositionId, String positionName);
List<TabClerk> listHaobanClerk(List<Integer> enterpriseIdList, String keyword, List<Integer> storeInfoIdList);
}
......@@ -49,7 +49,7 @@ public class ClerkPositionServiceImpl implements ClerkPositionService {
clerkPosition.setCreateTime(new Date());
clerkPosition.setStatus(1);
Double sort = tabClerkPositionMapper.getMinSort(clerkPositionDTO.getEnterpriseId());
clerkPosition.setSort(sort == null ? 1d : sort - 1d);
clerkPosition.setSort(sort == null ? 1d : sort + 1d);
tabClerkPositionMapper.insertSelective(clerkPosition);
}
......
......@@ -143,6 +143,11 @@ public class ClerkServiceImpl implements ClerkService {
}
@Override
public List<TabClerk> listClerkByIds(List<Integer> clerkIdList) {
return tabClerkMapper.listClerkByIds(null, clerkIdList);
}
@Override
public TabClerk getById(Integer clerkId) {
return this.tabClerkMapper.selectByPrimaryKey(clerkId);
}
......@@ -172,4 +177,14 @@ public class ClerkServiceImpl implements ClerkService {
return resultMap;
}
@Override
public void updatePosition(Integer enterpriseId, Integer clerkPositionId, String positionName) {
tabClerkMapper.updatePosition(enterpriseId, clerkPositionId, positionName);
}
@Override
public List<TabClerk> listHaobanClerk(List<Integer> enterpriseIdList, String keyword, List<Integer> storeInfoIdList) {
return tabClerkMapper.listHaobanClerk(enterpriseIdList, keyword, storeInfoIdList);
}
}
......@@ -66,6 +66,8 @@ public class ClerkApiServiceImpl implements ClerkApiService {
private WeimobStoreSiteService weimobStoreSiteService;
@Autowired
private WmStoreSyncLogApiService wmStoreSyncLogApiService;
@Autowired
private ClerkPositionService clerkPositionService;
@Override
public ServiceResponse saveOrUpdate(ClerkDTO clerkDTO) {
......@@ -97,6 +99,10 @@ public class ClerkApiServiceImpl implements ClerkApiService {
clerkDTO.getClerkId())) {
return ServiceResponse.failure(ErrorCode.PARAMETER_ERROR.getCode(), "门店下导购名称重复");
}
if (clerkDTO.getPositionId() == null) {
clerkDTO.setPositionId(com.gic.store.constant.Constants.CLERK_POSITION_ID);
}
// 店长逻辑
// 如果门店下已经存在有导购是店长, 并且当前导购是店长 则做替换
// 如果门店下没有导购是店长,将当前导购设置成店长
......@@ -109,6 +115,9 @@ public class ClerkApiServiceImpl implements ClerkApiService {
clerkDTO.setPositionId(com.gic.store.constant.Constants.CLERK_LEADER_POSITION_ID);
}
String positionName = this.clerkPositionService.getByClerkPositionId(clerkDTO.getPositionId()).getPositionName();
clerkDTO.setPositionName(positionName);
if (clerkDTO.getClerkId() == null) {
// Integer saveClerkLogBySaveClerk(Integer reason, Integer enterpriseId, Integer clerkId, String remark, Integer operatorId, String operatorName);
Integer id = clerkService.save(clerkDTO);
......@@ -792,6 +801,35 @@ public class ClerkApiServiceImpl implements ClerkApiService {
return ServiceResponse.success();
}
@Override
public ServiceResponse<List<ClerkDTO>> listHaobanClerk(List<Integer> clerkIdList) {
List<TabClerk> clerkList = this.clerkService.listClerkByIds(clerkIdList);
return haobanClerk(clerkList);
}
@Override
public ServiceResponse<List<ClerkDTO>> listHaobanClerk(List<Integer> enterpriseIdList, String keyword, List<Integer> storeInfoIdList) {
List<TabClerk> clerkList = this.clerkService.listHaobanClerk(enterpriseIdList, keyword, storeInfoIdList);
return haobanClerk(clerkList);
}
private ServiceResponse<List<ClerkDTO>> haobanClerk(List<TabClerk> clerkList) {
List<ClerkDTO> clerkDTOS = EntityUtil.changeEntityListByJSON(ClerkDTO.class, clerkList);
if (CollectionUtils.isNotEmpty(clerkDTOS)) {
List<Integer> storeInfoIdList = clerkDTOS.stream().map(ClerkDTO::getStoreInfoId).collect(Collectors.toList());
StoreSearchDBDTO storeSearchDBDTO = new StoreSearchDBDTO();
storeSearchDBDTO.setStoreInfoIdList(storeInfoIdList);
com.github.pagehelper.Page<StoreDTO> listStore = storeService.listStore(storeSearchDBDTO, 1, Integer.MAX_VALUE);
if (CollectionUtils.isNotEmpty(listStore)) {
Map<Integer, String> map = listStore.getResult().stream().collect(Collectors.toMap(StoreDTO::getStoreInfoId, StoreDTO::getStoreName, (e1, e2) -> e1));
for (ClerkDTO clerkDTO : clerkDTOS) {
clerkDTO.setStoreName(map.get(clerkDTO.getStoreInfoId()));
}
}
}
return ServiceResponse.success(clerkDTOS);
}
private void asynClerkInfoToWeimobMQ(Integer wmMallStoreId, Integer enterpriseId, WeimobGuiderSynDTO wmGuiderDTO) {
GicMQClient client = GICMQClientUtil.getClientInstance();
Map<String, Object> params = new HashMap<>(4);
......
......@@ -51,6 +51,8 @@ public class ClerkPositionApiServiceImpl implements ClerkPositionApiService {
}
// 保存实体
clerkPositionService.update(clerkPositionDTO);
clerkService.updatePosition(clerkPositionDTO.getEnterpriseId(), clerkPositionDTO.getClerkPositionId(), clerkPositionDTO.getPositionName());
return ServiceResponse.success();
}
......
......@@ -357,4 +357,30 @@
</if>
group by position_id
</select>
<update id="updatePosition">
update tab_clerk set position_name = #{positionName} where position_id = #{positionId} and enterprise_id = #{enterpriseId}
</update>
<!-- List<TabClerk> listHaobanClerk(@Param("enterpriseIdList") List<Integer> enterpriseIdList, @Param("keyword") String keyword, @Param("storeInfoIdList") List<Integer> storeInfoIdList);-->
<select id="listHaobanClerk" resultMap="BaseResultMap">
select
<include refid="Base_Column_List" />
from tab_clerk
<where>
<if test="null != enterpriseIdList and enterpriseIdList.size > 0">
and enterprise_id in
<foreach collection="enterpriseIdList" index="index" item="item" open="(" separator="," close=")">
#{item}
</foreach>
</if>
<if test="null != storeInfoIdList and storeInfoIdList.size > 0">
and store_info_id in
<foreach collection="storeInfoIdList" index="index" item="item" open="(" separator="," close=")">
#{item}
</foreach>
</if>
<if test="keyword != null and keyword != '' ">
and (clerk_code = #{keyword} or phone_number = #{keyword} )
</if>
</where>
</select>
</mapper>
\ No newline at end of file
......@@ -4,6 +4,7 @@ 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.enterprise.error.ErrorCode;
import com.gic.enterprise.utils.ResultControllerUtils;
import com.gic.enterprise.utils.UserDetailUtils;
import com.gic.store.dto.ClerkPositionDTO;
......@@ -67,6 +68,9 @@ public class ClerkPositionController {
@RequestMapping("/set-clerk-position-sort")
public RestResponse setClerkPositionSort(Integer clerkPositionId, Integer seq) {
if (seq <= 2) {
return RestResponse.failure(ErrorCode.PARAMETER_ERROR.getCode(), "系统默认角色无法调整排序");
}
ServiceResponse<Void> serviceResponse = clerkPositionApiService.setSort(UserDetailUtils.getUserDetail().getEnterpriseId(), clerkPositionId, seq);
return ResultControllerUtils.commonResult(serviceResponse);
}
......
......@@ -65,7 +65,7 @@ public class ClerkQO implements Serializable {
*/
private Integer status;
private Integer clerkType;
private Integer positionId;
public Integer getClerkId() {
return clerkId;
......@@ -139,11 +139,11 @@ public class ClerkQO implements Serializable {
this.status = status;
}
public Integer getClerkType() {
return clerkType;
public Integer getPositionId() {
return positionId;
}
public void setClerkType(Integer clerkType) {
this.clerkType = clerkType;
public void setPositionId(Integer positionId) {
this.positionId = positionId;
}
}
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