Browse Source

[会员信息][修复]:修复导入导出问题及显示问题,以及编辑问题,以及导出数据问题

release_toaliyun_real
Stormeye.Wu 7 years ago
parent
commit
0c5dc72d47
6 changed files with 49 additions and 187 deletions
  1. +24
    -22
      mallinkAdmin/src/main/java/com/simple/controller/WxCUserBasicInfoController.java
  2. +19
    -20
      mallinkService/src/main/java/com/simple/domain/po/WxCUserBasicInfo.java
  3. +0
    -6
      mallinkService/src/main/java/com/simple/mapper/WxCUserBasicInfoMapper.java
  4. +2
    -5
      mallinkService/src/main/java/com/simple/service/WxCUserBasicInfoService.java
  5. +4
    -75
      mallinkService/src/main/java/com/simple/service/impl/WxCUserBasicInfoServiceImpl.java
  6. +0
    -59
      mallinkService/src/main/resources/mapper/WxCUserBasicInfoMapper.xml

+ 24
- 22
mallinkAdmin/src/main/java/com/simple/controller/WxCUserBasicInfoController.java View File

@@ -130,29 +130,31 @@ public class WxCUserBasicInfoController extends BaseController {
@ApiImplicitParam(name = "id", value = "id", dataType = "Long", paramType = "query", required = true)
public ResultData findById(Long id) {
WxCUserBasicInfo info = wxCUserBasicInfoService.getById(id);
if (info != null && info.getTagId() != null) {
WxCUserTags uTag = wxCUserTagsService.getById(info.getTagId());
if (StringUtils.isNotBlank(uTag.getTags())) {
List<Long> ids = JSONObject.parseArray(uTag.getTags(), Long.class);
WxTags wxTags = new WxTags();
wxTags.setIds(ids);
PageInfo<WxTags> page = wxTagsService.listAsPage(wxTags, 1, 5000);
String tagNames = "";
String tagIds = "";
List<Long> tagIdList = new ArrayList<>();
for (WxTags wt : page.getList()) {
tagNames += wt.getName() + "/";
tagIds += wt.getId() + ",";
tagIdList.add(wt.getId());
if (info != null) {
if (info.getTagId() != null) {
WxCUserTags uTag = wxCUserTagsService.getById(info.getTagId());
if (StringUtils.isNotBlank(uTag.getTags())) {
List<Long> ids = JSONObject.parseArray(uTag.getTags(), Long.class);
WxTags wxTags = new WxTags();
wxTags.setIds(ids);
PageInfo<WxTags> page = wxTagsService.listAsPage(wxTags, 1, 5000);
String tagNames = "";
String tagIds = "";
List<Long> tagIdList = new ArrayList<>();
for (WxTags wt : page.getList()) {
tagNames += wt.getName() + "/";
tagIds += wt.getId() + ",";
tagIdList.add(wt.getId());
}
if (StringUtils.isNotBlank(tagNames)) {
info.setTagNames(tagNames.substring(0, tagNames.length() - 1));
}
if (StringUtils.isNoneBlank(tagIds)) {
info.setTagIds(tagIds.substring(0, tagIds.length() - 1));
}
long count = wxCUserTagsService.findCountByTag(tagIdList);
info.setCount(count);
}
if (StringUtils.isNotBlank(tagNames)) {
info.setTagNames(tagNames.substring(0, tagNames.length() - 1));
}
if (StringUtils.isNoneBlank(tagIds)) {
info.setTagIds(tagIds.substring(0, tagIds.length() - 1));
}
long count = wxCUserTagsService.findCountByTag(tagIdList);
info.setCount(count);
}
} else {
info = new WxCUserBasicInfo();


+ 19
- 20
mallinkService/src/main/java/com/simple/domain/po/WxCUserBasicInfo.java View File

@@ -42,63 +42,62 @@ public class WxCUserBasicInfo implements Serializable {
this.ids = ids;
}
/*微信用户绑定的手机号**/

/**微信用户绑定的手机号**/
@Excel(name="手机",width = 20,orderNum = "2")
@io.swagger.annotations.ApiModelProperty(value="微信用户绑定的手机号",name="phone")
@NotNull
private String phone;
/*出生日期**/
/**出生日期**/
@Excel(name="生日",width = 20,format="yyyy-MM-dd",orderNum = "3")
@NotNull
@io.swagger.annotations.ApiModelProperty(value="出生日期",name="birthdate")
private Date birthdate;
/*学历**/
/**学历**/
@Excel(name="学历",width = 20,orderNum = "4")
@NotNull
@io.swagger.annotations.ApiModelProperty(value="学历",name="education")
private String education;
/*性别:0:保密 1.男 2女**/
/**性别:0:保密 1.男 2女**/
@Excel(name="性别",width = 20,replace = { "保密_0", "男_1","女_2"},orderNum = "2")
@NotNull
@io.swagger.annotations.ApiModelProperty(value="性别:0:保密 1.男 2女",name="sex")
private Integer sex;
/*邮箱**/
/**邮箱**/
@io.swagger.annotations.ApiModelProperty(value="邮箱",name="email")
private String email;
/*地址**/
/**地址**/
@io.swagger.annotations.ApiModelProperty(value="地址",name="address")
private String address;
/*积分**/
/**积分**/
@io.swagger.annotations.ApiModelProperty(value="积分",name="poins")
private Integer poins;
/*标签**/
@io.swagger.annotations.ApiModelProperty(value="标签",name="tagId")
/**用户标签**/
@io.swagger.annotations.ApiModelProperty(value="用户标签",name="tagId")
private Long tagId;
/*创建时间**/
/**创建时间**/
@io.swagger.annotations.ApiModelProperty(value="创建时间",name="createDate")
private Date createDate;
/*更新时间**/
/**更新时间**/
@io.swagger.annotations.ApiModelProperty(value="更新时间",name="updateDate")
private Date updateDate;
/*租户id**/
/**租户id**/
@io.swagger.annotations.ApiModelProperty(value="租户id",name="tenantId")
private String tenantId;

/*用户姓名**/
/**用户姓名**/
@Excel(name="姓名",width = 20)
@NotNull
@io.swagger.annotations.ApiModelProperty(value="用户姓名",name="name")
private String name;
/*会员等级**/
/**会员等级**/
@io.swagger.annotations.ApiModelProperty(value="会员等级",name="level")
private String level;
/*用户昵称**/
/**用户昵称**/
@io.swagger.annotations.ApiModelProperty(value="用户昵称",name="nickName")
private String nickName;
@Transient
private String tagIds;
@Transient
@@ -138,7 +137,7 @@ public class WxCUserBasicInfo implements Serializable {
this.tagNames = tagNames;
}

public String getTagIds() {
return tagIds;
}


+ 0
- 6
mallinkService/src/main/java/com/simple/mapper/WxCUserBasicInfoMapper.java View File

@@ -11,10 +11,6 @@ import java.util.Map;
public interface WxCUserBasicInfoMapper extends CommonMapper<WxCUserBasicInfo, String> {

List<WxCUserBasicInfo> findList(WxCUserBasicInfo wxCUserBasicInfo);

List<WxCUserBasicInfo> list(WxCUserBasicInfoDto record);

void updateScore(WxCUserBasicInfo record);

@@ -24,6 +20,4 @@ public interface WxCUserBasicInfoMapper extends CommonMapper<WxCUserBasicInfo, S
long findCountByAge(WxCUserBasicInfoDto dto);

List<Map<String,Object>> findListMap(WxCUserBasicInfoDto record);

}

+ 2
- 5
mallinkService/src/main/java/com/simple/service/WxCUserBasicInfoService.java View File

@@ -17,8 +17,8 @@ public interface WxCUserBasicInfoService {
* 根据实体查询分页列表
*
* @param record
* @param offset
* @param limit
* @param pageIndex
* @param pageSize
* @return
*/
PageInfo<WxCUserBasicInfo> listAsPage(WxCUserBasicInfo record, Integer pageIndex, Integer pageSize);
@@ -77,9 +77,6 @@ public interface WxCUserBasicInfoService {
*/
long findCountByAge(WxCUserBasicInfoDto dto);


PageInfo<Map<String, Object>> queryListMap(WxCUserBasicInfoDto wxCUserBasicInfo, Integer pageNum, Integer pageSize);

void exportData(HttpServletRequest request, HttpServletResponse response, String tenantId);

void exportTemplate(HttpServletRequest request, HttpServletResponse response, String tenantId);


+ 4
- 75
mallinkService/src/main/java/com/simple/service/impl/WxCUserBasicInfoServiceImpl.java View File

@@ -103,23 +103,11 @@ public class WxCUserBasicInfoServiceImpl implements WxCUserBasicInfoService {
return wxCUserBasicInfoMapper.findCountByAge(dto);
}

@Override
public PageInfo<Map<String, Object>> queryListMap(WxCUserBasicInfoDto record, Integer pageNum, Integer pageSize) {
return PageHelper.startPage(pageNum, pageSize).doSelectPageInfo(() -> wxCUserBasicInfoMapper.findListMap(record));
}

@Override
public void exportData(HttpServletRequest request, HttpServletResponse response, String tenantId) {


WxCUser wxCUser = new WxCUser();
wxCUser.setTenantId(tenantId);
List<WxCUser> userlist = wxCUserMapper.findList(wxCUser);

WxCUserBasicInfoDto basicInfoDto = new WxCUserBasicInfoDto();
basicInfoDto.setTenantId(tenantId);
List<WxCUserBasicInfo> memberlist = wxCUserBasicInfoMapper.list(basicInfoDto);

WxCUserBasicInfo basicInfoQ = new WxCUserBasicInfo();
basicInfoQ.setTenantId(tenantId);
List<WxCUserBasicInfo> memberlist = wxCUserBasicInfoMapper.findList(basicInfoQ);

XSSFWorkbook workbook;
String filepath = "./uploads/";
@@ -132,60 +120,6 @@ public class WxCUserBasicInfoServiceImpl implements WxCUserBasicInfoService {
try {
File file = new File(filepath);
workbook = new XSSFWorkbook();
XSSFSheet sheetOne = workbook.createSheet("微信关注用户");
Row row = sheetOne.createRow(0);
Cell openIdCell = row.createCell(0);
Cell nickNameCell = row.createCell(1);
Cell phoneCell = row.createCell(2);
Cell genderCell = row.createCell(3);
Cell cityCell = row.createCell(4);
Cell provinceCell = row.createCell(5);
Cell languageCell = row.createCell(6);
Cell countryCodeCell = row.createCell(7);
Cell registerIpCell = row.createCell(8);
Cell sceneadressCell = row.createCell(9);

openIdCell.setCellValue("openId");
nickNameCell.setCellValue("昵称");
phoneCell.setCellValue("手机");
genderCell.setCellValue("性别");
cityCell.setCellValue("城市");
provinceCell.setCellValue("省份");
languageCell.setCellValue("语言");
countryCodeCell.setCellValue("国家代码");
registerIpCell.setCellValue("注册IP");
sceneadressCell.setCellValue("场景值");


for (int i = 0; i < userlist.size(); i++) {

row = sheetOne.createRow(i + 1);
openIdCell = row.createCell(0);
nickNameCell = row.createCell(1);
phoneCell = row.createCell(2);
genderCell = row.createCell(3);
cityCell = row.createCell(4);
provinceCell = row.createCell(5);
languageCell = row.createCell(6);
countryCodeCell = row.createCell(7);
registerIpCell = row.createCell(8);
sceneadressCell = row.createCell(9);

WxCUser entity = userlist.get(i);
openIdCell.setCellValue(entity.getOpenId());
nickNameCell.setCellValue(entity.getNickName());
phoneCell.setCellValue(entity.getPhone());
genderCell.setCellValue(entity.getGender());
cityCell.setCellValue(entity.getCity());
provinceCell.setCellValue(entity.getProvince());
languageCell.setCellValue(entity.getLanguage());
countryCodeCell.setCellValue(entity.getCountryCode());
registerIpCell.setCellValue(entity.getRegisterIp());
sceneadressCell.setCellValue(entity.getSceneAddress());

}


XSSFSheet sheetTwo = workbook.createSheet("会员信息");
Row rowtwo = sheetTwo.createRow(0);
Cell nameCellTwo = rowtwo.createCell(0);
@@ -214,12 +148,7 @@ public class WxCUserBasicInfoServiceImpl implements WxCUserBasicInfoService {

nameCellTwo.setCellValue(entity.getName());
phoneCellTwo.setCellValue(entity.getPhone());
String sexStr = "保密";
if (entity.getSex() == 1)
sexStr = "男";
else if (entity.getSex() == 2)
sexStr = "女";
sexCellTwo.setCellValue(sexStr);
sexCellTwo.setCellValue(entity.getSex());
birthdateCellTwo.setCellValue(entity.getBirthdate());
educationCellTwo.setCellValue(entity.getEducation());
}


+ 0
- 59
mallinkService/src/main/resources/mapper/WxCUserBasicInfoMapper.xml View File

@@ -99,34 +99,6 @@
cb.`create_date`,cb.`update_date`,c.`tenant_id`,cb.`name`,cb.level,cb.nick_name
</sql>


<select id="list" parameterType="com.simple.domain.dto.WxCUserBasicInfoDto" resultMap="BaseResultMap">
select
<include refid="allUserColumns"/>
from wx_c_user c
left join wx_c_user_basic_info cb on cb.id = c.id and cb.tenant_id = c.tenant_id
where 1=1
<if test=" null != tenantId ">
and c.`tenant_id` = #{tenantId}
</if>
<if test=" null != phone and phone !='' ">
and c.`phone` = #{phone}
</if>
<if test=" null == phone or phone =='' ">
and c.`phone` is not null
</if>
<if test=" null != startTime ">
and cb.create_date &gt;= #{startTime}
</if>

<if test=" null != endTime">
and cb.update_date &lt;= #{endTime}
</if>

<if test=" null != name and name != '' ">
and cb.`name` like concat('%', #{name},'%')
</if>
</select>
<update id="updateScore" parameterType="com.simple.domain.po.WxCUserBasicInfo">
update wx_c_user_basic_info set poins=#{poins} where phone=#{phone} and tenant_id=#{tenantId}
and id=#{cUserId}
@@ -164,36 +136,5 @@
and birthdate &lt;= #{birthEndTime}
</if>
</select>

<select id="findListMap" parameterType="com.simple.domain.dto.WxCUserBasicInfoDto" resultType="hashmap">
select cu.id,cu.tenant_id tenantId,cu.open_id openId,cu.union_id unionId,
cu.nick_name nickName,cu.gender,cu.avatar_url avatarUrl,cubi.phone,
cu.pure_phone purePhone,cu.city,cu.province,cu.`language`,cu.country_code countryCode,
cu.register_ip registerIp,cu.verify_code_phone verifyCodePhone,cu.qrcode_source qrcodeSource,
cu.scene,cu.scene_address sceneAddress,cu.score,cu.update_date updateDate,
cu.create_date createDate,cu.app_id appId,cu.session_key sessionKey,cu.token,
cu.expire_time expireTime,cu.latitude,cu.longitude,cubi.birthdate,cubi.education,
cubi.sex,cubi.email,cubi.address,cubi.poins,cubi.`name`,cubi.`level`,cubi.id cubiid
from wx_c_user cu right join wx_c_user_basic_info cubi
on cu.phone=cubi.phone and cu.tenant_id=cubi.tenant_id
where 1=1
<if test=" null != tenantId ">
and cubi.`tenant_id` = #{tenantId}
</if>
<if test=" null != phone and phone !='' ">
and cubi.`phone` = #{phone}
</if>
<if test=" null != startTime ">
and cubi.create_date &gt;= #{startTime}
</if>
<if test=" null != endTime">
and cubi.update_date &lt;= #{endTime}
</if>
<if test=" null != name and name != '' ">
and cubi.`name` like concat('%', #{name},'%')
</if>
</select>
</mapper>

Loading…
Cancel
Save