Merge remote-tracking branch 'origin/master'
This commit is contained in:
commit
231ca1ca13
File diff suppressed because one or more lines are too long
6
pom.xml
6
pom.xml
|
@ -101,7 +101,11 @@
|
||||||
<artifactId>ms-upgrader</artifactId>
|
<artifactId>ms-upgrader</artifactId>
|
||||||
<version>1.0.17</version>
|
<version>1.0.17</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.github.stuxuhai</groupId>
|
||||||
|
<artifactId>jpinyin</artifactId>
|
||||||
|
<version>1.1.8</version>
|
||||||
|
</dependency>
|
||||||
|
|
||||||
</dependencies>
|
</dependencies>
|
||||||
<build>
|
<build>
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
spring:
|
spring:
|
||||||
datasource:
|
datasource:
|
||||||
url: jdbc:mysql://localhost:3306/msopen?autoReconnect=true&useUnicode=true&characterEncoding=utf8&useSSL=false&allowMultiQueries=true&serverTimezone=Asia/Shanghai
|
url: jdbc:mysql://192.168.0.8:3316/mcms-5.1-3000?autoReconnect=true&useUnicode=true&characterEncoding=utf8&useSSL=false&allowMultiQueries=true&serverTimezone=Asia/Shanghai
|
||||||
username: root
|
username: mcms
|
||||||
password: 123456
|
password: mcms
|
||||||
filters: wall,mergeStat
|
filters: wall,mergeStat
|
||||||
type: com.alibaba.druid.pool.DruidDataSource
|
type: com.alibaba.druid.pool.DruidDataSource
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html>
|
<html>
|
||||||
<head>
|
<head>
|
||||||
<title>造价管理系统</title>
|
<title>MCMS-OPEN</title>
|
||||||
<#include '/include/head-file.ftl'/>
|
<#include '/include/head-file.ftl'/>
|
||||||
<script src="${base}/static/plugins/sockjs/1.4.0/sockjs.min.js"></script>
|
<script src="${base}/static/plugins/sockjs/1.4.0/sockjs.min.js"></script>
|
||||||
<script src="${base}/static/plugins/stomp/2.3.3/stomp.min.js"></script>
|
<script src="${base}/static/plugins/stomp/2.3.3/stomp.min.js"></script>
|
||||||
|
@ -28,7 +28,7 @@
|
||||||
<img :src="ms.base+'/static/ms-admin/5.0.0/images/logo.png'"/>
|
<img :src="ms.base+'/static/ms-admin/5.0.0/images/logo.png'"/>
|
||||||
<div class="class-1" v-show="!collapseMenu">
|
<div class="class-1" v-show="!collapseMenu">
|
||||||
<div class="class-2">v</div>
|
<div class="class-2">v</div>
|
||||||
2.0
|
5.1
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<el-submenu :popper-class="['ms-admin-menu-aside-submenu',theme]" :index="menu.modelId+''"
|
<el-submenu :popper-class="['ms-admin-menu-aside-submenu',theme]" :index="menu.modelId+''"
|
||||||
|
@ -192,12 +192,12 @@
|
||||||
collapseMenu: false, //菜单折叠,false不折叠
|
collapseMenu: false, //菜单折叠,false不折叠
|
||||||
currentTab: '工作台', //当前激活tab的name
|
currentTab: '工作台', //当前激活tab的name
|
||||||
tabIndex: 1,
|
tabIndex: 1,
|
||||||
// markList: ['项目管理', '组织管理', '客户管理', '合同管理', '印章管理', '绩效管理', '权限管理', '系统设置'],
|
// markList:
|
||||||
|
// ['项目管理', '组织管理', '客户管理', '合同管理', '印章管理', '绩效管理', '权限管理', '系统设置'],
|
||||||
markList: [
|
markList: [
|
||||||
{title: "权限管理", icon: "icon-wode", hide: true},
|
{title: "权限管理", icon: "icon-wode", hide: true},
|
||||||
{title: "系统设置", icon: "icon-xitongguanli", hide: true},
|
{title: "系统设置", icon: "icon-xitongguanli", hide: true},
|
||||||
{title: "内容管理", icon: "icon-neirongguanli", hide: true},
|
{title: "内容管理", icon: "icon-neirongguanli", hide: true},
|
||||||
{title: "印章管理", icon: "icon-huizhang", hide: true},
|
|
||||||
{title: "会员中心", icon: "icon-huiyuanzhongxin", hide: true},
|
{title: "会员中心", icon: "icon-huiyuanzhongxin", hide: true},
|
||||||
{title: "自定义管理", icon: "icon-zidingyiguanli", hide: true},
|
{title: "自定义管理", icon: "icon-zidingyiguanli", hide: true},
|
||||||
],
|
],
|
||||||
|
@ -310,18 +310,18 @@
|
||||||
})
|
})
|
||||||
|
|
||||||
},
|
},
|
||||||
connect: function () {
|
<#--connect: function () {-->
|
||||||
var that = this
|
<#-- var that = this-->
|
||||||
var sockjs = new SockJS("/websocket");
|
<#-- var sockjs = new SockJS("/websocket");-->
|
||||||
var stompClient = Stomp.over(sockjs);
|
<#-- var stompClient = Stomp.over(sockjs);-->
|
||||||
stompClient.connect({}, function (frame) {
|
<#-- stompClient.connect({}, function (frame) {-->
|
||||||
stompClient.subscribe('/topic/message/' +${Session.manager_session.managerId}, function (greeting) {
|
<#-- stompClient.subscribe('/topic/message/' +${Session.manager_session.managerId}, function (greeting) {-->
|
||||||
if (greeting.body == "list") {
|
<#-- if (greeting.body == "list") {-->
|
||||||
that.getMessage()
|
<#-- that.getMessage()-->
|
||||||
}
|
<#-- }-->
|
||||||
});
|
<#-- });-->
|
||||||
});
|
<#-- });-->
|
||||||
},
|
<#--},-->
|
||||||
markMenu: function (title, icon) {
|
markMenu: function (title, icon) {
|
||||||
var menu = {
|
var menu = {
|
||||||
title: title,
|
title: title,
|
||||||
|
@ -571,7 +571,7 @@
|
||||||
//setInterval(this.getMessage,3000)
|
//setInterval(this.getMessage,3000)
|
||||||
// 菜单列表
|
// 菜单列表
|
||||||
this.list();
|
this.list();
|
||||||
this.connect();
|
// this.connect();
|
||||||
//获取登录用户信息
|
//获取登录用户信息
|
||||||
this.managerGet();
|
this.managerGet();
|
||||||
var that = this;
|
var that = this;
|
||||||
|
|
|
@ -45,7 +45,7 @@
|
||||||
</div>
|
</div>
|
||||||
<div class="class-7" >
|
<div class="class-7" >
|
||||||
<div class="panel">
|
<div class="panel">
|
||||||
<div class="panel-title">
|
<div v-if="alwaysList.length>0" class="panel-title">
|
||||||
常用功能
|
常用功能
|
||||||
</div>
|
</div>
|
||||||
<div class="v-space"></div>
|
<div class="v-space"></div>
|
||||||
|
|
|
@ -129,4 +129,16 @@ a:link,a:visited,a:active{text-decoration: none; color:#409EFF;}
|
||||||
}
|
}
|
||||||
.ms-scrollbar .el-scrollbar__view{
|
.ms-scrollbar .el-scrollbar__view{
|
||||||
padding-right: 17px;
|
padding-right: 17px;
|
||||||
|
}
|
||||||
|
/**后台管理界面的el-menu通用样式**/
|
||||||
|
.ms-index .el-menu {
|
||||||
|
border-right: none;
|
||||||
|
background-color: unset;
|
||||||
|
height: calc(100vh - 141px);
|
||||||
|
}
|
||||||
|
.ms-index .el-menu-item {
|
||||||
|
white-space: nowrap;
|
||||||
|
text-overflow: ellipsis;
|
||||||
|
overflow: hidden;
|
||||||
|
word-break: break-all;
|
||||||
}
|
}
|
File diff suppressed because one or more lines are too long
|
@ -1,6 +1,3 @@
|
||||||
//ie的兼容
|
|
||||||
|
|
||||||
//Object.assign 对ie对支持
|
|
||||||
if (typeof Object.assign != 'function') {
|
if (typeof Object.assign != 'function') {
|
||||||
Object.assign = function(target) {
|
Object.assign = function(target) {
|
||||||
'use strict';
|
'use strict';
|
||||||
|
@ -20,4 +17,4 @@ if (typeof Object.assign != 'function') {
|
||||||
}
|
}
|
||||||
return target;
|
return target;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -21,127 +21,6 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
*
|
|
||||||
*
|
|
||||||
* @param dom dom 数据对象
|
|
||||||
* @param fileName 文件名
|
|
||||||
* @param data 数据
|
|
||||||
* @param format
|
|
||||||
* var tableNead = {
|
|
||||||
column:[
|
|
||||||
{filed: "projectName",label:"项目名称",width:50},
|
|
||||||
{filed: "managerNickName",label:"成员名称",width:50},
|
|
||||||
{filed: "pdmType",label:"种类",width:50,dictDataOptions: []},
|
|
||||||
{filed: "pdmMoney",label:"收入金额",width:50},
|
|
||||||
],
|
|
||||||
countFiled:["pdmMoney"],
|
|
||||||
};
|
|
||||||
* @returns {*}
|
|
||||||
*/
|
|
||||||
function exportTable(dom, fileName, data,format) {
|
|
||||||
/* 从表生成工作簿对象 */
|
|
||||||
var wb = XLSX.utils.table_to_book(dom);
|
|
||||||
var columnWidth = [];
|
|
||||||
var table = [];
|
|
||||||
var tableHead = [];
|
|
||||||
//初始化头部字段
|
|
||||||
format.column.forEach(function (value) {
|
|
||||||
tableHead.push(value.label);
|
|
||||||
columnWidth.push({
|
|
||||||
"wpx": value.width
|
|
||||||
});
|
|
||||||
});
|
|
||||||
table.push(tableHead);
|
|
||||||
var tableFoot = new Array(format.column.length);
|
|
||||||
|
|
||||||
//遍历,将数据整理重新返回
|
|
||||||
data.map(function (x) {
|
|
||||||
var a = [];
|
|
||||||
|
|
||||||
//遍历中设定需要的那些字段数据
|
|
||||||
format.column.forEach(function (value) {
|
|
||||||
if (x.hasOwnProperty(value.filed)){
|
|
||||||
//替换字典数据
|
|
||||||
if (value.dictDataOptions != undefined && value.dictDataOptions.length > 0){
|
|
||||||
//遍历字典数据,有就替换
|
|
||||||
var dict = value.dictDataOptions.find(function (val) {
|
|
||||||
return x[value.filed] == val.dictValue;
|
|
||||||
})
|
|
||||||
a.push(dict?dict.dictLabel:"");
|
|
||||||
}else {
|
|
||||||
a.push(x[value.filed]);
|
|
||||||
if (format.countFiled != undefined && format.countFiled.indexOf(value.filed) >= 0) {
|
|
||||||
tableFoot[0] = '总计';
|
|
||||||
format.column.findIndex(function (value1, index) {
|
|
||||||
if (value1.filed == value.filed){
|
|
||||||
tableFoot[index] = tableFoot[index] == undefined ? x[value.filed] : tableFoot[index] + x[value.filed];
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}else {
|
|
||||||
a.push("");
|
|
||||||
}
|
|
||||||
});
|
|
||||||
return a
|
|
||||||
}).forEach(function (v, i) {
|
|
||||||
// 遍历整理后的数据加入table
|
|
||||||
table.push(v)
|
|
||||||
});
|
|
||||||
table.push(tableFoot);
|
|
||||||
var sheet = XLSX2.utils.aoa_to_sheet(table);
|
|
||||||
wb.Sheets.Sheet1 = sheet;
|
|
||||||
wb.Sheets.Sheet1['!cols'] = columnWidth;
|
|
||||||
/* 获取二进制字符串作为输出 */
|
|
||||||
var wbout = XLSX.write(wb, {
|
|
||||||
bookType: 'xlsx',
|
|
||||||
bookSST: true,
|
|
||||||
type: "array"
|
|
||||||
});
|
|
||||||
|
|
||||||
try {
|
|
||||||
//保存文件
|
|
||||||
saveAs(
|
|
||||||
//Blob 对象表示一个不可变、原始数据的类文件对象。
|
|
||||||
//Blob 表示的不一定是JavaScript原生格式的数据。
|
|
||||||
//File 接口基于Blob,继承了 blob 的功能并将其扩展使其支持用户系统上的文件。
|
|
||||||
//返回一个新创建的 Blob 对象,其内容由参数中给定的数组串联组成。
|
|
||||||
new Blob([wbout], {type: "application/octet-stream"}),
|
|
||||||
//设置导出文件名称
|
|
||||||
fileName + '.xlsx'
|
|
||||||
);
|
|
||||||
} catch (e) {
|
|
||||||
if (typeof console !== "undefined") console.log(e, wbout);
|
|
||||||
}
|
|
||||||
return wbout;
|
|
||||||
};
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 打印方法
|
|
||||||
* @param name 模板的名字
|
|
||||||
* @param data 需要绑定的数据
|
|
||||||
*/
|
|
||||||
function printFile(name,data){
|
|
||||||
if (name != "" && name != null && name != undefined){
|
|
||||||
ms.http.get(ms.manager+ "/mprint/printTemplate/get.do", {
|
|
||||||
name: name
|
|
||||||
}).then(function (res) {
|
|
||||||
if(data != null && data != undefined && res.data != null){
|
|
||||||
printVue.open(res.data,data);
|
|
||||||
}else {
|
|
||||||
console.error("未定义数据,或没有模板数据");
|
|
||||||
}
|
|
||||||
}).catch(function (err) {
|
|
||||||
console.log(err);
|
|
||||||
});
|
|
||||||
}else {
|
|
||||||
console.error("未定义模板名称");
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 列表数据转化为树形结构的列表
|
* 列表数据转化为树形结构的列表
|
||||||
* @param source 数据源list
|
* @param source 数据源list
|
||||||
|
@ -162,9 +41,8 @@
|
||||||
branchArr.length > 0 ? father[children] = branchArr : '';
|
branchArr.length > 0 ? father[children] = branchArr : '';
|
||||||
return !father[parentId] || father[parentId] == '0' || father[parentId] == null ;
|
return !father[parentId] || father[parentId] == '0' || father[parentId] == null ;
|
||||||
});
|
});
|
||||||
} //验证是否为子集
|
}
|
||||||
|
//验证是否为子集
|
||||||
|
|
||||||
function childValidate(sourceList, id, parentId, key, parentKey) {
|
function childValidate(sourceList, id, parentId, key, parentKey) {
|
||||||
var data = sourceList.find(function (x) {
|
var data = sourceList.find(function (x) {
|
||||||
return x[key] == parentId;
|
return x[key] == parentId;
|
||||||
|
@ -178,26 +56,6 @@
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* 科学计数改成普通计数
|
|
||||||
* @param num
|
|
||||||
* @returns {string|*}
|
|
||||||
*/
|
|
||||||
function getFullNum(num){
|
|
||||||
//处理非数字
|
|
||||||
if(isNaN(num)){return num};
|
|
||||||
//处理不需要转换的数字
|
|
||||||
var str = ''+num;
|
|
||||||
if(!/e/i.test(str)){return num;};
|
|
||||||
return (num).toFixed(18).replace(/\.?0+$/, "");
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 数字转金额
|
|
||||||
* */
|
|
||||||
function moneyFormatter(cellValue) {
|
|
||||||
return accounting.formatMoney(cellValue, '¥',2)
|
|
||||||
}
|
|
||||||
//日期处理
|
//日期处理
|
||||||
var date = {
|
var date = {
|
||||||
//格式化时间
|
//格式化时间
|
||||||
|
@ -367,14 +225,10 @@
|
||||||
getParameter: getParameter,
|
getParameter: getParameter,
|
||||||
treeData:treeData,
|
treeData:treeData,
|
||||||
childValidate:childValidate,
|
childValidate:childValidate,
|
||||||
moneyFormatter:moneyFormatter,
|
|
||||||
exportTable:exportTable,
|
|
||||||
printFile:printFile,
|
|
||||||
date: date,
|
date: date,
|
||||||
array: array,
|
array: array,
|
||||||
log: log,
|
log: log,
|
||||||
convert: convert,
|
convert: convert,
|
||||||
getFullNum: getFullNum,
|
|
||||||
store: store,
|
store: store,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue