diff --git a/pom.xml b/pom.xml index 9ec0874bbd542c6e1f101e744bdbc329020282f1..3506f84a0bfa737ddd0ccf0bcac2f5ab0eced6a2 100644 --- a/pom.xml +++ b/pom.xml @@ -203,6 +203,7 @@ ${silence.version} + com.silence silence-weixin diff --git a/silence-admin/pom.xml b/silence-admin/pom.xml index 0f8386024459fba4b47b58b639268d52cfd2a3ed..d6602104b094c98c602d74ce98d3e92b5de55a07 100644 --- a/silence-admin/pom.xml +++ b/silence-admin/pom.xml @@ -85,8 +85,10 @@ lombok provided + + diff --git a/silence-generator/src/main/java/com/silence/generator/controller/FansController.java b/silence-generator/src/main/java/com/silence/generator/controller/FansController.java new file mode 100644 index 0000000000000000000000000000000000000000..3a1b58cebd291fe79818564615cccb844d178ad8 --- /dev/null +++ b/silence-generator/src/main/java/com/silence/generator/controller/FansController.java @@ -0,0 +1,124 @@ +package com.silence.generator.controller; + +import com.silence.common.annotation.Log; +import com.silence.common.core.controller.BaseController; +import com.silence.common.core.domain.AjaxResult; +import com.silence.common.core.page.TableDataInfo; +import com.silence.common.enums.BusinessType; +import com.silence.common.utils.poi.ExcelUtil; +import com.silence.generator.domain.Fans; +import com.silence.generator.service.IFansService; +import org.apache.shiro.authz.annotation.RequiresPermissions; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Controller; +import org.springframework.ui.ModelMap; +import org.springframework.web.bind.annotation.*; + +import java.util.List; + +/** + * 粉丝 信息操作处理 + * + * @author silence + * @date 2019-09-18 + */ +@Controller +@RequestMapping("/system/fans") +public class FansController extends BaseController +{ + private String prefix = "system/fans"; + + @Autowired + private IFansService fansService; + + @RequiresPermissions("system:fans:view") + @GetMapping() + public String fans() + { + return prefix + "/fans"; + } + + /** + * 查询粉丝列表 + */ + @RequiresPermissions("system:fans:list") + @PostMapping("/list") + @ResponseBody + public TableDataInfo list(Fans fans) + { + startPage(); + List list = fansService.selectFansList(fans); + return getDataTable(list); + } + + + /** + * 导出粉丝列表 + */ + @RequiresPermissions("system:fans:export") + @PostMapping("/export") + @ResponseBody + public AjaxResult export(Fans fans) + { + List list = fansService.selectFansList(fans); + ExcelUtil util = new ExcelUtil(Fans.class); + return util.exportExcel(list, "fans"); + } + + /** + * 新增粉丝 + */ + @GetMapping("/add") + public String add() + { + return prefix + "/add"; + } + + /** + * 新增保存粉丝 + */ + @RequiresPermissions("system:fans:add") + @Log(title = "粉丝", businessType = BusinessType.INSERT) + @PostMapping("/add") + @ResponseBody + public AjaxResult addSave(Fans fans) + { + return toAjax(fansService.insertFans(fans)); + } + + /** + * 修改粉丝 + */ + @GetMapping("/edit/{id}") + public String edit(@PathVariable("id") String id, ModelMap mmap) + { + Fans fans = fansService.selectFansById(id); + mmap.put("fans", fans); + return prefix + "/edit"; + } + + /** + * 修改保存粉丝 + */ + @RequiresPermissions("system:fans:edit") + @Log(title = "粉丝", businessType = BusinessType.UPDATE) + @PostMapping("/edit") + @ResponseBody + public AjaxResult editSave(Fans fans) + { + return toAjax(fansService.updateFans(fans)); + } + + /** + * 删除粉丝 + */ + @RequiresPermissions("system:fans:remove") + @Log(title = "粉丝", businessType = BusinessType.DELETE) + @PostMapping( "/remove") + @ResponseBody + public AjaxResult remove(String ids) + { + return toAjax(fansService.deleteFansByIds(ids)); + } + +} diff --git a/silence-generator/src/main/java/com/silence/generator/domain/Fans.java b/silence-generator/src/main/java/com/silence/generator/domain/Fans.java new file mode 100644 index 0000000000000000000000000000000000000000..db8ee20e52f3230daddaa872138cb9350197759f --- /dev/null +++ b/silence-generator/src/main/java/com/silence/generator/domain/Fans.java @@ -0,0 +1,182 @@ +package com.silence.generator.domain; + + +import com.silence.common.core.domain.BaseEntity; +import org.apache.commons.lang.builder.ToStringBuilder; +import org.apache.commons.lang.builder.ToStringStyle; + +import java.util.Date; + +/** + * 粉丝表 fans + * + * @author silence + * @date 2019-09-18 + */ +public class Fans extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** ID */ + private String id; + /** OPENID */ + private String openId; + /** */ + private String nickName; + /** 性别 */ + private String sex; + /** 国家 */ + private String country; + /** 省份 */ + private String province; + /** 城市 */ + private String city; + /** 头像 */ + private String headimgurl; + /** 联合ID */ + private String unionid; + /** 真实姓名 */ + private String realName; + /** 手机号 */ + private String phone; + /** 是否关注(0:未关注,1:已关注) */ + private String isSubscribe; + /** 关注时间 */ + private Date subscribe; + + public void setId(String id) + { + this.id = id; + } + + public String getId() + { + return id; + } + public void setOpenId(String openId) + { + this.openId = openId; + } + + public String getOpenId() + { + return openId; + } + public void setNickName(String nickName) + { + this.nickName = nickName; + } + + public String getNickName() + { + return nickName; + } + public void setSex(String sex) + { + this.sex = sex; + } + + public String getSex() + { + return sex; + } + public void setCountry(String country) + { + this.country = country; + } + + public String getCountry() + { + return country; + } + public void setProvince(String province) + { + this.province = province; + } + + public String getProvince() + { + return province; + } + public void setCity(String city) + { + this.city = city; + } + + public String getCity() + { + return city; + } + public void setHeadimgurl(String headimgurl) + { + this.headimgurl = headimgurl; + } + + public String getHeadimgurl() + { + return headimgurl; + } + public void setUnionid(String unionid) + { + this.unionid = unionid; + } + + public String getUnionid() + { + return unionid; + } + public void setRealName(String realName) + { + this.realName = realName; + } + + public String getRealName() + { + return realName; + } + public void setPhone(String phone) + { + this.phone = phone; + } + + public String getPhone() + { + return phone; + } + public void setIsSubscribe(String isSubscribe) + { + this.isSubscribe = isSubscribe; + } + + public String getIsSubscribe() + { + return isSubscribe; + } + public void setSubscribe(Date subscribe) + { + this.subscribe = subscribe; + } + + public Date getSubscribe() + { + return subscribe; + } + + public String toString() { + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("id", getId()) + .append("openId", getOpenId()) + .append("nickName", getNickName()) + .append("sex", getSex()) + .append("country", getCountry()) + .append("province", getProvince()) + .append("city", getCity()) + .append("headimgurl", getHeadimgurl()) + .append("unionid", getUnionid()) + .append("realName", getRealName()) + .append("phone", getPhone()) + .append("isSubscribe", getIsSubscribe()) + .append("subscribe", getSubscribe()) + .toString(); + } +} diff --git a/silence-generator/src/main/java/com/silence/generator/mapper/FansMapper.java b/silence-generator/src/main/java/com/silence/generator/mapper/FansMapper.java new file mode 100644 index 0000000000000000000000000000000000000000..22d2cf2638b5a277329f130a3d74996475a90cb3 --- /dev/null +++ b/silence-generator/src/main/java/com/silence/generator/mapper/FansMapper.java @@ -0,0 +1,63 @@ +package com.silence.generator.mapper; + +import com.silence.generator.domain.Fans; + +import java.util.List; + +/** + * 粉丝 数据层 + * + * @author silence + * @date 2019-09-18 + */ +public interface FansMapper +{ + /** + * 查询粉丝信息 + * + * @param id 粉丝ID + * @return 粉丝信息 + */ + public Fans selectFansById(String id); + + /** + * 查询粉丝列表 + * + * @param fans 粉丝信息 + * @return 粉丝集合 + */ + public List selectFansList(Fans fans); + + /** + * 新增粉丝 + * + * @param fans 粉丝信息 + * @return 结果 + */ + public int insertFans(Fans fans); + + /** + * 修改粉丝 + * + * @param fans 粉丝信息 + * @return 结果 + */ + public int updateFans(Fans fans); + + /** + * 删除粉丝 + * + * @param id 粉丝ID + * @return 结果 + */ + public int deleteFansById(String id); + + /** + * 批量删除粉丝 + * + * @param ids 需要删除的数据ID + * @return 结果 + */ + public int deleteFansByIds(String[] ids); + +} \ No newline at end of file diff --git a/silence-generator/src/main/java/com/silence/generator/service/IFansService.java b/silence-generator/src/main/java/com/silence/generator/service/IFansService.java new file mode 100644 index 0000000000000000000000000000000000000000..52cf19190dfb7af4c3f40247abad9a8972f22e24 --- /dev/null +++ b/silence-generator/src/main/java/com/silence/generator/service/IFansService.java @@ -0,0 +1,55 @@ +package com.silence.generator.service; + +import com.silence.generator.domain.Fans; + +import java.util.List; + +/** + * 粉丝 服务层 + * + * @author silence + * @date 2019-09-18 + */ +public interface IFansService +{ + /** + * 查询粉丝信息 + * + * @param id 粉丝ID + * @return 粉丝信息 + */ + public Fans selectFansById(String id); + + /** + * 查询粉丝列表 + * + * @param fans 粉丝信息 + * @return 粉丝集合 + */ + public List selectFansList(Fans fans); + + /** + * 新增粉丝 + * + * @param fans 粉丝信息 + * @return 结果 + */ + public int insertFans(Fans fans); + + /** + * 修改粉丝 + * + * @param fans 粉丝信息 + * @return 结果 + */ + public int updateFans(Fans fans); + + /** + * 删除粉丝信息 + * + * @param ids 需要删除的数据ID + * @return 结果 + */ + public int deleteFansByIds(String ids); + +} diff --git a/silence-generator/src/main/java/com/silence/generator/service/impl/FansServiceImpl.java b/silence-generator/src/main/java/com/silence/generator/service/impl/FansServiceImpl.java new file mode 100644 index 0000000000000000000000000000000000000000..a50653e9866fb283345d54604b01e27730ef0d7f --- /dev/null +++ b/silence-generator/src/main/java/com/silence/generator/service/impl/FansServiceImpl.java @@ -0,0 +1,84 @@ +package com.silence.generator.service.impl; + +import com.silence.common.core.text.Convert; +import com.silence.generator.domain.Fans; +import com.silence.generator.mapper.FansMapper; +import com.silence.generator.service.IFansService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 粉丝 服务层实现 + * + * @author silence + * @date 2019-09-18 + */ +@Service +public class FansServiceImpl implements IFansService +{ + @Autowired + private FansMapper fansMapper; + + /** + * 查询粉丝信息 + * + * @param id 粉丝ID + * @return 粉丝信息 + */ + @Override + public Fans selectFansById(String id) + { + return fansMapper.selectFansById(id); + } + + /** + * 查询粉丝列表 + * + * @param fans 粉丝信息 + * @return 粉丝集合 + */ + @Override + public List selectFansList(Fans fans) + { + return fansMapper.selectFansList(fans); + } + + /** + * 新增粉丝 + * + * @param fans 粉丝信息 + * @return 结果 + */ + @Override + public int insertFans(Fans fans) + { + return fansMapper.insertFans(fans); + } + + /** + * 修改粉丝 + * + * @param fans 粉丝信息 + * @return 结果 + */ + @Override + public int updateFans(Fans fans) + { + return fansMapper.updateFans(fans); + } + + /** + * 删除粉丝对象 + * + * @param ids 需要删除的数据ID + * @return 结果 + */ + @Override + public int deleteFansByIds(String ids) + { + return fansMapper.deleteFansByIds(Convert.toStrArray(ids)); + } + +} diff --git a/silence-generator/src/main/resources/mapper/system/FansMapper.xml b/silence-generator/src/main/resources/mapper/system/FansMapper.xml new file mode 100644 index 0000000000000000000000000000000000000000..4455f769dcac463037a1743256ee99a42df4fc98 --- /dev/null +++ b/silence-generator/src/main/resources/mapper/system/FansMapper.xml @@ -0,0 +1,115 @@ + + + + + + + + + + + + + + + + + + + + + + select id, open_id, nick_name, sex, country, province, city, headimgurl, unionid, real_name, phone, is_subscribe, subscribe from fans + + + + + + + + insert into fans + + id, + open_id, + nick_name, + sex, + country, + province, + city, + headimgurl, + unionid, + real_name, + phone, + is_subscribe, + subscribe, + + + #{id}, + #{openId}, + #{nickName}, + #{sex}, + #{country}, + #{province}, + #{city}, + #{headimgurl}, + #{unionid}, + #{realName}, + #{phone}, + #{isSubscribe}, + #{subscribe}, + + + + + update fans + + open_id = #{openId}, + nick_name = #{nickName}, + sex = #{sex}, + country = #{country}, + province = #{province}, + city = #{city}, + headimgurl = #{headimgurl}, + unionid = #{unionid}, + real_name = #{realName}, + phone = #{phone}, + is_subscribe = #{isSubscribe}, + subscribe = #{subscribe}, + + where id = #{id} + + + + delete from fans where id = #{id} + + + + delete from fans where id in + + #{id} + + + + \ No newline at end of file