中扬CRM客户关系管理系统
#
lsh
2024-04-19 775a4818b1ff4f18f17b24108cc92c23f728ea61
src/main/webapp/static/js/weekly/weekly.js
@@ -5,6 +5,20 @@
var htmlCstmrData;
var indexS = "9999,8888";
var indexDelSign = 0;
let nowUserId2 = 0;
fWeekly();
function fWeekly() {
    layui.jquery.ajax({
        url: baseUrl + "/dashboard/user/id/popup/auth",
        data:{token : localStorage.getItem('token')},
        method: 'GET',
        success: function (res) {
            if (res.code === 200) {
                nowUserId2 = res.data;
            }
        }
    })
}
layui.config({
    base: baseUrl + "/static/layui/lay/modules/"
}).extend({
@@ -21,6 +35,8 @@
    admin = layui.admin;
    $('#organization').html(localStorage.getItem('nickname') + ' <i class="layui-icon">&#xe61a;</i>');
    $(".laytable-cell-2-0-7").css('color', 'rgba(0, 0, 0, 0)');
    // 部门人员 筛选
    dropdown.render({
@@ -97,22 +113,25 @@
            ,{field: 'deptId$', align: 'center',title: '所属部门',hide : true}
            ,{field: 'cstmrIdsReality', align: 'center',title: '实际甲方单位ID集合',hide : true}
            ,{field: 'status$', align: 'center',title: '状态',hide : false}
            ,{field: 'settle$', align: 'center',title: '进度',hide : false}
            ,{field: 'settleMsg', align: 'center',title: '审核进度',hide : true}
            ,{field: 'weeklyDailyPlan', align: 'center',title: '日计划',hide : false, toolbar: '#tbLookPlan'}
            ,{field: 'weeklyDailyReality', align: 'center',title: '日行程',hide : false, toolbar: '#tbLookReality'}
            ,{field: 'comment', align: 'center',title: '评论',hide : false}
            ,{field: 'weeklyDailyReality', align: 'center',title: '日结果',hide : false, toolbar: '#tbLookReality'}
            // ,{field: 'comment', align: 'center',title: '评论',hide : false}
            ,{field: 'createBy$', align: 'center',title: '添加人员',hide : true}
            ,{field: 'createTime$', align: 'center',title: '添加时间',hide : true}
            ,{field: 'updateBy$', align: 'center',title: '修改人员',hide : true}
            ,{field: 'updateTime$', align: 'center',title: 'update_time',hide : true}
            ,{field: 'memo', align: 'center',title: '备注(50字)',hide : false}
            ,{field: 'director$', align: 'center',title: '审批人',hide : true}
            ,{field: 'director$', align: 'center',title: '审核节点',hide : true}
            ,{field: 'director', align: 'center',title: '审核节点',hide : true}
            ,{field: 'settle', align: 'center',title: '进度',hide : true}
            ,{field: 'settleSize', align: 'center',title: '流程长度',hide : true}
            ,{field: 'settle$', align: 'center',title: '进度', style: 'color: #1890ff;cursor:pointer', event: 'more',hide: false}
            ,{field: 'settleCurrent', align: 'center',title: '当前进度',hide : true}
            ,{field: 'cstmrIdsPlan', align: 'center',title: '计划甲方单位ID集合',hide : true}
            ,{field: 'weeklyAll', align: 'center',title: '周数',hide : true}
            ,{field: 'weeklyNowMonth', align: 'center',title: '当月第几周',hide : true}
            ,{field: 'nowUserId', align: 'center', title: 'nowUserId', hide: true, templet:function(){ return nowUserId2 }}
            ,{field: 'weeklyYear', align: 'center',title: '年',hide : true}
            ,{field: 'weeklyMonth', align: 'center',title: '月',hide : true}
            ,{field: 'weeklyDay', align: 'center',title: '日',hide : true}
@@ -124,6 +143,9 @@
            pageSize: 'limit'
        },
        parseData: function (res) {
            res.data.records.forEach((item,index) => {
                item.nowUserId = nowUserId2
            })
            return {
                'code': res.code,
                'msg': res.msg,
@@ -288,7 +310,6 @@
                        url: baseUrl+"/weekly/delete/auth",
                        headers: {'token': localStorage.getItem('token')},
                        data: {ids: data.id},
                        method: 'POST',
                        traditional:true,
                        success: function (res) {
                            if (res.code === 200){
@@ -336,17 +357,17 @@
                            cols: [[
                                {type: 'numbers'}
                                ,{field: 'weeklyDay$', align: 'center',title: '星期'}
                                ,{field: 'cstmrId$', align: 'center',title: '甲方单位ID'}//, templet: function () { return htmlCstme;}
                                ,{field: 'dailyTime$',width : 120, align: 'center',title: '日期'}
                                ,{field: 'workContent', align: 'center', title: '工作内容', edit:false}
                                ,{field: 'workPurpose', title: '工作目的', edit:false}
                                ,{field: 'comment', title: '评论', edit:false}
                                ,{field: 'workContent', align: 'center', title: '工作内容及目的', edit:false}
                                // ,{field: 'workPurpose', title: '工作目的', edit:false}
                                // ,{field: 'comment', title: '评论', edit:false}
                                ,{field: 'weeklyMatter', title: '需协助事项',  edit:false}
                                // ,{field: 'dailyTime$', align: 'center',title: '日报日期'}
                                // ,{field: 'settleMsg', align: 'center',title: '审核进度'}
                                // ,{field: 'director', align: 'center',title: '负责人'}
                                // ,{field: 'settleSize', align: 'center',title: '流程长度'}
                                // ,{field: 'settleCurrent', align: 'center',title: '当前进度'}
                                ,{field: 'cstmrId$', align: 'center',title: '甲方单位ID'}//, templet: function () { return htmlCstme;}
                                ,{field: 'memo', align: 'center',title: '备注',   edit:false}
                            ]],
                            request: {
@@ -399,17 +420,17 @@
                            cols: [[
                                {type: 'numbers'}
                                ,{field: 'weeklyDay$', align: 'center',title: '星期'}
                                ,{field: 'cstmrId$', align: 'center',title: '甲方单位ID'}//, templet: function () { return htmlCstme;}
                                ,{field: 'dailyTime$',width : 120, align: 'center',title: '日期'}
                                ,{field: 'workContent', align: 'center', title: '工作内容', edit:false}
                                ,{field: 'workPurpose', title: '工作目的', edit:false}
                                ,{field: 'comment', title: '评论', edit:false}
                                ,{field: 'workContent', align: 'center', title: '工作内容及目的', edit:false}
                                // ,{field: 'workPurpose', title: '工作目的', edit:false}
                                // ,{field: 'comment', title: '评论', edit:true}
                                ,{field: 'weeklyMatter', title: '需协助事项',  edit:false}
                                // ,{field: 'dailyTime$', align: 'center',title: '日报日期'}
                                // ,{field: 'settleMsg', align: 'center',title: '审核进度'}
                                // ,{field: 'director', align: 'center',title: '负责人'}
                                // ,{field: 'settleSize', align: 'center',title: '流程长度'}
                                // ,{field: 'settleCurrent', align: 'center',title: '当前进度'}
                                ,{field: 'cstmrId$', align: 'center',title: '甲方单位ID'}//, templet: function () { return htmlCstme;}
                                ,{field: 'memo', align: 'center',title: '备注',   edit:false}
                            ]],
                            request: {
@@ -435,8 +456,84 @@
                    }
                });
                break;
            case 'approval':
                layer.confirm('审批通过?', {
                    skin: 'layui-layer-admin',
                    shade: .1,
                    offset: '200px',
                    title: data.name
                }, function (i) {
                    layer.close(i);
                    approval(data.id);
                });
                break;
            case 'approvalEnd':
                layer.confirm('审批拒绝?', {
                    skin: 'layui-layer-admin',
                    shade: .1,
                    offset: '200px',
                    title: data.name
                }, function (i) {
                    layer.close(i);
                    approvalEnd(data.id);
                });
                break;
        }
    });
    function approvalEnd(weeklyId, plannerId, dIdx) {
        let loadIndex = layer.load(2);
        $.ajax({
            url: baseUrl+"/weekly/approvalEnd/auth",
            headers: {'token': localStorage.getItem('token')},
            data: {
                weeklyId: weeklyId,
                plannerId: plannerId
            },
            method: 'POST',
            success: function (res) {
                if (dIdx) {
                    layer.close(dIdx);
                }
                layer.close(loadIndex);
                if (res.code === 200){
                    layer.msg(res.msg, {icon: 1});
                    tableReload();
                } else if (res.code === 403){
                    top.location.href = baseUrl+"/";
                } else {
                    layer.msg(res.msg, {icon: 2});
                }
            }
        })
    }
    function approval(weeklyId, plannerId, dIdx) {
        let loadIndex = layer.load(2);
        $.ajax({
            url: baseUrl+"/weekly/approval/auth",
            headers: {'token': localStorage.getItem('token')},
            data: {
                weeklyId: weeklyId,
                plannerId: plannerId
            },
            method: 'POST',
            success: function (res) {
                if (dIdx) {
                    layer.close(dIdx);
                }
                layer.close(loadIndex);
                if (res.code === 200){
                    layer.msg(res.msg, {icon: 1});
                    tableReload();
                } else if (res.code === 403){
                    top.location.href = baseUrl+"/";
                } else {
                    layer.msg(res.msg, {icon: 2});
                }
            }
        })
    }
    // 搜索
    form.on('submit(search)', function (data) {
@@ -504,7 +601,12 @@
                            }
                        }
                    })
                    location.reload();
                    return false;
                });
                $('#cancelBtn').on('click', function () {
                    location.reload();
                });
                // 明细表格
                var xxDataList = [];
