中扬CRM客户关系管理系统
#
LSH
2023-11-10 96bea93e9591de5bd6e632b7bf9bb1e920f371ed
src/main/webapp/views/plan/plan_more.html
@@ -39,19 +39,27 @@
</style>
<!-- 正文开始 -->
<form class="layui-form" id="formAdvForm" lay-filter="formAdvForm" style="height: 100%">
    <div class="layui-fluid" style="padding-bottom: 75px;">
    <div class="layui-fluid" style="padding-bottom: 75px;height: 100%; overflow: scroll;box-sizing: border-box">
        <!-- 标题 -->
        <div class="layui-card">
            <div class="layui-card-header" style="padding-top: 5px; padding-bottom: 5px">
                <div>
                    <i class="layui-icon" style="font-size: 20px;color: #1890ff;font-weight: bold">&#xe609;</i>
                    <i class="layui-icon" style="font-size: 20px;color: #1890ff;font-weight: bold">&#xe656;</i>
                    <span id="form-name" style="margin: 0 6px;font-size: 18px;font-weight: bold;letter-spacing: 1px"></span>
                    <span style="opacity: .5;font-size: small;margin-left: 5px">跟踪项目</span>
                    <span style="opacity: .5;font-size: small;margin-left: 5px">售前规划申请单</span>
                </div>
            </div>
            <div class="layui-card-body" style="padding: 30px 20px">
                <div class="layui-tab layui-steps">
                    <ul class="layui-tab-title" id="stepBox">
                    </ul>
                </div>
            </div>
        </div>
        <div class="layui-row">
            <!-- 基本信息 -->
            <!-- 数据 -->
            <div class="layui-col-md9">
                <div class="layui-card">
                    <div class="layui-card-header">
@@ -59,59 +67,115 @@
                    </div>
                    <div class="layui-card-body">
                        <!-- 基本信息 -->
                        <div class="layui-form-item layui-row">
                            <input name="id" type="hidden" />
                            <div class="layui-inline layui-col-md6">
                                <label class="layui-form-label">项目代号:</label>
                                <label class="layui-form-label">规划单号:</label>
                                <div class="layui-input-block">
                                    <input name="uuid" class="layui-input" disabled />
                                </div>
                            </div>
                            <div class="layui-inline layui-col-md6">
                                <label class="layui-form-label">甲方单位:</label>
                                <label class="layui-form-label">申请日期 :</label>
                                <div class="layui-input-block">
                                    <input name="appleTime$" class="layui-input" disabled />
                                </div>
                            </div>
                            <div class="layui-inline layui-col-md6">
                                <label class="layui-form-label">跟踪项目:</label>
                                <div class="layui-input-block">
                                    <input name="orderId$" class="layui-input" disabled />
                                </div>
                            </div>
                            <div class="layui-inline layui-col-md6">
                                <label class="layui-form-label">客户名称:</label>
                                <div class="layui-input-block">
                                    <input name="cstmrId$" class="layui-input" disabled />
                                </div>
                            </div>
                            <div class="layui-inline layui-col-md6">
                                <label class="layui-form-label">项目总金额:</label>
                                <label class="layui-form-label">业务员:</label>
                                <div class="layui-input-block">
                                    <input name="money" class="layui-input" disabled />
                                    <input name="userId$" class="layui-input" disabled />
                                </div>
                            </div>
                            <div class="layui-inline layui-col-md6">
                                <label class="layui-form-label">所属公司:</label>
                                <label class="layui-form-label">审批状态:</label>
                                <div class="layui-input-block">
                                    <input name="company$" class="layui-input" disabled/>
                                    <input name="settle$" class="layui-input" disabled/>
                                </div>
                            </div>
                            <div class="layui-inline layui-col-md6">
                                <label class="layui-form-label">省市区:</label>
                                <label class="layui-form-label">业务类型:</label>
                                <div class="layui-input-block">
                                    <input name="pcd$" class="layui-input" disabled />
                                    <input name="planType$" class="layui-input" disabled />
                                </div>
                            </div>
                            <div class="layui-inline layui-col-md6">
                                <label class="layui-form-label">项目地址:</label>
                                <div class="layui-input-block">
                                    <input name="addr" class="layui-input" disabled />
                                </div>
                            </div>
                            <div class="layui-inline layui-col-md6">
                                <label class="layui-form-label">负责人:</label>
                                <div class="layui-input-block">
                                    <input name="director$" class="layui-input" disabled />
                                </div>
                            </div>
                            <div class="layui-inline layui-col-md6">
                                <label class="layui-form-label">备注:</label>
                                <div class="layui-input-block">
                                    <input name="remarks" class="layui-input" disabled />
                                </div>
                            </div>
                        </div>
                        <!-- 其他 -->
                        <div class="layui-form-item layui-row">
                            <fieldset class="layui-elem-field layui-field-title" style="margin-top: 20px;">
                                <legend style="font-size: 13px">其他</legend>
                            </fieldset>
                            <div id="customizeBox" class="formDes">
                            </div>
                        </div>
                        <!-- 售前规划 -->
                        <div class="layui-form-item layui-row">
                            <fieldset class="layui-elem-field layui-field-title" style="margin-top: 20px;">
                                <legend style="font-size: 13px">售前规划</legend>
                            </fieldset>
                            <div class="layui-inline layui-col-md6">
                                <label class="layui-form-label">规划员:</label>
                                <div class="layui-input-block">
                                    <input name="planner$" class="layui-input" disabled />
                                </div>
                            </div>
                            <div class="layui-inline layui-col-md6">
                                <label class="layui-form-label">完成时间:</label>
                                <div class="layui-input-block">
                                    <input name="finishTime$" class="layui-input" disabled />
                                </div>
                            </div>
                            <div class="layui-inline layui-col-md6">
                                <label class="layui-form-label">更改方案:</label>
                                <div class="layui-input-block">
                                    <input name="change" class="layui-input" disabled />
                                </div>
                            </div>
                            <div class="layui-inline layui-col-md6">
                                <label class="layui-form-label">更改次数:</label>
                                <div class="layui-input-block">
                                    <input name="changeTime" class="layui-input" disabled />
                                </div>
                            </div>
                            <div class="layui-inline layui-col-md6">
                                <label class="layui-form-label">更改原因:</label>
                                <div class="layui-input-block">
                                    <input name="changeReason" class="layui-input" disabled />
                                </div>
                            </div>
                            <div class="layui-inline layui-col-md6">
                                <label class="layui-form-label">规格奖金:</label>
                                <div class="layui-input-block">
                                    <input name="planBonus" class="layui-input" disabled />
                                </div>
                            </div>
                            <div class="layui-inline layui-col-md6">
                                <label class="layui-form-label">组长奖金:</label>
                                <div class="layui-input-block">
                                    <input name="planLeaderBonus" class="layui-input" disabled />
                                </div>
                            </div>
                        </div>
                        <!-- 系统信息 -->
                        <div class="layui-form-item layui-row">
                            <fieldset class="layui-elem-field layui-field-title" style="margin-top: 20px;">
                                <legend style="font-size: 13px">系统信息</legend>
                            </fieldset>
                            <div class="layui-inline layui-col-md6">
                                <label class="layui-form-label">添加人员:</label>
