diff --git a/rwk-admin/src/main/java/com/rwk/web/controller/ability/RwkMeetingController.java b/rwk-admin/src/main/java/com/rwk/web/controller/ability/RwkMeetingController.java index 5830b24..75e2d44 100644 --- a/rwk-admin/src/main/java/com/rwk/web/controller/ability/RwkMeetingController.java +++ b/rwk-admin/src/main/java/com/rwk/web/controller/ability/RwkMeetingController.java @@ -71,13 +71,22 @@ public class RwkMeetingController extends BaseController return prefix + "/meetingView"; } + /** + * 人员选择 + */ + @GetMapping("/userSelect") + public String userSelect(ModelMap mmap) + { + getJoinPeople(mmap); + return prefix + "/userSelect"; + } + /** * 新增教育培训 */ @GetMapping("/add") public String add(ModelMap mmap) { - getJoinPeople(mmap); return prefix + "/add"; } @@ -104,7 +113,6 @@ public class RwkMeetingController extends BaseController { RwkMeeting rwkMeeting = rwkMeetingService.selectRwkMeetingById(id); mmap.put("rwkMeeting", rwkMeeting); - getJoinPeople(mmap); return prefix + "/edit"; } diff --git a/rwk-admin/src/main/resources/static/ajax/libs/layer/css/layer.css b/rwk-admin/src/main/resources/static/ajax/libs/layer/css/layer.css index 0803bbe..e072174 100644 --- a/rwk-admin/src/main/resources/static/ajax/libs/layer/css/layer.css +++ b/rwk-admin/src/main/resources/static/ajax/libs/layer/css/layer.css @@ -284,3 +284,8 @@ html #layuicss-layer{display: none; position: absolute; width: 1989px;} .layui-layer-gray .layui-layer-btn a {background: #fff; border-color: #e9e7e7; color: #333} .layui-layer-gray .layui-layer-btn .layui-layer-btn1 {background: #c9c5c5} .layui-layer-tab .layui-layer-content {width: 100%} +.layui-layer-blue[type=dialog] {min-width: 280px} +.layui-layer-blue .layui-layer-title {background: #f8f8f8; color: #333; border: 0} +.layui-layer-blue .layui-layer-btn {padding: 5px 10px 10px; text-align: right; border-top: 1px solid #e9e7e7} +.layui-layer-blue .layui-layer-btn a {background: #3376E1; border-color: #e9e7e7; color: #ffffff;padding: 3px 16px;height: auto;border-radius: 4px;} +.layui-layer-blue .layui-layer-btn .layui-layer-btn1 {background: #ffffff;color: #000000} diff --git a/rwk-admin/src/main/resources/static/ajax/libs/layer/theme/moon/style.css b/rwk-admin/src/main/resources/static/ajax/libs/layer/theme/moon/style.css index d3a3a56..df585d9 100644 --- a/rwk-admin/src/main/resources/static/ajax/libs/layer/theme/moon/style.css +++ b/rwk-admin/src/main/resources/static/ajax/libs/layer/theme/moon/style.css @@ -79,6 +79,12 @@ body .layer-ext-moon .layui-layer-setwin .layui-layer-close1,body .layer-ext-moo body .layer-ext-moon .layui-layer-setwin .layui-layer-close1:hover,body .layer-ext-moon .layui-layer-setwin .layui-layer-close2:hover, body .layui-layer-tab .layui-layer-setwin .layui-layer-close1:hover,body .layui-layer-tab .layui-layer-setwin .layui-layer-close2:hover { background: url(default.png) -48px 0; } +.layui-layer-blue .layui-layer-setwin .layui-layer-close1,body .layer-ext-moon .layui-layer-setwin .layui-layer-close2, body .layui-layer-tab .layui-layer-setwin .layui-layer-close1,body .layui-layer-tab .layui-layer-setwin .layui-layer-close2 { + background: url(default.png) 0 0; +} +.layui-layer-blue .layui-layer-setwin .layui-layer-close1:hover,body .layer-ext-moon .layui-layer-setwin .layui-layer-close2:hover, body .layui-layer-tab .layui-layer-setwin .layui-layer-close1:hover,body .layui-layer-tab .layui-layer-setwin .layui-layer-close2:hover { + background: url(default.png) -48px 0; +} body .layer-ext-moon .layui-layer-padding{padding-top: 24px;} body .layer-ext-moon .layui-layer-btn { text-align: right; diff --git a/rwk-admin/src/main/resources/static/css/main.css b/rwk-admin/src/main/resources/static/css/main.css index 9a906af..018fe2a 100644 --- a/rwk-admin/src/main/resources/static/css/main.css +++ b/rwk-admin/src/main/resources/static/css/main.css @@ -22,7 +22,7 @@ body, html { } .box { background-color: #FFF; - border-radius: 9px; + border-radius: 5px; box-shadow: 0 0 5px 2px rgba(0, 0, 255, 0.05); padding: 10px; margin: 10px; @@ -30,31 +30,31 @@ body, html { .arrange{ display: flex; height: 100px; - border-radius: 5px; + border-radius: 20px; align-items: center; margin: 0 10px; } -.div1{ +.arrange.div1{ color: #ffffff; flex-direction: column; justify-content: center; width: calc(30% - 20px); - background-color: #28619C; + background: url('../img/main/bgColor1.png') center/cover no-repeat; } -.div2{ +.arrange.div2{ width: calc(34% - 20px); - padding-left: 20px; - background-color: #FFF7F2; + padding-left: 85px; + background: url('../img/main/bgColor2.png') center/cover no-repeat; } -.div3{ +.arrange.div3{ width: calc(36% - 20px); - padding-left: 20px; - background-color: #E9F2FD; + padding-left: 85px; + background: url('../img/main/bgColor3.png') center/cover no-repeat; } .cut{ - color: #000000; + color: #9C9C9C; background-color: #F7F7F7; - padding: 5px 10px 5px 10px; + padding: 3px 10px 3px 10px; border: 1px solid #E2E2E2; } .cut:first-child{ @@ -262,4 +262,29 @@ body, html { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; +} +.item { + display: flex; + align-items: center; + padding: 10px; +} +.left-content { + width: 75%; + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; +} +.right-time { + width: 25%; + text-align: center; + color: #999; +} +.ball{ + display: inline-block; + width: 10px; + height: 10px; + border-radius: 50%; + background-color: #CCCCCC; + margin-left: 10px; + margin-right: 10px; } \ No newline at end of file diff --git a/rwk-admin/src/main/resources/static/css/use/css1.css b/rwk-admin/src/main/resources/static/css/use/css1.css index e0151f5..e1fe50e 100644 --- a/rwk-admin/src/main/resources/static/css/use/css1.css +++ b/rwk-admin/src/main/resources/static/css/use/css1.css @@ -104,8 +104,8 @@ #table-show tr td{ border: none; } -.width-30{ - width: 30%; +.width-40{ + width: 40%; font-size: 18px; color: #0042a4; } diff --git a/rwk-admin/src/main/resources/static/img/main/bgColor1.png b/rwk-admin/src/main/resources/static/img/main/bgColor1.png new file mode 100644 index 0000000..6f3e7e2 Binary files /dev/null and b/rwk-admin/src/main/resources/static/img/main/bgColor1.png differ diff --git a/rwk-admin/src/main/resources/static/img/main/bgColor2.png b/rwk-admin/src/main/resources/static/img/main/bgColor2.png new file mode 100644 index 0000000..2d8bc6f Binary files /dev/null and b/rwk-admin/src/main/resources/static/img/main/bgColor2.png differ diff --git a/rwk-admin/src/main/resources/static/img/main/bgColor3.png b/rwk-admin/src/main/resources/static/img/main/bgColor3.png new file mode 100644 index 0000000..9b09745 Binary files /dev/null and b/rwk-admin/src/main/resources/static/img/main/bgColor3.png differ diff --git a/rwk-admin/src/main/resources/static/img/main/presidentOne.png b/rwk-admin/src/main/resources/static/img/main/presidentOne.png deleted file mode 100644 index 7b6e9f8..0000000 Binary files a/rwk-admin/src/main/resources/static/img/main/presidentOne.png and /dev/null differ diff --git a/rwk-admin/src/main/resources/static/img/main/presidentTwo.png b/rwk-admin/src/main/resources/static/img/main/presidentTwo.png deleted file mode 100644 index a7cbf0a..0000000 Binary files a/rwk-admin/src/main/resources/static/img/main/presidentTwo.png and /dev/null differ diff --git a/rwk-admin/src/main/resources/static/ruoyi/css/meeting.css b/rwk-admin/src/main/resources/static/ruoyi/css/meeting.css index a25d615..d215024 100644 --- a/rwk-admin/src/main/resources/static/ruoyi/css/meeting.css +++ b/rwk-admin/src/main/resources/static/ruoyi/css/meeting.css @@ -1,80 +1,56 @@ -.tr-meeting tr{ - border: 1px solid #CCCCCC; - border-radius: 10px; - height: 170px; +.daj_right { + margin-left: 92px; + width: 60%; } - -.meeting-introdution { - height: 32%!important; - width: 100%; +.daj_left_two{ + width: calc(14% + 1px); + text-align: left!important; } -.meeting-content{ - height: 100%; +.daj_right_two { + width: 80%; + margin-left: 40px; } -.div-display{ - display: inline-block; +.form-horizontal .col-md-6{ + padding: 0; } -.inline-meeting-div{ - display: inline-block; - /*margin-top: -20px;*/ +.specialSign{ + top: 3px; + margin-right: 3px; } -.meeting-pieChart1{ - height:40%; - width: 30%; - margin-top: 50px; +.userTable{ + width:100%; + border-collapse: collapse; + border: 1px solid #d7dff2; } -.pieChart1{ - height:100%; - width: 100%; +.userTable th{ + font-size: 20px; + font-weight: normal; } -.meeting-add-input{ - border: 0px; - outline: none; +.userTable th,.userTable td{ + border-bottom: 1px solid #d7dff2; + padding: 5px; + text-align: center; } -.meeting-add-header{ - height: 40px; - width: 100%; - font-size: 25px; +.progress{ + height: 20px; + overflow: hidden; + background-color: #f5f5f5; + border-radius: 0; } -.meeting-add-content { - width: 98%; - height: 200px; - font-size: 18px; - font-family: 仿宋; - resize: none; - border: none; - outline: none; +.progress-bar{ + font-size: 16px; } -.meeting-add-introdution { - height: 40%!important; - width: 100%; +.progress-bar-success{ + text-align: right; + border-radius: 0 10px 10px 0; + background: linear-gradient(to right, #66ffff, #4661FF); } -.meeting-add-font{ - font-size: 18px; - font-family: 仿宋; +.progress-bar-success span{ + margin-right: 4px; } -.meeting-btn-add{ - font-size: 20px; - height: 40px; - text-align: center!important; - align-content: center; +.signNormal{ + color: #00B83F; } -.meeting-add-files{ - /*border: 1px solid #5897fb;*/ - height: 173px; - width: 100%; -} - -.meeting-edit-files{ - /*border: 1px solid #5897fb;*/ - height: 173px; - width: 35%; - margin-left: 20px; -} -.meeting-table tr td{ - border: 1px solid black; -} - -.meeting-table tr{ - width: 100%; +.signFail{ + color: #a94442; } \ No newline at end of file diff --git a/rwk-admin/src/main/resources/templates/main.html b/rwk-admin/src/main/resources/templates/main.html index a20a81c..9cd24ca 100644 --- a/rwk-admin/src/main/resources/templates/main.html +++ b/rwk-admin/src/main/resources/templates/main.html @@ -17,37 +17,38 @@
-