@@ -518,17 +620,17 @@
                    cols: [[
                        {type: 'numbers', title: '#'}
                        ,{field: 'weeklyDay$', align: 'center',title: '星期'}
                        ,{field: 'workContent', title: '工作内容', style: 'color: blue;font-weight: bold', edit:true}
                        ,{field: 'workPurpose', title: '工作目的', style: 'color: blue;font-weight: bold', edit:true}
                        ,{field: 'cstmrId', align: 'center',title: '甲方单位ID', style: 'color: blue;font-weight: bold', templet: '#cstmrId'}//, templet: function () { return htmlCstme;}
                        ,{field: 'workContent', title: '工作内容及目的', style: 'color: blue;font-weight: bold', edit:true}
                        // ,{field: 'workPurpose', title: '工作目的', style: 'color: blue;font-weight: bold', edit:true}
                        ,{field: 'addr', title: '地址', style: 'color: blue;font-weight: bold', edit:true}
                        ,{field: 'comment', title: '评论', style: 'color: blue;font-weight: bold', edit:true}
                        // ,{field: 'comment', title: '评论', style: 'color: blue;font-weight: bold', edit:true}
                        ,{field: 'weeklyMatter', title: '需协助事项', style: 'color: blue;font-weight: bold', edit:true}
                        // ,{field: 'dailyTime$', align: 'center',title: '日报日期'}
                        // ,{field: 'settleMsg', align: 'center',title: '审核进度'}
                        // ,{field: 'director', align: 'center',title: '负责人'}
                        // ,{field: 'settleSize', align: 'center',title: '流程长度'}
                        // ,{field: 'settleCurrent', align: 'center',title: '当前进度'}
                        ,{field: 'cstmrId', align: 'center',title: '甲方单位ID', style: 'color: blue;font-weight: bold', templet: '#cstmrId'}//, templet: function () { return htmlCstme;}
                        ,{field: 'cstmrId$', align: 'center',title: '甲方单位'}
                        ,{field: 'memo', align: 'center',title: '备注', width: 100, style: 'color: blue;font-weight: bold', edit:true}
                        ,{align: 'center', title: '操作', toolbar: '#formSSXMTableBar', minWidth: 80, width: 80, fixed: 'right'}
                    ]],
