XMTT 7 vuotta sitten
vanhempi
commit
4186d8cfc2
3 muutettua tiedostoa jossa 337 lisäystä ja 26 poistoa
  1. 8 2
      css/model/sys/article.css
  2. 196 5
      html/model/sys/article/relate.html
  3. 133 19
      js/model/sys/article/relate.js

+ 8 - 2
css/model/sys/article.css

@ -29,6 +29,12 @@
29 29
}
30 30
31 31
.sys_article_relate {
32
    width: 800px;
33
    height: 800px;
32
    width: 900px;
33
    height: 900px;
34
}
35
36
.sys_article_relate .content {
37
    font-size: 21px;
38
    font-weight: bold;
39
    text-align: center;
34 40
}

+ 196 - 5
html/model/sys/article/relate.html

@ -4,15 +4,206 @@
4 4
    </div>
5 5
    <div class="container newForm">
6 6
        <div class="row">
7
            <div class="col-2"></div>
8
            <div class="col-4 item-caption content ">设置权重</div>
7
            <!--<div class="col-1"></div>-->
8
            <div class="col-12 item-caption content ">关联专家</div>
9 9
        </div>
10
        
10
11
        <div class="row">
12
            <div class="col-2 item-caption pro">专家ID</div>
13
            <div class="col-4 item-caption">专家姓名</div>
14
            <div class="col-3 item-caption">所在企业</div>
15
            <div class="col-2 item-caption">职称</div>
16
        </div>
17
        <div class="row">
18
            <div class="col-5">
19
                <div class="form-item text trim pro" placeholder="请输入编号" name="id1"></div>
20
            </div>
21
            <div class="col-2">
22
                <div class="form-item text readOnly" name="name1"></div>
23
            </div>
24
            <div class="col-3">
25
                <div class="form-item text readOnly" name="orgName1"></div>
26
            </div>
27
            <div class="col-2">
28
                <div class="form-item text readOnly" name="title1"></div>
29
            </div>
30
        </div>
31
        <div class="row">
32
            <div class="col-5">
33
                <div class="form-item text trim pro" placeholder="请输入编号" name="id2"></div>
34
            </div>
35
            <div class="col-2">
36
                <div class="form-item text readOnly" name="name2"></div>
37
            </div>
38
            <div class="col-3">
39
                <div class="form-item text readOnly" name="orgName2"></div>
40
            </div>
41
            <div class="col-2">
42
                <div class="form-item text readOnly" name="title2"></div>
43
            </div>
44
        </div>
45
        <div class="row">
46
            <div class="col-5">
47
                <div class="form-item text trim pro" placeholder="请输入编号" name="id3"></div>
48
            </div>
49
            <div class="col-2">
50
                <div class="form-item text readOnly" name="name3"></div>
51
            </div>
52
            <div class="col-3">
53
                <div class="form-item text readOnly" name="orgName3"></div>
54
            </div>
55
            <div class="col-2">
56
                <div class="form-item text readOnly" name="title3"></div>
57
            </div>
58
        </div>
59
        <div class="row">
60
            <div class="col-5">
61
                <div class="form-item text trim pro" placeholder="请输入编号" name="id4"></div>
62
            </div>
63
            <div class="col-2">
64
                <div class="form-item text readOnly" name="name4"></div>
65
            </div>
66
            <div class="col-3">
67
                <div class="form-item text readOnly" name="orgName4"></div>
68
            </div>
69
            <div class="col-2">
70
                <div class="form-item text readOnly" name="title4"></div>
71
            </div>
72
        </div>
73
        <div class="row">
74
            <div class="col-5">
75
                <div class="form-item text trim pro" placeholder="请输入编号" name="id5"></div>
76
            </div>
77
            <div class="col-2">
78
                <div class="form-item text readOnly" name="name5"></div>
79
            </div>
80
            <div class="col-3">
81
                <div class="form-item text readOnly" name="orgName5"></div>