知联会职务

+

知联会职务情况

-

政治面貌情况

+

数据分析

-
-
+
-
+
-
知联会干部在库数
+
同年教育培训次数
5321
-
-
-
会长
-
1
+
+
平均参会率
+
+ 95% +
-
-
-
副会长
-
5
+
+
未参会率
+
+ 5% +
@@ -55,42 +56,58 @@

近期培训活动

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
***************************活动 2024-01-09
***************************活动 2024-01-09
***************************活动 2024-01-09
***************************活动 2024-01-09
***************************活动 2024-01-09
***************************活动 2024-01-09
***************************活动 2024-01-09
+
+
+
+ + 这两位“七一勋章”获得者在市委中心组在市委中心组市委中心组测试测试测试测试测试测试测试 +
+
2024-12-10
+
+
+
+ + 这两位“七一勋章”获得者在市委中心组在市委中心组市委中心组测试测试测试测试测试测试测试 +
+
2024-12-10
+
+
+
+ + 这两位“七一勋章”获得者在市委中心组在市委中心组市委中心组测试测试测试测试测试测试测试 +
+
2024-12-10
+
+
+
+ + 这两位“七一勋章”获得者在市委中心组在市委中心组市委中心组测试测试测试测试测试测试测试 +
+
2024-12-10
+
+
+
+ + 这两位“七一勋章”获得者在市委中心组在市委中心组市委中心组测试测试测试测试测试测试测试 +
+
2024-12-10
+
+
+
+ + 这两位“七一勋章”获得者在市委中心组在市委中心组市委中心组测试测试测试测试测试测试测试 +
+
2024-12-10
+
+
+
+ + 这两位“七一勋章”获得者在市委中心组在市委中心组市委中心组测试测试测试测试测试测试测试 +
+
2024-12-10
+
-
@@ -115,7 +132,7 @@
-
+

