Commit 72968cd9 by 陶光胜

Merge branch 'developer' into 'master'

Developer

See merge request !32
parents 67eb3624 b72b2316
......@@ -16,14 +16,17 @@ public class ClerkSearchDTO implements Serializable {
private String searchJson;
private Integer enterpriseId;
private String storeIds;
private String storeInfoIds;
private Integer currentPage=1;
private Integer pageSize=20;
private Integer clerkType;
private String storeSearch;
private String fileName;
private Integer excelExtension;
private List<String> fieldCodeList;
private Integer dataType;
private int status;
public String getSearch() {
......@@ -121,4 +124,28 @@ public class ClerkSearchDTO implements Serializable {
public void setClerkType(Integer clerkType) {
this.clerkType = clerkType;
}
public String getStoreInfoIds() {
return storeInfoIds;
}
public void setStoreInfoIds(String storeInfoIds) {
this.storeInfoIds = storeInfoIds;
}
public String getStoreSearch() {
return storeSearch;
}
public void setStoreSearch(String storeSearch) {
this.storeSearch = storeSearch;
}
public void setStatus(int status) {
this.status = status;
}
public int getStatus() {
return status;
}
}
......@@ -2,10 +2,38 @@ package com.gic.store.dto;
import java.io.Serializable;
import java.util.List;
import java.util.Set;
public class StoreBulkOrderDTO implements Serializable {
private Integer type = 1; //1门店 2导购
private List<StoreOrderDTO> data;
private List<StoreOrderDTO> store;
private List<StoreOrderDTO> clerk;
private Long batchId;
/**
* 状态(1:成功,2:处理中,3:失败)
*/
private Integer status;
/**
* 通知类型(5:门店导购创建结果)
*/
private Integer type;
public List<StoreOrderDTO> getStore() {
return store;
}
public void setStore(List<StoreOrderDTO> store) {
this.store = store;
}
public List<StoreOrderDTO> getClerk() {
return clerk;
}
public void setClerk(List<StoreOrderDTO> clerk) {
this.clerk = clerk;
}
public Integer getType() {
return type;
......@@ -15,11 +43,19 @@ public class StoreBulkOrderDTO implements Serializable {
this.type = type;
}
public List<StoreOrderDTO> getData() {
return data;
public Long getBatchId() {
return batchId;
}
public void setBatchId(Long batchId) {
this.batchId = batchId;
}
public Integer getStatus() {
return status;
}
public void setData(List<StoreOrderDTO> data) {
this.data = data;
public void setStatus(Integer status) {
this.status = status;
}
}
package com.gic.store.dto;
import java.io.Serializable;
import java.util.List;
public class StoreOrderDTO implements Serializable {
private Integer regionId;
private Integer enterpriseId;
private String storeCode;
private String storeName;
private String clerkCode;
private String clerkName;
private String clerkCode;
/********订单号或者会员卡号********/
private String remark;
......@@ -47,21 +48,6 @@ public class StoreOrderDTO implements Serializable {
this.storeName = storeName;
}
public String getClerkCode() {
return clerkCode;
}
public void setClerkCode(String clerkCode) {
this.clerkCode = clerkCode;
}
public String getClerkName() {
return clerkName;
}
public void setClerkName(String clerkName) {
this.clerkName = clerkName;
}
public String getRemark() {
return remark;
......@@ -78,4 +64,20 @@ public class StoreOrderDTO implements Serializable {
public void setReason(Integer reason) {
this.reason = reason;
}
public String getClerkName() {
return clerkName;
}
public void setClerkName(String clerkName) {
this.clerkName = clerkName;
}
public String getClerkCode() {
return clerkCode;
}
public void setClerkCode(String clerkCode) {
this.clerkCode = clerkCode;
}
}
......@@ -62,7 +62,7 @@ public interface TabClerkMapper {
List<TabClerk> listClerkByStoreInfoId(@Param("enterpriseId") Integer enterpriseId, @Param("storeClerkIds") List<Integer> storeClerkIds, @Param("storeInfoIds") String storeInfoIds, @Param("search") String search, @Param("clerkType") Integer clerkType, @Param("status") Integer status);
Integer getTotalClerk(@Param("enterpriseId") Integer enterpriseId, @Param("storeClerkIds") List<Integer> storeClerkIds, @Param("search") String search);
Integer getTotalClerk(@Param("enterpriseId") Integer enterpriseId, @Param("storeClerkIds") List<Integer> storeClerkIds, @Param("search") String search, @Param("status") int status);
List<Integer> getStoreInfoIdsBySearch(@Param("enterpriseId") Integer enterpriseId, @Param("search") String search);
......
package com.gic.store.service;
import com.gic.store.dto.ClerkDTO;
import com.gic.store.dto.ClerkSearchDTO;
import com.gic.store.entity.TabClerk;
import java.util.List;
......@@ -88,7 +89,7 @@ public interface ClerkService {
List<TabClerk> listClerkByStoreInfoId(Integer enterpriseId, List<Integer> storeInfoIds, String search, Integer clerkType);
Integer getTotalClerk(Integer enterpriseId, List<Integer> storeInfoIds, String search);
Integer getTotalClerk(Integer enterpriseId, List<Integer> storeInfoIds, ClerkSearchDTO search);
/**
* @Title: getStoreInfoIdsBySearch
* @Description: 查询符合条件的门店id
......
......@@ -4,6 +4,7 @@ import com.gic.commons.util.GlobalInfo;
import com.gic.store.constant.StoreEnableOrDisAbleEnum;
import com.gic.store.dao.mapper.TabClerkMapper;
import com.gic.store.dto.ClerkDTO;
import com.gic.store.dto.ClerkSearchDTO;
import com.gic.store.entity.TabClerk;
import com.gic.store.service.ClerkService;
import org.apache.commons.lang3.StringUtils;
......@@ -109,8 +110,8 @@ public class ClerkServiceImpl implements ClerkService {
}
@Override
public Integer getTotalClerk(Integer enterpriseId, List<Integer> storeInfoIds, String search) {
return tabClerkMapper.getTotalClerk(enterpriseId, storeInfoIds, search);
public Integer getTotalClerk(Integer enterpriseId, List<Integer> storeInfoIds, ClerkSearchDTO search) {
return tabClerkMapper.getTotalClerk(enterpriseId, storeInfoIds, search.getSearch(), search.getStatus());
}
@Override
......
......@@ -19,6 +19,8 @@ import com.github.pagehelper.Page;
import com.github.pagehelper.PageHelper;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
......@@ -33,6 +35,7 @@ import java.util.stream.Stream;
*/
@Service
public class StoreServiceImpl implements StoreService {
private static Logger logger = LogManager.getLogger(StoreServiceImpl.class);
@Autowired
TabStoreInfoMapper tabStoreInfoMapper;
......@@ -278,7 +281,7 @@ public class StoreServiceImpl implements StoreService {
}
} catch (Exception e) {
e.printStackTrace();
logger.warn("异常:", e);
}
return 1;
}
......@@ -309,7 +312,7 @@ public class StoreServiceImpl implements StoreService {
}
} catch (Exception e) {
e.printStackTrace();
logger.warn("异常:", e);
}
return 0;
}
......@@ -335,7 +338,7 @@ public class StoreServiceImpl implements StoreService {
}
} catch (Exception e) {
e.printStackTrace();
logger.warn("异常:", e);
}
return 1;
}
......@@ -354,7 +357,7 @@ public class StoreServiceImpl implements StoreService {
return this.tabStoreInfoMapper.updateStoreBrandBystoreInfoIds(enterpriseId, value, list);
}
} catch (Exception e) {
e.printStackTrace();
logger.warn("异常:", e);
}
return 0;
}
......@@ -373,7 +376,7 @@ public class StoreServiceImpl implements StoreService {
return this.tabStoreMapper.updateStoreGroupBystoreInfoIds(enterpriseId, value, list);
}
} catch (Exception e) {
e.printStackTrace();
logger.warn("异常:", e);
}
return 0;
}
......
......@@ -66,7 +66,4 @@ public class StoreWidgetServiceImpl implements StoreWidgetService {
return this.tabStoreWidgetMapper.updateByPrimaryKeySelective(storeWidget);
}
public static void main(String[] args){
System.out.println(Integer.MAX_VALUE);
}
}
......@@ -22,7 +22,6 @@ import com.gic.store.dto.clerk.OrderAddClerkDTO;
import com.gic.store.dto.clerk.PosAddClerkDTO;
import com.gic.store.dto.clerk.ProcessBatchClerkDTO;
import com.gic.store.entity.TabClerk;
import com.gic.store.entity.TabStoreGroup;
import com.gic.store.entity.TabStoreRegion;
import com.gic.store.service.*;
import com.gic.weimob.api.dto.WeimobGuiderSynDTO;
......@@ -301,25 +300,17 @@ public class ClerkApiServiceImpl implements ClerkApiService {
return ServiceResponse.failure(ErrorCode.MISS_PARAMETER.getCode(), ErrorCode.MISS_PARAMETER.getMsg());
}
}
// 分组的id
// List<TabStoreGroup> groupList = storeGroupService.listStoreGroupAndChildren(clerkSearchDTO.getStoreGroupId());
// List<Integer> groupIds = groupList.stream().map(TabStoreGroup::getStoreGroupId).collect(Collectors.toList());
// // 查询条件对应的storeId
// String storeIdByClerkSearch;
// if (StringUtils.isNotBlank(clerkSearchDTO.getSearch())) {
// List<Integer> storeInfoIdsBySearch = clerkService.getStoreInfoIdsBySearch(enterpriseId, clerkSearchDTO.getSearch());
// if (CollectionUtils.isEmpty(groupIds) || CollectionUtils.isEmpty(storeInfoIdsBySearch)) {
// return ServiceResponse.success(new Page<>());
// } else {
// storeIdByClerkSearch = getStoreIdByStoreInfoIds(storeInfoIdsBySearch, null);
// }
// } else {
// storeIdByClerkSearch = "";
// }
// clerkSearchDTO.setEnterpriseId(enterpriseId);
// if (!hasStoreIds) {
// clerkSearchDTO.setStoreIds(storeIdByClerkSearch);
// }
if (StringUtils.isNotBlank(clerkSearchDTO.getSearch())) {
List<Integer> storeInfoIdsBySearch = clerkService.getStoreInfoIdsBySearch(enterpriseId, clerkSearchDTO.getSearch());
if (CollectionUtils.isNotEmpty(storeInfoIdsBySearch)) {
String storeInfoIds = storeInfoIdsBySearch.stream().map(Object::toString).collect(Collectors.joining(" "));
clerkSearchDTO.setStoreInfoIds(storeInfoIds);
} else {
return ServiceResponse.success();
}
}
ServiceResponse<Page<StoreDTO>> serviceResponse = listStoreIds(clerkSearchDTO, pageNum, pageSize);
if (!serviceResponse.isSuccess()) {
return ServiceResponse.failure(serviceResponse.getCode(), serviceResponse.getMessage());
......@@ -370,25 +361,17 @@ public class ClerkApiServiceImpl implements ClerkApiService {
return ServiceResponse.failure(ErrorCode.MISS_PARAMETER.getCode(), ErrorCode.MISS_PARAMETER.getMsg());
}
}
// 分组的id
List<TabStoreGroup> groupList = storeGroupService.listStoreGroupAndChildren(clerkSearchDTO.getStoreGroupId());
List<Integer> groupIds = groupList.stream().map(TabStoreGroup::getStoreGroupId).collect(Collectors.toList());
// 查询条件对应的storeId
String storeIdByClerkSearch;
if (StringUtils.isNotBlank(clerkSearchDTO.getSearch())) {
List<Integer> storeInfoIdsBySearch = clerkService.getStoreInfoIdsBySearch(enterpriseId, clerkSearchDTO.getSearch());
if (CollectionUtils.isEmpty(groupIds) || CollectionUtils.isEmpty(storeInfoIdsBySearch)) {
storeIdByClerkSearch = "";
if (CollectionUtils.isNotEmpty(storeInfoIdsBySearch)) {
String storeInfoIds = storeInfoIdsBySearch.stream().map(Object::toString).collect(Collectors.joining(" "));
clerkSearchDTO.setStoreInfoIds(storeInfoIds);
} else {
storeIdByClerkSearch = getStoreIdByStoreInfoIds(storeInfoIdsBySearch, null);
return ServiceResponse.success();
}
} else {
storeIdByClerkSearch = "";
}
clerkSearchDTO.setEnterpriseId(enterpriseId);
if (!hasStoreIds) {
clerkSearchDTO.setStoreIds(storeIdByClerkSearch);
}
ServiceResponse<Page<StoreDTO>> serviceResponse = listStoreIds(clerkSearchDTO, 1, Integer.MAX_VALUE);
if (!serviceResponse.isSuccess()) {
return ServiceResponse.failure(serviceResponse.getCode(), serviceResponse.getMessage());
......@@ -399,9 +382,13 @@ public class ClerkApiServiceImpl implements ClerkApiService {
}
List<Integer> storeInfoIds = page.getResult().stream().map(StoreDTO::getStoreInfoId)
.collect(Collectors.toList());
Integer totalClerk = clerkService.getTotalClerk(enterpriseId, storeInfoIds, clerkSearchDTO.getSearch());
if (CollectionUtils.isNotEmpty(storeInfoIds)) {
Integer totalClerk = clerkService.getTotalClerk(enterpriseId, storeInfoIds, clerkSearchDTO);
return ServiceResponse.success(totalClerk);
} else {
return ServiceResponse.success(0);
}
return ServiceResponse.success(totalClerk);
}
// private String getStoreIdByStoreInfoIds(List<Integer> storeInfoIdsBySearch, String search) {
......@@ -435,6 +422,8 @@ public class ClerkApiServiceImpl implements ClerkApiService {
storeSearchDTO.setStoreGroupId(clerkSearchDTO.getStoreGroupId());
storeSearchDTO.setSearchJson(clerkSearchDTO.getSearchJson());
storeSearchDTO.setStoreIds(clerkSearchDTO.getStoreIds());
storeSearchDTO.setSearch(clerkSearchDTO.getStoreSearch());
storeSearchDTO.setStoreInfoIds(clerkSearchDTO.getStoreInfoIds());
return storeApiService.listStore(storeSearchDTO, pageNum, pageSize,
"storeId,storeName,storeCode,storeInfoId,ownType");
......@@ -865,7 +854,7 @@ public class ClerkApiServiceImpl implements ClerkApiService {
logger.info("导购增改微盟参数:{}", JSONObject.toJSONString(params));
client.sendMessage("synClerkInfoToWeimobMq", JSONObject.toJSONString(params));
} catch (Exception e) {
e.printStackTrace();
logger.warn("exception", e);
}
}
......
......@@ -1000,11 +1000,13 @@ public class StoreApiServiceImpl implements StoreApiService {
@Override
public ServiceResponse<Void> saveStoreAndClerkForBulkOrder(String params) {
logger.info("saveStoreAndClerkForBulkOrder:{}", params);
StoreBulkOrderDTO dto = JSON.parseObject(params, StoreBulkOrderDTO.class);
List<StoreOrderDTO> data = dto.getData();
if(CollectionUtils.isNotEmpty(data)){
if(dto.getType() == 1){ //门店
for(StoreOrderDTO storeOrderDTO : data){
Map<String, Object> message = new HashMap<>();
message.put("type", 5);
try{
StoreBulkOrderDTO storeBulkOrderDTO = JSON.parseObject(params, StoreBulkOrderDTO.class);
message.put("jobId", storeBulkOrderDTO.getBatchId());
if(CollectionUtils.isNotEmpty(storeBulkOrderDTO.getStore())){
for(StoreOrderDTO storeOrderDTO : storeBulkOrderDTO.getStore()){
StoreDTO storeDTO = new StoreDTO();
storeDTO.setEnterpriseId(storeOrderDTO.getEnterpriseId());
storeDTO.setStoreCode(storeOrderDTO.getStoreCode());
......@@ -1017,8 +1019,8 @@ public class StoreApiServiceImpl implements StoreApiService {
logger.info("批量处理门店结果:{}", JSON.toJSONString(response));
}
}
if(dto.getType() == 2){ //导购
for(StoreOrderDTO storeOrderDTO : data){
if(CollectionUtils.isNotEmpty(storeBulkOrderDTO.getClerk())){
for(StoreOrderDTO storeOrderDTO : storeBulkOrderDTO.getClerk()){
ServiceResponse<StoreDTO> storeResponse = this.getStoreByStoreCode(storeOrderDTO.getEnterpriseId(),
storeOrderDTO.getRegionId(), storeOrderDTO.getStoreCode());
if(storeResponse.isSuccess() && storeResponse.getResult() != null){
......@@ -1036,8 +1038,19 @@ public class StoreApiServiceImpl implements StoreApiService {
}
}
}
message.put("status", 1);
}catch (Exception e){
message.put("status", 3);
message.put("message", e.getMessage());
logger.warn("exception:", e);
}
return null;
GicMQClient client = GICMQClientUtil.getClientInstance();
try {
client.sendMessage("batchJobNotify", JSON.toJSONString(message));
} catch (Exception e) {
logger.warn("发送消息路由失败", e);
}
return ServiceResponse.success();
}
@Override
......@@ -1320,7 +1333,7 @@ public class StoreApiServiceImpl implements StoreApiService {
try {
clientInstance.sendMessage("storeIndexMq", json.toJSONString());
} catch (Exception e) {
e.printStackTrace();
logger.warn("异常:", e);
}
return ServiceResponse.success();
}
......
......@@ -212,7 +212,7 @@ public class StoreAuthorizationApiServiceImpl implements StoreAuthorizationApiSe
try {
client.sendMessage("storeAuthorizationMq", JSON.toJSONString(params));
} catch (Exception e) {
e.printStackTrace();
log.warn("exception", e);
}
}
......
......@@ -271,15 +271,6 @@ public class StoreDictApiServiceImpl implements StoreDictApiService {
return ServiceResponse.success();
}
public static void main(String[] args){
List<String> existList = Arrays.asList("1","2", "3");
List<String> newList = Arrays.asList("2", "3", "4");
List<String> add = newList.stream().filter(s -> !existList.contains(s)).collect(Collectors.toList());
List<String> del = existList.stream().filter(s -> !newList.contains(s)).collect(Collectors.toList());
System.out.println(add);
System.out.println(del);
}
@Override
public ServiceResponse<List<String>> listStoreFieldDictValue(Integer enterpriseId) {
return ServiceResponse.success(this.storeDictService.listStoreField(enterpriseId));
......
......@@ -49,17 +49,17 @@ public class BaiduMapUtils {
response.close();
}
} catch (ClientProtocolException e) {
e.printStackTrace();
logger.warn("百度地图调用失败:", e);
} catch (ParseException e) {
e.printStackTrace();
logger.warn("百度地图调用失败:", e);
} catch (IOException e) {
e.printStackTrace();
logger.warn("百度地图调用失败:", e);
} finally {
// 关闭连接,释放资源
try {
httpclient.close();
} catch (IOException e) {
e.printStackTrace();
logger.warn("百度地图调用失败:", e);
}
}
return null;
......
......@@ -109,18 +109,6 @@ public class TextField extends FieldBase {
String 数字符号 = 数字 + 符号;
String 字母符号 = 字母 + 符号;
System.out.println("中文:" + textField.validate(中文));
System.out.println("数字:" + textField.validate(数字));
System.out.println("字母:" + textField.validate(字母));
System.out.println("符号:" + textField.validate(符号));
System.out.println("中文数字:" + textField.validate(中文数字));
System.out.println("中文字母:" + textField.validate(中文字母));
System.out.println("中文符号:" + textField.validate(中文符号));
System.out.println("数字字母:" + textField.validate(数字字母));
System.out.println("数字符号:" + textField.validate(数字符号));
System.out.println("字母符号:" + textField.validate(字母符号));
}
}
......@@ -259,6 +259,9 @@
count(*)
from tab_clerk
where enterprise_id = #{enterpriseId}
<if test="status != null ">
and status = #{status}
</if>
<if test="null != storeClerkIds and storeClerkIds.size() &gt; 0">
and store_info_id in
<foreach close=")" collection="storeClerkIds" index="index" item="item" open="(" separator=",">
......@@ -266,7 +269,7 @@
</foreach>
</if>
<if test="search != null and search != '' ">
and (clerk_code like concat('%', #{search} ,'%') or clerk_name like concat('%', #{search} ,'%') )
and (clerk_code like concat('%', #{search} ,'%') or clerk_name like concat('%', #{search} ,'%') or phone_number like concat('%', #{search} ,'%') )
</if>
</select>
<select id="getStoreInfoIdsBySearch" resultType="java.lang.Integer">
......@@ -275,7 +278,7 @@
from tab_clerk
where enterprise_id = #{enterpriseId}
<if test="search != null and search != '' ">
and (clerk_code like concat('%', #{search} ,'%') or clerk_name like concat('%', #{search} ,'%') )
and (clerk_code like concat('%', #{search} ,'%') or clerk_name like concat('%', #{search} ,'%') or phone_number like concat('%', #{search} ,'%') )
</if>
</select>
<select id="updateClerkStatus" resultType="java.lang.Integer">
......
......@@ -256,6 +256,7 @@ public class ClerkController extends DownloadUtils {
public RestResponse countClerk(@RequestBody ClerkSearchDTO clerkSearchDTO) {
Integer enterpriseId = UserDetailUtils.getUserDetail().getEnterpriseId();
clerkSearchDTO.setEnterpriseId(enterpriseId);
clerkSearchDTO.setStatus(1);
ServiceResponse serviceResponse = clerkApiService.getTotalClerk(enterpriseId, clerkSearchDTO);
if (serviceResponse.isSuccess()) {
return RestResponse.success(serviceResponse.getResult());
......
......@@ -83,7 +83,7 @@ public class ClerkImportController {
}
fo.flush();
} catch (Exception e) {
e.printStackTrace();
logger.info("下载错误", e);
} finally {
if (fo != null) {
fo.close();
......
......@@ -10,6 +10,7 @@ import com.gic.download.constants.QrcodeTypeEnum;
import com.gic.download.qo.QrcodeContent;
import com.gic.download.utils.*;
import com.gic.download.utils.log.LogUtils;
import com.gic.enterprise.ano.IgnoreLogin;
import com.gic.enterprise.context.RequestContext;
import com.gic.enterprise.dto.EnterpriseLicenseDTO;
import com.gic.enterprise.error.ErrorCode;
......@@ -97,6 +98,7 @@ public class StoreController extends DownloadUtils {
@Autowired
private StoreTransferApiService storeTransferApiService;
private Map<Integer, SimpleDateFormat> map = new ConcurrentHashMap<>();
private Map<Integer, SimpleDateFormat> map1 = new ConcurrentHashMap<>();
......@@ -824,4 +826,15 @@ public class StoreController extends DownloadUtils {
}
return simpleDateFormat;
}
/**
* 小康那边跑非实时的分组 需要这个接口转换数据
*/
@RequestMapping("/list-widget-store-info")
@IgnoreLogin
public RestResponse listWidgetStoreInfo(Integer enterpriseId, Integer storeWidgetId) {
ServiceResponse<List<Integer>> serviceResponse = this.storeWidgetApiService.listStoreInfoIdByStoreWidgetId(enterpriseId, storeWidgetId);
return ResultControllerUtils.commonResult(serviceResponse);
}
}
\ No newline at end of file
......@@ -117,7 +117,7 @@ public class StoreTagController {
}
fo.flush();
} catch (Exception e) {
e.printStackTrace();
LOGGER.info("下载错误", e);
} finally {
if (fo != null) {
fo.close();
......
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