门店号管理接口

master
LegnaYet 6 years ago
parent 66085d3172
commit bf6d5614ac

@ -178,6 +178,13 @@
<version>3.7.0</version>
</dependency>
<!--pagehelper-->
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper-spring-boot-starter</artifactId>
<version>1.2.5</version>
</dependency>
<!--pinyin 4j-->
<dependency>
<groupId>com.belerweb</groupId>

@ -9,6 +9,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
import java.util.Map;
@ -44,6 +45,20 @@ public class EmployeeController extends BaseController {
return fail();
}
}
/**
*
* @param employee
* @return
* @throws WxErrorException
*/
@RequestMapping(value = "qrCode",method = RequestMethod.GET)
public void downLoadQrCode(HttpServletResponse response){
try {
employeeService.downLoadQrCode(response);
}catch (Exception e){
log.error("添加用户失败",e);
}
}
/**
*

@ -1,5 +1,7 @@
package com.kiisoo.ic.employee.service;
import java.io.*;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.kiisoo.ic.department.entity.PrivilageCpUserDepartmentDO;
import com.kiisoo.ic.department.mapper.PrivilageCpUserDepartmentDOMapper;
@ -19,9 +21,16 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServletResponse;
import java.net.URL;
import java.net.URLConnection;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.zip.ZipEntry;
import java.util.zip.ZipOutputStream;
import static com.kiisoo.ic.employee.constant.Constants.*;
@ -51,6 +60,7 @@ public class EmployeeService {
/**
*
*
* @param employee
* @return
* @throws WxErrorException
@ -62,8 +72,10 @@ public class EmployeeService {
return privilageCpUserDOS;
}
/**
*
*
* @param employee
* @return
* @throws WxErrorException
@ -128,6 +140,7 @@ public class EmployeeService {
/**
*
*
* @param employee
* @return
* @throws WxErrorException
@ -172,6 +185,7 @@ public class EmployeeService {
/**
*
*
* @param employee
* @return
* @throws WxErrorException
@ -208,6 +222,7 @@ public class EmployeeService {
/**
*
*
* @param employee
* @return
* @throws WxErrorException
@ -230,6 +245,7 @@ public class EmployeeService {
/**
*
*
* @param phone
*/
public PrivilageCpUserDO getUserWX(String phone) {
@ -238,4 +254,77 @@ public class EmployeeService {
return privilageCpUserDOMapper.selectOne(new QueryWrapper<>(privilageCpUserDO));
}
/**
*
* @param response
* @throws WxErrorException
* @throws IOException
*/
public void downLoadQrCode(HttpServletResponse response) throws WxErrorException, IOException {
List<WxCpUser> wxCpUsers = qwMailListManageService.syncUser();
byte[] buffer = new byte[1024];
// 生成的ZIP文件名为Demo.zip
String strZipName = "bsd_qr_code.zip";
ZipOutputStream out = new ZipOutputStream(new FileOutputStream(strZipName));
int count = wxCpUsers.size();
for (int i = 0; i < count; i++) {
System.out.println("总进度:" + count + " | 当前进度:" + i);
WxCpUser wxCpUser = wxCpUsers.get(i);
String url = wxCpUser.getQrCode();
String code = wxCpUser.getName();
InputStream inStream = getInputStream(url);
out.putNextEntry(new ZipEntry(code + ".png"));
int len;
// 读入需要下载的文件的内容打包到zip文件
while ((len = inStream.read(buffer)) > 0) {
out.write(buffer, 0, len);
}
out.closeEntry();
inStream.close();
}
out.flush();
out.close();
System.out.println("生成压缩包成功");
ServletOutputStream outputStream = response.getOutputStream();
byte[] bufferNew = new byte[1024];
FileInputStream inStream = new FileInputStream(new File(strZipName));
int lenNew;
// 读入需要下载的文件的内容打包到zip文件
while ((lenNew = inStream.read(bufferNew)) > 0) {
outputStream.write(bufferNew, 0, lenNew);
}
}
/**
* url
* @param fileUrl url
* @return
*/
private InputStream getInputStream(String fileUrl) {
URLConnection connection = null;
try {
connection = new URL(fileUrl).openConnection();
} catch (IOException e) {
e.printStackTrace();
}
InputStream inputStream = null;
try {
inputStream = connection.getInputStream();
} catch (IOException e) {
e.printStackTrace();
}
return inputStream;
}
}

@ -0,0 +1,16 @@
package com.kiisoo.ic.store.constant;
/**
* @Description:
* @Auther: yechenhao
* @Date: 2020/4/9 14:44
* @Version: v1
*/
public class Constants {
/**
* mobile
*/
public static final String DATABASE_STORE_ID_KEY = "store_id";
}