82
            </div>
83
            <div class="col-2">
84
                <div class="form-item text readOnly" name="title5"></div>
85
            </div>
86
        </div>
87
88
        <div class="row">
89
            <!--<div class="col-1"></div>-->
90
            <div class="col-12 item-caption content ">关联资源</div>
91
        </div>
92
        <div class="row">
93
            <div class="col-2 item-caption res">资源ID</div>
94
            <div class="col-5 item-caption">发布者</div>
95
            <div class="col-4 item-caption">资源名</div>
96
        </div>
97
        <div class="row">
98
            <div class="col-5">
99
                <div class="form-item text trim res" placeholder="请输入编号" name="resourceId1"></div>
100
            </div>
101
            <div class="col-4">
102
                <div class="form-item text readOnly" name="publish1"></div>
103
            </div>
104
            <div class="col-3">
105
                <div class="form-item text readOnly" name="resourceName1"></div>
106
            </div>
107
        </div>
108
        <div class="row">
109
            <div class="col-5">
110
                <div class="form-item text trim res" placeholder="请输入编号" name="resourceId2"></div>
111
            </div>
112
            <div class="col-4">
113
                <div class="form-item text readOnly" name="publish2"></div>
114
            </div>
115
            <div class="col-3">
116
                <div class="form-item text readOnly" name="resourceName2"></div>
117
            </div>
118
        </div>
119
        <div class="row">
120
            <div class="col-5">
121
                <div class="form-item text trim res" placeholder="请输入编号" name="resourceId3"></div>
122
            </div>
123
            <div class="col-4">
124
                <div class="form-item text readOnly" name="publish3"></div>
125
            </div>
126
            <div class="col-3">
127
                <div class="form-item text readOnly" name="resourceName3"></div>
128
            </div>
129
        </div>
130
        <div class="row">
131
            <div class="col-5">
132
                <div class="form-item text trim res" placeholder="请输入编号" name="resourceId4"></div>
133
            </div>
134
            <div class="col-4">
135
                <div class="form-item text readOnly" name="publish4"></div>
136
            </div>
137
            <div class="col-3">
138
                <div class="form-item text readOnly" name="resourceName4"></div>
139
            </div>
140
        </div>
141
        <div class="row">
142
            <div class="col-5">
143
                <div class="form-item text trim res" placeholder="请输入编号" name="resourceId5"></div>
144
            </div>
145
            <div class="col-4">
146
                <div class="form-item text readOnly" name="publish5"></div>
147
            </div>
148
            <div class="col-3">
149
                <div class="form-item text readOnly" name="resourceName5"></div>
150
            </div>
151
        </div>
152
153
        <div class="row">
154
            <!--<div class="col-1"></div>-->
155
            <div class="col-12 item-caption content ">关联企业</div>
156
        </div>
157
        <div class="row">
158
            <div class="col-2 item-caption org">企业ID</div>
159
            <div class="col-5 item-caption">企业名称</div>
160
        </div>
161
        <div class="row">
162
            <div class="col-5">
163
                <div class="form-item text trim org" placeholder="请输入编号" name="orgId1"></div>
164
            </div>
165
            <div class="col-4">
166
                <div class="form-item text readOnly" name="organization1"></div>
167
            </div>
168
        </div>
169
        <div class="row">
170
            <div class="col-5">
171
                <div class="form-item text trim org" placeholder="请输入编号" name="orgId2"></div>
172
            </div>
173
            <div class="col-4">
174
                <div class="form-item text readOnly" name="organization2"></div>
175
            </div>
176
        </div>
177
        <div class="row">
178
            <div class="col-5">
179
                <div class="form-item text trim org" placeholder="请输入编号" name="orgId3"></div>
180
            </div>
181
            <div class="col-4">
182
                <div class="form-item text readOnly" name="organization3"></div>
183
            </div>
184
        </div>
185
        <div class="row">
186
            <div class="col-5">
