提交 2d0d2d81 编写于 作者: Skyeye云's avatar Skyeye云

讨论贴功能重构完成

上级 0d126ddf
layui.config({
base: basePath,
version: skyeyeVersion
}).extend({
window: 'js/winui.window'
}).define(['window', 'table', 'jquery', 'winui'], function (exports) {
winui.renderColor();
layui.use(['form', 'layedit'], function (form) {
var index = parent.layer.getFrameIndex(window.name);
var $ = layui.$,
form = layui.form;
layedit = layui.layedit;
var id = GetUrlParam("id");
var replyTemplate = $("#replyTemplate").html();
AjaxPostUtil.request({url: reqBasePath + "queryDiscussionById", params: {id: id}, type: 'json', method: 'GET', callback: function (json) {
$(".disheader").html(json.bean.title);
$(".disdesc").html('' + json.bean.createName + '' + json.bean.createTime + '发布');
$(".discontent").html(json.bean.content);
showGrid({
id: "disreplay",
url: reqBasePath + "queryDiscussionReplyList",
params: {discussionId: id},
pagination: false,
template: replyTemplate,
method: "POST",
ajaxSendLoadBefore: function(hdb) {},
ajaxSendAfter:function(j) {
}
});
matchingLanguage();
}});
form.on('submit(formAddBean)', function (data) {
if (winui.verifyForm(data.elem)) {
var params = {
discussionId: id,
content: $("#content").val(),
replyId: "0"
};
AjaxPostUtil.request({url: reqBasePath + "createDiscussionReply", params: params, type: 'json', method: 'POST', callback: function (json) {
winui.window.msg("提交成功", {icon: 1, time: 2000}, function() {
location.reload();
});
}});
}
return false;
});
$("body").on("click", "#cancle", function() {
parent.layer.close(index);
});
});
});
\ No newline at end of file
var rowId = ""; // 讨论板id
var proId = ""; // 项目id
var objectKey = "";
var objectId = "";
layui.config({
base: basePath,
......@@ -12,13 +12,20 @@ layui.config({
var $ = layui.$,
form = layui.form,
table = layui.table;
proId = parent.rowId;
objectKey = GetUrlParam("objectKey");
objectId = GetUrlParam("objectId");
if (isNull(objectKey) || isNull(objectId)) {
winui.window.msg("请传入适用对象信息", {icon: 2, time: 2000});
return false;
}
var authPermission = teamObjectPermissionUtil.checkTeamBusinessAuthPermission(objectId, 'disCussionAuthEnum');
table.render({
id: 'messageTable',
elem: '#messageTable',
method: 'post',
url: flowableBasePath + 'prodiscuss001',
url: reqBasePath + 'queryDiscussionList',
where: getTableParams(),
even: true,
page: true,
......@@ -27,12 +34,22 @@ layui.config({
cols: [[
{ title: systemLanguage["com.skyeye.serialNumber"][languageType], type: 'numbers' },
{ field: 'title', title: '主题', align: 'left', width: 300, templet: function (d) {
return '<a lay-event="discussDetails" class="notice-title-click">' + d.title + '</a>';
return '<a lay-event="details" class="notice-title-click">' + d.title + '</a>';
}},
{ field: 'createName', title: '作者', align: 'left', width: 120 },
{ field: 'replyNum', title: '回复', align: 'left', width: 80 },
{ field: 'createTime', title: systemLanguage["com.skyeye.createTime"][languageType], align: 'center', width: 120 },
{ field: 'recoveryTime', title: '最后回复时间', align: 'center', width: 120 }
{ field: 'createName', title: systemLanguage["com.skyeye.createName"][languageType], align: 'left', width: 120 },
{ field: 'createTime', title: systemLanguage["com.skyeye.createTime"][languageType], align: 'center', width: 150 },
{ field: 'lastUpdateName', title: systemLanguage["com.skyeye.lastUpdateName"][languageType], align: 'left', width: 120 },
{ field: 'lastUpdateTime', title: systemLanguage["com.skyeye.lastUpdateTime"][languageType], align: 'center', width: 150 },
{ title: systemLanguage["com.skyeye.operation"][languageType], fixed: 'right', align: 'center', width: 150, templet: function (d) {
var str = '';
if (authPermission['edit']) {
str += '<a class="layui-btn layui-btn-xs" lay-event="edit"><language showName="com.skyeye.editBtn"></language></a>'
}
if (authPermission['delete']) {
str += '<a class="layui-btn layui-btn-xs layui-btn-danger" lay-event="delete"><language showName="com.skyeye.deleteBtn"></language></a>'
}
return str;
}}
]],
done: function(json) {
matchingLanguage();
......@@ -45,18 +62,22 @@ layui.config({
table.on('tool(messageTable)', function (obj) {
var data = obj.data;
var layEvent = obj.event;
if (layEvent === 'discussDetails'){ //详情
discussDetails(data);
}
if (layEvent === 'edit') {
edit(data);
} else if (layEvent === 'delete') {
del(data);
} else if (layEvent === 'details') {
details(data);
}
});
// 社区发帖
$("body").on("click", "#addBean", function() {
_openNewWindows({
url: "../../tpl/proprojectdiscuss/proprojectdiscussadd.html",
parent._openNewWindows({
url: systemCommonUtil.getUrl('FP2023080700001&objectId=' + objectId + '&objectKey=' + objectKey, null),
title: "社区发帖",
pageId: "proprojectdiscussadd",
area: ['80vw', '90vh'],
pageId: "discussAdd",
area: ['90vw', '90vh'],
callBack: function (refreshCode) {
winui.window.msg(systemLanguage["com.skyeye.successfulOperation"][languageType], {icon: 1, time: 2000});
loadTable();
......@@ -64,20 +85,41 @@ layui.config({
});
// 讨论版详情
function discussDetails(data) {
rowId = data.id;
_openNewWindows({
url: "../../tpl/proprojectdiscuss/proprojectdiscussdetail.html",
function details(data) {
parent._openNewWindows({
url: "../../tpl/discuss/discussDetail.html?id=" + data.id,
title: data.title,
pageId: "discussDetail",
area: ['90vw', '90vh'],
callBack: function (refreshCode) {
}});
}
// 编辑
function edit(data) {
parent._openNewWindows({
url: systemCommonUtil.getUrl('FP2023080700002&objectId=' + objectId + '&objectKey=' + objectKey + '&id=' + data.id, null),
title: data.title,
pageId: "proprojectdiscussdetail",
maxmin: true,
pageId: "discussEdit",
area: ['90vw', '90vh'],
callBack: function (refreshCode) {
winui.window.msg(systemLanguage["com.skyeye.successfulOperation"][languageType], {icon: 1, time: 2000});
loadTable();
}});
}
// 删除
function del(data) {
layer.confirm(systemLanguage["com.skyeye.deleteOperationMsg"][languageType], {icon: 3, title: systemLanguage["com.skyeye.deleteOperation"][languageType]}, function (index) {
layer.close(index);
AjaxPostUtil.request({url: reqBasePath + "deleteDiscussionById", params: {id: data.id}, type: 'json', method: 'DELETE', callback: function (json) {
winui.window.msg(systemLanguage["com.skyeye.deleteOperationSuccessMsg"][languageType], {icon: 1, time: 2000});
loadTable();
}});
});
}
form.render();
// 刷新数据
$("body").on("click", "#reloadTable", function() {
loadTable();
});
......@@ -87,8 +129,8 @@ layui.config({
}
function getTableParams() {
return $.extend(true, {proId: parent.rowId}, initTableSearchUtil.getSearchValue("messageTable"));
return $.extend(true, {objectKey: objectKey, objectId: objectId}, initTableSearchUtil.getSearchValue("messageTable"));
}
exports('proprojectdiscusslist', {});
exports('discussList', {});
});
\ No newline at end of file
......@@ -23,7 +23,7 @@
<span class="hr-title">回复信息</span><hr>
</div>
<div class="layui-col-xs12">
<div class="disreplay">
<div class="disreplay" id="disreplay">
</div>
</div>
......@@ -34,7 +34,7 @@
<div class="layui-form-item layui-col-xs12">
<label class="layui-form-label">内容<i class="red">*</i></label>
<div class="layui-input-block">
<textarea id="content" name="content" placeholder="请输入内容" class="layui-textarea"></textarea>
<textarea id="content" name="content" placeholder="请输入内容" win-verify="required" class="layui-textarea"></textarea>
</div>
</div>
<div class="layui-form-item layui-col-xs12">
......@@ -46,13 +46,12 @@
</form>
</div>
<!-- 左侧回复 -->
<script type="text/x-handlebars-template" id="leftTemplate">
{{#bean}}
<script type="text/x-handlebars-template" id="replyTemplate">
{{#each rows}}
<div class="disreplay-left">
<div class="user-info">
<div class="user-photo">
<img alt="" src="{{createPhoto}}">
<img alt="" src="{{createMation.userPhoto}}">
</div>
<div class="user-name">
{{createName}}
......@@ -62,40 +61,36 @@
<div class="replay-time">
回复时间{{createTime}}
</div>
{{{content}}}
{{name}}
</div>
<div class="equal-user-photo"></div>
</div>
{{/bean}}
</script>
<!-- 右侧回复 -->
<script type="text/x-handlebars-template" id="rightTemplate">
{{#bean}}
<div class="disreplay-right">
<div class="equal-user-photo"></div>
<div class="replay-content">
<div class="replay-time">
回复时间{{createTime}}
{{#each child}}
<div class="disreplay-right">
<div class="equal-user-photo"></div>
<div class="replay-content">
<div class="replay-time">
回复时间{{createTime}}
</div>
{{name}}
</div>
{{{content}}}
</div>
<div class="user-info">
<div class="user-photo">
<img alt="" src="{{createPhoto}}">
</div>
<div class="user-name">
{{createName}}
</div>
</div>
</div>
{{/bean}}
<div class="user-info">
<div class="user-photo">
<img alt="" src="{{createMation.userPhoto}}">
</div>
<div class="user-name">
{{createName}}
</div>
</div>
</div>
{{/each}}
{{/each}}
</script>
<script src="../../assets/lib/layui/layui.js"></script>
<script src="../../assets/lib/layui/custom.js"></script>
<script type="text/javascript">
layui.config({base: '../../js/crmdiscuss/'}).use('discussdetail');
layui.config({base: '../../js/discuss/'}).use('discussDetail');
</script>
</body>
</html>
\ No newline at end of file
......@@ -20,7 +20,7 @@
<script src="../../assets/lib/layui/layui.js"></script>
<script src="../../assets/lib/layui/custom.js"></script>
<script type="text/javascript">
layui.config({base: '../../js/proprojectdiscuss/'}).use('proprojectdiscusslist');
layui.config({base: '../../js/discuss/'}).use('discussList');
</script>
</body>
</html>
\ No newline at end of file
var disRowId = "";//讨论板id
var rowId = "";//商机id
layui.config({
base: basePath,
version: skyeyeVersion
}).extend({
window: 'js/winui.window'
}).define(['window', 'table', 'jquery', 'winui', 'form'], function (exports) {
winui.renderColor();
var $ = layui.$,
form = layui.form,
table = layui.table;
table.render({
id: 'messageTable',
elem: '#messageTable',
method: 'post',
url: flowableBasePath + 'opportunity018',
where: {title: $("#title").val(), opportunityTitle: $("#opportunityTitle").val()},
even: true,
page: true,
limits: [8, 16, 24, 32, 40, 48, 56],
limit: 8,
cols: [[
{ title: systemLanguage["com.skyeye.serialNumber"][languageType], type: 'numbers' },
{ field: 'title', title: '主题', align: 'left', width: 300, templet: function (d) {
return '<a lay-event="discussDetails" class="notice-title-click">' + d.title + '</a>';
}},
{ field: 'opportunityTitle', title: '所属商机', align: 'left', width: 200 },
{ field: 'createName', title: '作者', align: 'left', width: 80 },
{ field: 'replyNum', title: '回复', align: 'left', width: 80 },
{ field: 'createTime', title: systemLanguage["com.skyeye.createTime"][languageType], align: 'center', width: 120 },
{ field: 'recoveryTime', title: '最后回复时间', align: 'center', width: 120 }
]],
done: function(json) {
matchingLanguage();
}
});
table.on('tool(messageTable)', function (obj) {
var data = obj.data;
var layEvent = obj.event;
if (layEvent === 'discussDetails'){ //详情
discussDetails(data);
}
});
//讨论版详情
function discussDetails(data) {
disRowId = data.id;
rowId = data.opportunityId;
_openNewWindows({
url: "../../tpl/crmdiscuss/discussdetail.html",
title: data.title,
pageId: "discussdetailpage",
maxmin: true,
callBack: function (refreshCode) {
}});
}
form.render();
form.on('submit(formSearch)', function (data) {
if (winui.verifyForm(data.elem)) {
refreshTable();
}
return false;
});
//刷新数据
$("body").on("click", "#reloadTable", function() {
loadTable();
});
function loadTable() {
table.reloadData("messageTable", {where: {title: $("#title").val(), opportunityTitle: $("#opportunityTitle").val()}});
}
function refreshTable(){
table.reloadData("messageTable", {page: {curr: 1}, where: {title: $("#title").val(), opportunityTitle: $("#opportunityTitle").val()}});
}
exports('alldiscusslist', {});
});
\ No newline at end of file
var layedit;
layui.config({
base: basePath,
version: skyeyeVersion
}).extend({
window: 'js/winui.window'
}).define(['window', 'table', 'jquery', 'winui'], function (exports) {
winui.renderColor();
var index = parent.layer.getFrameIndex(window.name);
layui.use(['form', 'layedit'], function (form) {
var $ = layui.$,
form = layui.form;
layedit = layui.layedit;
var rowId = parent.parent.rowId;
layedit.set({
uploadImage: {
url: reqBasePath + "common003", //接口url
type: 'post', //默认post
data: {
type: '13'
}
}
});
var layEditParams = {
tool: [
'html',
'strong', //加粗
'italic', //斜体
'underline', //下划线
'del', //删除线
'addhr',
'|',
'removeformat',
'fontFomatt',
'fontfamily',
'fontSize',
'colorpicker',
'fontBackColor',
'face', //表情
'|', //分割线
'left', //左对齐
'center', //居中对齐
'right', //右对齐
'link', //超链接
'unlink', //清除链接
'code',
'image', //插入图片
'attachment',
'table',
'|',
'fullScreen',
'preview',
'|',
'help'
],
uploadFiles: {
url: reqBasePath + "common003",
accept: 'file',
acceptMime: 'file/*',
size: '20480',
data: {
type: '13'
},
autoInsert: true, //自动插入编辑器设置
done: function(data) {
}
}
};
var completedContent = layedit.build('content', layEditParams);
matchingLanguage();
form.on('submit(formAddBean)', function (data) {
if (winui.verifyForm(data.elem)) {
var params = {
rowId: rowId,
title: $("#title").val()
};
if (isNull(layedit.getContent(completedContent))){
winui.window.msg('请填写发帖内容', {icon: 2, time: 2000});
return false;
} else {
params.content = encodeURIComponent(layedit.getContent(completedContent));
}
AjaxPostUtil.request({url: flowableBasePath + "opportunity009", params: params, type: 'json', callback: function (json) {
parent.layer.close(index);
parent.refreshCode = '0';
}});
}
return false;
});
$("body").on("click", "#cancle", function() {
parent.layer.close(index);
});
});
});
\ No newline at end of file
var layedit;
layui.config({
base: basePath,
version: skyeyeVersion
}).extend({
window: 'js/winui.window'
}).define(['window', 'table', 'jquery', 'winui'], function (exports) {
winui.renderColor();
layui.use(['form', 'layedit'], function (form) {
var index = parent.layer.getFrameIndex(window.name);
var $ = layui.$,
form = layui.form;
layedit = layui.layedit;
var rowId = parent.disRowId;//讨论板id
var leftTemplate = $("#leftTemplate").html();
var rightTemplate = $("#rightTemplate").html();
AjaxPostUtil.request({url: flowableBasePath + "opportunity016", params: {rowId: rowId}, type: 'json', callback: function (json) {
$(".disheader").html(json.bean.title);
$(".disdesc").html('' + json.bean.createName + '' + json.bean.createTime + '发布');
$(".discontent").html(json.bean.content);
var jsonStr;
var str = "";
$.each(json.bean.replyString, function(i, item) {
jsonStr = {
bean: item
};
if(item.createId === json.bean.createId){//左侧
str += getDataUseHandlebars(leftTemplate, jsonStr);
} else {//右侧
str += getDataUseHandlebars(rightTemplate, jsonStr);
}
});
$(".disreplay").html(str);
matchingLanguage();
}});
layedit.set({
uploadImage: {
url: reqBasePath + "common003", //接口url
type: 'post', //默认post
data: {
type: '13'
}
}
});
var layEditParams = {
tool: [
'html',
'strong', //加粗
'italic', //斜体
'underline', //下划线
'del', //删除线
'addhr',
'|',
'removeformat',
'fontFomatt',
'fontfamily',
'fontSize',
'colorpicker',
'fontBackColor',
'face', //表情
'|', //分割线
'left', //左对齐
'center', //居中对齐
'right', //右对齐
'link', //超链接
'unlink', //清除链接
'code',
'image', //插入图片
'attachment',
'table',
'|',
'fullScreen',
'preview',
'|',
'help'
],
uploadFiles: {
url: reqBasePath + "common003",
accept: 'file',
acceptMime: 'file/*',
size: '20480',
data: {
type: '13'
},
autoInsert: true, //自动插入编辑器设置
done: function(data) {
}
}
};
var completedContent = layedit.build('content', layEditParams);
form.on('submit(formAddBean)', function (data) {
if (winui.verifyForm(data.elem)) {
var params = {
discussId: rowId,//讨论板id
opportunityId: parent.rowId//商机id
};
if (isNull(layedit.getContent(completedContent))){
winui.window.msg('请填写回复内容', {icon: 2, time: 2000});
return false;
} else {
params.content = encodeURIComponent(layedit.getContent(completedContent));
}
AjaxPostUtil.request({url: flowableBasePath + "opportunity014", params: params, type: 'json', callback: function (json) {
winui.window.msg("提交成功", {icon: 1, time: 2000}, function() {
location.reload();
});
}});
}
return false;
});
$("body").on("click", "#cancle", function() {
parent.layer.close(index);
});
});
});
\ No newline at end of file
var disRowId = "";//讨论板id
var rowId = "";//商机id
layui.config({
base: basePath,
version: skyeyeVersion
}).extend({
window: 'js/winui.window'
}).define(['window', 'table', 'jquery', 'winui', 'form'], function (exports) {
winui.renderColor();
var $ = layui.$,
form = layui.form,
table = layui.table;
rowId = parent.rowId;
table.render({
id: 'messageTable',
elem: '#messageTable',
method: 'post',
url: flowableBasePath + 'opportunity007',
where: {rowId: rowId},
even: true,
page: true,
limits: [8, 16, 24, 32, 40, 48, 56],
limit: 8,
cols: [[
{ title: systemLanguage["com.skyeye.serialNumber"][languageType], type: 'numbers' },
{ field: 'title', title: '主题', align: 'left', width: 300, templet: function (d) {
return '<a lay-event="discussDetails" class="notice-title-click">' + d.title + '</a>';
}},
{ field: 'createName', title: '作者', align: 'left', width: 120 },
{ field: 'replyNum', title: '回复', align: 'left', width: 80 },
{ field: 'createTime', title: systemLanguage["com.skyeye.createTime"][languageType], align: 'center', width: 120 },
{ field: 'recoveryTime', title: '最后回复时间', align: 'center', width: 120 }
]],
done: function(json) {
matchingLanguage();
}
});
table.on('tool(messageTable)', function (obj) {
var data = obj.data;
var layEvent = obj.event;
if (layEvent === 'discussDetails'){ //详情
discussDetails(data);
}
});
//社区发帖
$("body").on("click", "#addBean", function() {
_openNewWindows({
url: "../../tpl/crmdiscuss/discussadd.html",
title: "社区发帖",
pageId: "discussadd",
area: ['90vw', '90vh'],
callBack: function (refreshCode) {
winui.window.msg(systemLanguage["com.skyeye.successfulOperation"][languageType], {icon: 1, time: 2000});
loadTable();
}});
});
//讨论版详情
function discussDetails(data) {
disRowId = data.id;
_openNewWindows({
url: "../../tpl/crmdiscuss/discussdetail.html",
title: data.title,
pageId: "discussdetailpage",
area: ['90vw', '90vh'],
callBack: function (refreshCode) {
winui.window.msg(systemLanguage["com.skyeye.successfulOperation"][languageType], {icon: 1, time: 2000});
}});
}
//刷新数据
$("body").on("click", "#reloadTable", function() {
loadTable();
});
function loadTable() {
table.reloadData("messageTable", {where: {rowId: rowId}});
}
function refreshTable(){
table.reloadData("messageTable", {page: {curr: 1}, where: {rowId: rowId}});
}
exports('discussnumlist', {});
});
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
<link href="../../assets/lib/layui/css/layui.css" rel="stylesheet" />
<link href="../../assets/lib/winui/css/winui.css" rel="stylesheet" />
</head>
<body>
<div class="txtcenter" style="margin:0 auto;padding-top:10px;">
<form class="layui-form layui-form-pane" action="" autocomplete="off">
<div class="layui-form-item">
<div class="layui-inline">
<label class="layui-form-label">主题</label>
<div class="layui-input-inline">
<input type="text" id="title" name="title" placeholder="请输入主题名称" class="layui-input" />
</div>
<label class="layui-form-label">商机</label>
<div class="layui-input-inline">
<input type="text" id="opportunityTitle" name="opportunityTitle" placeholder="请输入商机名称" class="layui-input" />
</div>
<button type="reset" class="layui-btn layui-btn-primary list-form-search"><language showName="com.skyeye.reset"></language></button>
<button class="layui-btn list-form-search" lay-submit lay-filter="formSearch"><language showName="com.skyeye.search2"></language></button>
</div>
</div>
</form>
</div>
<div class="winui-toolbar">
<div class="winui-tool">
<button id="reloadTable" class="winui-toolbtn"><i class="fa fa-refresh" aria-hidden="true"></i><language showName="com.skyeye.refreshDataBtn"></language></button>
</div>
</div>
<div style="margin:auto 10px;">
<table id="messageTable" lay-filter="messageTable"></table>
</div>
<script src="../../assets/lib/layui/layui.js"></script>
<script src="../../assets/lib/layui/custom.js"></script>
<script type="text/javascript">
layui.config({base: '../../js/crmdiscuss/'}).use('alldiscusslist');
</script>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
<link href="../../assets/lib/layui/css/layui.css" rel="stylesheet" />
<link href="../../assets/lib/winui/css/winui.css" rel="stylesheet" />
</head>
<body>
<div style="padding:20px; margin:0 auto;">
<form class="layui-form" action="" id="showForm" autocomplete="off">
<div class="layui-form-item layui-col-xs12">
<label class="layui-form-label">标题<i class="red">*</i></label>
<div class="layui-input-block">
<input type="text" id="title" name="title" win-verify="required" placeholder="请输入标题" class="layui-input"/>
</div>
</div>
<div class="layui-form-item layui-col-xs12">
<label class="layui-form-label">内容<i class="red">*</i></label>
<div class="layui-input-block">
<textarea id="content" name="content" placeholder="请输入内容" class="layui-textarea"></textarea>
</div>
</div>
<div class="layui-form-item layui-col-xs12">
<div class="layui-input-block">
<button class="winui-btn" id="cancle"><language showName="com.skyeye.cancel"></language></button>
<button class="winui-btn" lay-submit lay-filter="formAddBean"><language showName="com.skyeye.save"></language></button>
</div>
</div>
</form>
</div>
<script src="../../assets/lib/layui/layui.js"></script>
<script src="../../assets/lib/layui/custom.js"></script>
<script type="text/javascript">
layui.config({base: '../../js/crmdiscuss/'}).use('discussadd');
</script>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
<link href="../../assets/lib/layui/css/layui.css" rel="stylesheet" />
<link href="../../assets/lib/winui/css/winui.css" rel="stylesheet" />
</head>
<body>
<div class="txtcenter" style="margin:0 auto;padding-top:10px;">
<form class="layui-form layui-form-pane" action="" autocomplete="off">
<!-- <div class="layui-form-item">
<div class="layui-inline">
<label class="layui-form-label">状态</label>
<div class="layui-input-inline">
<input type="text" id="state" name="state" placeholder="" class="layui-input" />
</div>
<button type="reset" class="layui-btn layui-btn-primary list-form-search"><language showName="com.skyeye.reset"></language></button>
<button class="layui-btn list-form-search" type="button" id="formSearch"><language showName="com.skyeye.search2"></language></button>
</div>
</div> -->
</form>
</div>
<div class="winui-toolbar">
<div class="winui-tool">
<button id="reloadTable" class="winui-toolbtn"><i class="fa fa-refresh" aria-hidden="true"></i><language showName="com.skyeye.refreshDataBtn"></language></button>
<button id="addBean" class="winui-toolbtn"><i class="fa fa-plus" aria-hidden="true"></i>社区发帖</button>
</div>
</div>
<div style="margin:auto 10px;">
<table id="messageTable" lay-filter="messageTable"></table>
</div>
<script src="../../assets/lib/layui/layui.js"></script>
<script src="../../assets/lib/layui/custom.js"></script>
<script type="text/javascript">
layui.config({base: '../../js/crmdiscuss/'}).use('discussnumlist');
</script>
</body>
</html>
\ No newline at end of file
var layedit;
layui.config({
base: basePath,
version: skyeyeVersion
}).extend({
window: 'js/winui.window'
}).define(['window', 'table', 'jquery', 'winui'], function (exports) {
winui.renderColor();
var index = parent.layer.getFrameIndex(window.name);
layui.use(['form', 'layedit'], function (form) {
var $ = layui.$,
form = layui.form;
layedit = layui.layedit;
// 项目讨论板分类
sysDictDataUtil.showDictDataListByDictTypeCode(sysDictData["pmProjectDiscussType"]["key"], 'select', "typeId", '', form);
layedit.set({
uploadImage: {
url: reqBasePath + "common003", //接口url
type: 'post', //默认post
data: {
type: '13'
}
}
});
var layEditParams = {
tool: [
'html',
'strong', //加粗
'italic', //斜体
'underline', //下划线
'del', //删除线
'addhr',
'|',
'removeformat',
'fontFomatt',
'fontfamily',
'fontSize',
'colorpicker',
'fontBackColor',
'face', //表情
'|', //分割线
'left', //左对齐
'center', //居中对齐
'right', //右对齐
'link', //超链接
'unlink', //清除链接
'code',
'image', //插入图片
'attachment',
'table',
'|',
'fullScreen',
'preview',
'|',
'help'
],
uploadFiles: {
url: reqBasePath + "common003",
accept: 'file',
acceptMime: 'file/*',
size: '20480',
data: {
type: '13'
},
autoInsert: true, //自动插入编辑器设置
done: function(data) {
}
}
};
var completedContent = layedit.build('content', layEditParams);
matchingLanguage();
form.on('submit(formAddBean)', function (data) {
if (winui.verifyForm(data.elem)) {
var params = {
proId: parent.proId,
title: $("#title").val(),
typeId: $("typeId").val()
};
if (isNull(layedit.getContent(completedContent))){
winui.window.msg('请填写发帖内容', {icon: 2, time: 2000});
return false;
} else {
params.content = encodeURIComponent(layedit.getContent(completedContent));
}
AjaxPostUtil.request({url: flowableBasePath + "prodiscuss002", params: params, type: 'json', callback: function (json) {
parent.layer.close(index);
parent.refreshCode = '0';
}});
}
return false;
});
$("body").on("click", "#cancle", function() {
parent.layer.close(index);
});
});
});
\ No newline at end of file
var rowId = ""; // 讨论板id
var proId = ""; // 项目id
layui.config({
base: basePath,
version: skyeyeVersion
}).extend({
window: 'js/winui.window'
}).define(['window', 'table', 'jquery', 'winui', 'form'], function (exports) {
winui.renderColor();
var $ = layui.$,
form = layui.form,
table = layui.table;
table.render({
id: 'messageTable',
elem: '#messageTable',
method: 'post',
url: flowableBasePath + 'prodiscuss006',
where: getTableParams(),
even: true,
page: true,
limits: getLimits(),
limit: getLimit(),
cols: [[
{ title: systemLanguage["com.skyeye.serialNumber"][languageType], type: 'numbers' },
{ field: 'title', title: '主题', align: 'left', width: 300, templet: function (d) {
return '<a lay-event="discussDetails" class="notice-title-click">' + d.title + '</a>';
}},
{ field: 'projectName', title: '所属项目', align: 'left', width: 200 },
{ field: 'createName', title: '作者', align: 'left', width: 120 },
{ field: 'replyNum', title: '回复', align: 'left', width: 80 },
{ field: 'createTime', title: systemLanguage["com.skyeye.createTime"][languageType], align: 'center', width: 120 },
{ field: 'recoveryTime', title: '最后回复时间', align: 'center', width: 120 }
]],
done: function(json) {
matchingLanguage();
initTableSearchUtil.initAdvancedSearch(this, json.searchFilter, form, "请输入项目,主题", function () {
table.reloadData("messageTable", {page: {curr: 1}, where: getTableParams()});
});
}
});
table.on('tool(messageTable)', function (obj) {
var data = obj.data;
var layEvent = obj.event;
if (layEvent === 'discussDetails') { //详情
discussDetails(data);
}
});
// 讨论版详情
function discussDetails(data) {
rowId = data.id;
proId = data.proId;
_openNewWindows({
url: "../../tpl/proprojectdiscuss/proprojectdiscussdetail.html",
title: data.title,
pageId: "discussdetailpage",
maxmin: true,
callBack: function (refreshCode) {
}});
}
form.render();
// 刷新数据
$("body").on("click", "#reloadTable", function() {
loadTable();
});
function loadTable() {
table.reloadData("messageTable", {where: getTableParams()});
}
function getTableParams() {
return $.extend(true, {}, initTableSearchUtil.getSearchValue("messageTable"));
}
exports('proprojectdiscussalllist', {});
});
\ No newline at end of file
var layedit;
layui.config({
base: basePath,
version: skyeyeVersion
}).extend({
window: 'js/winui.window'
}).define(['window', 'table', 'jquery', 'winui'], function (exports) {
winui.renderColor();
layui.use(['form', 'layedit'], function (form) {
var index = parent.layer.getFrameIndex(window.name);
var $ = layui.$,
form = layui.form;
layedit = layui.layedit;
var rowId = parent.rowId;//讨论板id
var leftTemplate = $("#leftTemplate").html();
var rightTemplate = $("#rightTemplate").html();
AjaxPostUtil.request({url: flowableBasePath + "prodiscuss005", params: {rowId: rowId}, type: 'json', callback: function (json) {
$(".disheader").html(json.bean.title);
$(".disdesc").html('' + json.bean.createName + '' + json.bean.createTime + '发布');
$(".discontent").html(json.bean.content);
var jsonStr;
var str = "";
$.each(json.bean.replyString, function(i, item) {
jsonStr = {
bean: item
};
if(item.createId === json.bean.createId){//左侧
str += getDataUseHandlebars(leftTemplate, jsonStr);
} else {//右侧
str += getDataUseHandlebars(rightTemplate, jsonStr);
}
});
$(".disreplay").html(str);
matchingLanguage();
}});
layedit.set({
uploadImage: {
url: reqBasePath + "common003", //接口url
type: 'post', //默认post
data: {
type: '13'
}
}
});
var layEditParams = {
tool: [
'html',
'strong', //加粗
'italic', //斜体
'underline', //下划线
'del', //删除线
'addhr',
'|',
'removeformat',
'fontFomatt',
'fontfamily',
'fontSize',
'colorpicker',
'fontBackColor',
'face', //表情
'|', //分割线
'left', //左对齐
'center', //居中对齐
'right', //右对齐
'link', //超链接
'unlink', //清除链接
'code',
'image', //插入图片
'attachment',
'table',
'|',
'fullScreen',
'preview',
'|',
'help'
],
uploadFiles: {
url: reqBasePath + "common003",
accept: 'file',
acceptMime: 'file/*',
size: '20480',
data: {
type: '13'
},
autoInsert: true, //自动插入编辑器设置
done: function(data) {
}
}
};
var completedContent = layedit.build('content', layEditParams);
form.on('submit(formAddBean)', function (data) {
if (winui.verifyForm(data.elem)) {
var params = {
discussId: rowId,//讨论板id
proId: parent.proId//项目id
};
if (isNull(layedit.getContent(completedContent))) {
winui.window.msg('请填写回复内容', {icon: 2, time: 2000});
return false;
} else {
params.content = encodeURIComponent(layedit.getContent(completedContent));
}
AjaxPostUtil.request({url: flowableBasePath + "prodiscuss003", params: params, type: 'json', callback: function (json) {
winui.window.msg("提交成功", {icon: 1, time: 2000}, function() {
location.reload();
});
}});
}
return false;
});
$("body").on("click", "#cancle", function() {
parent.layer.close(index);
});
});
});
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
<link href="../../assets/lib/layui/css/layui.css" rel="stylesheet" />
<link href="../../assets/lib/winui/css/winui.css" rel="stylesheet" />
</head>
<body>
<div style="padding:20px; margin:0 auto;">
<form class="layui-form" action="" id="showForm" autocomplete="off">
<div class="layui-form-item layui-col-xs12">
<label class="layui-form-label">标题<i class="red">*</i></label>
<div class="layui-input-block">
<input type="text" id="title" name="title" win-verify="required" placeholder="请输入标题" class="layui-input"/>
</div>
</div>
<div class="layui-form-item layui-col-xs12">
<label class="layui-form-label">所属类型<i class="red">*</i></label>
<div class="layui-input-block">
<select id="typeId" lay-search win-verify="required">
</select>
</div>
</div>
<div class="layui-form-item layui-col-xs12">
<label class="layui-form-label">内容<i class="red">*</i></label>
<div class="layui-input-block">
<textarea id="content" name="content" placeholder="请输入内容" class="layui-textarea"></textarea>
</div>
</div>
<div class="layui-form-item layui-col-xs12">
<div class="layui-input-block">
<button class="winui-btn" id="cancle"><language showName="com.skyeye.cancel"></language></button>
<button class="winui-btn" lay-submit lay-filter="formAddBean"><language showName="com.skyeye.save"></language></button>
</div>
</div>
</form>
</div>
<script src="../../assets/lib/layui/layui.js"></script>
<script src="../../assets/lib/layui/custom.js"></script>
<script type="text/javascript">
layui.config({base: '../../js/proprojectdiscuss/'}).use('proprojectdiscussadd');
</script>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
<link href="../../assets/lib/layui/css/layui.css" rel="stylesheet" />
<link href="../../assets/lib/winui/css/winui.css" rel="stylesheet" />
</head>
<body>
<div class="winui-toolbar">
<div class="winui-tool">
<button id="reloadTable" class="winui-toolbtn search-table-btn-right"><i class="fa fa-refresh" aria-hidden="true"></i><language showName="com.skyeye.refreshDataBtn"></language></button>
</div>
</div>
<div style="margin:auto 10px;">
<table id="messageTable" lay-filter="messageTable"></table>
</div>
<script src="../../assets/lib/layui/layui.js"></script>
<script src="../../assets/lib/layui/custom.js"></script>
<script type="text/javascript">
layui.config({base: '../../js/proprojectdiscuss/'}).use('proprojectdiscussalllist');
</script>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
<link href="../../assets/lib/layui/css/layui.css" rel="stylesheet" />
<link href="../../assets/lib/winui/css/winui.css" rel="stylesheet" />
</head>
<body>
<div style="padding:20px; margin:0 auto;">
<div class="layui-col-xs12">
<span class="hr-title">讨论板信息</span><hr>
</div>
<div class="layui-col-xs12">
<div class="disheader">
</div>
<div class="disdesc">
</div>
<div class="discontent">
</div>
</div>
<div class="layui-col-xs12">
<span class="hr-title">回复信息</span><hr>
</div>
<div class="layui-col-xs12">
<div class="disreplay">
</div>
</div>
<div class="layui-col-xs12">
<span class="hr-title">我要回复</span><hr>
</div>
<form class="layui-form" action="" id="showForm" autocomplete="off">
<div class="layui-form-item layui-col-xs12">
<label class="layui-form-label">内容<i class="red">*</i></label>
<div class="layui-input-block">
<textarea id="content" name="content" placeholder="请输入内容" class="layui-textarea"></textarea>
</div>
</div>
<div class="layui-form-item layui-col-xs12">
<div class="layui-input-block">
<button class="winui-btn" id="cancle">关闭</button>
<button class="winui-btn" lay-submit lay-filter="formAddBean">提交</button>
</div>
</div>
</form>
</div>
<!-- 左侧回复 -->
<script type="text/x-handlebars-template" id="leftTemplate">
{{#bean}}
<div class="disreplay-left">
<div class="user-info">
<div class="user-photo">
<img alt="" src="{{createPhoto}}">
</div>
<div class="user-name">
{{createName}}
</div>
</div>
<div class="replay-content">
<div class="replay-time">
回复时间{{createTime}}
</div>
{{{content}}}
</div>
<div class="equal-user-photo"></div>
</div>
{{/bean}}
</script>
<!-- 右侧回复 -->
<script type="text/x-handlebars-template" id="rightTemplate">
{{#bean}}
<div class="disreplay-right">
<div class="equal-user-photo"></div>
<div class="replay-content">
<div class="replay-time">
回复时间{{createTime}}
</div>
{{{content}}}
</div>
<div class="user-info">
<div class="user-photo">
<img alt="" src="{{createPhoto}}">
</div>
<div class="user-name">
{{createName}}
</div>
</div>
</div>
{{/bean}}
</script>
<script src="../../assets/lib/layui/layui.js"></script>
<script src="../../assets/lib/layui/custom.js"></script>
<script type="text/javascript">
layui.config({base: '../../js/proprojectdiscuss/'}).use('proprojectdiscussdetail');
</script>
</body>
</html>
\ No newline at end of file
......@@ -185,24 +185,6 @@ var bossUtil = {
};
// 项目管理相关工具类
var proUtil = {
/**
* 获取我参与的项目列表--- todo 待删除
*
* @param callback 回执函数
*/
queryMyProjectsList: function (callback) {
AjaxPostUtil.request({url: flowableBasePath + "queryMyProjectsList", params: {}, type: 'json', method: "GET", callback: function(json) {
if(typeof(callback) == "function") {
callback(json);
}
}, async: false});
},
};
// 财务模块工具类
var sysIfsUtil = {
......
......@@ -50,7 +50,7 @@
"contactsAuthEnum": {"name": "联系人权限", "className": "skyeye-pro#com.skyeye.contacts.classenum.ContactsAuthEnum", "pageUrl": "../../tpl/contacts/contactsList.html"},
"catalogAuthEnum": {"name": "目录权限", "className": "skyeye-pro#com.skyeye.catalog.classenum.CatalogAuthEnum"},
"documentAuthEnum": {"name": "文档权限", "className": "skyeye-pro#com.skyeye.document.classenum.DocumentAuthEnum", "pageUrl": "../../tpl/document/documentList.html"},
"disCussionAuthEnum": {"name": "讨论帖权限", "className": "skyeye-pro#com.skyeye.discussion.classenum.DisCussionAuthEnum"},
"disCussionAuthEnum": {"name": "讨论帖权限", "className": "skyeye-pro#com.skyeye.discussion.classenum.DisCussionAuthEnum", "pageUrl": "../../tpl/discuss/discussList.html"},
"flowableStateEnum": {"name": "工作流状态", "className": "skyeye-pro#com.skyeye.common.enumeration.FlowableStateEnum"},
"correspondentEnterEnum": {"name": "往来单位类型", "className": "skyeye-pro#com.skyeye.common.enumeration.CorrespondentEnterEnum", "remark": "往来单位的组件中使用"},
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册