@ -0,0 +1,43 @@
package com.kiisoo.ic.store.controller;
import com.kiisoo.ic.common.BaseController;
import com.kiisoo.ic.store.service.StoreEmployeeService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import java.util.Map;
/**
* @Description: controller
* @Auther: yechenhao
* @Date: 2020/4/9 18:23
* @Version: v1
*/
@Controller
@RequestMapping("/store/emp")
@Slf4j
public class StoreEmployeeController extends BaseController {
private StoreEmployeeService storeEmployeeService;
/**
*
* @return
*/
@RequestMapping(value = "list",method = RequestMethod.POST)
@ResponseBody
public Map<String,Object> listStoreUser(@RequestParam("storeId")Long storeId, @RequestParam("regionId")Long regionId,
@RequestParam("pageNum")Integer pageNum, @RequestParam("pageSize")Integer pageSize){
try {
storeEmployeeService.listStoreUser(storeId,regionId,pageNum, pageSize);
return data(null);
}catch (Exception e){
log.error("添加用户失败",e);
return fail();
}
}
}

@ -0,0 +1,33 @@
package com.kiisoo.ic.store.entity;
import lombok.Data;
/**
* @Description:
* @Auther: yechenhao
* @Date: 2020/4/9 18:27
* @Version: v1
*/
@Data
public class StoreUserDTO extends PoiStore{
/**
*
*/
private Integer orderNum;
/**
*
*/
private String cpUserId;
/**
*
*/
private Integer staffNum;
/**
*
*/
private Integer customerNum;
/**
*
*/
private Integer qrCodeAction;
}

@ -0,0 +1,85 @@
package com.kiisoo.ic.store.service;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.github.pagehelper.Page;
import com.github.pagehelper.PageHelper;
import com.kiisoo.ic.employee.entity.PrivilageCpUserDO;
import com.kiisoo.ic.employee.mapper.PrivilageCpUserDOMapper;
import com.kiisoo.ic.store.entity.PoiStore;
import com.kiisoo.ic.store.entity.PrivilageCpUserStoreDO;
import com.kiisoo.ic.store.entity.StoreUserDTO;
import com.kiisoo.ic.store.mapper.PoiStoreDOMapper;
import com.kiisoo.ic.store.mapper.PoiStoreStaffDOMapper;
import com.kiisoo.ic.store.mapper.PrivilageCpUserStoreDOMapper;
import org.apache.commons.collections.CollectionUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
import java.util.*;
import static com.kiisoo.ic.store.constant.Constants.DATABASE_STORE_ID_KEY;
/**
* @Description: service
* @Auther: yechenhao
* @Date: 2020/4/9 18:27
* @Version: v1
*/
@Service
public class StoreEmployeeService {
private PoiStoreDOMapper poiStoreDOMapper;
private PrivilageCpUserStoreDOMapper privilageCpUserStoreDOMapper;
private PrivilageCpUserDOMapper privilageCpUserDOMapper;
private PoiStoreStaffDOMapper poiStoreStaffDOMapper;
/**
*
* @param storeId id
* @param regionId id
* @param pageNum
* @param pageSize
*/
public void listStoreUser(Long storeId, Long regionId, Integer pageNum, Integer pageSize) {
Map<String,Object> result = new HashMap<>();
List<PoiStore> poiStores = null;
PageHelper.startPage(pageNum, pageSize);
if (storeId != null){
QueryWrapper<PoiStore> storeParams = new QueryWrapper<>();
poiStores = poiStoreDOMapper.selectList(storeParams);
}else if(regionId != null){
poiStores = poiStoreDOMapper.selectRegionShop(regionId);
}else{
poiStores = poiStoreDOMapper.selectList(null);
}
List<StoreUserDTO> storeUserDTOS = new ArrayList<>();
if (CollectionUtils.isNotEmpty(poiStores)){
int orderNum = (pageNum -1) * pageSize;
for(PoiStore store : poiStores) {
StoreUserDTO storeUserDTO = new StoreUserDTO();
BeanUtils.copyProperties(store,storeUserDTO);
//设置序号
storeUserDTO.setOrderNum(++orderNum);
//查询店铺绑定的企业微信
QueryWrapper<PrivilageCpUserStoreDO> relationParams = new QueryWrapper<>();
relationParams.eq(DATABASE_STORE_ID_KEY,storeUserDTO.getId());
PrivilageCpUserStoreDO cpUserStoreDO = privilageCpUserStoreDOMapper.selectOne(relationParams);
if (cpUserStoreDO != null){
//企业微信存在则查询数据
PrivilageCpUserDO privilageCpUserDO = privilageCpUserDOMapper.selectById(cpUserStoreDO.getCpUserId());
storeUserDTO.setCpUserId(privilageCpUserDO.getCpUserId());
}
//查询导购数目
// poiStoreStaffDOMapper
}
}
Page<StoreUserDTO> pageList = (Page<StoreUserDTO>)storeUserDTOS;
}
}
Loading…
Cancel
Save