123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575 |
- <!DOCTYPE html>
- <html>
- <head>
- <meta charset="utf-8"/>
- <meta name="author" content=""/>
- <meta name="description" content=""/>
- <meta name="keywords" content="扫码支付,线上投币,运营数据,物联网"/>
- <meta name="format-detection" content="telphone=no,email=no"/>
- <meta name="viewport"
- content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no"/>
- <meta http-equiv="pragma" content="no-cache">
- <meta http-equiv="cache-control" content="no-cache">
- <meta http-equiv="expires" content="0">
- <title>编辑投放地址</title>
- <link rel="stylesheet" href="https://cdn.washpayer.com/components/lib/mui.min.css"/>
- <link rel="stylesheet" href="https://cdn.washpayer.com/components/lib/mui.picker.min.css"/>
- <link rel="stylesheet" href="../components/custom/css/common.css"/>
- <link rel="stylesheet" href="css/xyf.common.min.css">
- <style>
- .partnerPanel {
- margin-bottom: 0;
- }
- .partnerPanel:before {
- display: none;
- }
- .p-operation {
- margin-top: 12px;
- }
- .p-operation em {
- padding: 6px 4px;
- margin-left: 10px;
- }
- .p-operation em i {
- font-size: 18px;
- vertical-align: middle;
- }
- .p-operation em span {
- vertical-align: middle;
- }
- </style>
- </head>
- <body>
- <div class="mui-content custom-top add-addr" style="padding-bottom: 52px">
- <div class="mui-input-group">
- <div class="mui-input-row" permission="manage-edit">
- <label>分组名称</label>
- <input type="text" id="name" placeholder="请填写" class="mui-text-right">
- </div>
- <div class="mui-input-row" permission="manage-edit">
- <label>地址标签</label>
- <input type="text" id="tag" placeholder="可以不填" class="mui-text-right">
- </div>
- <div class="mui-input-row" permission="manage-edit">
- <label>地址类型</label>
- <input type="text" id="area" name="option" placeholder="请选择" class="mui-text-right" readonly>
- <input type="hidden" id="addressType"/>
- </div>
- </div>
- <div class="mui-input-group custom-top">
- <div class="mui-input-row" permission="manage-edit">
- <label>省市县</label>
- <input type="text" id="location" name="option" placeholder="请选择" class="mui-text-right">
- <input type="hidden" id="districtId"/>
- </div>
- <div class="mui-input-row mui-hidden" id="needCountry" permission="manage-edit">
- <label>乡镇/街道</label>
- <input type="text" id="country" placeholder="请填写乡镇/街道" class="mui-text-right">
- </div>
- <div class="mui-input-row" permission="manage-edit">
- <label>详细地址</label>
- <input type="text" id="address" placeholder="请填写详细地址" class="mui-text-right">
- </div>
- </div>
- <div class="mui-input-group custom-top" permission="manage-show">
- <div class="mui-input-row autoheight">
- <div class="mui-pull-left">
- 设为默认投放地址
- <span>每次注册设备时使用该地址</span>
- </div>
- <div class="mui-switch mui-switch-mini isDefault">
- <div class="mui-switch-handle"></div>
- </div>
- </div>
- <div class="mui-input-row autoheight">
- <div class="mui-pull-left">
- 强制用户充值
- <span>如果用户没有余额,需要充值才能使用</span>
- </div>
- <div class="mui-switch mui-switch-mini beforeCharge">
- <div class="mui-switch-handle"></div>
- </div>
- </div>
- <div class="mui-input-row autoheight">
- <div class="mui-pull-left">
- 扫码弹出显示计费规则
- <span>用户扫码设备后, 优先先弹出计费规则</span>
- </div>
- <div class="mui-switch mui-switch-mini popPriceDescriptionButton">
- <div class="mui-switch-handle"></div>
- </div>
- </div>
- </div>
- </div>
- <div class="mui-table-view handleBtn mui-text-center">
- <button type="button" value="" class="mui-btn mui-btn-blue padding-l-r-20"
- onclick="save()">保存
- </button>
- </div>
- <script src="https://cdn.washpayer.com/components/lib/jquery.min.js"></script>
- <script src="https://cdn.washpayer.com/components/lib/mui.min.js"></script>
- <script src="https://cdn.washpayer.com/components/lib/mui.picker.min.js"></script>
- <script src="/components/custom/js/common.js"></script>
- <script src="../components/lib/gcoord.js"></script>
- <script type="text/javascript"
- src="https://api.map.baidu.com/api?v=2.0&ak=9579bf3cb9fdab9d6b49cdaf72c9907f"></script>
- <script src="https://res.wx.qq.com/open/js/jweixin-1.1.0.js"></script>
- <script src="js/xyf.city.three.js"></script>
- <script src="js/xyf.picker.js"></script>
- <script src="js/xyf.common.js"></script>
- <script>
- // 某些厂商必须要填写 乡镇 ,由于目前我们只有3级地区联动,所以需要手动填写
- var needCountry = false;
- getFeatureList("dealer", {list: ['needCountry']}, function (payload) {
- if (payload.needCountry) {
- $('#needCountry').removeClass('mui-hidden')
- }
- initGroupInfo()
- });
- var mapSuggestLoaded = false;
- // todo 暂时不要
- function loadMapSuggest() {
- if (mapSuggestLoaded) {
- return;
- }
- $("#address").blur();
- if (window.BMap) {
- //百度 地图mask等待,因为地图可能加载非常慢
- var mask = new Mask("正在获取位置信息...").show();
- setTimeout(function () {
- mask && mask.remove();//避免超时卡死
- mapSuggestLoaded = true;//既然加载不出来,就不再加载,只能自己去填写了
- }, 10 * 1000);
- getLocation(function (res) {
- mapSuggestLoaded = true;
- mask && mask.remove();
- if (res) {
- //转换为百度可用的坐标
- var pointList = gcoord.transform(
- [res.lng, res.lat],
- gcoord.GCJ02, // 当前坐标系
- gcoord.BD09 // 目标坐标系
- );
- var currentPoint = new BMap.Point(pointList[0], pointList[1]);
- //地址搜索建议
- var ac = new BMap.Autocomplete({
- "input": "address",
- location: currentPoint,
- "onSearchComplete": function (result) {
- }
- });
- //鼠标点击下拉列表后的事件
- ac.addEventListener("onconfirm", function (e) {
- var _value = e.item.value;
- var myValue = _value.street + _value.business;
- return myValue;
- });
- }
- }, function () {
- mask && mask.remove();
- });
- }
- }
- //阻止冒泡
- $('.add-addr input[name]').tap(function (e) {
- e.preventDefault();
- $('.add-addr input').blur();
- });
- //合伙人数据缓存
- var partnerData = [];
- var needPartner = false;
- //初始化数据
- var groupId = getQueryString("groupId");
- function initGroupInfo() {
- var url = "/dealer/groupInfo";
- var data = {"groupId": groupId};
- sendRequest(url, "GET", data, function (res) {
- if (res.result === 1) {
- CreateCitySelect({areaId: res.para.districtId}, function () {
- $("#name").val(res.para.groupName);
- $("#tag").val(res.para.tag);
- $("#districtId").val(res.para.districtId);
- $("#location").val(res.para.district);
- $("#country").val(res.para.country);
- $("#address").attr("placeholder", res.para.address);//设置到placeholder;如果是赋值,地址输入框会自动弹出百度的推荐下拉框! 保存时注意即可
- $("#addressType").val(res.para.addressType);
- setArea(res.para.addressType);
- if (res.para.isDefault) {
- $(".isDefault").addClass("mui-active");
- }
- if (res.para.beforeCharge) {
- $(".beforeCharge").addClass("mui-active");
- }
- if (res.para.popPriceDescriptionButton) {
- $(".popPriceDescriptionButton").addClass("mui-active");
- }
- //展示负责人名称
- if (res.para.managerName) {
- $("#owner").text(" " + res.para.managerName);
- }
- if (res.para.isManager || res.para.isManager == null) {
- $("body").attr("role", "manage");
- } else {
- $("body").attr("role", "limit-user");
- }
- var partnerList = res.para.partner;
- if (partnerList && partnerList.length > 0) {
- // 必须手动切换状态,mui的toggle有bug
- $(".partner").addClass("mui-active");
- $(".partnerPanelSub").removeClass("mui-hidden");
- needPartner = true;
- //缓存合伙人数据
- partnerData = partnerData.concat(partnerList);
- //展现合伙人信息到页面
- for (var i = 0; i < partnerData.length; i++) {
- var item = partnerData[i];
- //转换数据类型
- item.percent = parseFloat(item.percent);
- var opt = {
- name: item.name,
- tel: item.tel,
- id: item.id,
- percent: item.percent,
- self: item.self,
- editDisabled: item.editDisabled
- }
- addPartner(opt);
- }
- setMyPercent();
- // 合伙人数量把自己也算上
- $(".partnerTotal").removeClass('mui-hidden').html("共" + (partnerData.length + 1) + "人")
- }
- });
- } else {
- mui.toast(res.description);
- }
- });
- $(".partnerColl").tap(function (e) {
- $(".partnerColl").focus();
- e.preventDefault();
- });
- //合伙人开关
- $(".partner").on("toggle", function (event) {
- if (event.detail.isActive) {
- $(".partnerPanelSub").removeClass("mui-hidden");
- needPartner = true;
- } else {
- $(".partnerPanelSub").addClass("mui-hidden");
- needPartner = false;
- }
- });
- $("body").on("click", ".p-edit", function (event) {
- var dom = $(this).closest(".mui-table-view-cell");
- var tel = dom.attr("data-id");
- for (var i = 0; i < partnerData.length; i++) {
- var item = partnerData[i];
- if (item.tel == tel) {
- editPartner(item.name, item.tel, item.percent, i);
- }
- }
- }).on("click", ".p-delete", function (event) {
- var dom = $(this).closest(".mui-table-view-cell");
- var btnArray = ['取消', '确认'];
- mui.confirm('确定要删除信息?', '温馨提示', btnArray, function (e) {
- if (e.index == 0) {
- } else {
- var tel = dom.attr("data-id");
- for (var i = 0; i < partnerData.length; i++) {
- var item = partnerData[i];
- if (item.tel == tel) {
- dom.remove();
- partnerData.splice(i, 1);
- }
- }
- setMyPercent();
- }
- });
- });
- };
- //设置地址
- function setArea(value) {
- var areaList = window.AREA_LIST || [];
- for (var i = 0; i < areaList.length; i++) {
- if (areaList[i].value === value) {
- $("#area").val(areaList[i].label);
- }
- }
- }
- //重新计算我的分成
- function setMyPercent() {
- var sumPercent = 0;
- //展现合伙人信息到页面
- for (var i = 0; i < partnerData.length; i++) {
- var item = partnerData[i];
- sumPercent = sumPercent + parseFloat(item.percent);
- }
- if (sumPercent > 100) {
- return false;
- }
- $(".my-percent em").text((100 - sumPercent) + "%");
- }
- var isPopup = false;//弹窗标记
- //编辑合伙人
- function editPartner(name, tel, percent, editIndex) {
- if (editIndex == null && partnerData.length >= 10) {
- mui.toast("最多只能添加10个合伙人");
- return;
- }
- if (!isPopup) {
- isPopup = true;
- $('.partnerDialog').removeClass('mui-hidden');
- $("#p-name").val(name);
- $("#p-tel").val(tel);
- if (tel != '') {
- $("#p-tel").attr('disabled', 'disabled');
- } else {
- $("#p-tel").removeAttr('disabled');
- }
- $("#p-percent").val(percent);
- window.editIndex = editIndex;
- }
- }
- var editIndex = null;
- //保存合伙人
- $('.partner-oper span').click(function () {
- //点击取消
- if ($(this).index() == 0) {
- } else {
- //点击确定
- var name = $("#p-name").val();
- if (name == "") {
- mui.toast("姓名不能为空");
- return;
- }
- var tel = $("#p-tel").val();
- if (!isPhone(tel)) {
- mui.toast("请输入11位正确手机号码");
- return;
- }
- var percent = parseFloat($("#p-percent").val());
- var percentReg = /^(100|(([1-9]\d|\d)(\.\d{1,2})?))$/;
- if (!percentReg.test(percent)) {
- mui.toast("百分比保持在0-100%");
- return;
- }
- //缓存合伙人数据
- if (editIndex != null) {
- var editItem = partnerData[editIndex];
- var dom = $("[data-id='" + editItem.tel + "']");
- var sumP = 0;
- for (var index = 0; index < partnerData.length; index++) {
- var otherItem = partnerData[index];
- if (index != editIndex && otherItem.tel == tel) {
- mui.toast("不能和其他合伙人重复手机");
- return;
- }
- if (index != editIndex) {
- sumP = sumP + otherItem.percent;
- }
- }
- //校验分成比例
- if (percent > (100 - sumP)) {
- mui.toast("分成比例最多只能是" + (100 - sumP) + "%");
- $("#p-percent").val(100 - sumP);
- return;
- }
- editItem.name = name;
- editItem.tel = tel;
- editItem.percent = percent;
- dom.find(".p-name-show").text(name);
- dom.find(".p-tel-show").text(tel);
- dom.find(".p-percent-show ").text(percent + "%");
- dom.attr("data-id", tel);
- } else {
- var sumP1 = 0;
- for (var i = 0; i < partnerData.length; i++) {
- var item = partnerData[i];
- if (item.tel == tel) {
- mui.toast("不能重复添加相同手机");
- return;
- }
- sumP1 = sumP1 + item.percent;
- }
- //校验分成比例
- if (percent > (100 - sumP1)) {
- mui.toast("分成比例最多只能是" + (100 - sumP1) + "%");
- $("#p-percent").val(100 - sumP1);
- return;
- }
- partnerData.push({
- name: name,
- tel: tel,
- percent: percent
- });
- addPartner({name: name, tel: tel, percent: percent});
- }
- }
- $('.partnerDialog').addClass('mui-hidden');
- //不能立即赋值,否则会出现不停弹出的情况
- setTimeout(function () {
- isPopup = false;
- }, 500);
- setMyPercent();//刷新我的比例
- });
- function addPartner(option) {
- var name = option.name;
- var tel = option.tel;
- var id = option.id;
- var percent = option.percent;
- var self = option.self;
- var editDisabled = option.editDisabled;
- var dom = $('<div class="mui-table-view-cell" >' +
- '<p class="font-b-16"> ' +
- '<span class="p-name-show"></span><span class="is-self c-success"></span> ' +
- '<span class="mui-pull-right font-b-16-8">分成 <em class="p-percent-show c-success"></em></span>' +
- '</p>' +
- '<p class="p-operation clearfix">' +
- '<span class="p-tel-show"></span>' +
- '<span class="font-b-16-6 mui-pull-right edit-row" permission="manage-show">' +
- '<em class="p-edit"><i class="iconfont icon-edit"></i><span>编辑</span></em>' +
- '<em class="p-delete"><i class="iconfont icon-delete"></i><span>删除</span></em>' +
- '</span></p></div>');
- dom.find(".p-name-show").text(name);
- if (self) {
- dom.find(".is-self").text(" (我)");
- }
- dom.find(".p-tel-show").text(tel);
- dom.find(".p-percent-show ").text(percent + "%");
- dom.attr("data-id", tel);
- dom.attr("pId", id);
- if (editDisabled) {
- dom.find('.edit-row').remove()
- }
- $(".my-percent").after(dom);
- }
- //保存地址信息
- var saveFlag = false;
- function save() {
- var name = $("#name").val();
- var tag = $("#tag").val();
- var districtId = $("#districtId").val();
- var country = $("#country").val();
- var address = $("#address").val() || $("#address").attr('placeholder');
- var addressType = $("#addressType").val();
- if (!name) {
- mui.toast("请填写分组名称");
- return;
- }
- if (!addressType) {
- mui.toast("请填写地址类型");
- return;
- }
- if (!districtId) {
- mui.toast("请选择所在地区");
- return;
- }
- if (!country && needCountry) {
- mui.toast("请填写正确的乡镇");
- return;
- }
- if (!address) {
- mui.toast("请填写详细地址");
- return;
- }
- var isDefault = $(".isDefault").hasClass("mui-active");
- var beforeCharge = $(".beforeCharge").hasClass("mui-active");
- var popPriceDescriptionButton = $(".popPriceDescriptionButton").hasClass("mui-active");
- if (!saveFlag) {
- saveFlag = true;
- var url = "/device/saveEquipmentGroup";
- var data = {
- "name": name,
- tag: tag,
- "districtId": districtId, country: country, "address": address,
- "addressType": addressType, "isDefault": isDefault, "beforeCharge": beforeCharge,
- "popPriceDescriptionButton": popPriceDescriptionButton,
- "groupId": groupId
- };
- sendRequest(url, "POST", data, function (res) {
- if (res.result == 1) {
- window.history.replaceState({}, "账号设置", "account-setting.html");
- var url = "location-list.html";
- goPage(url);
- } else {
- saveFlag = false;
- mui.toast(res.description);
- }
- }, "json");
- }
- }
- </script>
- </body>
- </html>
|