Browse Source

对话列表

XMTT 7 years ago
parent
commit
3d8ce2fc4f

+ 10 - 0
css/model/sys/consult.css

@ -10,4 +10,14 @@
10 10
}
11 11
.sys_consult_edit{
12 12
    width:800px;
13
}
14
15
.sys_consult_msgcnt{
16
    width: 800px;
17
    height: 600px;
18
    padding: 0 20px 10px;
19
}
20
21
.sys_consult_msgcnt .right2{
22
    text-align: right;
13 23
}

+ 45 - 0
html/model/sys/consult/msgcnt.html

@ -0,0 +1,45 @@
1
<div class="sys_consult_msgcnt centerModal">
2
    <div class="modal-ctrl">
3
        <i class="icon icon-times"></i>
4
    </div>
5
    <div class="container opt-form">
6
        <div class="row">
7
            <div class="col-2 item-caption ">所有者</div>
8
            <div class="col-4">
9
                <div class="form-item text readOnly" defVal="" name="ownerName"></div>
10
            </div>
11
            <div class="col-2 item-caption ">机构</div>
12
            <div class="col-4">
13
                <div class="form-item text readOnly" defVal="" name="ownerOrg"></div>
14
            </div>
15
        </div>
16
        <div class="row">
17
            <div class="col-2 item-caption ">参与者</div>
18
            <div class="col-4">
19
                <div class="form-item text readOnly" defVal="" name="actorName"></div>
20
            </div>
21
            <div class="col-2 item-caption ">机构</div>
22
            <div class="col-4">
23
                <div class="form-item text readOnly" defVal="" name="actorOrg"></div>
24
            </div>
25
        </div>
26
27
    </div>
28
29
    <div class="container dt-tpl">
30
        <table class="table table-bordered">
31
            <thead>
32
            <tr>
33
                <th>对话内容</th>
34
            </tr>
35
            </thead>
36
            <tbody>
37
            <tr ch-dir="list">
38
                <td class="right{{right}}">{{senderName}}&nbsp;&nbsp;{{sendTime-showDay}}<br>{{cnt}}</td>
39
            </tr>
40
            </tbody>
41
42
        </table>
43
    </div>
44
45
</div>

+ 53 - 0
html/model/sys/consult/msgidx.html

@ -0,0 +1,53 @@
1
<div class="sys_consult_msgidx" loadUri="../ajax/Msg/qa" pageSize="10" pageNo="1" pageIndex="pi">
2
    <div class="modal-ctrl">
3
        <i class="icon icon-times"></i>
4
    </div>
5
    <div class="container dt-form">
6
        <div class="row">
7
            <div class="col-2 item-caption">对话参与人</div>
8
            <div class="col-4">
9
                <div class="form-item text" defVal="" name="name"></div>
10
            </div>
11
            <div class="col-2">
12
                <div class="btn opt-query pull-right">
13
                    <i class="icon-search"></i> 查询
14
                </div>
15
            </div>
16
        </div>
17
    </div>
18
19
    <div class="container page-split"></div>
20
    <style type="text/css">
21
        .table.table-bordered tr th{text-align: center;}
22
    </style>
23
    <div class="container dt-tpl">
24
        <table class="table table-bordered">
25
            <thead>
26
            <tr>
27
                <th>查看</th>
28
                <th>序号</th>
29
                <th>所有者</th>
30
                <th>参与者</th>
31
                <th>最后发送时间</th>
32
                <th>最后信息内容</th>
33
            </tr>
34
            </thead>
35
            <tbody>
36
            <tr ch-dir="list">
37
                <td class="table-opt" owner="{{owner}}" ownerName="{{ownerName}}" actor="{{actor}}" actorName="{{actorName}}"><i class="icon icon-edit"></i></td>
38
                <td>{{pi}}</td>
39
                <td>{{ownerName}}</td>
40
                <td>{{actorName}}</td>
41
                <td>{{lastTime-showDay}}</td>
42
                <td>{{lastCnt}}</td>
43
            </tr>
44
            </tbody>
45
            <tbody ch-dir="array.empty">
46
            <tr>