187
                <div class="form-item text trim org" placeholder="请输入编号" name="orgId4"></div>
188
            </div>
189
            <div class="col-4">
190
                <div class="form-item text readOnly" name="organization4"></div>
191
            </div>
192
        </div>
193
        <div class="row">
194
            <div class="col-5">
195
                <div class="form-item text trim org" placeholder="请输入编号" name="orgId5"></div>
196
            </div>
197
            <div class="col-4">
198
                <div class="form-item text readOnly" name="organization5"></div>
199
            </div>
200
        </div>
201
11 202
        <div class="row">
12 203
            <div class="col-10"></div>
13
            <div class="co  l-2">
204
            <div class="col-2">
14 205
                <div class="btn pull-right opt-save">
15
                    <i class="icon-check"></i> SAVE
206
                    <i class="icon-check"></i> 确定
16 207
                </div>
17 208
            </div>
18 209
        </div>

+ 133 - 19
js/model/sys/article/relate.js

@ -6,35 +6,149 @@ spa_define(function () {
6 6
    return $.use(["spa", "util", "form"], function (spa, util, fb) {
7 7
        return {
8 8
            modal: function (data) {
9
                var root = spa.findInModal(".sys_article_edit");
9
                var root = spa.findInModal(".sys_article_relate");
10 10
                var form = fb.build(root.find(".newForm"));
11 11
                var saveBtn = root.find(".opt-save"),
12 12
                    save = function () {
13
                        if (form.val().sortNum) {
14
                            var sortNum = form.val().sortNum;
15
                            var reg = new RegExp("^(\\d|[1-9]\\d|100)$");
16
                            if (!reg.test(sortNum)) {
17
                                util.alert("权重值必须是0-100的正整数");
18
                                return;
13
                            var professors = [];
14
                            var resources = [];
15
                            var orgs = [];
16
                            for (var i = 1; i<6;i++) {
17
                                if (form.val()["id"+i]){
18
                                    professors.push(form.val()["id" + i]);
19
                                }
20
                                if (form.val()["resourceId"+i]){
21
                                    resources.push(form.val()["resourceId" + i]);
22
                                }
23
                                if (form.val()["orgId"+i]){
24
                                    orgs.push(form.val()["orgId" + i]);
25
                                }
19 26
                            }
20
                        } else {
21
                            form.val({sortNum: 0});
22
                        }
23
                        util.post("../ajax/article/sortNum", {
24
                            articleId: data.data.articleId,
25
                            sortNum: form.val().sortNum
26
                        }, function () {
27
                            spa.closeModal();
28
                            if (data.hand) {
29
                                data.hand();
30
                            }
31
                        }, {});
27
                            util.post("../ajax/article/relateSave", {
28
                                articleId: data.data.articleId,
29
                                professors: professors,
30
                                resources: resources,
31
                                orgs: orgs
32
                            },function () {
33
                                spa.closeModal();
34
                                if (data.hand) {
35
                                    data.hand();
36
                                }
37
                            },{"6001":"关联专家不可重复","6002":"关联资源不可重复","6003":"关联企业不可重复"});
32 38
                    };
33 39
40
                util.post("../ajax/article/relatePro", {articleId: data.data.articleId},function (professors) {
41
                    for (var i = 1; i<=professors.length;i++) {
42
                        var obj = {};
43
                        obj["id" + i.toString()] = professors[i - 1].id;
44
                        obj["name"+i.toString()] = professors[i-1].name;
45
                        obj["orgName"+i.toString()] = professors[i-1].orgName;
46
                        obj["title"+i.toString()] = professors[i-1].title;
47
                        form.val(obj);
48
                    }
49
                });
50
51
                util.post("../ajax/article/relateRes", {articleId: data.data.articleId},function (resources) {
52
                    for (var i = 1; i<=resources.length;i++) {
53
                        var obj = {};
54
                        obj["resourceId" + i.toString()] = resources[i - 1].resourceId;
55
                        obj["resourceName"+i.toString()] = resources[i-1].resourceName;
56
                        obj["publish"+i.toString()] = resources[i-1].organizationName || resources[i-1].professorName;
57
                        form.val(obj);
58
                    }
59
                });
60
61
                util.post("../ajax/article/relateOrg", {articleId: data.data.articleId}, function (orgs) {
62
                    for (var i = 1; i <= orgs.length; i++) {
63
                        var obj = {};
64
                        obj["orgId" + i.toString()] = orgs[i - 1].id;
65
                        obj["organization" + i.toString()] = orgs[i - 1].name;
66
                        form.val(obj);
67
                    }
68
                });
69
34 70
                root.find(".modal-ctrl .icon-times").on("click", function () {
35 71
                    spa.closeModal();
36 72
                });
37 73
74
                root.find(".pro").on("focusout", function () {
75
                    var idx = $(this).attr("name").substring(2);
76
                    if (form.val()["id" + idx]) {
77
                        util.get("../ajax/sys/professor/id/" + form.val()["id" + idx], null, function (professor) {
78
                            if (professor) {
79
                                var obj = {};
80
                                obj["name" + idx] = professor.name;
81
                                obj["orgName" + idx] = professor.orgName;
82
                                obj["title" + idx] = professor.title;
83
                                form.val(obj);
84
                            }else {
85
                                var obj = {};
86
                                obj["id" + idx] = null;
87
                                obj["name" + idx] = null;
88
                                obj["orgName" + idx] = null;
89
                                obj["title" + idx] = null;
90
                                form.val(obj);
91
                                util.alert("此编号下没有数据,请重新输入");
92
                            }
93
                        })
94
                    }else{
95
                        var obj = {};
96
                        obj["name" + idx] = null;
97
                        obj["orgName" + idx] = null;
98
                        obj["title" + idx] = null;
99
                        form.val(obj);
100
                    }
101
                });
102
103
                root.find(".res").on("focusout", function () {
104
                    var idx = $(this).attr("name").substring(10);
105
                    if (form.val()["resourceId" + idx]) {
106
                        util.get("../ajax/resource/resourceInfo",{id:form.val()["resourceId" + idx]}, function (resource) {
107
                            if (resource) {
108
                                var obj = {};
109
                                obj["resourceName" + idx] = resource.resourceName;
110
                                obj["publish" + idx] = resource.organizationName || resource.professorName;
111
                                form.val(obj);
112
                            }else {
113
                                var obj = {};
114
                                obj["resourceId" + idx] = null;
115
                                obj["resourceName" + idx] = null;
116
                                obj["publish" + idx] = null;
117
                                form.val(obj);
118
                                util.alert("此编号下没有数据,请重新输入");
119
                            }
120
                        })
121
                    }else{
122
                        var obj = {};
123
                        obj["resourceName" + idx] = null;
124
                        obj["publish" + idx] = null;
125
                        form.val(obj);
126
                    }
127
                });
128
129
                root.find(".org").on("focusout", function () {
130
                    var idx = $(this).attr("name").substring(5);
131
                    if (form.val()["orgId" + idx]) {
132
                        util.get("../ajax/sys/org/id/" + form.val()["orgId" + idx], null, function (org) {
133
                            if (org) {
134
                                var obj = {};
135
                                obj["organization" + idx] = org.name;
136
                                form.val(obj);
137
                            }else {
138
                                var obj = {};
139
                                obj["orgId" + idx] = null;
140
                                obj["organization" + idx] = null;
141
                                form.val(obj);
142
                                util.alert("此编号下没有数据,请重新输入");
143
                            }
144
                        })
145
                    }else{
146
                        var obj = {};
147
                        obj["organization" + idx] = null;
148
                        form.val(obj);
149
                    }
150
                });
151
38 152
                saveBtn.on("click", save);
39 153
            }
40 154
        }