单位类别情况

@@ -149,26 +166,39 @@ // console.log(result); // } // }); + var color = ['#105DA5', '#D1E3F2','#578DC0','#67ACD4']; + var color1 = ['#FFAC74', '#5FCBF2','#FF8ED0','#9786FF']; var array1 = [ {name:'正局级XX人',value:235}, {name:'副局级XX人',value:274}, {name:'正处级XX人',value:310}, {name:'正科级XX人',value:335} ]; var grid = {left: '10%', right: '6%', bottom: '3%', top:'6%'} + array1.some(function (item,index){ + item.itemStyle = { + color: color[index] + } + }) //饼图1 pieChartMethod('pieChart1',array1,"职务层次情况",'80%',"",grid,"",true); array1 = [ - {name:'民革',value:20}, {name:'无党派',value:20},{name:'群众',value:20}, - {name:'台盟',value:20}, {name:'致公党',value:20},{name:'九三学社',value:20}, - {name:'农工党',value:20}, {name:'民进',value:20},{name:'民建',value:20}, {name:'民盟',value:20} + {name:'数据1',value:1200}, {name:'数据2',value:600},{name:'数据3',value:800}, {name:'数据4',value:1000}, ]; + //对比例进行单独处理 + handleAccount(array1); //饼图2 - pieChartMethod('pieChart2',array1,"政治面貌",['45%', '75%'],"",grid,"",true); - //阶梯图 - var data = [ - { value: 8, name: '副部级' }, { value: 23, name: '正局级' }, { value: 100, name: '副局级' }, - { value: 699, name: '正处级' }, { value: 1640, name: '副处级' } - ] - funnelPlot('plotChart3',data); + var legend = { + orient: 'vertical', right: '10%', bottom: "15%", icon: 'circle', formatter: function(name) { + var obj = array1.find(item => item.name === name); + return `数据统计:{name|${name}}{value|${obj.value}件}{account|${obj.account}}%`; + }, + textStyle: {rich: {name: {padding: [0, 10, 0, 0]},value:{width: 50}}} + } + array1.some(function (item,index){ + item.itemStyle = { + color: color1[index] + } + }) + pieChartMethod('pieChart2',array1,"数据分析",['45%', '75%'],['25%', '50%'],grid,legend,false,""); //柱状图 var yAxis = { type: 'category', @@ -180,29 +210,22 @@ name: '男', type: 'bar', data: [123, 76, 66, 21], - emphasis: { - focus: 'series' - }, - label: { - show: true, - position: 'right' - } + emphasis: {focus: 'series'}, + itemStyle: {normal: {color: '#105DA5'}}, + label: {show: true, position: 'right'} }, { name: '女', type: 'bar', data: [95, 91, 73, 29], - emphasis: { - focus: 'series' - }, label: { - show: true, - position: 'right' - } + emphasis: {focus: 'series'}, + itemStyle: {normal: {color: '#D1E3F2'}}, + label: {show: true, position: 'right'} }] //柱状图1 var grid1 = {left: '15%', right: '6%', bottom: '1%', top:'13%'}; barChartMethod("barChart1",{trigger: 'axis'},{data: ['男', '女'],left: '3%',},{type: 'value', axisLine: {show: false,},axisLabel: {show: false,}, axisTick: {show: false,},splitLine: {show: false}},yAxis,grid1,series); - grid1 = {left: '15%', right: '6%', bottom: '12%', top:'4%'}; + grid1 = {left: '15%', right: '6%', bottom: '12%', top:'6%'}; series = [{ name: '数据', type: 'bar', @@ -210,7 +233,7 @@ itemStyle: { normal: { color: function(params) { - var colors = ['#34b3a0', '#ff6347']; + var colors = ['#105DA5', '#D1E3F2']; return colors[params.dataIndex % 2]; } } @@ -229,44 +252,97 @@ array1 = [ {name:'博士',value:2}, {name:'硕士',value:3},{name:'学士',value:5}, {name:'其他',value:1} ]; + array1.some(function (item,index){ + item.itemStyle = { + color: color[index] + } + }); pieChartMethod('pieChart3',array1,"学位情况",'80%',"",grid,"",true,itemStyle); //柱状图3 - var data1 = [120, 200, 150, 80, 70, 110, 130,120, 200, 150, 80, 70, 110, 130]; - var maxHeight = Math.max(...data1); + var data1 = [ + {name:'行政机关',value:120}, + {name:'人大机关',value:200}, + {name:'政协机关',value:150}, + {name:'民主党派机关',value:80}, + {name:'司法机关',value:70}, + {name:'高校',value:110}, + {name:'科研院所',value:130}, + {name:'其他事业单位',value:120}, + {name:'群团组织',value:40}, + {name:'在沪央企',value:30}, + {name:'地方国企',value:20}, + {name:'中央在沪',value:10}, + {name:'部队',value:5} + ]; + var names = data1.map(item => item.name); + var mainType = ['行政机关', '人大机关', '政协机关','民主党派机关', '司法机关','高校','科研院所','其他事业单位']; + var otherType = ['群团组织', '在沪央企', '地方国企','中央在沪', '部队']; + var barColor = ['#205ACF','#1890FF','#2FAB34','#E44C4C','#FFAB18']; var xAxis = { - type: 'category', data: ['行政机关', '人大机关', '政协机关', '民主党派机关', '司法机关', '高校', '科研院所','其他事业单位','群团组织','在沪央企','地方国企','中央在沪单位','部队','其他'], - axisTick: {show: false,}, - axisLabel: { - interval: 0 // 强制显示所有标签 - } + type: 'category', data: mainType.concat(['其他']), + axisTick: {show: false,} } yAxis = { type: 'value', - axisLine: {show: false,}, axisTick: {show: false,},splitLine: {show: false} - } - var series1 = [{ - name: '灰色背景', - type: 'bar', - data: data1.map(value => maxHeight), // 使用最大高度填充 - itemStyle: { - color: '#ccc', // 灰色 - opacity: 0.5 // 可选:使灰色柱子稍微透明 + name:"单位:个", + nameLocation: 'end', + nameTextStyle: { + padding: [0, 0, 0, -30] }, - barGap: '-100%', // 使灰色柱子与实际数据柱子重叠 - tooltip: { - show: false //禁用灰色柱子的 tooltip + axisTick: { inside: true,alignWithLabel: true},splitLine: {lineStyle: {type: 'dashed'}} + } + var series1 = names.map((name, index) => { + var valueArray = [0,0,0,0,0,0,0,0,0]; + if (mainType.includes(name)){ + valueArray[index] = (data1.filter(item => item.name == name))[0].value; + return { + name, + type: 'bar', + stack: 'total', + barWidth: 50, + data: valueArray, + itemStyle: { + color: '#1890FF' + } + }; + }else { + valueArray[valueArray.length - 1] = (data1.filter(item => item.name == name))[0].value; + return { + name, + type: 'bar', + stack: 'total', + barWidth: 30, + emphasis: {focus: 'series'}, + data: valueArray, + itemStyle: { + color: barColor[otherType.indexOf(name)] + } + } + } + }); + var tooltip = { + trigger: 'axis', + backgroundColor: '#ffffff', + textStyle: { + color: 'black' }, - silent: true //禁用柱子的悬停和点击事件 - }, { - name: '单位类别', - type: 'bar', - data: data1, - itemStyle: { - color: '#73C9C8' // 实际数据的颜色 + borderColor: '#F5F5F5', + borderWidth: 1, + extraCssText: 'box-shadow: 2px 4px 6px rgba(0, 0, 0, 0.1);', + axisPointer: {type: 'none'}, + formatter: function (params) { + var tooltipContent = `${params[0].name}
`; + params.forEach(param => { + if (param.value >0){ + tooltipContent += ` + ${param.seriesName}: ${param.value}
`; + } + }) + return tooltipContent; } - }]; - var grid3 = {left: '5%', right: '2%', bottom: '13%', top:'6%'} - barChartMethod("barChart3","","",xAxis,yAxis,grid3,series1); + } + var grid3 = {left: '5%', right: '2%', bottom: '13%', top:'18%'}; + barChartMethod("barChart3",tooltip,"",xAxis,yAxis,grid3,series1); } //饼图-id-数据-名称-弧度-位置-grid-legend-是否需要线 @@ -281,9 +357,15 @@ name: name, type: 'pie', data: array, + label:{ + color:'#000000' + }, labelLine: { - length: 8, - length2: 4 + length: 6, + length2: 4, + lineStyle: { + color: '#DDDDDD' + } }, emphasis: { itemStyle: { @@ -305,64 +387,10 @@ pieChart.setOption(pieOption); } - //漏斗图 - function funnelPlot(id,data){ - var myChart = echarts.init(document.getElementById(id)); - var changeData = handleData(data); - var option = { - // tooltip: { - // trigger: 'item', - // formatter: function(params) { - // return params.name + ': ' + data[params.dataIndex].value; - // } - // }, - series: [{ - type: 'funnel', - left: '5%', - top: 10, - bottom: 10, - width: '90%', - min: 0, - max: 10, - minSize: '0%', - maxSize: '100%', - sort: 'ascending', - gap: 2, - label: { - show: true, - position: 'inside' - }, - labelLine: { - length: 10, - lineStyle: { - width: 1, - type: 'solid' - } - }, - itemStyle: { - borderColor: '#fff', - borderWidth: 1 - }, - emphasis: { - label: { - fontSize: 20 - } - }, - data: changeData - } - ] - }; - myChart.setOption(option); - } - //柱状图-id--tooltip-legend-xAxis-yAxis-grid-series function barChartMethod(id,tooltip,legend,xAxis,yAxis,grid,series){ var barChart = echarts.init(document.getElementById(id)); - var barOption = { - tooltip: { - - }, - }; + var barOption = {tooltip: {},}; if (tooltip) barOption.tooltip = tooltip; if (legend) barOption.legend = legend; if (xAxis) barOption.xAxis = xAxis; @@ -372,13 +400,18 @@ barChart.setOption(barOption); } - // 处理数据集合 - function handleData(data){ - return data.map((item,index) => { - return { - name: item.name+" "+item.value+" 人", - value: (index+1)*2 - }; + //对比例进行单独处理 + function handleAccount(data){ + // 计算总值 + var total = data.reduce((sum, item) => sum + item.value, 0); + // 计算整数比例 + var percentages = data.map(item => Math.floor((item.value / total) * 100)); + // 计算调整后的最后一个比例,以确保总和为 100% + var sumOfPercentages = percentages.reduce((sum, value) => sum + value, 0); + // 调整最后一个比例 + percentages[percentages.length - 1] += (100 - sumOfPercentages); + data.some(function (item,index){ + item.account = percentages[index]; }); } diff --git a/rwk-admin/src/main/resources/templates/system/meeting/add.html b/rwk-admin/src/main/resources/templates/system/meeting/add.html index a352c0d..cb8ba1f 100644 --- a/rwk-admin/src/main/resources/templates/system/meeting/add.html +++ b/rwk-admin/src/main/resources/templates/system/meeting/add.html @@ -8,52 +8,82 @@
-
-
- -
-
-
-
- +
+ +
+
-
-
-
- -
-
- +
+
+
+ +
+
-
-
- -
-
- +
+
+
+
+
+ +
+ +
+
+
+
+
+
+ +
+
+ +
-
- + + +
+
+ +
+
+ + + + + + + + + + + + + +
厨房零配件维修清单及报价(三月至五月).docx非密 + + +
厨房零配件维修清单及报价(二月).docx机密保密期限:2025-01-14 + + +
-
-
-
- -
+
+
+
+
+ +
+
+
@@ -65,31 +95,15 @@ var prefix = ctx + "system/meeting"; var editFlag = [[${@permission.hasPermi('system:meeting:edit')}]]; var removeFlag = [[${@permission.hasPermi('system:meeting:remove')}]]; - - // 左右互选控件 - $('.dual_select').bootstrapDualListbox({ - nonSelectedListLabel: '未邀请人员', - selectedListLabel: '已邀请人员', - preserveSelectionOnMove: 'moved', - moveOnSelect: false, // 出现一个剪头,表示可以一次选择一个 - filterTextClear: '搜索重置', - moveSelectedLabel: "添加", - moveAllLabel: '添加所有', - removeSelectedLabel: "移除", - removeAllLabel: '移除所有', - filterPlaceHolder:"模糊搜索", - infoTextEmpty : "无用户可选择", - infoTextFiltered:"搜索到 {0} 总共 {1}", - infoText: '共{0}个', - showFilterInputs: true,// 是否带搜索 - selectorMinimalHeight: 160 + var userList = []; + $("#form-meeting-add").validate({ + focusCleanup: true }); function submitHandler() { if ($.validate.form()) { - var userList = getSelectedItems("duallistbox_demo"); if (userList.length === 0) { - $.modal.alertWarning("请至少选择一条记录"); + $.modal.alertWarning("请至少选择一个参与人员"); return; } var array = $('#form-meeting-add').serializeArray(); @@ -106,59 +120,34 @@ } } - // 获取双重多选中的值 - function getSelectedItems(id) { - var selectedItems = []; - // 获取选中的选项 - $("#"+id+" option:selected").each(function() { - selectedItems.push({ - personnelName: $(this).text(), - isSign: 0, - personnelId: $(this).val(), - mobilePhone:$(this).attr("data_phone") - }); - }); - return selectedItems; - } - - //附件表格加载 - $(function() { + function meetManAdd(){ var options = { - pagination:false, - sidePagination: "client", - virtualScroll: true, - showHeader:false, - height:160, - modalName: "文件信息", - data:[ - {id:1,name:"<<关于**********教育文件>>"}, - {id:2,name:"<<关于**********活动文件>>"}, - {id:4,name:"<<关于**********活动文件>>"}, - {id:5,name:"<<关于**********活动文件>>"}, - ], - columns: [ - { - field: 'id', - title: '主键id', - visible: false - }, - { - field: 'name', - title: '文件标题' - }, - { - title: '操作', - align: 'center', - formatter: function(value, row, index) { - var actions = []; - actions.push('下载 '); - actions.push('删除'); - return actions.join(''); - } - }] + title: '人员选择', + url: prefix + "/userSelect", + skin: 'layui-layer-blue', + btn: ['保存','取消'], + width: Math.floor(window.innerWidth), + height: Math.floor(window.innerHeight)+110, + maxmin: false, + full: false, + yes: function(index, layero) { + var iframeWin = layero.find('iframe')[0]; + userList = iframeWin.contentWindow.getSelectedItems(); + $.modal.close(index); + showByUser(); + } }; - $.table.init(options); - }); + $.modal.openOptions(options); + } + + //根据用户数据集合进行回显 + function showByUser(){ + var html = ""; + if (userList && userList.length>0){ + html = userList.map(item => item.personnelName).join(','); + } + $("#invite").html(html); + } \ No newline at end of file diff --git a/rwk-admin/src/main/resources/templates/system/meeting/edit.html b/rwk-admin/src/main/resources/templates/system/meeting/edit.html index 4a1688b..29af0a2 100644 --- a/rwk-admin/src/main/resources/templates/system/meeting/edit.html +++ b/rwk-admin/src/main/resources/templates/system/meeting/edit.html @@ -8,53 +8,83 @@
- -
- -
-
-
-
- +
+ +
+
-
-
-
- -
-
- +
+
+
+ +
+
-
-
- -
-
- +
+
+
+
+
+ +
+ +
+
+
+
+
+
+ +
+
+ +
-
- + + +
+
+ +
+
+ + + + + + + + + + + + + +
厨房零配件维修清单及报价(三月至五月).docx非密 + + +
厨房零配件维修清单及报价(二月).docx机密保密期限:2025-01-14 + + +
-
-
-
- -
+
+
+
+
+ +
+
+
@@ -64,36 +94,16 @@ \ No newline at end of file diff --git a/rwk-admin/src/main/resources/templates/system/meeting/meeting.html b/rwk-admin/src/main/resources/templates/system/meeting/meeting.html index 1de72f9..236ae81 100644 --- a/rwk-admin/src/main/resources/templates/system/meeting/meeting.html +++ b/rwk-admin/src/main/resources/templates/system/meeting/meeting.html @@ -113,15 +113,15 @@ var options = { title: '新增培训活动', url: prefix + "/add", - skin: 'layui-layer-gray', - btn: ['关闭'], + skin: 'layui-layer-blue', + btn: ['保存','取消'], width: 1400, height: 800, maxmin: false, full: false, - yes: function (index, layero) { - $.modal.close(index); - $.table.refresh(); // 关闭后刷新表格数据(不刷新页面) + yes: function(index, layero) { + var iframeWin = layero.find('iframe')[0]; + iframeWin.contentWindow.submitHandler(index, layero); } }; $.modal.openOptions(options); @@ -133,15 +133,15 @@ var options = { title: '修改培训活动', url: url, - skin: 'layui-layer-gray', - btn: ['关闭'], + skin: 'layui-layer-blue', + btn: ['保存', '取消'], width: 1400, height: 800, maxmin: false, full: false, - yes: function (index, layero) { - $.modal.close(index); - $.table.refresh(); // 关闭后刷新表格数据(不刷新页面) + yes: function(index, layero) { + var iframeWin = layero.find('iframe')[0]; + iframeWin.contentWindow.submitHandler(index, layero); } }; $.modal.openOptions(options); @@ -158,7 +158,7 @@ height: 800, maxmin: false, full: false, - yes: function (index, layero) { + yes: function (index) { $.modal.close(index); } }; diff --git a/rwk-admin/src/main/resources/templates/system/meeting/meetingView.html b/rwk-admin/src/main/resources/templates/system/meeting/meetingView.html index 61248f0..ef56f3d 100644 --- a/rwk-admin/src/main/resources/templates/system/meeting/meetingView.html +++ b/rwk-admin/src/main/resources/templates/system/meeting/meetingView.html @@ -2,175 +2,123 @@ +
- - - - - - - -
-

[[*{meetingName}]]

-
-
-
-
[[*{meetingContent}]]
-
培训时间:[[*{meetingDate}]]
-
-
-
- -
+ +
+
+ +
+ +
+
-
-
+
+
+
+ +
+
[[*{meetingContent}]]
+
培训时间:[[*{meetingDate}]]
+
+
-
-
+
+
+
+ +
+
+
签到人数
+
+
+ 50 +
+
+
100
+
+
+
+ + + + + + + + + + + +
姓名签到情况手机号
张三已签到手机号测试
+
+
+ + + + + + + + + + + +
厨房零配件维修清单及报价(三月至五月).docx + +
厨房零配件维修清单及报价(二月).docx + +
+
+
+
+
-
\ No newline at end of file diff --git a/rwk-admin/src/main/resources/templates/system/meeting/userSelect.html b/rwk-admin/src/main/resources/templates/system/meeting/userSelect.html new file mode 100644 index 0000000..3562400 --- /dev/null +++ b/rwk-admin/src/main/resources/templates/system/meeting/userSelect.html @@ -0,0 +1,72 @@ + + + + + + + + + +
+
+
+
+ +
+
+
+ +
+
+
+
+
+
+ + + + + \ No newline at end of file