@@ -142,19 +206,30 @@
                    </div>
                </div>
            </div>
            <!-- 跟进人 -->
            <!-- 动态 -->
            <div class="layui-col-md3" style="width: 24%;margin-left: 1%">
                <!-- 时间线 -->
                <div class="layui-card">
                    <div class="layui-card-header">
                        <span>跟进人</span>
                        <span lay-filter="followerAdd" lay-submit style="float: right;cursor: pointer;">
                            <i class="layui-icon" style="font-size: 20px;color: #1890ff;">&#xe61f;</i>
                        </span>
                        <span>售前规划清单</span>
                    </div>
                    <div class="layui-card-body">
                        <table id="followersTable" lay-filter="followersTable"></table>
                        <ul class="layui-timeline" id="timelineBox">
                        </ul>
                    </div>
                </div>
                <!-- 跟进人 -->
<!--                <div class="layui-card">-->
<!--                    <div class="layui-card-header">-->
<!--                        <span>跟进人</span>-->
<!--                        <span lay-filter="followerAdd" lay-submit style="float: right;cursor: pointer;">-->
<!--                            <i class="layui-icon" style="font-size: 20px;color: #1890ff;">&#xe61f;</i>-->
<!--                        </span>-->
<!--                    </div>-->
<!--                    <div class="layui-card-body">-->
<!--                        <table id="followersTable" lay-filter="followersTable"></table>-->
<!--                    </div>-->
<!--                </div>-->
            </div>
        </div>
    </div>
@@ -187,20 +262,51 @@
    </form>
