123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428 |
- {extend name="public/layout" /} {block name="title"}日报{/block} {block name="body"}
- <link rel="stylesheet" type="text/css" href="__STATIC__/css/csspc.css" />
- <link rel="stylesheet" type="text/css" href="__STATIC__/css/redesign.css" />
- <style>
- html,
- body {
- display: block;
- min-width: 1100px;
- width: 100%;
- height: 100%;
- overflow: hidden;
- }
- body {
- padding: 15px;
- box-sizing: border-box;
- }
- .layui-table thead tr,
- .layui-table-header {
- background-color: #D8E6F1 !important;
- }
- .layui-fluid {
- display: block;
- box-shadow: 0 0 4px 0 #B6CADE;
- border-radius: 5px;
- margin: 0;
- background-color: #ffffff;
- overflow: hidden;
- padding: 0;
- box-sizing: border-box;
- position: relative;
- width: 100%;
- }
- .layui-tab {
- padding: 28px 24px 0px 30px;
- width: 100%;
- margin: 0;
- height: auto;
- font-size: 16px;
- line-height: 16px;
- }
- .layui-tab-title {
- display: block;
- border-color: #eee;
- padding-bottom: 5px;
- }
- .layui-tab-title li {
- font-size: 16px;
- position: relative;
- line-height: 16px;
- padding: 0;
- margin-left: 30px;
- min-width: auto;
- }
- .layui-tab-title li:first-child {
- margin-left: 0;
- }
- .layui-tab-title .layui-this:after {
- border-width: 0;
- }
- .layui-tab-title li a {
- display: block;
- width: 100%;
- height: 100%;
- padding-bottom: 11px;
- position: relative;
- }
- .layui-tab-title .layui-this::before {
- content: ' ';
- display: block;
- width: 100%;
- height: 3px;
- background-color: #249efb;
- position: absolute;
- left: 0;
- bottom: 4px;
- }
- .flex-row {
- display: flex;
- }
- .selectBox {
- height: 40px;
- border: 1px solid #f5f5f5;
- width: 180px;
- font-size: 14px;
- color: #CCCCCC;
- }
- .selectBox>option {
- color: #000;
- }
- .layui-btn-xs,.layui-btn-xs:hover {
- color: #249efb;
- background-color: #fff;
- border: 1px solid #249efb;
- padding: 0px 10px;
- }
- .layui-card-body{padding:10px 30px !important;}
- </style>
- <body>
- <div class="layui-fluid">
- <!-- <div class="layui-tab">
- <ul class="layui-tab-title">
- <li class="layui-this" style="padding-bottom: 11px;">
- 汇报
- </li>
- <li style="padding-bottom: 0;">
- <a href="{:url('dailyWork/sent')}">我发送的</a>
- </li>
- <li style="padding-bottom: 0;">
- <a href="{:url('dailyWork/received')}">我收到的</a>
- </li>
- </ul>
- </div>
- <div>
- <div class="layui-work-time">
- <ul class="layui-work-time-ul">
- <li id="addDay">
- <div class="layui-work-time-btn">日</div>
- <p>写日报</p>
- </li>
- <li id="addWeek">
- <div class="layui-work-time-btn">周</div>
- <p>写周报</p>
- </li>
- <li id="addMonth">
- <div class="layui-work-time-btn">月</div>
- <p>写月报</p>
- </li>
- <li class="layui-mode">
- <div class="layui-work-time-btn">....</div>
- <p>更多</p>
- </li>
- </ul>
- </div>
- </div> -->
- <div class="layui-card-body">
- <div class="layui-form layui-card-header layuiadmin-card-header-auto" style="padding: 0;">
- <div class="layui-form-item">
- <div style="float:right;">
- <div class="layui-inline">
- <label class="layui-form-label">部门</label>
- <div class="layui-input-inline">
- <select name="org" id="org" lay-filter="org_select">
- <option value=""></option>
- </select>
- </div>
- </div>
- <div class="layui-inline" style="margin-right: 0px;">
- <label class="layui-form-label">汇报人</label>
- <div class="layui-input-inline">
- <select name="emp_id" id="employee" lay-filter="employee_select">
- <option value=""></option>
- </select>
- </div>
- </div>
- <div class="layui-inline" style="margin-right: 0px;">
- <label class="layui-form-label" style="width:100px;">汇报类型</label>
- <div class="layui-input-inline">
- <select name="type" lay-filter="type" id="type">
- <option value="">请选择</option>
- <option value="day">日报</option>
- <option value="week">周报</option>
- <option value="month">月报</option>
- </select>
- </div>
- </div>
- <div class="layui-inline" style="margin-right:0;">
- <button class="layui-btn layuiadmin-btn-list submitbtn" lay-submit
- lay-filter="LAY-app-contlist-search">
- <i class="layui-icon layui-icon-search layuiadmin-button-btn"></i>
- </button>
- </div>
- </div>
- </div>
- </div>
- <div>
- <table id="label-table" lay-filter="labelTable"></table>
- </div>
- </div>
- </div>
- </body>
- {/block} {block name="js"}
- <script type="text/html" id="op">
- <a class="layui-btn layui-btn-xs" lay-event="detail">详情</a>
- </script>
- <script>
- var orgids_str = '{:$orgids}';
- var orgids = JSON.parse(orgids_str);
- var org = eval('{$org|raw}');
- layui.config({
- base: '__LAYUI__/',
- urlbase: '/sys'
- }).extend({
- index: 'lib/index' //主入口模块
- }).use(['index', 'table', 'upload','form'], function () {
- var $ = layui.$,
- upload = layui.upload,
- form = layui.form,
- table = layui.table;
- $('#org').append(setOrgOption(org, ''));
- form.render('select')
- form.on('select(org_select)', function (data) {
- var val = data.value;
- requestEmployee(val);
- });
- document.onkeydown=function(event){
- var e = event || window.event || arguments.callee.caller.arguments[0];
- if(e && e.keyCode==13){
- $(".submitbtn").trigger("click");
- }
- };
- requestEmployee('')
- function requestEmployee(val) {
- $.ajax({
- url: '{:url("org/employee")}'
- , data: { org:val,limit:10000}
- , type: 'get'
- , success: function (res) {
- if (res.code == 0) {
- $('#employee').html('<option value="">请选择</option>');
- res.data.forEach(element => {
- $('#employee').append('<option value="' + element.id + '">' + element.name + '</option>');
- });
- form.render('select')
- }
- }
- });
- }
- function setOrgOption(opt, sj) {
- var html = '';
- opt.forEach(element => {
- if (orgids.length > 0) {
- if (in_array(element.id, orgids)) {
- html += '<option value="' + element.id + '">' + sj + element.title + '</option>';
- }
- }
- if (element && element.children.length > 0) html += setOrgOption(element.children, sj + '-');
- });
- return html;
- }
- function in_array(search, array) {
- for (var i in array) {
- if (array[i] == search) {
- return true;
- }
- }
- return false;
- }
- table.render({
- elem: '#label-table',
- autoSort: false,
- url: "{:url('daily_work/list')}",
- height: 'full-150',
- cols: [
- [{
- type: 'numbers',
- field: 'id',
- width: 80,
- title: '序号',
- sort: true
- }, {
- field: 'name',
- title: '汇报人',
- align:'center'
- }, {
- field: 'type',
- title: '汇报类型',
- align:'center'
- },{
- field: 'reporting_object',
- title: '汇报对象',
- align:'center'
- }, {
- field: 'date',
- title: '汇报时间',
- align:'center'
- },{
- field: 'org_name',
- title: '部门',
- align:'center'
- }, {
- field: 'current_work',
- title: '(今日/本周/本月)工作'
- }, {
- field: 'next_plan',
- title: '(明日/下周/下月)计划'
- }, {
- templet: '#op',
- title: '操作',
- width: 100,
- align:'center',
- fixed: 'right'
- }]
- ],
- done: function (res, curr, count) {
- // 如果是异步请求数据方式,res即为你接口返回的信息。
- $("[data-field='type']").children().each(function () {
- if ($(this).text() == 'day') {
- $(this).text('日报');
- } else if ($(this).text() == 'week') {
- $(this).text('周报');
- } else if ($(this).text() == 'month') {
- $(this).text('月报');
- } else {
- $(this).text('汇报类型');
- }
- });
- $("[data-field='reporting_object']").children().each(function (v) {
- if (v == 0) {
- $(this).text('汇报对象')
- return;
- }
- let reporting_object = res.data[v-1].reporting_object;
- let html = '';
- if (reporting_object && !!reporting_object.length) {
- html = reporting_object.map(v => {
- return `<span>${v.name}、</span>`
- }).join('');
- $(this).html(html)
- } else {
- $(this).text('汇报对象')
- }
- // debugger
- });
- },
- page: true,
- limit: 30,
- text: '对不起,加载出现异常!'
- });
- //监听列表
- table.on('tool(labelTable)', function (obj) {
- var data = obj.data;
- if (obj.event === 'detail') {
- opendaily(data.id)
- }
- });
- function opendaily(id) {
- layer.open({
- type: 2,
- title: ['汇报详情', 'color:#333333;background-color:#D8E6F1;'],
- content: '{:url("dailyWork/details")}?category=sent&id=' + id,
- resize: false,
- area: ['80%', '80%'],
- });
- }
- //监听搜索
- form.on('submit(LAY-app-contlist-search)', function (data) {
- var field = data.field;
- //执行重载
- table.reload('label-table', {
- where: field
- , page: {
- curr: 1
- }
- });
- });
- //写日报
- $('#addDay').click(function () {
- layer.open({
- type: 2,
- title: ['日报', 'color:#333333;background-color:#D8E6F1;'],
- content: '{:url("dailyWork/submit_work")}?type=day',
- resize: false,
- area: ['80%', '80%'],
- btn: ['提交'],
- yes: function (index, layero) {
- //点击确认触发 iframe 内容中的按钮提交
- var submit = layero.find('iframe').contents().find("#submit");
- submit.click();
- }
- });
- })
- //写周报
- $('#addWeek').click(function () {
- layer.open({
- type: 2,
- title: ['周报', 'color:#333333;background-color:#D8E6F1;'],
- content: '{:url("dailyWork/submit_work")}?type=week',
- resize: false,
- area: ['80%', '80%'],
- btn: ['确定'],
- yes: function (index, layero) {
- //点击确认触发 iframe 内容中的按钮提交
- var submit = layero.find('iframe').contents().find("#submit");
- submit.click();
- }
- });
- })
- //写月报
- $('#addMonth').click(function () {
- layer.open({
- type: 2,
- title: ['月报', 'color:#333333;background-color:#D8E6F1;'],
- content: '{:url("dailyWork/submit_work")}?type=month',
- resize: false,
- area: ['80%', '80%'],
- btn: ['确定'],
- yes: function (index, layero) {
- //点击确认触发 iframe 内容中的按钮提交
- var submit = layero.find('iframe').contents().find("#submit");
- submit.click();
- }
- });
- })
- });
- </script>
- {/block}
|