diff --git a/jsowell-admin/src/main/java/com/jsowell/web/controller/pile/MemberGroupController.java b/jsowell-admin/src/main/java/com/jsowell/web/controller/pile/MemberGroupController.java new file mode 100644 index 000000000..809d2c3a3 --- /dev/null +++ b/jsowell-admin/src/main/java/com/jsowell/web/controller/pile/MemberGroupController.java @@ -0,0 +1,98 @@ +package com.jsowell.pile.controller; + +import com.jsowell.common.annotation.Log; +import com.jsowell.common.core.controller.BaseController; +import com.jsowell.common.core.domain.AjaxResult; +import com.jsowell.common.core.page.TableDataInfo; +import com.jsowell.common.enums.BusinessType; +import com.jsowell.common.util.poi.ExcelUtil; +import com.jsowell.pile.domain.MemberGroup; +import com.jsowell.pile.service.MemberGroupService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.web.bind.annotation.*; + +import javax.servlet.http.HttpServletResponse; +import java.util.List; + +/** + * 会员组Controller + * + * @author jsowell + * @date 2023-12-26 + */ +@RestController +@RequestMapping("/member/memberGroup") +public class MemberGroupController extends BaseController +{ + @Autowired + private MemberGroupService memberGroupService; + + /** + * 查询会员组列表 + */ + @PreAuthorize("@ss.hasPermi('member:memberGroup:list')") + @GetMapping("/list") + public TableDataInfo list(MemberGroup memberGroup) + { + startPage(); + List list = memberGroupService.selectMemberGroupList(memberGroup); + return getDataTable(list); + } + + /** + * 导出会员组列表 + */ + @PreAuthorize("@ss.hasPermi('member:memberGroup:export')") + @Log(title = "会员组", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, MemberGroup memberGroup) + { + List list = memberGroupService.selectMemberGroupList(memberGroup); + ExcelUtil util = new ExcelUtil(MemberGroup.class); + util.exportExcel(response, list, "会员组数据"); + } + + /** + * 获取会员组详细信息 + */ + @PreAuthorize("@ss.hasPermi('member:memberGroup:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return AjaxResult.success(memberGroupService.selectMemberGroupById(id)); + } + + /** + * 新增会员组 + */ + @PreAuthorize("@ss.hasPermi('member:memberGroup:add')") + @Log(title = "会员组", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody MemberGroup memberGroup) + { + return toAjax(memberGroupService.insertMemberGroup(memberGroup)); + } + + /** + * 修改会员组 + */ + @PreAuthorize("@ss.hasPermi('member:memberGroup:edit')") + @Log(title = "会员组", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody MemberGroup memberGroup) + { + return toAjax(memberGroupService.updateMemberGroup(memberGroup)); + } + + /** + * 删除会员组 + */ + @PreAuthorize("@ss.hasPermi('member:memberGroup:remove')") + @Log(title = "会员组", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(memberGroupService.deleteMemberGroupByIds(ids)); + } +} diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/domain/MemberGroup.java b/jsowell-pile/src/main/java/com/jsowell/pile/domain/MemberGroup.java new file mode 100644 index 000000000..2bb663fda --- /dev/null +++ b/jsowell-pile/src/main/java/com/jsowell/pile/domain/MemberGroup.java @@ -0,0 +1,140 @@ +package com.jsowell.pile.domain; + +import com.jsowell.common.annotation.Excel; +import com.jsowell.common.core.domain.BaseEntity; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +import java.math.BigDecimal; + +/** + * 会员组对象 member_group + * + * @author jsowell + * @date 2023-12-26 + */ +public class MemberGroup extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** 主键 */ + private Long id; + + /** 会员组编号 */ + @Excel(name = "会员组编号") + private String groupCode; + + /** 运营商id */ + @Excel(name = "运营商id") + private String merchantId; + + /** 站点id */ + @Excel(name = "站点id") + private String stationId; + + /** 会员组等级 */ + @Excel(name = "会员组等级") + private String groupLevel; + + /** 类型(1-服务费折扣,2-电费折扣 ,3-电费和服务费一起折扣) */ + @Excel(name = "类型", readConverterExp = "1=-服务费折扣,2-电费折扣,,=3-电费和服务费一起折扣") + private String groupType; + + /** 折扣率 */ + @Excel(name = "折扣率") + private BigDecimal discount; + + /** 删除标识(0-正常;1-删除) */ + private String delFlag; + + public void setId(Long id) + { + this.id = id; + } + + public Long getId() + { + return id; + } + public void setGroupCode(String groupCode) + { + this.groupCode = groupCode; + } + + public String getGroupCode() + { + return groupCode; + } + public void setMerchantId(String merchantId) + { + this.merchantId = merchantId; + } + + public String getMerchantId() + { + return merchantId; + } + public void setStationId(String stationId) + { + this.stationId = stationId; + } + + public String getStationId() + { + return stationId; + } + public void setGroupLevel(String groupLevel) + { + this.groupLevel = groupLevel; + } + + public String getGroupLevel() + { + return groupLevel; + } + public void setGroupType(String groupType) + { + this.groupType = groupType; + } + + public String getGroupType() + { + return groupType; + } + public void setDiscount(BigDecimal discount) + { + this.discount = discount; + } + + public BigDecimal getDiscount() + { + return discount; + } + public void setDelFlag(String delFlag) + { + this.delFlag = delFlag; + } + + public String getDelFlag() + { + return delFlag; + } + + @Override + public String toString() { + return new ToStringBuilder(this, ToStringStyle.JSON_STYLE) + .append("id", getId()) + .append("groupCode", getGroupCode()) + .append("merchantId", getMerchantId()) + .append("stationId", getStationId()) + .append("groupLevel", getGroupLevel()) + .append("groupType", getGroupType()) + .append("discount", getDiscount()) + .append("createBy", getCreateBy()) + .append("createTime", getCreateTime()) + .append("updateBy", getUpdateBy()) + .append("updateTime", getUpdateTime()) + .append("delFlag", getDelFlag()) + .toString(); + } +} diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/mapper/MemberGroupMapper.java b/jsowell-pile/src/main/java/com/jsowell/pile/mapper/MemberGroupMapper.java new file mode 100644 index 000000000..0030994a1 --- /dev/null +++ b/jsowell-pile/src/main/java/com/jsowell/pile/mapper/MemberGroupMapper.java @@ -0,0 +1,62 @@ +package com.jsowell.pile.mapper; + +import com.jsowell.pile.domain.MemberGroup; + +import java.util.List; + +/** + * 会员组Mapper接口 + * + * @author jsowell + * @date 2023-12-26 + */ +public interface MemberGroupMapper +{ + /** + * 查询会员组 + * + * @param id 会员组主键 + * @return 会员组 + */ + public MemberGroup selectMemberGroupById(Long id); + + /** + * 查询会员组列表 + * + * @param memberGroup 会员组 + * @return 会员组集合 + */ + public List selectMemberGroupList(MemberGroup memberGroup); + + /** + * 新增会员组 + * + * @param memberGroup 会员组 + * @return 结果 + */ + public int insertMemberGroup(MemberGroup memberGroup); + + /** + * 修改会员组 + * + * @param memberGroup 会员组 + * @return 结果 + */ + public int updateMemberGroup(MemberGroup memberGroup); + + /** + * 删除会员组 + * + * @param id 会员组主键 + * @return 结果 + */ + public int deleteMemberGroupById(Long id); + + /** + * 批量删除会员组 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteMemberGroupByIds(Long[] ids); +} diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/service/MemberGroupService.java b/jsowell-pile/src/main/java/com/jsowell/pile/service/MemberGroupService.java new file mode 100644 index 000000000..ed402514f --- /dev/null +++ b/jsowell-pile/src/main/java/com/jsowell/pile/service/MemberGroupService.java @@ -0,0 +1,62 @@ +package com.jsowell.pile.service; + +import com.jsowell.pile.domain.MemberGroup; + +import java.util.List; + +/** + * 会员组Service接口 + * + * @author jsowell + * @date 2023-12-26 + */ +public interface MemberGroupService +{ + /** + * 查询会员组 + * + * @param id 会员组主键 + * @return 会员组 + */ + public MemberGroup selectMemberGroupById(Long id); + + /** + * 查询会员组列表 + * + * @param memberGroup 会员组 + * @return 会员组集合 + */ + public List selectMemberGroupList(MemberGroup memberGroup); + + /** + * 新增会员组 + * + * @param memberGroup 会员组 + * @return 结果 + */ + public int insertMemberGroup(MemberGroup memberGroup); + + /** + * 修改会员组 + * + * @param memberGroup 会员组 + * @return 结果 + */ + public int updateMemberGroup(MemberGroup memberGroup); + + /** + * 批量删除会员组 + * + * @param ids 需要删除的会员组主键集合 + * @return 结果 + */ + public int deleteMemberGroupByIds(Long[] ids); + + /** + * 删除会员组信息 + * + * @param id 会员组主键 + * @return 结果 + */ + public int deleteMemberGroupById(Long id); +} diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/MemberGroupServiceImpl.java b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/MemberGroupServiceImpl.java new file mode 100644 index 000000000..f5ee458a0 --- /dev/null +++ b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/MemberGroupServiceImpl.java @@ -0,0 +1,97 @@ +package com.jsowell.pile.service.impl; + +import com.jsowell.common.util.DateUtils; +import com.jsowell.pile.domain.MemberGroup; +import com.jsowell.pile.mapper.MemberGroupMapper; +import com.jsowell.pile.service.MemberGroupService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 会员组Service业务层处理 + * + * @author jsowell + * @date 2023-12-26 + */ +@Service +public class MemberGroupServiceImpl implements MemberGroupService +{ + @Autowired + private MemberGroupMapper memberGroupMapper; + + /** + * 查询会员组 + * + * @param id 会员组主键 + * @return 会员组 + */ + @Override + public MemberGroup selectMemberGroupById(Long id) + { + return memberGroupMapper.selectMemberGroupById(id); + } + + /** + * 查询会员组列表 + * + * @param memberGroup 会员组 + * @return 会员组 + */ + @Override + public List selectMemberGroupList(MemberGroup memberGroup) + { + return memberGroupMapper.selectMemberGroupList(memberGroup); + } + + /** + * 新增会员组 + * + * @param memberGroup 会员组 + * @return 结果 + */ + @Override + public int insertMemberGroup(MemberGroup memberGroup) + { + memberGroup.setCreateTime(DateUtils.getNowDate()); + return memberGroupMapper.insertMemberGroup(memberGroup); + } + + /** + * 修改会员组 + * + * @param memberGroup 会员组 + * @return 结果 + */ + @Override + public int updateMemberGroup(MemberGroup memberGroup) + { + memberGroup.setUpdateTime(DateUtils.getNowDate()); + return memberGroupMapper.updateMemberGroup(memberGroup); + } + + /** + * 批量删除会员组 + * + * @param ids 需要删除的会员组主键 + * @return 结果 + */ + @Override + public int deleteMemberGroupByIds(Long[] ids) + { + return memberGroupMapper.deleteMemberGroupByIds(ids); + } + + /** + * 删除会员组信息 + * + * @param id 会员组主键 + * @return 结果 + */ + @Override + public int deleteMemberGroupById(Long id) + { + return memberGroupMapper.deleteMemberGroupById(id); + } +} diff --git a/jsowell-pile/src/main/resources/mapper/pile/MemberGroupMapper.xml b/jsowell-pile/src/main/resources/mapper/pile/MemberGroupMapper.xml new file mode 100644 index 000000000..147bce5f7 --- /dev/null +++ b/jsowell-pile/src/main/resources/mapper/pile/MemberGroupMapper.xml @@ -0,0 +1,103 @@ + + + + + + + + + + + + + + + + + + + + + select id, group_code, merchant_id, station_id, group_level, group_type, discount, create_by, create_time, update_by, update_time, del_flag from member_group + + + + + + + + insert into member_group + + id, + group_code, + merchant_id, + station_id, + group_level, + group_type, + discount, + create_by, + create_time, + update_by, + update_time, + del_flag, + + + #{id}, + #{groupCode}, + #{merchantId}, + #{stationId}, + #{groupLevel}, + #{groupType}, + #{discount}, + #{createBy}, + #{createTime}, + #{updateBy}, + #{updateTime}, + #{delFlag}, + + + + + update member_group + + group_code = #{groupCode}, + merchant_id = #{merchantId}, + station_id = #{stationId}, + group_level = #{groupLevel}, + group_type = #{groupType}, + discount = #{discount}, + create_by = #{createBy}, + create_time = #{createTime}, + update_by = #{updateBy}, + update_time = #{updateTime}, + del_flag = #{delFlag}, + + where id = #{id} + + + + delete from member_group where id = #{id} + + + + delete from member_group where id in + + #{id} + + + \ No newline at end of file diff --git a/jsowell-ui/src/api/member/memberGroup.js b/jsowell-ui/src/api/member/memberGroup.js new file mode 100644 index 000000000..63c4df37f --- /dev/null +++ b/jsowell-ui/src/api/member/memberGroup.js @@ -0,0 +1,44 @@ +import request from '@/utils/request' + +// 查询会员组列表 +export function listMemberGroup(query) { + return request({ + url: '/member/memberGroup/list', + method: 'get', + params: query + }) +} + +// 查询会员组详细 +export function getMemberGroup(id) { + return request({ + url: '/member/memberGroup/' + id, + method: 'get' + }) +} + +// 新增会员组 +export function addMemberGroup(data) { + return request({ + url: '/member/memberGroup', + method: 'post', + data: data + }) +} + +// 修改会员组 +export function updateMemberGroup(data) { + return request({ + url: '/member/memberGroup', + method: 'put', + data: data + }) +} + +// 删除会员组 +export function delMemberGroup(id) { + return request({ + url: '/member/memberGroup/' + id, + method: 'delete' + }) +} diff --git a/jsowell-ui/src/views/member/memberGroup/index.vue b/jsowell-ui/src/views/member/memberGroup/index.vue new file mode 100644 index 000000000..e849d6467 --- /dev/null +++ b/jsowell-ui/src/views/member/memberGroup/index.vue @@ -0,0 +1,312 @@ + + +