47
                <td class="empty-desc" colspan="4">表格暂无数据</td>
48
            </tr>
49
            </tbody>
50
        </table>
51
    </div>
52
    <ul class="dt-pager"></ul>
53
</div>

+ 50 - 0
js/model/sys/consult/msgcnt.js

@ -0,0 +1,50 @@
1
/**
2
 * Created by TT on 2017/10/10.
3
 */
4
;
5
spa_define(function () {
6
    return $.use(["spa", "code", "util", "form"], function (spa, code, util, form) {
7
        return {
8
            modal: function (data) {
9
                var root = spa.findInModal(".sys_consult_msgcnt");
10
                root.find(".modal-ctrl .icon-times").on("click", function () {
11
                    spa.closeModal();
12
                });
13
                var ef = form.build(root.find(".opt-form"));
14
                util.get("../ajax/sys/professor/id/" + data.data.owner, null, function (owner) {
15
                    ef.val({ownerOrg: owner.orgName});
16
                });
17
                util.get("../ajax/sys/professor/id/" + data.data.actor, null, function (actor) {
18
                    ef.val({actorOrg: actor.orgName});
19
                });
20
                ef.val(data.data);
21
                var cr = code.parseCode(root.find(".dt-tpl"));
22
                cr.shell("showDay", function (env) {
23
                    if (env.cd && env.cd[this.k]) {
24
                        var day = env.cd[this.k];
25
                        return day.substring(0, 4) + "-" + day.substring(4, 6) + "-" + day.substring(6, 8);
26
                    }
27
                    return "";
28
                });
29
                var allData;
30
                util.get("../ajax/Msg/cnt", {actor1: data.data.owner, actor2: data.data.actor}, function (cnt) {
31
                    cnt.forEach(function (item) {
32
                        if (item.sender == data.data.owner) {
33
                            item.senderName = data.data.ownerName;
34
                            item.reciverName = data.data.actorname;
35
                            item.right = 1;
36
                        } else {
37
                            item.senderName = data.data.actorName;
38
                            item.reciverName = data.data.ownerName;
39
                            item.right = 2;
40
                        }
41
                        // item.sender == data.data.owner ?item.senderName = data.data.ownerName:item.senderName = data.data.actorName;
42
                        // item.reciver == data.data.actor ?item.reciverName = data.data.actorName:item.reciverName = data.data.ownerName;
43
                    });
44
                    allData = cnt || [];
45
                    cr.val(allData);
46
                }, {});
47
            }
48
        };
49
    });
50
});

+ 39 - 0
js/model/sys/consult/msgidx.js

@ -0,0 +1,39 @@
1
/**
2
 * Created by TT on 2017/10/10.
3
 */
4
;
5
spa_define(function () {
6
    return $.use(["spa", "pagedatagrid", "util"], function (spa, pdgf, util) {
7
        return {
8
            main: function () {
9
                var root = spa.findInMain(".sys_consult_msgidx");
10
                var pdg = pdgf.build(root);
11
                pdg.code.shell("showDay", function (env) {
12
                    if (env.cd && env.cd[this.k]) {
13
                        var day = env.cd[this.k].toString();
14
                        return day.substring(0, 4) + "-" + day.substring(4, 6) + "-" + day.substring(6, 8);
15
                    }
16
                    return "";
17
                });
18
                pdg.code.listen($.dict.doTransfer);
19
                root.find(".opt-query").on("click", function () {
20
                    pdg.load();
21
                });
22
                pdg.load();
23
                root.on("click", ".icon-edit", function () {
24
                    var $this = $(this);
25
                    var owner = $this.parent().attr("owner"),
26
                        ownerName = $this.parent().attr("ownerName"),
27
                        actor = $this.parent().attr("actor"),
28
                        actorName = $this.parent().attr("actorName");
29
                    spa.showModal("sys_consult_msgcnt", {
30
                        data: {owner: owner, ownerName: ownerName, actor: actor, actorName: actorName},
31
                        hand: function () {
32
                            pdg.load()
33
                        }
34
                    })
35
                });
36
            }
37
        };
38
    });
39
});