From 506ca3760b78b76239c9229550e46b6845c35e1a Mon Sep 17 00:00:00 2001 From: keivn Date: Sat, 25 Dec 2021 14:09:51 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=BE=AE=E4=BF=A1=E7=94=A8?= =?UTF-8?q?=E6=88=B7=E6=B3=A8=E5=86=8C=E5=92=8C=E5=B0=8F=E7=A8=8B=E5=BA=8F?= =?UTF-8?q?=E7=99=BB=E5=85=A5=E7=9A=84=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../carpool/controller/PMemberController.java | 104 ++++ .../com/ruoyi/carpool/domain/PMember.java | 269 ++++++++++ .../ruoyi/carpool/mapper/PMemberMapper.java | 61 +++ .../carpool/service/IPMemberService.java | 61 +++ .../service/impl/PMemberServiceImpl.java | 96 ++++ .../mapper/carpool/PMemberMapper.xml | 151 ++++++ .../controller/system/SysLoginController.java | 17 + .../framework/config/SecurityConfig.java | 4 +- ruoyi-ui/src/api/carpool/member.js | 53 ++ ruoyi-ui/src/views/carpool/member/index.vue | 482 ++++++++++++++++++ 10 files changed, 1296 insertions(+), 2 deletions(-) create mode 100644 ruiyi-carpool/src/main/java/com/ruoyi/carpool/controller/PMemberController.java create mode 100644 ruiyi-carpool/src/main/java/com/ruoyi/carpool/domain/PMember.java create mode 100644 ruiyi-carpool/src/main/java/com/ruoyi/carpool/mapper/PMemberMapper.java create mode 100644 ruiyi-carpool/src/main/java/com/ruoyi/carpool/service/IPMemberService.java create mode 100644 ruiyi-carpool/src/main/java/com/ruoyi/carpool/service/impl/PMemberServiceImpl.java create mode 100644 ruiyi-carpool/src/main/resources/mapper/carpool/PMemberMapper.xml create mode 100644 ruoyi-ui/src/api/carpool/member.js create mode 100644 ruoyi-ui/src/views/carpool/member/index.vue diff --git a/ruiyi-carpool/src/main/java/com/ruoyi/carpool/controller/PMemberController.java b/ruiyi-carpool/src/main/java/com/ruoyi/carpool/controller/PMemberController.java new file mode 100644 index 000000000..a84f617ca --- /dev/null +++ b/ruiyi-carpool/src/main/java/com/ruoyi/carpool/controller/PMemberController.java @@ -0,0 +1,104 @@ +package com.ruoyi.carpool.controller; + +import java.util.List; +import javax.servlet.http.HttpServletResponse; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.PutMapping; +import org.springframework.web.bind.annotation.DeleteMapping; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; +import com.ruoyi.common.annotation.Log; +import com.ruoyi.common.core.controller.BaseController; +import com.ruoyi.common.core.domain.AjaxResult; +import com.ruoyi.common.enums.BusinessType; +import com.ruoyi.carpool.domain.PMember; +import com.ruoyi.carpool.service.IPMemberService; +import com.ruoyi.common.utils.poi.ExcelUtil; +import com.ruoyi.common.core.page.TableDataInfo; + +/** + * 微信注册用户信息Controller + * + * @author ruoyi + * @date 2021-12-25 + */ +@RestController +@RequestMapping("/carpool/member") +public class PMemberController extends BaseController +{ + @Autowired + private IPMemberService pMemberService; + + /** + * 查询微信注册用户信息列表 + */ + @PreAuthorize("@ss.hasPermi('carpool:member:list')") + @GetMapping("/list") + public TableDataInfo list(PMember pMember) + { + startPage(); + List list = pMemberService.selectPMemberList(pMember); + return getDataTable(list); + } + + /** + * 导出微信注册用户信息列表 + */ + @PreAuthorize("@ss.hasPermi('carpool:member:export')") + @Log(title = "微信注册用户信息", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, PMember pMember) + { + List list = pMemberService.selectPMemberList(pMember); + ExcelUtil util = new ExcelUtil(PMember.class); + util.exportExcel(response, list, "微信注册用户信息数据"); + } + + /** + * 获取微信注册用户信息详细信息 + */ + @PreAuthorize("@ss.hasPermi('carpool:member:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Integer id) + { + return AjaxResult.success(pMemberService.selectPMemberById(id)); + } + + /** + * 新增微信注册用户信息 + */ + @PreAuthorize("@ss.hasPermi('carpool:member:add')") + @Log(title = "微信注册用户信息", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody PMember pMember) + { + return toAjax(pMemberService.insertPMember(pMember)); + } + + /** + * 修改微信注册用户信息 + */ + @PreAuthorize("@ss.hasPermi('carpool:member:edit')") + @Log(title = "微信注册用户信息", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody PMember pMember) + { + return toAjax(pMemberService.updatePMember(pMember)); + } + + /** + * 删除微信注册用户信息 + */ + @PreAuthorize("@ss.hasPermi('carpool:member:remove')") + @Log(title = "微信注册用户信息", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Integer[] ids) + { + return toAjax(pMemberService.deletePMemberByIds(ids)); + } +} diff --git a/ruiyi-carpool/src/main/java/com/ruoyi/carpool/domain/PMember.java b/ruiyi-carpool/src/main/java/com/ruoyi/carpool/domain/PMember.java new file mode 100644 index 000000000..e1de610dc --- /dev/null +++ b/ruiyi-carpool/src/main/java/com/ruoyi/carpool/domain/PMember.java @@ -0,0 +1,269 @@ +package com.ruoyi.carpool.domain; + +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; +import com.ruoyi.common.annotation.Excel; +import com.ruoyi.common.core.domain.BaseEntity; + +/** + * 微信注册用户信息对象 p_member + * + * @author ruoyi + * @date 2021-12-25 + */ +public class PMember extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** 自增id */ + private Integer id; + + /** 平台编号 */ + @Excel(name = "平台编号") + private String custId; + + /** 用户类型 */ + @Excel(name = "用户类型") + private String custType; + + /** 微信唯一标识 */ + @Excel(name = "微信唯一标识") + private String openId; + + /** 微信unionId */ + @Excel(name = "微信unionId") + private Long unionId; + + /** 姓名 */ + @Excel(name = "姓名") + private String custName; + + /** 微信昵称 */ + @Excel(name = "微信昵称") + private String nickName; + + /** 手机号1 */ + @Excel(name = "手机号1") + private String custPhoneA; + + /** 手机号2 */ + @Excel(name = "手机号2") + private String custPhoneB; + + /** 性别 */ + @Excel(name = "性别") + private String sex; + + /** 生日 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "生日", width = 30, dateFormat = "yyyy-MM-dd") + private Date birthday; + + /** 所在城市 */ + @Excel(name = "所在城市") + private String city; + + /** 所在省份 */ + @Excel(name = "所在省份") + private String province; + + /** 所在国家 */ + @Excel(name = "所在国家") + private String country; + + /** 用户头像 */ + @Excel(name = "用户头像") + private String headimgurl; + + /** 证件类型 */ + @Excel(name = "证件类型") + private String idType; + + /** 证件号 */ + @Excel(name = "证件号") + private String idNo; + + public void setId(Integer id) + { + this.id = id; + } + + public Integer getId() + { + return id; + } + public void setCustId(String custId) + { + this.custId = custId; + } + + public String getCustId() + { + return custId; + } + public void setCustType(String custType) + { + this.custType = custType; + } + + public String getCustType() + { + return custType; + } + public void setOpenId(String openId) + { + this.openId = openId; + } + + public String getOpenId() + { + return openId; + } + public void setUnionId(Long unionId) + { + this.unionId = unionId; + } + + public Long getUnionId() + { + return unionId; + } + public void setCustName(String custName) + { + this.custName = custName; + } + + public String getCustName() + { + return custName; + } + public void setNickName(String nickName) + { + this.nickName = nickName; + } + + public String getNickName() + { + return nickName; + } + public void setCustPhoneA(String custPhoneA) + { + this.custPhoneA = custPhoneA; + } + + public String getCustPhoneA() + { + return custPhoneA; + } + public void setCustPhoneB(String custPhoneB) + { + this.custPhoneB = custPhoneB; + } + + public String getCustPhoneB() + { + return custPhoneB; + } + public void setSex(String sex) + { + this.sex = sex; + } + + public String getSex() + { + return sex; + } + public void setBirthday(Date birthday) + { + this.birthday = birthday; + } + + public Date getBirthday() + { + return birthday; + } + public void setCity(String city) + { + this.city = city; + } + + public String getCity() + { + return city; + } + public void setProvince(String province) + { + this.province = province; + } + + public String getProvince() + { + return province; + } + public void setCountry(String country) + { + this.country = country; + } + + public String getCountry() + { + return country; + } + public void setHeadimgurl(String headimgurl) + { + this.headimgurl = headimgurl; + } + + public String getHeadimgurl() + { + return headimgurl; + } + public void setIdType(String idType) + { + this.idType = idType; + } + + public String getIdType() + { + return idType; + } + public void setIdNo(String idNo) + { + this.idNo = idNo; + } + + public String getIdNo() + { + return idNo; + } + + @Override + public String toString() { + return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) + .append("id", getId()) + .append("custId", getCustId()) + .append("custType", getCustType()) + .append("openId", getOpenId()) + .append("unionId", getUnionId()) + .append("custName", getCustName()) + .append("nickName", getNickName()) + .append("custPhoneA", getCustPhoneA()) + .append("custPhoneB", getCustPhoneB()) + .append("sex", getSex()) + .append("birthday", getBirthday()) + .append("city", getCity()) + .append("province", getProvince()) + .append("country", getCountry()) + .append("headimgurl", getHeadimgurl()) + .append("idType", getIdType()) + .append("idNo", getIdNo()) + .append("remark", getRemark()) + .append("createBy", getCreateBy()) + .append("createTime", getCreateTime()) + .append("updateBy", getUpdateBy()) + .append("updateTime", getUpdateTime()) + .toString(); + } +} diff --git a/ruiyi-carpool/src/main/java/com/ruoyi/carpool/mapper/PMemberMapper.java b/ruiyi-carpool/src/main/java/com/ruoyi/carpool/mapper/PMemberMapper.java new file mode 100644 index 000000000..71411599c --- /dev/null +++ b/ruiyi-carpool/src/main/java/com/ruoyi/carpool/mapper/PMemberMapper.java @@ -0,0 +1,61 @@ +package com.ruoyi.carpool.mapper; + +import java.util.List; +import com.ruoyi.carpool.domain.PMember; + +/** + * 微信注册用户信息Mapper接口 + * + * @author ruoyi + * @date 2021-12-25 + */ +public interface PMemberMapper +{ + /** + * 查询微信注册用户信息 + * + * @param id 微信注册用户信息主键 + * @return 微信注册用户信息 + */ + public PMember selectPMemberById(Integer id); + + /** + * 查询微信注册用户信息列表 + * + * @param pMember 微信注册用户信息 + * @return 微信注册用户信息集合 + */ + public List selectPMemberList(PMember pMember); + + /** + * 新增微信注册用户信息 + * + * @param pMember 微信注册用户信息 + * @return 结果 + */ + public int insertPMember(PMember pMember); + + /** + * 修改微信注册用户信息 + * + * @param pMember 微信注册用户信息 + * @return 结果 + */ + public int updatePMember(PMember pMember); + + /** + * 删除微信注册用户信息 + * + * @param id 微信注册用户信息主键 + * @return 结果 + */ + public int deletePMemberById(Integer id); + + /** + * 批量删除微信注册用户信息 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deletePMemberByIds(Integer[] ids); +} diff --git a/ruiyi-carpool/src/main/java/com/ruoyi/carpool/service/IPMemberService.java b/ruiyi-carpool/src/main/java/com/ruoyi/carpool/service/IPMemberService.java new file mode 100644 index 000000000..745e7ea41 --- /dev/null +++ b/ruiyi-carpool/src/main/java/com/ruoyi/carpool/service/IPMemberService.java @@ -0,0 +1,61 @@ +package com.ruoyi.carpool.service; + +import java.util.List; +import com.ruoyi.carpool.domain.PMember; + +/** + * 微信注册用户信息Service接口 + * + * @author ruoyi + * @date 2021-12-25 + */ +public interface IPMemberService +{ + /** + * 查询微信注册用户信息 + * + * @param id 微信注册用户信息主键 + * @return 微信注册用户信息 + */ + public PMember selectPMemberById(Integer id); + + /** + * 查询微信注册用户信息列表 + * + * @param pMember 微信注册用户信息 + * @return 微信注册用户信息集合 + */ + public List selectPMemberList(PMember pMember); + + /** + * 新增微信注册用户信息 + * + * @param pMember 微信注册用户信息 + * @return 结果 + */ + public int insertPMember(PMember pMember); + + /** + * 修改微信注册用户信息 + * + * @param pMember 微信注册用户信息 + * @return 结果 + */ + public int updatePMember(PMember pMember); + + /** + * 批量删除微信注册用户信息 + * + * @param ids 需要删除的微信注册用户信息主键集合 + * @return 结果 + */ + public int deletePMemberByIds(Integer[] ids); + + /** + * 删除微信注册用户信息信息 + * + * @param id 微信注册用户信息主键 + * @return 结果 + */ + public int deletePMemberById(Integer id); +} diff --git a/ruiyi-carpool/src/main/java/com/ruoyi/carpool/service/impl/PMemberServiceImpl.java b/ruiyi-carpool/src/main/java/com/ruoyi/carpool/service/impl/PMemberServiceImpl.java new file mode 100644 index 000000000..71c942c2d --- /dev/null +++ b/ruiyi-carpool/src/main/java/com/ruoyi/carpool/service/impl/PMemberServiceImpl.java @@ -0,0 +1,96 @@ +package com.ruoyi.carpool.service.impl; + +import java.util.List; +import com.ruoyi.common.utils.DateUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import com.ruoyi.carpool.mapper.PMemberMapper; +import com.ruoyi.carpool.domain.PMember; +import com.ruoyi.carpool.service.IPMemberService; + +/** + * 微信注册用户信息Service业务层处理 + * + * @author ruoyi + * @date 2021-12-25 + */ +@Service +public class PMemberServiceImpl implements IPMemberService +{ + @Autowired + private PMemberMapper pMemberMapper; + + /** + * 查询微信注册用户信息 + * + * @param id 微信注册用户信息主键 + * @return 微信注册用户信息 + */ + @Override + public PMember selectPMemberById(Integer id) + { + return pMemberMapper.selectPMemberById(id); + } + + /** + * 查询微信注册用户信息列表 + * + * @param pMember 微信注册用户信息 + * @return 微信注册用户信息 + */ + @Override + public List selectPMemberList(PMember pMember) + { + return pMemberMapper.selectPMemberList(pMember); + } + + /** + * 新增微信注册用户信息 + * + * @param pMember 微信注册用户信息 + * @return 结果 + */ + @Override + public int insertPMember(PMember pMember) + { + pMember.setCreateTime(DateUtils.getNowDate()); + return pMemberMapper.insertPMember(pMember); + } + + /** + * 修改微信注册用户信息 + * + * @param pMember 微信注册用户信息 + * @return 结果 + */ + @Override + public int updatePMember(PMember pMember) + { + pMember.setUpdateTime(DateUtils.getNowDate()); + return pMemberMapper.updatePMember(pMember); + } + + /** + * 批量删除微信注册用户信息 + * + * @param ids 需要删除的微信注册用户信息主键 + * @return 结果 + */ + @Override + public int deletePMemberByIds(Integer[] ids) + { + return pMemberMapper.deletePMemberByIds(ids); + } + + /** + * 删除微信注册用户信息信息 + * + * @param id 微信注册用户信息主键 + * @return 结果 + */ + @Override + public int deletePMemberById(Integer id) + { + return pMemberMapper.deletePMemberById(id); + } +} diff --git a/ruiyi-carpool/src/main/resources/mapper/carpool/PMemberMapper.xml b/ruiyi-carpool/src/main/resources/mapper/carpool/PMemberMapper.xml new file mode 100644 index 000000000..2aa401166 --- /dev/null +++ b/ruiyi-carpool/src/main/resources/mapper/carpool/PMemberMapper.xml @@ -0,0 +1,151 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + select id, cust_id, cust_type, open_id, union_id, cust_name, nick_name, cust_phone_a, cust_phone_b, sex, birthday, city, province, country, headimgurl, id_type, id_no, remark, create_by, create_time, update_by, update_time from p_member + + + + + + + + insert into p_member + + cust_id, + cust_type, + open_id, + union_id, + cust_name, + nick_name, + cust_phone_a, + cust_phone_b, + sex, + birthday, + city, + province, + country, + headimgurl, + id_type, + id_no, + remark, + create_by, + create_time, + update_by, + update_time, + + + #{custId}, + #{custType}, + #{openId}, + #{unionId}, + #{custName}, + #{nickName}, + #{custPhoneA}, + #{custPhoneB}, + #{sex}, + #{birthday}, + #{city}, + #{province}, + #{country}, + #{headimgurl}, + #{idType}, + #{idNo}, + #{remark}, + #{createBy}, + #{createTime}, + #{updateBy}, + #{updateTime}, + + + + + update p_member + + cust_id = #{custId}, + cust_type = #{custType}, + open_id = #{openId}, + union_id = #{unionId}, + cust_name = #{custName}, + nick_name = #{nickName}, + cust_phone_a = #{custPhoneA}, + cust_phone_b = #{custPhoneB}, + sex = #{sex}, + birthday = #{birthday}, + city = #{city}, + province = #{province}, + country = #{country}, + headimgurl = #{headimgurl}, + id_type = #{idType}, + id_no = #{idNo}, + remark = #{remark}, + create_by = #{createBy}, + create_time = #{createTime}, + update_by = #{updateBy}, + update_time = #{updateTime}, + + where id = #{id} + + + + delete from p_member where id = #{id} + + + + delete from p_member where id in + + #{id} + + + \ No newline at end of file diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java index e94ae78e6..e4a792865 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java @@ -50,6 +50,23 @@ public class SysLoginController return ajax; } + + /** + * 微信小程序登录方法 + * @return 结果 + */ + @PostMapping("/weixiMiniLogin") + public AjaxResult weixiMiniLogin() + { + AjaxResult ajax = AjaxResult.success(); + // 微信小程序登入生成令牌 + String username = "weixi_mini_admin" ; + String password = "qwerasdf123" ; + String token = loginService.login(username, password, "", ""); + ajax.put(Constants.TOKEN, token); + return ajax; + } + /** * 获取用户信息 * diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/SecurityConfig.java b/ruoyi-framework/src/main/java/com/ruoyi/framework/config/SecurityConfig.java index 58dd02ad0..bf314559a 100644 --- a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/SecurityConfig.java +++ b/ruoyi-framework/src/main/java/com/ruoyi/framework/config/SecurityConfig.java @@ -96,8 +96,8 @@ public class SecurityConfig extends WebSecurityConfigurerAdapter .sessionManagement().sessionCreationPolicy(SessionCreationPolicy.STATELESS).and() // 过滤请求 .authorizeRequests() - // 对于登录login 注册register 验证码captchaImage 允许匿名访问 - .antMatchers("/login", "/register", "/captchaImage").anonymous() + // 对于登录login 注册register 验证码captchaImage 微信小程序weixiMiniLogin 允许匿名访问 + .antMatchers("/login", "/register", "/captchaImage","/weixiMiniLogin").anonymous() .antMatchers( HttpMethod.GET, "/", diff --git a/ruoyi-ui/src/api/carpool/member.js b/ruoyi-ui/src/api/carpool/member.js new file mode 100644 index 000000000..cf05997c1 --- /dev/null +++ b/ruoyi-ui/src/api/carpool/member.js @@ -0,0 +1,53 @@ +import request from '@/utils/request' + +// 查询微信注册用户信息列表 +export function listMember(query) { + return request({ + url: '/carpool/member/list', + method: 'get', + params: query + }) +} + +// 查询微信注册用户信息详细 +export function getMember(id) { + return request({ + url: '/carpool/member/' + id, + method: 'get' + }) +} + +// 新增微信注册用户信息 +export function addMember(data) { + return request({ + url: '/carpool/member', + method: 'post', + data: data + }) +} + +// 修改微信注册用户信息 +export function updateMember(data) { + return request({ + url: '/carpool/member', + method: 'put', + data: data + }) +} + +// 删除微信注册用户信息 +export function delMember(id) { + return request({ + url: '/carpool/member/' + id, + method: 'delete' + }) +} + +// 导出微信注册用户信息 +export function exportMember(query) { + return request({ + url: '/carpool/member/export', + method: 'get', + params: query + }) +} \ No newline at end of file diff --git a/ruoyi-ui/src/views/carpool/member/index.vue b/ruoyi-ui/src/views/carpool/member/index.vue new file mode 100644 index 000000000..c9fc05e4b --- /dev/null +++ b/ruoyi-ui/src/views/carpool/member/index.vue @@ -0,0 +1,482 @@ + + +