</script>
<script type="text/template" id="stepTpl">
    {{#each list}}
    <li id="step-{{step}}" style="pointer-events: none">
        <i class="layui-icon layui-icon-ok">{{step}}</i>
        <span class="layui-steps-title">{{title}}</span>
        {{# if username}}
        <span class="layui-steps-content">{{username}}</span>
        {{ else }}
        <span class="layui-steps-content">&nbsp;</span>
        {{/if}}
    </li>
    {{/each}}
</script>
<script type="text/template" id="timelineTpl">
    {{#each list}}
    <li class="layui-timeline-item">
        <i class="layui-icon layui-timeline-axis">&#xe63f;</i>
        <div class="layui-timeline-content layui-text">
            <h4 class="layui-timeline-title" style="display: inline;margin-right: 10px;">{{title}}</h4>
            <span>{{time}}</span>
            <p>
                {{msg}}
            </p>
        </div>
    </li>
    {{/each}}
</script>
<script>
    var orderId = top.orderByMore;
    var planId = top.planByMore;
    $('.layui-layer-close').hide();
    layui.config({
        base: baseUrl + "/static/layui/lay/modules/"
    }).extend({
        notice: 'notice/notice',
    }).use(['form', 'table', 'laydate', 'notice', 'xmSelect'], function () {
        steps: 'steps/steps',
    }).use(['form', 'table', 'laydate', 'notice', 'xmSelect', 'steps'], function () {
        var $ = layui.jquery;
        var form = layui.form;
        var table = layui.table;
        var laydate = layui.laydate;
        var notice = layui.notice;
        var xmSelect = layui.xmSelect;
        var steps = layui.steps;
        form.render('select');
@@ -208,19 +314,29 @@
        function init(){
            notice.msg('正在载入数据......', {icon: 4, position: "topRight"});
            $.ajax({
                url: baseUrl + "/order/" + orderId + "/auth",
                url: baseUrl + "/plan/" + planId + "/auth",
                headers: {'token': localStorage.getItem('token')},
                method: 'GET',
                success: function (res) {
                    notice.destroy();
                    if (res.code === 200) {
                        let order = res.data;
                        top.orderByMore = null;
                        $("#form-name").html(order.name);
                        let plan = res.data;
                        top.planByMore = null;
                        $("#form-name").html(plan.name);
                        // 进度步骤图
                        let template0 = Handlebars.compile($('#stepTpl').html());
                        $('#stepBox').html(template0({list: JSON.parse(plan.settleMsg)}));
                        $('#step-' + Number(plan.step)).addClass("layui-this");
                        let template1 = Handlebars.compile($('#timelineTpl').html());
                        $('#timelineBox').html(template1({list: JSON.parse(plan.settleMsg)}));
                        // 补充html
                        $('#customizeBox').html(plan.formHtml);
                        // 设备明细
                        form.val('formAdvForm', order);
                        form.val('formAdvForm', plan);
                        top.convertDisabled($('#formAdvForm :input'), true);
                        // 跟进人
                        initFollowers(order.id);
                        // initFollowers(plan.id);
                        layDateRender();
                    } else if (res.code === 403) {
                        top.location.href = baseUrl + "/";
@@ -241,15 +357,15 @@
        layDateRender();
        // 渲染跟进人模块
        function initFollowers(orderId) {
            if (!orderId) {
        function initFollowers(planId) {
            if (!planId) {
                return;
            }
            $.ajax({
                url: baseUrl+"/order/followers/table/auth",
                url: baseUrl+"/plan/followers/table/auth",
                headers: {'token': localStorage.getItem('token')},
                data: {
                    orderId: orderId
                    planId: planId
                },
                method: 'GET',
                success: function (res) {
@@ -274,17 +390,17 @@
                                case "del":
                                    let loadIndex = layer.load(2);
                                    $.ajax({
                                        url: baseUrl+"/order/followers/remove/auth",
                                        url: baseUrl+"/plan/followers/remove/auth",
                                        headers: {'token': localStorage.getItem('token')},
                                        data: {
                                            orderId: orderId,
                                            planId: planId,
                                            userId: data.userId
                                        },
                                        method: 'POST',
                                        success: function (res) {
                                            layer.close(loadIndex);
                                            if (res.code === 200){
                                                initFollowers(orderId);
                                                initFollowers(planId);
                                            } else if (res.code === 403){
                                                top.location.href = baseUrl+"/";
                                            } else {
@@ -324,10 +440,10 @@
                        }
                        let loadIndex = layer.load(2);
                        $.ajax({
                            url: baseUrl+"/order/followers/add/auth",
                            url: baseUrl+"/plan/followers/add/auth",
                            headers: {'token': localStorage.getItem('token')},
                            data: {
                                orderId: orderId,
                                planId: planId,
                                followerIds: selectList.map(function (d) {
                                    return d.value;
                                })
@@ -336,7 +452,7 @@
                            success: function (res) {
                                if (res.code === 200){
                                    layer.close(loadIndex);
                                    initFollowers(orderId);
                                    initFollowers(planId);
                                } else if (res.code === 403){
                                    top.location.href = baseUrl+"/";
                                }else {