@@ -542,7 +644,8 @@
                    },
                    done: function (res, curr, count) {
                        $(".layui-table-cell").css('overflow', 'visible');//解决layui数据表格中嵌套下拉框显示问题
                        $(".laytable-cell-2-0-6").css('color', 'rgba(0, 0, 0, 0)');
                        $(".laytable-cell-2-0-2").css('color', 'rgba(0, 0, 0, 0)');
                        $(".layui-layer-setwin").css('display', 'none');
                        $(layero).find('.layui-table-view').css('margin', '0');
                        var options = this;
@@ -778,7 +881,7 @@
    function showEditModel2(expTpe) {
        admin.open({
            type: 1,
            title: (expTpe ? '创建' : '创建') + '日行程',
            title: (expTpe ? '创建' : '创建') + '日结果',
            content: $('#editDialog').html(),
            area: '2200px',
            success: function (layero, dIndex) {
@@ -833,7 +936,12 @@
                            }
                        }
                    })
                    location.reload();
                    return false;
                });
                $('#cancelBtn').on('click', function () {
                    location.reload();
                });
                // 明细表格
                var xxDataList = [];
@@ -847,17 +955,17 @@
                    cols: [[
                        {type: 'numbers', title: '#'}
                        ,{field: 'weeklyDay$', align: 'center',title: '星期'}
                        ,{field: 'workContent', title: '工作内容', style: 'color: blue;font-weight: bold', edit:true}
                        ,{field: 'workPurpose', title: '工作目的', style: 'color: blue;font-weight: bold', edit:true}
                        ,{field: 'cstmrId', align: 'center',title: '甲方单位ID', style: 'color: blue;font-weight: bold', templet: '#cstmrId'}//, templet: function () { return htmlCstme;}
                        ,{field: 'workContent', title: '工作内容及目的', style: 'color: blue;font-weight: bold', edit:true}
                        // ,{field: 'workPurpose', title: '工作目的', style: 'color: blue;font-weight: bold', edit:true}
                        ,{field: 'addr', title: '地址', style: 'color: blue;font-weight: bold', edit:true}
                        ,{field: 'comment', title: '评论', style: 'color: blue;font-weight: bold', edit:true}
                        ,{field: 'weeklyMatter', title: '需协助事项', style: 'color: blue;font-weight: bold', edit:true}
                        // ,{field: 'comment', title: '评论', style: 'color: blue;font-weight: bold', edit:false}
                        // ,{field: 'weeklyMatter', title: '需协助事项', style: 'color: blue;font-weight: bold', edit:true}
                        // ,{field: 'dailyTime$', align: 'center',title: '日报日期'}
                        // ,{field: 'settleMsg', align: 'center',title: '审核进度'}
                        // ,{field: 'director', align: 'center',title: '负责人'}
                        // ,{field: 'settleSize', align: 'center',title: '流程长度'}
                        // ,{field: 'settleCurrent', align: 'center',title: '当前进度'}
                        ,{field: 'cstmrId', align: 'center',title: '甲方单位ID', style: 'color: blue;font-weight: bold', templet: '#cstmrId'}//, templet: function () { return htmlCstme;}
                        ,{field: 'memo', align: 'center',title: '备注', width: 100, style: 'color: blue;font-weight: bold', edit:true}
                        ,{align: 'center', title: '操作', toolbar: '#formSSXMTableBar', minWidth: 80, width: 80, fixed: 'right'}
                    ]],
