中扬CRM客户关系管理系统
#
Junjie
2023-11-07 0176fa59653ca24db2149d7e0948c508912e491b
src/main/webapp/static/js/cstmr/cstmr.js
@@ -24,7 +24,7 @@
    dropdown.render({
        elem: '#organization'
        ,content: ['<div id="organizationTree" style="height: calc(100vh - 525px);border: none"></div>'].join('')
        ,style: 'width: 370px; height: 500px; padding: 0 15px; box-shadow: 1px 1px 30px rgb(0 0 0 / 12%);'
        ,style: 'width: 370px; height: 350px; padding: 0 15px; box-shadow: 1px 1px 30px rgb(0 0 0 / 12%);'
        ,ready: function(){
            loadTree();
        }
@@ -81,13 +81,15 @@
    // 树形图
    var organizationTree;
    window.loadTree = function(condition){
    window.loadTree = function(followerName,conditionName,condition){
        var loadIndex = layer.load(2);
        $.ajax({
            url: baseUrl+"/dept/user/tree/auth",
            headers: {'token': localStorage.getItem('token')},
            data: {
                'condition': condition
                'followerName' : followerName,
                'conditionName' : conditionName,
                'condition' : condition
            },
            method: 'POST',
            success: function (res) {
@@ -127,7 +129,7 @@
    tableIns = table.render({
        elem: '#cstmr',
        headers: {token: localStorage.getItem('token')},
        url: baseUrl+'/cstmr/list/auth',
        url: baseUrl+'/cstmr/page/auth',
        page: true,
        limit: 15,
        limits: [15, 30, 50, 100, 200, 500],
@@ -136,22 +138,23 @@
        // size: 'sm',
        skin: 'line',
        cols: [[
            {type: 'checkbox'}
            // {type: 'checkbox'}
            // ,{field: 'id', align: 'center',title: 'ID'}
            // ,{field: 'hostId$', align: 'center',title: '所属商户'}
            ,{field: 'name', align: 'left',title: '客户名称', style: 'color: #1890ff;cursor:pointer', event: 'more', width: 350}
            ,{field: 'uuid', align: 'left',title: '客户代号'}
            ,{field: 'addr', align: 'left',title: '详细地址', templet:function(d){return emptyShow(d.addr)}}
            ,{field: 'tel', align: 'left',title: '电话', templet:function(d){return emptyShow(d.tel)}}
            ,{field: 'remarks', align: 'left',title: '备注', templet:function(d){return emptyShow(d.remarks)}}
            ,{field: 'cstmrType$', align: 'left',title: '客户类别'}
            ,{field: 'userId$', align: 'left',title: '添加人员'}
            ,{field: 'createTime$', align: 'left',title: '添加时间'}
            ,{field: 'deptId$', align: 'left',title: '所属部门', hide: true}
            // ,{field: 'hostId$', align: 'center',title: '所属商户'},
            {field: 'name', align: 'left',title: '客户名称', style: 'color: #1890ff;cursor:pointer', event: 'more', width: 350}
            ,{field: 'simple', align: 'left',title: '客户简称', hide: true}
            ,{field: 'uuid', align: 'left',title: '客户代号', hide: false}
            ,{field: 'addr', align: 'left',title: '详细地址', hide: false, templet:function(d){return emptyShow(d.addr)}}
            ,{field: 'tel', align: 'left',title: '电话', hide: false, templet:function(d){return emptyShow(d.tel)}}
            ,{field: 'remarks', align: 'left',title: '备注', hide: false, templet:function(d){return emptyShow(d.remarks)}}
            ,{field: 'cstmrType$', align: 'left',title: '客户类别', hide: false}
            ,{field: 'industry', align: 'left',title: '客户行业', hide: false}
            ,{field: 'productCategory', align: 'left',title: '产品类别', hide: false}
            ,{field: 'userId$', align: 'left',title: '添加人员', hide: true}
            ,{field: 'deptId$', align: 'left',title: '所属部门', hide: true}
            ,{field: 'rela', align: 'left',title: '客户关系', hide: true}
            ,{field: 'contacts', align: 'left',title: '客户联系人', hide: true}
            ,{field: 'director$', align: 'left',title: '负责人', hide: true}
            ,{field: 'director$', align: 'left',title: '负责人', hide: false}
            ,{field: 'province', align: 'left',title: '省', hide: true}
            ,{field: 'city', align: 'left',title: '市', hide: true}
            ,{field: 'district', align: 'left',title: '县', hide: true}
@@ -160,8 +163,9 @@
            ,{field: 'files', align: 'left',title: '附件', hide: true}
            ,{field: 'status$', align: 'left',title: '状态', hide: true}
            // ,{field: 'createBy$', align: 'center',title: '添加人员', hide: true}
            ,{field: 'updateBy$', align: 'left',title: '修改人员', hide: true}
            ,{field: 'updateBy$', align: 'left',title: '添加人员', hide: false}
            ,{field: 'updateTime$', align: 'left',title: '修改时间', hide: true}
            ,{field: 'createTime$', align: 'left',title: '添加时间', hide: false}
            ,{field: 'memo', align: 'left',title: '注释', hide: true}
            ,{fixed: 'right', title:'操作', align: 'center', toolbar: '#operate', width:120}
@@ -193,6 +197,14 @@
    // 添加
    $("#cstmrAddBtn").click(function () {
        form.verify({
            account: function(value, item){
                var min = item.getAttribute('lay-min');
                if(value.length < min){
                    return '客户名称不能小于'+min+'个字符的长度';
                }
            }
        });
        showEditModel();
    });
@@ -227,17 +239,16 @@
        var data = obj.data;
        switch (obj.event) {
            case 'more':
                layer.msg("来不及做,等等", {icon: 6});
                // top.cstmrByMore = data.id;
                // admin.popupRight({
                //     type: 1,
                //     window: "top","
                //     area: "1250px",
                //     url: "cstmr_more.html",
                //     end: function () {
                //         $(".layui-laypage-btn")[0].click();
                //     }
                // })
                top.cstmrByMore = data.id;
                admin.popupRight({
                    type: 1,
                    window: "top",
                    area: "1250px",
                    url: "cstmr_more.html",
                    end: function () {
                        // $(".layui-laypage-btn")[0].click();
                    }
                })
                break;
            case 'edit':
                showEditModel(data);
@@ -256,6 +267,24 @@
            title: (mData ? '修改' : '添加') + '甲方单位',
            content: $('#editDialog').html(),
            success: function (layero, dIndex) {
                let loadNameXml = loadNameXmlSel()
                let method = mData?'update':'add';
                if (mData) {
                    $('#cascaderVal').val(mData.pcd);
                    if (mData.name) { loadNameXml.setValue([{name: mData.name, value: mData.name}]); }
                }
                if (method === 'update'){
                    var directorNone = document.getElementById("directorNone");
                    directorNone.style.display = "block";
                }
                form.verify({
                    name: function(value, item){
                        var min = item.getAttribute('lay-min');
                        if(value.length < min){
                            return '客户名称不能小于'+min+'个字符的长度';
                        }
                    }
                });
                if (mData) {
                    $('#cascaderVal').val(mData.pcd);
                }
@@ -263,6 +292,22 @@
                cascaderRender();
                form.val('detail', mData);
                form.on('submit(editSubmit)', function (data) {
                    data.field.name = loadNameXml.getValue()[0] ? loadNameXml.getValue()[0].name : null;
                    //将公司数据全部返回
                    companyData = loadNameXml.getValue()[0] ? loadNameXml.getValue()[0].value : null;//将公司数据全部返回
                    if (companyData != null) {
                        data.field.creditCode = companyData.creditCode
                        data.field.issueTime = companyData.issueTime
                        data.field.companyType = companyData.companyType
                        data.field.companyPerson = companyData.companyPerson
                        data.field.companyStatus = companyData.companyStatus
                        data.field.regMoney = companyData.regMoney
                    }
                    if (!data.field.name) {
                        layer.msg("客户名称不能为空", {icon: 2});
                        return false;
                    }
                    var loadIndex = layer.load(2);
                    $.ajax({
                        url: baseUrl+"/cstmr/"+(mData?'update':'add')+"/auth",
@@ -361,6 +406,57 @@
        });
    }
    window.loadNameXmlSel = function () {
        return xmSelect.render({
            el: '#nameXmlSel',
            autoRow: true,
            filterable: true,
            remoteSearch: true,
            clickClose: true,
            radio: true,
            remoteMethod: function (val, cb, show) {
                $.ajax({
                    url: baseUrl + "/cstmrSearch/auth",
                    headers: {'token': localStorage.getItem('token')},
                    data: {
                        condition: val
                    },
                    method: 'POST',
                    success: function (res) {
                        if (res.code === 200) {
                            cb(res.data)
                        } else {
                            cb([]);
                            layer.msg(res.msg, {icon: 2});
                        }
                    }
                });
            },
            on: function (data) {
                console.log(data)
                let arr = data.arr
                let change = data.change;
                if (arr.length > 0 && change.length>0) {
                    let name = arr[0].name;
                    $.ajax({
                        url: baseUrl + "/cstmr/name/check/auth",
                        headers: {'token': localStorage.getItem('token')},
                        data: {
                            name: name
                        },
                        method: 'POST',
                        success: function (res) {
                            if (res.code === 200) {
                            } else {
                                layer.msg(res.msg, {icon: 2});
                            }
                        }
                    });
                }
            }
        });
    }
});
// 关闭动作