feat(mall): 新增自提点功能
- 新增自提点列表页面和相关接口
- 实现自提点信息展示、新增自提点等功能
- 优化订单相关逻辑,支持自提点配送方式
3 files renamed
10 files modified
2 files added
File was renamed from src/main/java/cc/mrbird/febs/mall/controller/AdminMallTeamLeaderController.java |
| | |
| | | package cc.mrbird.febs.mall.controller; |
| | | package cc.mrbird.febs.mall.controller.teamLeader; |
| | | |
| | | import cc.mrbird.febs.common.annotation.ControllerEndpoint; |
| | | import cc.mrbird.febs.common.controller.BaseController; |
| | |
| | | import cc.mrbird.febs.common.enumerates.DataDictionaryEnum; |
| | | import cc.mrbird.febs.mall.dto.AdminLeaderAddDto; |
| | | import cc.mrbird.febs.mall.dto.AdminLeaderAddFenceDto; |
| | | import cc.mrbird.febs.mall.dto.AdminLeaderUpdateDto; |
| | | import cc.mrbird.febs.mall.dto.ApiApplayLeaderDto; |
| | | import cc.mrbird.febs.mall.entity.*; |
| | | import cc.mrbird.febs.mall.mapper.DataDictionaryCustomMapper; |
| | | import cc.mrbird.febs.mall.service.IAdminMallTeamLeaderService; |
| | | import cc.mrbird.febs.mall.vo.AdminLeaderBonusSettingVo; |
| | | import cc.mrbird.febs.mall.vo.AdminRangeSettingVo; |
| | | import cc.mrbird.febs.mall.vo.AdminLeaderVo; |
| | | import cc.mrbird.febs.mall.vo.AdminSelectListLeaderVo; |
| | | import lombok.RequiredArgsConstructor; |
| | | import lombok.extern.slf4j.Slf4j; |
| | |
| | | private final IAdminMallTeamLeaderService iAdminMallTeamLeaderService; |
| | | private final DataDictionaryCustomMapper dataDictionaryCustomMapper; |
| | | |
| | | |
| | | |
| | | /** |
| | | * 团长下拉列表 |
| | | */ |
| | | @GetMapping("leader/tree") |
| | | @ControllerEndpoint(exceptionMessage = "获取失败") |
| | | public List<AdminLeaderVo> getLeaderTree(){ |
| | | return iAdminMallTeamLeaderService.getLeaderTree(); |
| | | } |
| | | |
| | | /** |
| | | * 团长信息--列表 |
| | | */ |
File was renamed from src/main/java/cc/mrbird/febs/mall/controller/ApiMallTeamLeaderController.java |
| | |
| | | package cc.mrbird.febs.mall.controller; |
| | | package cc.mrbird.febs.mall.controller.teamLeader; |
| | | |
| | | import cc.mrbird.febs.common.annotation.ControllerEndpoint; |
| | | import cc.mrbird.febs.common.entity.FebsResponse; |
| | |
| | | @RestController |
| | | @RequiredArgsConstructor |
| | | @RequestMapping(value = "/api/leader") |
| | | @Api(value = "ApiMallTeamLeaderController", tags = "团长接口类") |
| | | @Api(value = "ApiMallTeamLeaderController", tags = "365自提点") |
| | | public class ApiMallTeamLeaderController { |
| | | |
| | | private final IApiMallTeamLeaderService iApiMallTeamLeaderService; |
| | | |
| | | |
| | | |
| | | /** |
| | | * 自提点列表 |
| | | */ |
| | | @ApiOperation(value = "自提点列表", notes = "自提点列表") |
| | | @ApiResponses({ |
| | | @ApiResponse(code = 200, message = "success", response = ApiHappyLeaderInfoVo.class) |
| | | }) |
| | | @PostMapping(value = "/happyLeaderList") |
| | | public FebsResponse happyLeaderList() { |
| | | return iApiMallTeamLeaderService.happyLeaderList(); |
| | | } |
| | | |
| | | /** |
| | | * 申请团长 |
| | | */ |
File was renamed from src/main/java/cc/mrbird/febs/mall/controller/ViewMallTeamLeaderController.java |
| | |
| | | package cc.mrbird.febs.mall.controller; |
| | | package cc.mrbird.febs.mall.controller.teamLeader; |
| | | |
| | | import cc.mrbird.febs.common.annotation.ControllerEndpoint; |
| | | import cc.mrbird.febs.common.controller.BaseController; |
| | | import cc.mrbird.febs.common.entity.FebsConstant; |
| | | import cc.mrbird.febs.common.enumerates.DataDictionaryEnum; |
| | |
| | | import cc.mrbird.febs.mall.mapper.MallMemberMapper; |
| | | import cc.mrbird.febs.mall.service.IAdminMallTeamLeaderService; |
| | | import cc.mrbird.febs.mall.vo.AdminLeaderBonusSettingVo; |
| | | import cc.mrbird.febs.mall.vo.AdminLeaderVo; |
| | | import cc.mrbird.febs.mall.vo.AdminMallGoodsCategoryTreeVo; |
| | | import cc.mrbird.febs.mall.vo.AdminMallTeamLeaderVo; |
| | | import cn.hutool.core.util.ObjectUtil; |
| | | import lombok.RequiredArgsConstructor; |
| | |
| | | import org.springframework.web.bind.annotation.GetMapping; |
| | | import org.springframework.web.bind.annotation.PathVariable; |
| | | import org.springframework.web.bind.annotation.RequestMapping; |
| | | |
| | | import java.util.List; |
| | | |
| | | @Controller("leaderView") |
| | | @RequestMapping(FebsConstant.VIEW_PREFIX + "modules/leader") |
| | |
| | | return FebsUtil.view("modules/leader/leaderGoodsUpdate"); |
| | | } |
| | | |
| | | @GetMapping("addLeader/{id}") |
| | | public String addLeader(@PathVariable long id, Model model) { |
| | | MallMember mallMember = mallMemberMapper.selectById(id); |
| | | model.addAttribute("mallMember", mallMember); |
| | | // @GetMapping("addLeader/{id}") |
| | | // public String addLeader(@PathVariable long id, Model model) { |
| | | // MallMember mallMember = mallMemberMapper.selectById(id); |
| | | // model.addAttribute("mallMember", mallMember); |
| | | // return FebsUtil.view("modules/leader/addLeader"); |
| | | // } |
| | | |
| | | /** |
| | | * 新增 |
| | | * @return |
| | | */ |
| | | @GetMapping(value = "/addLeader") |
| | | @RequiresPermissions("addLeader:add") |
| | | public String leaderAdd() { |
| | | return FebsUtil.view("modules/leader/addLeader"); |
| | | } |
| | | |
| | |
| | | @TableField(exist = false) |
| | | private String addressPic; |
| | | @TableField(exist = false) |
| | | private String province; |
| | | @TableField(exist = false) |
| | | private String city; |
| | | @TableField(exist = false) |
| | | private String township; |
| | | @TableField(exist = false) |
| | | private String addressArea; |
| | | @TableField(exist = false) |
| | | private String detailAddress; |
| | |
| | | import cc.mrbird.febs.mall.dto.AdminLeaderUpdateDto; |
| | | import cc.mrbird.febs.mall.entity.MallLeaderStock; |
| | | import cc.mrbird.febs.mall.entity.MallTeamLeader; |
| | | import cc.mrbird.febs.mall.vo.AdminLeaderVo; |
| | | import cc.mrbird.febs.mall.vo.AdminMallTeamLeaderVo; |
| | | import cc.mrbird.febs.mall.vo.AdminSelectListLeaderVo; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | |
| | | FebsResponse startOnline(Long id); |
| | | |
| | | FebsResponse closeOnline(Long id); |
| | | |
| | | List<AdminLeaderVo> getLeaderTree(); |
| | | } |
| | |
| | | FebsResponse findSomeLeaderListInPage(ApiLeaderListDto apiLeaderListDto); |
| | | |
| | | FebsResponse noLoginLeaderTitle(ApiLeaderTitleDto apiLeaderTitleDto); |
| | | |
| | | FebsResponse happyLeaderList(); |
| | | } |
| | |
| | | import cc.mrbird.febs.mall.mapper.*; |
| | | import cc.mrbird.febs.mall.service.IAdminMallTeamLeaderService; |
| | | import cc.mrbird.febs.mall.service.IMallElectronicFenceService; |
| | | import cc.mrbird.febs.mall.vo.AdminLeaderVo; |
| | | import cc.mrbird.febs.mall.vo.AdminMallActSetVo; |
| | | import cc.mrbird.febs.mall.vo.AdminMallTeamLeaderVo; |
| | | import cc.mrbird.febs.mall.vo.AdminSelectListLeaderVo; |
| | |
| | | import cn.hutool.json.JSONObject; |
| | | import cn.hutool.json.JSONUtil; |
| | | import com.alibaba.fastjson.JSON; |
| | | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | |
| | | import org.apache.http.entity.ContentType; |
| | | import org.apache.http.message.BasicNameValuePair; |
| | | import org.apache.poi.ss.formula.functions.T; |
| | | import org.checkerframework.checker.units.qual.A; |
| | | import org.springframework.stereotype.Service; |
| | | import org.springframework.transaction.annotation.Transactional; |
| | | |
| | |
| | | return new FebsResponse().success(); |
| | | } |
| | | |
| | | @Override |
| | | public List<AdminLeaderVo> getLeaderTree() { |
| | | ArrayList<AdminLeaderVo> adminLeaderVos = new ArrayList<>(); |
| | | |
| | | List<MallMember> mallMembers = mallMemberMapper.selectList( |
| | | new LambdaQueryWrapper<MallMember>() |
| | | .select(MallMember::getId, MallMember::getName, MallMember::getInviteId) |
| | | .ne(MallMember::getStoreMaster, 0) |
| | | ); |
| | | if(CollUtil.isNotEmpty(mallMembers)){ |
| | | for(MallMember mallMember : mallMembers){ |
| | | AdminLeaderVo adminLeaderVo = new AdminLeaderVo(); |
| | | adminLeaderVo.setId(mallMember.getId()); |
| | | adminLeaderVo.setName(mallMember.getName()); |
| | | adminLeaderVo.setUniqueCode(mallMember.getInviteId()); |
| | | adminLeaderVos.add(adminLeaderVo); |
| | | } |
| | | } |
| | | return adminLeaderVos; |
| | | } |
| | | |
| | | } |
| | |
| | | |
| | | mallMemberCoupon.setState(2); |
| | | mallMemberCouponMapper.updateById(mallMemberCoupon); |
| | | //运费 |
| | | BigDecimal delivaryAmount = addOrderDto.getDeliveryAmount() == null ? BigDecimal.ZERO : addOrderDto.getDeliveryAmount(); |
| | | orderInfo.setCarriage(delivaryAmount); |
| | | |
| | | BigDecimal delivaryAmount = BigDecimal.ZERO; |
| | | if(StrUtil.isEmpty(addOrderDto.getTakeUniqueCode())){ |
| | | delivaryAmount = addOrderDto.getDeliveryAmount() == null ? BigDecimal.ZERO : addOrderDto.getDeliveryAmount(); |
| | | orderInfo.setCarriage(delivaryAmount); |
| | | }else{ |
| | | MallTeamLeader mallTeamLeader = mallTeamLeaderMapper.selectLeaderByUniqueCode(orderInfo.getTakeUniqueCode()); |
| | | if(mallTeamLeader!=null){ |
| | | throw new FebsException("自提点信息异常"); |
| | | } |
| | | orderInfo.setCarriage(delivaryAmount); |
| | | orderInfo.setTakeCode(ShareCodeUtil.toSerialCode(orderInfo.getId()) + MallUtils.getRandomNum(10)); |
| | | orderInfo.setTakeUniqueCode(mallTeamLeader.getUniqueCode()); |
| | | orderInfo.setDeliveryType(1); |
| | | } |
| | | total = total.add(delivaryAmount); |
| | | orderInfo.setAmount(total); |
| | | orderInfo.setScoreAmount(totalScoreAmount); |
| | |
| | | orderInfo.setLatitude(address.getLatitude()); |
| | | orderInfo.setLongitude(address.getLongitude()); |
| | | this.baseMapper.updateById(orderInfo); |
| | | |
| | | //过期时间修改成24小时 |
| | | agentProducer.sendOrderCancelDelayMsg(orderInfo.getId(), 24 * 60 * 60 * 1000L); |
| | | return orderInfo.getId(); |
| | |
| | | // } |
| | | // } |
| | | |
| | | |
| | | OrderDetailVo orderDetailVo = MallOrderInfoConversion.INSTANCE.entityToDetailVo(orderInfo); |
| | | if(StrUtil.isNotEmpty(orderInfo.getTakeUniqueCode())){ |
| | | MallTeamLeader mallTeamLeader = mallTeamLeaderMapper.selectLeaderByUniqueCode(orderInfo.getTakeUniqueCode()); |
| | | |
| | | if(ObjectUtil.isNotEmpty(mallTeamLeader)){ |
| | | orderDetailVo.setLeaderName(mallTeamLeader.getName()); |
| | | orderDetailVo.setLeaderPhone(mallTeamLeader.getPhone()); |
| | | orderDetailVo.setAddressPic(mallTeamLeader.getAddressPic()); |
| | | orderDetailVo.setAddressArea(mallTeamLeader.getAddressArea()); |
| | | orderDetailVo.setDetailAddress(mallTeamLeader.getDetailAddress()); |
| | | orderDetailVo.setLeaderLongitude(mallTeamLeader.getLongitude()); |
| | | orderDetailVo.setLeaderLatitude(mallTeamLeader.getLatitude()); |
| | | } |
| | | } |
| | | |
| | | MallExpressInfo expressInfo = expressInfoMapper.selectByOrderId(orderInfo.getId()); |
| | | if(ObjectUtil.isNotEmpty(expressInfo)){ |
| | |
| | | import cn.hutool.json.JSONArray; |
| | | import cn.hutool.json.JSONObject; |
| | | import cn.hutool.json.JSONUtil; |
| | | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | |
| | | return new FebsResponse().success().data(apiLeaderInfoVo); |
| | | } |
| | | |
| | | @Override |
| | | public FebsResponse happyLeaderList() { |
| | | ArrayList<ApiHappyLeaderInfoVo> apiHappyLeaderInfoVos = new ArrayList<>(); |
| | | |
| | | List<MallTeamLeader> mallTeamLeaders = this.baseMapper.selectList( |
| | | new LambdaQueryWrapper<MallTeamLeader>() |
| | | .select( |
| | | MallTeamLeader::getId, |
| | | MallTeamLeader::getName, |
| | | MallTeamLeader::getPhone, |
| | | MallTeamLeader::getUniqueCode, |
| | | MallTeamLeader::getAddressPic, |
| | | MallTeamLeader::getAddressArea, |
| | | MallTeamLeader::getDetailAddress, |
| | | MallTeamLeader::getLongitude, |
| | | MallTeamLeader::getLatitude) |
| | | .eq(MallTeamLeader::getState, 1) |
| | | ); |
| | | if(CollUtil.isNotEmpty(mallTeamLeaders)){ |
| | | for (MallTeamLeader mallTeamLeader : mallTeamLeaders){ |
| | | ApiHappyLeaderInfoVo apiHappyLeaderInfoVo = new ApiHappyLeaderInfoVo(); |
| | | apiHappyLeaderInfoVo.setId(mallTeamLeader.getId()); |
| | | apiHappyLeaderInfoVo.setName(mallTeamLeader.getName()); |
| | | apiHappyLeaderInfoVo.setPhone(mallTeamLeader.getPhone()); |
| | | apiHappyLeaderInfoVo.setTakeUniqueCode(mallTeamLeader.getUniqueCode()); |
| | | apiHappyLeaderInfoVo.setAddressPic(mallTeamLeader.getAddressPic()); |
| | | apiHappyLeaderInfoVo.setAddressArea(mallTeamLeader.getAddressArea()); |
| | | apiHappyLeaderInfoVo.setDetailAddress(mallTeamLeader.getDetailAddress()); |
| | | apiHappyLeaderInfoVo.setLongitude(mallTeamLeader.getLongitude()); |
| | | apiHappyLeaderInfoVo.setLatitude(mallTeamLeader.getLatitude()); |
| | | apiHappyLeaderInfoVos.add(apiHappyLeaderInfoVo); |
| | | } |
| | | } |
| | | |
| | | return new FebsResponse().success().data(apiHappyLeaderInfoVos); |
| | | } |
| | | |
| | | } |
New file |
| | |
| | | package cc.mrbird.febs.mall.vo; |
| | | |
| | | import lombok.Data; |
| | | |
| | | @Data |
| | | public class AdminLeaderVo { |
| | | |
| | | private Long id; |
| | | private String name; |
| | | private String uniqueCode; |
| | | } |
New file |
| | |
| | | package cc.mrbird.febs.mall.vo; |
| | | |
| | | import io.swagger.annotations.ApiModel; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | @Data |
| | | @ApiModel(value = "ApiHappyLeaderInfoVo", description = "信息返回类") |
| | | public class ApiHappyLeaderInfoVo { |
| | | |
| | | private Long id; |
| | | @ApiModelProperty(value = "联系人") |
| | | private String name; |
| | | |
| | | @ApiModelProperty(value = "联系电话") |
| | | private String phone; |
| | | |
| | | @ApiModelProperty(value = "特征码", example = "1") |
| | | private String takeUniqueCode; |
| | | |
| | | @ApiModelProperty(value = "自提点照片") |
| | | private String addressPic; |
| | | |
| | | @ApiModelProperty(value = "自提点名称") |
| | | private String addressArea; |
| | | |
| | | @ApiModelProperty(value = "详细地址") |
| | | private String detailAddress; |
| | | |
| | | @ApiModelProperty(value = "经度") |
| | | private Double longitude; |
| | | |
| | | @ApiModelProperty(value = "纬度") |
| | | private Double latitude; |
| | | |
| | | } |
| | |
| | | /** |
| | | * 自提点信息 |
| | | */ |
| | | @ApiModelProperty(value = "团长姓名") |
| | | @ApiModelProperty(value = "自提点联系人姓名") |
| | | private String leaderName; |
| | | @ApiModelProperty(value = "团长电话") |
| | | @ApiModelProperty(value = "自提点联系人电话") |
| | | private String leaderPhone; |
| | | @ApiModelProperty(value = "自提点图片") |
| | | private String addressPic; |
| | |
| | | </style> |
| | | <div class="layui-fluid" id="user-addLeader"> |
| | | <form class="layui-form" action="" lay-filter="user-addLeader-form"> |
| | | <div class="layui-form-item febs-hide"> |
| | | <label class="layui-form-label">memberId:</label> |
| | | <div class="layui-input-block"> |
| | | <input type="text" name="memberId"> |
| | | <div class="layui-form-item"> |
| | | <label class="layui-form-label">用户选择:</label> |
| | | <div class="layui-input-inline"> |
| | | <select name="memberId" class="leader-add-memberId"> |
| | | <option value="">请选择</option> |
| | | </select> |
| | | </div> |
| | | </div> |
| | | <!-- <div class="layui-form-item">--> |
| | | <!-- <label class="layui-form-label febs-form-item-require">自提点标识:</label>--> |
| | | <!-- <div class="layui-input-block">--> |
| | | <!-- <input type="text" name="uniqueCode" lay-verify="required" placeholder="" autocomplete="off" class="layui-input" readonly>--> |
| | | <!-- </div>--> |
| | | <!-- </div>--> |
| | | <div class="layui-form-item"> |
| | | <label class="layui-form-label febs-form-item-require">姓名:</label> |
| | | <div class="layui-input-block"> |
| | | <input type="text" name="name" lay-verify="required" placeholder="" autocomplete="off" class="layui-input" readonly> |
| | | <input type="text" name="name" lay-verify="required" placeholder="" autocomplete="off" class="layui-input"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-form-item"> |
| | | <label class="layui-form-label febs-form-item-require">手机号码:</label> |
| | | <div class="layui-input-block"> |
| | | <input type="text" name="phone" lay-verify="required" placeholder="" autocomplete="off" class="layui-input" readonly> |
| | | </div> |
| | | </div> |
| | | <div class="layui-form-item"> |
| | | <label class="layui-form-label febs-form-item-require">团长码:</label> |
| | | <div class="layui-input-block"> |
| | | <input type="text" name="uniqueCode" lay-verify="required" placeholder="" autocomplete="off" class="layui-input" readonly> |
| | | <input type="text" name="phone" lay-verify="required" placeholder="" autocomplete="off" class="layui-input"> |
| | | </div> |
| | | </div> |
| | | <!-- <div class="layui-form-item">--> |
| | |
| | | febs = layui.febs, |
| | | layer = layui.layer, |
| | | form = layui.form, |
| | | mallMember = [[${mallMember}]], |
| | | upload = layui.upload, |
| | | $view = $('#user-addLeader'), |
| | | $viewMap = $('#febs-map-demo-add'), |
| | |
| | | } |
| | | }); |
| | | |
| | | initUserValue(); |
| | | |
| | | function initUserValue() { |
| | | form.val("user-addLeader-form", { |
| | | "memberId": mallMember.id, |
| | | "name": mallMember.name, |
| | | "phone": mallMember.phone, |
| | | "uniqueCode": mallMember.inviteId, |
| | | //(下拉框) |
| | | $.get(ctx + 'admin/leader/leader/tree', function (data) { |
| | | for (var k in data) |
| | | { |
| | | $(".leader-add-memberId").append("<option value='" + data[k].id + "'>" + data[k].name + "</option>"); |
| | | } |
| | | layui.use('form', function () { |
| | | var form = layui.form; |
| | | form.render(); |
| | | }); |
| | | } |
| | | }); |
| | | |
| | | form.on('submit(user-addLeader-submit)', function (data) { |
| | | febs.post(ctx + 'admin/leader/addLeader', data.field, function () { |
| | | layer.closeAll(); |
| | | febs.alert.success('操作成功'); |
| | | $('#febs-member-list').find('#reset').click(); |
| | | $('#febs-leader').find('#query').click(); |
| | | }); |
| | | return false; |
| | | }); |
| | |
| | | <div class="layui-fluid layui-anim febs-anim" id="febs-leader" lay-title="团长列表"> |
| | | <div class="layui-fluid layui-anim febs-anim" id="febs-leader" lay-title="自提点列表"> |
| | | <div class="layui-row febs-container"> |
| | | <div class="layui-col-md12"> |
| | | <div class="layui-card"> |
| | |
| | | <input type="checkbox" value={{d.id}} lay-text="开启|关闭" lay-skin="switch" lay-filter="profitSwitch"> |
| | | {{# } }} |
| | | </script> |
| | | <script type="text/html" id="leaderToolbar"> |
| | | <div class="layui-btn-container"> |
| | | <button class="layui-btn layui-btn-normal layui-btn-xs" type="button" shiro:hasPermission="addLeader:add" lay-event="leaderAdd">新增自提点</button> |
| | | </div> |
| | | </script> |
| | | <!-- 表格操作栏 end --> |
| | | <script data-th-inline="none" type="text/javascript"> |
| | | // 引入组件并初始化 |
| | |
| | | form.render(); |
| | | |
| | | // 表格初始化 |
| | | initTable(); |
| | | initLeaderTable(); |
| | | |
| | | // 初始化表格操作栏各个按钮功能 |
| | | table.on('tool(leaderTable)', function (obj) { |
| | |
| | | } |
| | | }); |
| | | |
| | | table.on('toolbar(leaderTable)', function(obj){ |
| | | var data = obj.data, |
| | | layEvent = obj.event; |
| | | |
| | | if (layEvent === 'leaderAdd') { |
| | | febs.modal.open( '新增', 'modules/leader/addLeader/', { |
| | | btn: ['提交', '取消'], |
| | | area:['100%','100%'], |
| | | yes: function (index, layero) { |
| | | $('#user-addLeader').find('#submit').trigger('click'); |
| | | }, |
| | | btn2: function () { |
| | | layer.closeAll(); |
| | | } |
| | | }); |
| | | } |
| | | |
| | | }); |
| | | |
| | | function leaderCancel(id) { |
| | | febs.get(ctx + 'admin/leader/leaderCancel/' + id, null, function () { |
| | | febs.alert.success('操作成功'); |
| | |
| | | }); |
| | | |
| | | |
| | | function initTable() { |
| | | function initLeaderTable() { |
| | | tableIns = febs.table.init({ |
| | | elem: $view.find('table'), |
| | | id: 'leaderTable', |
| | | url: ctx + 'admin/leader/leaderList', |
| | | toolbar:"#leaderToolbar", |
| | | defaultToolbar:[], |
| | | cols: [[ |
| | | {field: 'name', title: '姓名', minWidth: 150,align:'left'}, |
| | | {field: 'phone', title: '电话', minWidth: 150,align:'left'}, |
| | |
| | | }); |
| | | } |
| | | |
| | | |
| | | |
| | | form.on('switch(onlineStateSwitch)', function (data) { |
| | | if (data.elem.checked) { |
| | | startOnline(data.value); |
| | |
| | | securityJsCode:'50d73a585f300cccf7fc2bf31d0c38c8', |
| | | } |
| | | </script> |
| | | <!-- <script src="https://webapi.amap.com/maps?v=1.4.15&key=e32064fc8a9dfe7af7d2d0a947b8df32&plugin=AMap.Autocomplete,AMap.PolyEditor,AMap.Geocoder,AMap.PolylineEditor"></script>--> |
| | | <!-- <link href="https://unpkg.com/@wangeditor/editor@5.0.1/dist/css/style.css" rel="stylesheet">--> |
| | | <!-- <script src="https://unpkg.com/@wangeditor/editor@latest/dist/index.js"></script>--> |
| | | <script src="https://webapi.amap.com/maps?v=1.4.15&key=e32064fc8a9dfe7af7d2d0a947b8df32&plugin=AMap.Autocomplete,AMap.PolyEditor,AMap.Geocoder,AMap.PolylineEditor"></script> |
| | | <link href="https://unpkg.com/@wangeditor/editor@5.0.1/dist/css/style.css" rel="stylesheet"> |
| | | <script src="https://unpkg.com/@wangeditor/editor@latest/dist/index.js"></script> |
| | | <script src="http://gosspublic.alicdn.com/aliyun-oss-sdk-6.17.0.min.js"></script> |
| | | <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/wangeditor@latest/dist/wangEditor.min.js" ></script> |
| | | <link rel="icon" th:href="@{febs/images/favicon.ico}" type="image/x-icon"/> |