@@ -871,14 +979,17 @@
                    },
                    done: function (res, curr, count) {
                        $(".layui-table-cell").css('overflow', 'visible');//解决layui数据表格中嵌套下拉框显示问题
                        $(".laytable-cell-2-0-6").css('color', 'rgba(0, 0, 0, 0)');
                        $(".laytable-cell-2-0-2").css('color', 'rgba(0, 0, 0, 0)');
                        $(".layui-layer-setwin").css('display', 'none');
                        $(layero).find('.layui-table-view').css('margin', '0');
                        var options = this;
                        var indexSign = 0;
                        var indexSignCstmr = 0;
                        // 获取当前行数据
                        table.getRowData = function(elem){
                            var index = $(elem).closest('tr').data('index');
                            indexSignCstmr = index;
                            var indexArray = indexS.split(","); // 将字符串拆分为数组
                            // 遍历数组中的每个元素
                            for (var i = 0; i < indexArray.length; i++) {
@@ -900,7 +1011,9 @@
                                url: baseUrl+"/cstmr/all/get/kv",
                                headers: {'token': localStorage.getItem('token')},
                                data: {
                                    limit: 9999
                                    limit: 9999,
                                    weeklyId: expTpe.id,
                                    weeklyId2: indexSignCstmr
                                },
                                method: 'POST',
                                // async: false, // 设置为同步执行
@@ -1027,6 +1140,9 @@
                        title: (exp ? '修改' : '添加') + '明细',
                        content: $('#matEditDialog').html(),
                        success: function (layero, dIndex) {
                            if (!exp){
                                indexDelSign = 1;
                            }
                            // 回显数据
                            form.val('matEditForm', exp);
                            // 表单提交事件
@@ -1132,8 +1248,10 @@
// 关闭动作
$(document).on('click','#data-detail-close', function () {
    parent.layer.closeAll();
    location.reload();
});
function tableReload(child) {
    var searchData = {};
    $.each($('#search-box [name]').serializeArray(), function() {