| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605 | <!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;    var merchant = false;    getFeatureList("dealer", {list: ['needCountry', 'merchant']}, function (payload) {        if (payload.needCountry) {            $('#needCountry').removeClass('mui-hidden')        }        if (payload.merchant) {            merchant = payload.merchant        }        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,                                merchantStatus: item.merchantStatus,                                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();                }            });        }).on("click", ".p-goBindBankCard", function (event) {            var partnerId = $(this).closest('.mui-table-view-cell').attr('pId')            var merchantStatus = $(this).closest('.mui-table-view-cell').attr('merchantStatus')            if (merchantStatus == 0 || merchantStatus == 2) {                location.href = '/dealer/index.html#/merchant/partnerBank?partnerId=' + partnerId            }        });    };    //设置地址    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();//刷新我的比例    });    var merchantStatusMap = {        0: "未绑定商户,去绑定",        1: "绑定审核中",        2: "绑定失败,去修改",        3: "绑定成功",        4: "绑定成功"    }    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 merchantStatus = option.merchantStatus;        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-goBindBankCard"><i class="iconfont icon-bank-card"></i><span>绑定商户</span></em>' +            '<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);        dom.attr("merchantStatus", merchantStatus);        if (editDisabled) {            dom.find('.edit-row').remove()        }        if (!merchant) {            // 没有特性则移除            dom.find('.p-goBindBankCard').remove()        } else {            dom.find('.p-goBindBankCard span').text(merchantStatusMap[merchantStatus])        }        $(".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>
 |