From bac68847daab669f5dfdc8220e6c82538eda3e66 Mon Sep 17 00:00:00 2001 From: xiaoyong931011 <15274802129@163.com> Date: Fri, 12 Mar 2021 11:33:10 +0800 Subject: [PATCH] 分销员后台4 --- zq-erp/src/main/resources/templates/views/admin/fenxiao/fenxiao-apply.html | 52 ++++++++++-- zq-erp/src/main/resources/mybatis/mapper/fenxiao/ShopSalesmanGradeDao.xml | 11 ++ zq-erp/src/main/java/com/matrix/system/fenxiao/service/ShopSalesmanApplyService.java | 51 ++++++++++++ zq-erp/src/main/java/com/matrix/system/fenxiao/dto/ShopSalesmanAppliingDto.java | 2 zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxSalesmanAction.java | 2 zq-erp/src/main/java/com/matrix/system/fenxiao/entity/ShopSalesmanApply.java | 3 zq-erp/src/main/java/com/matrix/system/fenxiao/action/FenXiaoUserAction.java | 53 +++++++++--- zq-erp/src/main/java/com/matrix/system/fenxiao/dao/ShopSalesmanGradeDao.java | 6 + zq-erp/src/main/java/com/matrix/system/fenxiao/vo/ShopSalesmanGradeVo.java | 17 ++++ zq-erp/src/main/java/com/matrix/system/fenxiao/dao/ShopSalesmanApplyDao.java | 3 zq-erp/src/main/resources/mybatis/mapper/fenxiao/ShopSalesmanApplyDao.xml | 22 +++++ 11 files changed, 192 insertions(+), 30 deletions(-) diff --git a/zq-erp/src/main/java/com/matrix/system/fenxiao/action/FenXiaoUserAction.java b/zq-erp/src/main/java/com/matrix/system/fenxiao/action/FenXiaoUserAction.java index 5538f6c..1aafb7c 100644 --- a/zq-erp/src/main/java/com/matrix/system/fenxiao/action/FenXiaoUserAction.java +++ b/zq-erp/src/main/java/com/matrix/system/fenxiao/action/FenXiaoUserAction.java @@ -2,19 +2,25 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.matrix.core.constance.MatrixConstance; import com.matrix.core.pojo.AjaxResult; import com.matrix.core.tools.StringUtils; +import com.matrix.core.tools.WebUtil; +import com.matrix.system.common.bean.SysUsers; import com.matrix.system.fenxiao.dto.ShopSalesmanAppliingDto; import com.matrix.system.fenxiao.dto.ShopSalesmanApplyDto; import com.matrix.system.fenxiao.service.ShopSalesmanApplyService; import com.matrix.system.fenxiao.vo.ShopSalesmanAppliingVo; import com.matrix.system.fenxiao.vo.ShopSalesmanApplyVo; +import com.matrix.system.fenxiao.vo.ShopSalesmanGradeVo; import com.matrix.system.hive.action.util.QueryUtil; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiResponse; import io.swagger.annotations.ApiResponses; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; + +import java.util.List; @RestController @RequestMapping(value = "/fenXiao/fenXiaoUser") @@ -41,23 +47,12 @@ shopSalesmanApplyDto.setOrder("desc"); } - Page<ShopSalesmanApplyVo> page = new Page(shopSalesmanApplyDto.getPageNum(), shopSalesmanApplyDto.getPageSize()); - IPage<ShopSalesmanApplyVo> rows = shopSalesmanApplyService.findShopSalesmanApplyList(page,shopSalesmanApplyDto); AjaxResult result = AjaxResult.buildSuccessInstance(rows.getRecords(),rows.getTotal()); return result; } - - /** - * 跳转 分销员待审核记录页面 - * - @RequestMapping(value = "/shopSalesmanAppliing") - public String shopSalesmanAppliing() { - return "admin/fenxiao/fenxiao-apply"; - } - */ /** *获取分销员待审核记录 @@ -71,8 +66,6 @@ AjaxResult findShopSalesmanAppliingList(@RequestBody ShopSalesmanAppliingDto shopSalesmanAppliingDto) { //设置用户公司ID QueryUtil.setQueryLimitCom(shopSalesmanAppliingDto); - //查询条件待审核状态 - shopSalesmanAppliingDto.setApplyStatus(1); //排序 if(StringUtils.isBlank(shopSalesmanAppliingDto.getSort())){ shopSalesmanAppliingDto.setSort("create_time"); @@ -80,9 +73,41 @@ } Page<ShopSalesmanAppliingVo> page = new Page(shopSalesmanAppliingDto.getPageNum(), shopSalesmanAppliingDto.getPageSize()); - IPage<ShopSalesmanAppliingVo> rows = shopSalesmanApplyService.findShopSalesmanAppliingList(page,shopSalesmanAppliingDto); + IPage<ShopSalesmanAppliingVo> rows = shopSalesmanApplyService.selectBizUserApplyList(page,shopSalesmanAppliingDto); + + //IPage<ShopSalesmanAppliingVo> rows = shopSalesmanApplyService.findShopSalesmanAppliingList(page,shopSalesmanAppliingDto); AjaxResult result = AjaxResult.buildSuccessInstance(rows.getRecords(),rows.getTotal()); return result; } + /** + *获取对应的分销员等级 + */ + @RequestMapping(value = "/getShopSalesmanGrade") + private @ResponseBody AjaxResult getShopSalesmanGradeVo(){ + AjaxResult result= AjaxResult.buildSuccessInstance("查询成功"); + SysUsers user = WebUtil.getSessionAttribute(MatrixConstance.LOGIN_KEY); + + List<ShopSalesmanGradeVo> dataList = shopSalesmanApplyService.getShopSalesmanGradeVo(user.getCompanyId()); + result.putInMap("salesGrade", dataList); + return result; + } + /** + * 改变发布状态:已发布 + * @param userId + * + */ + @RequestMapping(value = "/addSaleManApply") + public @ResponseBody AjaxResult addSaleManApply(String userId,long gradeId) { + AjaxResult result= AjaxResult.buildSuccessInstance("设置成功"); + SysUsers user = WebUtil.getSessionAttribute(MatrixConstance.LOGIN_KEY); + shopSalesmanApplyService.addSaleManApply(userId,gradeId); + return result; + } + + + public static void main(String[] args) { + System.out.println("===="+Long.parseLong("")); + } + } diff --git a/zq-erp/src/main/java/com/matrix/system/fenxiao/dao/ShopSalesmanApplyDao.java b/zq-erp/src/main/java/com/matrix/system/fenxiao/dao/ShopSalesmanApplyDao.java index 5ef99b9..3658015 100644 --- a/zq-erp/src/main/java/com/matrix/system/fenxiao/dao/ShopSalesmanApplyDao.java +++ b/zq-erp/src/main/java/com/matrix/system/fenxiao/dao/ShopSalesmanApplyDao.java @@ -28,4 +28,7 @@ IPage<ShopSalesmanAppliingVo> findShopSalesmanAppliingList(Page<ShopSalesmanAppliingVo> page, @Param("record")ShopSalesmanAppliingDto shopSalesmanAppliingDto); + IPage<ShopSalesmanAppliingVo> selectBizUserApplyList(Page<ShopSalesmanAppliingVo> page, + @Param("record")ShopSalesmanAppliingDto shopSalesmanAppliingDto); + } \ No newline at end of file diff --git a/zq-erp/src/main/java/com/matrix/system/fenxiao/dao/ShopSalesmanGradeDao.java b/zq-erp/src/main/java/com/matrix/system/fenxiao/dao/ShopSalesmanGradeDao.java index 52a7bb6..d1326a1 100644 --- a/zq-erp/src/main/java/com/matrix/system/fenxiao/dao/ShopSalesmanGradeDao.java +++ b/zq-erp/src/main/java/com/matrix/system/fenxiao/dao/ShopSalesmanGradeDao.java @@ -2,6 +2,10 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.matrix.system.fenxiao.entity.ShopSalesmanGrade; +import com.matrix.system.fenxiao.vo.ShopSalesmanGradeVo; +import io.lettuce.core.dynamic.annotation.Param; + +import java.util.List; /** * @description 推广员等级 @@ -10,4 +14,6 @@ */ public interface ShopSalesmanGradeDao extends BaseMapper<ShopSalesmanGrade> { + List<ShopSalesmanGradeVo> getShopSalesmanGradeVo(@Param("companyId")Long companyId); + } \ No newline at end of file diff --git a/zq-erp/src/main/java/com/matrix/system/fenxiao/dto/ShopSalesmanAppliingDto.java b/zq-erp/src/main/java/com/matrix/system/fenxiao/dto/ShopSalesmanAppliingDto.java index 11227e7..3672483 100644 --- a/zq-erp/src/main/java/com/matrix/system/fenxiao/dto/ShopSalesmanAppliingDto.java +++ b/zq-erp/src/main/java/com/matrix/system/fenxiao/dto/ShopSalesmanAppliingDto.java @@ -15,8 +15,6 @@ @ApiModelProperty(hidden = true) private Long companyId; - @ApiModelProperty(hidden = true) - private Integer applyStatus; } diff --git a/zq-erp/src/main/java/com/matrix/system/fenxiao/entity/ShopSalesmanApply.java b/zq-erp/src/main/java/com/matrix/system/fenxiao/entity/ShopSalesmanApply.java index fc2bfd5..7894732 100644 --- a/zq-erp/src/main/java/com/matrix/system/fenxiao/entity/ShopSalesmanApply.java +++ b/zq-erp/src/main/java/com/matrix/system/fenxiao/entity/ShopSalesmanApply.java @@ -63,6 +63,9 @@ @ApiModelProperty(value = "备注") private String remark; + @ApiModelProperty(value = "等级ID") + private long gradeId; + /** * 公司ID */ diff --git a/zq-erp/src/main/java/com/matrix/system/fenxiao/service/ShopSalesmanApplyService.java b/zq-erp/src/main/java/com/matrix/system/fenxiao/service/ShopSalesmanApplyService.java index 6d64b59..1d0e79a 100644 --- a/zq-erp/src/main/java/com/matrix/system/fenxiao/service/ShopSalesmanApplyService.java +++ b/zq-erp/src/main/java/com/matrix/system/fenxiao/service/ShopSalesmanApplyService.java @@ -1,5 +1,7 @@ package com.matrix.system.fenxiao.service; +import cn.hutool.core.util.ObjectUtil; +import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; @@ -14,15 +16,19 @@ import com.matrix.system.common.interceptor.HostInterceptor; import com.matrix.system.fenxiao.constant.FenxiaoSettingConstant; import com.matrix.system.fenxiao.dao.ShopSalesmanApplyDao; +import com.matrix.system.fenxiao.dao.ShopSalesmanGradeDao; import com.matrix.system.fenxiao.dto.ShopSalesmanAppliingDto; import com.matrix.system.fenxiao.dto.ShopSalesmanApplyDto; import com.matrix.system.fenxiao.entity.ShopSalesmanApply; +import com.matrix.system.fenxiao.entity.ShopSalesmanGrade; import com.matrix.system.fenxiao.vo.ShopSalesmanAppliingVo; import com.matrix.system.fenxiao.vo.ShopSalesmanApplyVo; +import com.matrix.system.fenxiao.vo.ShopSalesmanGradeVo; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.Date; +import java.util.List; /** * @description 推广员申请记录 @@ -38,6 +44,9 @@ @Autowired ShopSalesmanApplyDao salesmanApplyDao; + + @Autowired + ShopSalesmanGradeDao shopSalesmanGradeDao; @Autowired private BizUserDao bizUserDao; @@ -51,7 +60,7 @@ * @param invitationId * @return */ - public ShopSalesmanApply applyToBeAnSalesman(String openId, String invitationId) { + public ShopSalesmanApply applyToBeAnSalesman(String openId,long gradeId,String invitationId) { BizUser loginUser=bizUserDao.findByOpenId(openId); //校验审核状态,和是否重复发起 @@ -63,6 +72,7 @@ ShopSalesmanApply shopSalesmanApply=new ShopSalesmanApply(); shopSalesmanApply.setUserId(openId); + shopSalesmanApply.setCreateBy(loginUser.getNickName()); shopSalesmanApply.setApplyWay(ShopSalesmanApply.APPLY_WAY_SELF); @@ -77,6 +87,16 @@ }else if(StringUtils.isNotBlank(loginUser.getParentOpenId())){ //如果曾经是被邀请进来的则自动绑定为之前邀请人的下级 shopSalesmanApply.setParentUserId(loginUser.getParentOpenId()); + } + if(ObjectUtil.isNotEmpty(gradeId)){ + shopSalesmanApply.setGradeId(gradeId); + }else{ + //获取初始等级ID(公司id,是否为初始等级) + Wrapper<ShopSalesmanGrade> queryWrapperOrepool = new QueryWrapper<>(); + ((QueryWrapper<ShopSalesmanGrade>) queryWrapperOrepool).eq("company_id", loginUser.getCompanyId()); + ((QueryWrapper<ShopSalesmanGrade>) queryWrapperOrepool).eq("is_default", 1); + ShopSalesmanGrade shopSalesmanGrade = shopSalesmanGradeDao.selectOne(queryWrapperOrepool); + shopSalesmanApply.setGradeId(shopSalesmanGrade.getId()); } BusParameterSettings busParameterSettings = busParameterSettingsDao.selectCompanyParamByCode(FenxiaoSettingConstant.FX_AUDIT_METHOD, HostInterceptor.getCompanyId()); @@ -106,4 +126,33 @@ return salesmanApplyDao.findShopSalesmanAppliingList(page,shopSalesmanAppliingDto); } + public IPage<ShopSalesmanAppliingVo> selectBizUserApplyList(Page<ShopSalesmanAppliingVo> page, ShopSalesmanAppliingDto shopSalesmanAppliingDto) { + return salesmanApplyDao.selectBizUserApplyList(page,shopSalesmanAppliingDto); + } + + public List<ShopSalesmanGradeVo> getShopSalesmanGradeVo(Long companyId) { + return shopSalesmanGradeDao.getShopSalesmanGradeVo(companyId); + } + + public void addSaleManApply(String userId,long gradeId) { + BizUser user = bizUserDao.selectById(userId); + + applyToBeAnSalesman(user.getOpenId(),gradeId, ""); + } + + + + + + + + + + + + + + + + } \ No newline at end of file diff --git a/zq-erp/src/main/java/com/matrix/system/fenxiao/vo/ShopSalesmanGradeVo.java b/zq-erp/src/main/java/com/matrix/system/fenxiao/vo/ShopSalesmanGradeVo.java new file mode 100644 index 0000000..7704375 --- /dev/null +++ b/zq-erp/src/main/java/com/matrix/system/fenxiao/vo/ShopSalesmanGradeVo.java @@ -0,0 +1,17 @@ +package com.matrix.system.fenxiao.vo; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +@ApiModel(value = "ShopSalesmanGradeVo", description = "返参") +public class ShopSalesmanGradeVo { + + @ApiModelProperty(value = "id") + private Long id; + + @ApiModelProperty(value = "等级名称") + private String name; + +} diff --git a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxSalesmanAction.java b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxSalesmanAction.java index 3cfea73..610ba20 100644 --- a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxSalesmanAction.java +++ b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxSalesmanAction.java @@ -84,7 +84,7 @@ public AjaxResult applyToBeAnSalesman(@RequestBody Map<String,String> param) { BizUser loginUser = redisUserLoginUtils.getLoginUser(BizUser.class); String invitationId = param.get("invitationId"); - ShopSalesmanApply shopSalesmanApply= shopSalesmanApplyService.applyToBeAnSalesman(loginUser.getOpenId(),invitationId); + ShopSalesmanApply shopSalesmanApply= shopSalesmanApplyService.applyToBeAnSalesman(loginUser.getOpenId(),Long.parseLong(""),invitationId); loginUser=bizUserDao.selectById(loginUser.getUserId()); redisUserLoginUtils.updateUserInfo(loginUser); return AjaxResult.buildSuccessInstance(shopSalesmanApply); diff --git a/zq-erp/src/main/resources/mybatis/mapper/fenxiao/ShopSalesmanApplyDao.xml b/zq-erp/src/main/resources/mybatis/mapper/fenxiao/ShopSalesmanApplyDao.xml index d0d85cf..36c4159 100644 --- a/zq-erp/src/main/resources/mybatis/mapper/fenxiao/ShopSalesmanApplyDao.xml +++ b/zq-erp/src/main/resources/mybatis/mapper/fenxiao/ShopSalesmanApplyDao.xml @@ -64,7 +64,7 @@ LEFT JOIN biz_user b ON a.user_id = b.user_id LEFT JOIN shop_salesman_grade g ON b.salesman_grade = g.id <where> - and a.company_id=#{record.companyId} + a.company_id=#{record.companyId} <if test="record.shenheState != null and record.shenheState != ''"> and a.apply_status=#{record.shenheState} </if> @@ -82,7 +82,7 @@ shop_salesman_apply a LEFT JOIN biz_user b ON a.user_id = b.user_id <where> - and a.company_id = #{record.companyId} + a.company_id = #{record.companyId} and a.apply_status = #{record.applyStatus} <if test="record.nickName != null and record.nickName != ''"> and b.nick_name like concat('%',#{record.nickName},'%') @@ -93,5 +93,23 @@ a.${record.sort} ${record.order} </if> </select> + <select id="selectBizUserApplyList" resultType="com.matrix.system.fenxiao.vo.ShopSalesmanAppliingVo"> + SELECT + a.user_id userId, + a.nick_name nickName + FROM + biz_user a + <where> + a.company_id = #{record.companyId} + and a.is_sales != 1 + <if test="record.nickName != null and record.nickName != ''"> + and a.nick_name like concat('%',#{record.nickName},'%') + </if> + </where> + <if test="record.sort !=null"> + order by + a.${record.sort} ${record.order} + </if> + </select> </mapper> \ No newline at end of file diff --git a/zq-erp/src/main/resources/mybatis/mapper/fenxiao/ShopSalesmanGradeDao.xml b/zq-erp/src/main/resources/mybatis/mapper/fenxiao/ShopSalesmanGradeDao.xml index 499ab09..311d174 100644 --- a/zq-erp/src/main/resources/mybatis/mapper/fenxiao/ShopSalesmanGradeDao.xml +++ b/zq-erp/src/main/resources/mybatis/mapper/fenxiao/ShopSalesmanGradeDao.xml @@ -34,4 +34,15 @@ <result property="companyId" column="company_id" /> </resultMap> + + <select id="getShopSalesmanGradeVo" resultType="com.matrix.system.fenxiao.vo.ShopSalesmanGradeVo"> + SELECT + a.id, + a.name + FROM + shop_salesman_grade a + where + a.company_id = #{companyId} + </select> + </mapper> \ No newline at end of file diff --git a/zq-erp/src/main/resources/templates/views/admin/fenxiao/fenxiao-apply.html b/zq-erp/src/main/resources/templates/views/admin/fenxiao/fenxiao-apply.html index 5582db7..4e3352e 100644 --- a/zq-erp/src/main/resources/templates/views/admin/fenxiao/fenxiao-apply.html +++ b/zq-erp/src/main/resources/templates/views/admin/fenxiao/fenxiao-apply.html @@ -18,12 +18,6 @@ .panel-body{ overflow: hidden; } - .rowPanel{ - background: #ffffff; - padding: 0px 10px ; - padding-top: 10px; - margin: 0px 0px 10px 0px; - } .paginationStyle{ background: #ffffff; padding: 10px 10px; @@ -34,7 +28,7 @@ </head> <body> <div class="panel-body" id="app"> - <el-row class="rowPanel" > + <el-row style="display:flex;align-items: center;"> <el-form ref="form" :model="form" inline > <el-form-item prop="nickName"> <el-input v-model="form.nickName" placeholder="请输入会员姓名"></el-input> @@ -50,17 +44,28 @@ <el-table id="proj" :data="table.rows" :height="height" stripe @sort-change="sortChange"> <el-table-column prop="userId" - label="订单号" - width="180"> + label="" + width="300"> </el-table-column> <el-table-column prop="nickname" label="分销员昵称" width="180"> </el-table-column> + <el-table-column + prop="salesGrade" + label="分销等级" + width="180"> + <template slot-scope="scope"> + <el-select v-model="scope.row.proJbruserValue" @focus="getDatalist(scope.row)" placeholder="请选择" filterable allow-create> + <el-option v-for="item in salesGradeList " :key="item.id" :label="item.name" :value="item.id"> + </el-option> + </el-select> + </template> + </el-table-column> <el-table-column label="操作"> <template slot-scope="scope"> - <el-button type="text" size="small">设置为分销员</el-button> + <el-button type="text" size="small" @click="addSaleManApply(scope.row)">设置为分销员</el-button> </template> </el-table-column> </el-table> @@ -102,6 +107,7 @@ order:'', sort:'' }, + salesGradeList: [], height:'calc(100vh - 240px)', }, created: function () { @@ -109,6 +115,32 @@ window.addEventListener("keydown", this.keydown); }, methods: { + //设置为分销员 + addSaleManApply(row){ + let _this = this; + let userId = row.userId; + let gradeId = row.salesGrade; + AjaxProxy.requst({ + app: _this, + data:[], + url: basePath + '/fenXiao/fenXiaoUser/addSaleManApply?userId='+userId+'&gradeId='+gradeId, + callback: function (data) { + _this.$message.success(data.info); + } + }); + }, + // select下拉框获取焦点的时候查询对应的下拉框数据源 + getDatalist(row) { + let _this = this; + AjaxProxy.requst({ + app: _this, + data:[], + url: basePath + '/fenXiao/fenXiaoUser/getShopSalesmanGrade', + callback: function (data) { + _this.salesGradeList = data.mapInfo.salesGrade; + } + }); + }, changePageSize(val) { this.table.pageSize = val; this.loadData(); -- Gitblit v1.9.1