123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002 |
- <%@ page language="java" contentType="text/html; charset=UTF-8"
- pageEncoding="UTF-8" %>
- <%@ taglib prefix="shiro" uri="http://shiro.apache.org/tags" %>
- <%@ page isELIgnored="false" %>
- <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
- <%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
- <%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
- <!DOCTYPE html>
- <html>
- <head>
- <meta charset="utf-8"/>
- <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"/>
- <meta name="viewport"
- content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0"/>
- <title>项目信息</title>
- <style>
- .right_title {
- margin-bottom: 20px;
- }
- .layui-table-cell {
- height: 42px !important;
- /*line-height: 42px !important;*/
- }
- .report-big {
- display: flex;
- justify-content: space-between;
- margin-top: 51px;
- }
- .report-title {
- height: 14px;
- margin-bottom: 19px;
- font-weight: 500;
- font-size: 14px;
- color: #999999;
- line-height: 28px;
- }
- .report-box {
- display: flex;
- flex-wrap: wrap;
- width: 390px;
- cursor: pointer;
- }
- .report-box-month {
- width: 270px;
- }
- .report-item {
- margin: 0 -1px -1px 0;
- padding: 8px;
- box-sizing: border-box;
- background: #F5F5F5;
- border: 1px solid #CCCCCC;
- }
- .report-item-title {
- display: flex;
- align-items: center;
- justify-content: center;
- width: 100%;
- font-weight: 500;
- font-size: 14px;
- /*line-height: 29px;*/
- color: #333333;
- }
- .report-item-status {
- /*width: 80px;*/
- /*height: 30px;*/
- padding: 0px 5px;
- margin-left: 10px;
- font-weight: 300;
- font-size: 12px;
- color: #FFFFFF;
- /*text-align: center;*/
- line-height: 1.3;
- background: #FFAA01;
- border-right: 3px;
- }
- .report-status-done {
- background: #00BB55;
- }
- .report-item-time {
- width: 100%;
- /*margin-top: 20px;*/
- font-weight: 300;
- font-size: 14px;
- color: #999999;
- text-align: center;
- /*height: 24px;*/
- /*line-height: 29px;*/
- }
- .report-done {
- background: rgba(44, 110, 198, 0.1);
- border: 1px solid #1C56A3;
- margin: 0 -1px -1px 0;
- z-index: 1;
- }
- .report-done .report-item-title,
- .report-done .report-item-time {
- color: #1C56A3;
- }
- .year-big {
- width: 100%;
- height: 480px;
- /* background: rgba(28, 86, 163, 0.1);*/
- }
- .year-title {
- display: flex;
- justify-content: space-between;
- align-items: center;
- margin: 13px 19px 0 24px;
- box-sizing: border-box;
- }
- .layui-colla-content {
- background: rgba(28, 86, 163, 0.1);
- }
- .year-title-text {
- font-weight: 500;
- font-size: 16px;
- color: #1C56A3;
- }
- .year-choose-box {
- display: flex;
- align-items: center;
- justify-content: space-between;
- padding: 16px 100px;
- background: rgba(28, 86, 163, 0.1);
- }
- .jihuazj {
- display: flex;
- align-items: center;
- margin-left: 20px;
- }
- .year-choose {
- padding-top: 15px;
- padding-left: 7px;
- background: rgba(28, 86, 163, 0.1);
- width: auto;
- height: 40px;
- border-radius: 3px 3px 0px 0px;
- border-bottom: 1px solid #C9D8E9;
- cursor: pointer;
- }
- .year-choose input {
- height: 100%;
- font-size: 14px;
- padding-left: 20px;
- cursor: pointer;
- }
- .year-choose-intro {
- width: auto;
- font-size: 14px;
- color: #333333;
- line-height: 24px;
- text-align: left;
- }
- .year-choose-value {
- margin-left: 24px;
- font-weight: 500;
- font-size: 16px;
- color: #1C56A3;
- }
- .year-choose-unit {
- font-size: 14px;
- }
- .button-active {
- height: 102% !important;
- font-weight: bold !important;
- color: #2B6EC6 !important;
- background: #E7EEF6 !important;
- padding-bottom: 1px !important;
- border-bottom: 0 !important;
- }
- .button-item {
- margin-bottom: -1px;
- padding: 0 10px;
- width: auto;
- margin-left: -1px;
- height: 100%;
- background: #F5F5F5;
- border-radius: 0px 0px 0px 0px;
- border: 1px solid #C9D8E9;
- border-bottom: none;
- font-weight: 300;
- font-size: 14px;
- color: #999999;
- cursor: pointer;
- }
- .process-content,
- .progress-big {
- width: 71%;
- display: inline-block;
- }
- .process-content-right,
- .progress-big {
- width: 28%;
- display: inline-block;
- overflow-y: scroll;
- height: 400px;
- }
- .layui-table-header .layui-table th {
- /*height: 60px;*/
- background: rgba(28, 86, 163, 0.2);
- font-size: 14px;
- color: #1C56A3;
- /*font-weight: bold;*/
- }
- .layui-table tr {
- /*height: 51px;*/
- border-bottom: 1px solid rgba(28, 86, 163, 0.15);
- }
- .layui-table-view .layui-table td {
- font-size: 14px;
- color: #333333;
- background-color: #E7EEF6;
- }
- </style>
- </head>
- <jsp:include page="../common/common-meta-include.jsp"></jsp:include>
- <jsp:include page="../common/common-js-include.jsp"></jsp:include>
- <jsp:include page="../common/common-css-include.jsp"></jsp:include>
- <body>
- <div id="app"></div>
- <template id="template">
- <div class="layui-layout layui-layout-admin"
- style="padding: 0 20px;flex-direction: row;justify-content: space-between">
- <input type="hidden" id="subId" value="${subId }"/>
- <!-- 内容区域 -->
- <div class="process-content">
- <div class="year-big">
- <form class="layui-form" lay-filter="formData2" action=""
- onkeydown="if(event.keyCode==13){return false;}">
- <div class="year-choose">
- <button type="button" class="button-item" :class="item==planYear?'button-active':''"
- v-for="(item,index) in yearsArray" :key="index" @click="clickYear(item)">{{item}}年度
- </button>
- </div>
- <div class="year-choose-box">
- <%-- <div class="jihuazj">
- <div class="year-choose-intro">年初计划累计</div>
- <div class="year-choose-value">
- {{planAmt}}
- <span class="year-choose-unit">(万元)</span>
- </div>
- </div>
- <div class="jihuazj">
- <div class="year-choose-intro">月度计划累计</div>
- <div class="year-choose-value">
- {{amtYear}}
- <span class="year-choose-unit">(万元)</span>
- </div>
- </div>
- <div class="jihuazj">
- <div class="year-choose-intro">月实际累计</div>
- <div class="year-choose-value">
- {{amtRt}}
- <span class="year-choose-unit">(万元)</span>
- </div>
- </div>--%>
- </div>
- <div class="layui-colla-content layui-show" style="height: auto;padding: 0">
- <div class="table_progress" style="padding-top: 0;">
- <table id="table1" lay-filter="test"></table>
- </div>
- </div>
- </form>
- </div>
- </div>
- <div class="process-content-right">
- <div class="year-choose">
- <button type="button" class="button-item" :class="item.id==reportItem?'button-active':''"
- v-for="(item,index) in reportArray" :key="index" @click="clickReport(item)">{{item.label}}
- </button>
- </div>
- <div class="table-box" id="divWeek" style="margin-top: 20px">
- <div id="popInfo">
- <div class="pop_con_form" style="width:100%;padding:0 40px;box-sizing:border-box;">
- <form class="layui-form">
- <div class="layui-form-item">
- <label class="layui-form-label" style="width:95px;">请选择周</label>
- <div class="layui-input-block">
- <select name="week" id="week" lay-filter="week">
- <option value="">--请选择--</option>
- </select>
- </div>
- </div>
- <div class="layui-form-item">
- <label class="layui-form-label" style="width:95px;">项目进展情况</label>
- <div class="layui-input-block">
- {{weekInfo.content}}
- </div>
- </div>
- <div class="layui-form-item">
- <div class="table_box">
- <div class="layui-form-label required" style="width:95px;">附件信息</div>
- <ul class="img_ls">
- <li v-for="(item, index) in images" :key="index">
- <div class="img" :title="showTitle(item)">
- <%-- //:layer-src="picShow1(item.fileAddre)"--%>
- <img :id="item.fileAddre" :src="picShow(item.fileAddre,item.fileType)"
- @click="showImage(item.fileAddre,item.fileType, item.createTime)"
- :alt="item.fileName"/>
- <div class="download_icon"
- @click="download(item.fileAddre,item.fileName)"></div>
- </div>
- {{item.fileName}}
- </li>
- <%-- <li class="add" id="addPic">
- <div class="bg"><i class="layui-icon layui-icon-add-circle"></i></div>
- </li>--%>
- </ul>
- </div>
- </div>
- </form>
- </div>
- </div>
- </div>
- <div class="table-box" id="divMonth" style="margin-top: 20px;display: none">
- <div>
- <div class="pop_con_form" style="width:100%;padding:0 40px;box-sizing:border-box;">
- <form class="layui-form">
- <div class="layui-form-item">
- <label class="layui-form-label" style="width:95px;">请选择月</label>
- <div class="layui-input-block">
- <%-- <input class="layui-input" readonly="readonly" id="year">--%>
- <select name="month" id="month" lay-filter="month">
- <option value="">--请选择--</option>
- <%-- <template v-for="(item, index) in weekData">
- <option value="item.kjMonth">{{item.kjMonth}}</option>
- </template>--%>
- </select>
- </div>
- </div>
- <div class="layui-form-item">
- <label class="layui-form-label" style="width:95px;">项目进展情况</label>
- <div class="layui-input-block">
- {{monthInfo.content}}
- </div>
- </div>
- <div class="layui-form-item">
- <div class="table_box">
- <div class="layui-form-label required" style="width:95px;">附件信息</div>
- <ul class="img_ls">
- <li v-for="(item, index) in monthImages" :key="index">
- <div class="img" id="attachDiv" :title="showTitle(item)">
- <%-- //:layer-src="picShow1(item.fileAddre)"--%>
- <img :id="item.fileAddre" :src="picShow(item.fileAddre,item.fileType)"
- @click="showImage(item.fileAddre,item.fileType, item.createTime)"
- :alt="item.fileName"/>
- <div class="download_icon"
- @click="download(item.fileAddre,item.fileName)"></div>
- </div>
- {{item.fileName}}
- </li>
- <%-- <li class="add" id="addPic">
- <div class="bg"><i class="layui-icon layui-icon-add-circle"></i></div>
- </li>--%>
- </ul>
- </div>
- </div>
- </form>
- </div>
- </div>
- </div>
- </div>
- </div>
- </template>
- <script>
- new Vue({
- el: "#app",
- template: "#template",
- data: {
- weekInfo: {},
- weekData: [],
- monthInfo: {},
- monthData: [],
- monthImages: [],
- winH: 0,
- collapse: false,
- tabActive: 2,
- active: 4, // 左侧菜单选中项
- imgLs: 10,
- images: [],
- amtYear: 0,
- yearsArray: [],
- reportArray: [{id: 'week', label: '周报'}, {id: 'month', label: "月报"}],
- reportItem: 'week',
- planYear: "",
- planAmt: 0,
- rtAmt: 0,
- },
- mounted() {
- this.init()
- },
- methods: {
- init() {
- this.winH = document.body.clientHeight
- const {laydate, table} = layui;
- var self = this;
- laydate.render({
- elem: '#year',
- type: 'year',
- value: new Date().format("yyyy"),
- done: function (value) {
- self.loadData(value);
- }
- })
- this.getYearArray(${beginYear}, ${endYear})
- this.loadData(new Date().format("yyyy"));
- },
- clickReport(item) {
- this.reportItem = item.id
- if (item.id === 'week') {
- $("#divWeek").show()
- $("#divMonth").hide()
- }
- if (item.id === 'month') {
- $("#divMonth").show()
- $("#divWeek").hide()
- }
- //alert(JSON.stringify(item))
- },
- loadTable(data) {
- layui.table.render({
- elem: '#table1', // 指定原始表格元素选择器(推荐id选择器)
- even: true,
- limit: 12,
- cols: [[ // 设置表头
- {field: 'kjMonth', title: '月份', width: '80', totalRowText: '合计'},
- {
- field: 'amtPlan',
- totalRow: true,
- title: '年初计划投资(万元)<br><span style="font-size: 12px;">项目单位填写</span>',
- width: '15%',
- templet: function (row) {
- if (row.amtPlan != null && row.amtPlan != 'undefined') {
- return "<span>" + row.amtPlan + "</span>";
- } else {
- return "";
- }
- }
- },
- {
- field: 'amt',
- totalRow: true,
- title: '月度动态计划投资(万元)<br><span style="font-size: 12px;">项目单位填写</span>',
- width: '15%',
- templet: function (row) {
- if (row.amt != null && row.amt != 'undefined') {
- var amtLast = row.amtLast ? row.amtLast : 0;
- return "<span>本月实际:" + row.amt + "</span><br><span>下月计划:" + amtLast + "</span>";
- } else {
- return "";
- }
- }
- },
- {
- field: 'assignAmt',
- title: '月度任务(万元)<br><span style="font-size: 12px;">行业部门填写</span>',
- align: 'center',
- type: 'string',
- width: '14%',
- totalRow: true,
- templet: function (row) {
- if (row.assignAmt) {
- return "<span>" + row.assignAmt + "</span>";
- } else {
- return "";
- }
- }
- },
- {
- field: 'remark',
- title: '备注',
- align: 'center',
- type: 'string',
- width: '14%',
- templet: function (row) {
- if (row.remark) {
- return "<span>" + row.remark + "</span>";
- } else {
- return "";
- }
- }
- },
- {
- field: 'amtRt',
- title: '入统金额(万元)<br><span style="font-size: 12px;">行业部门填写</span>',
- align: 'center',
- type: 'string',
- width: '14%',
- totalRow: true,
- templet: function (row) {
- if (row.amtRt) {
- return "<span>" + row.amtRt + "</span>";
- } else {
- return "";
- }
- }
- },
- {
- field: 'amtPldz',
- title: '月偏离值(万元)',
- align: 'center',
- type: 'string',
- width: '14%',
- templet: function (row) {
- if (row.amtRt != null && row.amtRt + '' != '') {
- return '<span>' + (parseInt(row.amt || 0) - parseInt(row.amtRt)) + '</span>';
- } else {
- if (row.amt != null && row.amt + '' != '') {
- return '<span>' + (row.amt || 0) + '</span>';
- } else {
- return "";
- }
- }
- }
- },
- {
- field: 'amtPld',
- title: '月偏离度',
- align: 'center',
- type: 'string',
- width: '12%',
- templet: function (row) {
- if (row.assignAmt != null && row.assignAmt != 0 && row.assignAmt + '' != '' && row.amtRt != null && row.amtRt != 0 && row.amtRt + '' != '') {
- return '<span>' + ((parseInt(row.amtRt || 0) - parseInt(row.assignAmt)) * 100 / parseInt(row.assignAmt)).toFixed(2) + '%</span>';
- } else {
- return "";
- }
- }
- }
- ]],
- totalRow: true, //开启合计行
- fixed: true,
- height: window.screen.availHeight - 450,
- data: data
- , done: function (res, curr, count) {
- var sumAmt = 0;
- var sumLast = 0;
- for (let i = 0; i < res.data.length; i++) {
- var row = res.data[i];
- sumLast = sumLast + (row.amtLast ? row.amtLast : 0);
- sumAmt = sumAmt + (row.amt ? row.amt : 0);
- }
- /* if (row.amt != null && row.amt != 'undefined') {
- var amtLast = row.amtLast ? row.amtLast : 0;
- return "<span>本月实际:" + row.amt + "</span><br><span>下月计划:" + amtLast + "</span>";
- } else {
- return "";
- }*/
- var text = "<span>本月实际:" + sumAmt + "</span><br><span>下月计划:" + sumLast + "</span>";
- this.elem.next().find('.layui-table-total td[data-field="amt"] .layui-table-cell').html(text);
- }
- })
- var self = this;
- layui.table.on('edit(test)', function (obj) { //注:edit是固定事件名,test是table原始容器的属性 lay-filter="对应的值"
- console.log(obj.value); //得到修改后的值
- console.log(obj.field); //当前编辑的字段名
- console.log(obj.data); //所在行的所有相关数据
- var subId = $("#subId").val();
- var oldText = $(this).prev().text();
- if (obj.field === 'assignAmt') {
- if (obj.value != '' && !isNumber(obj.value)) {
- App.msg.warn("请填写数字");
- $(this).val(oldText);
- obj.value = oldText;
- obj.data[obj.field] = oldText;
- obj.update(obj.data);
- }
- var list = [{
- amt: obj.data.amtPlan,
- assignAmt: obj.data.assignAmt,
- remark: obj.data.remark,
- remark: obj.data.remark,
- ymonth: obj.data.kjMonth,
- id: obj.data.planId
- }]
- App.postJson("/api/amtPlan/save", {subId: subId, amtPlans: list}, function (res) {
- if (res.success) {
- layer.msg("成功", {icon: 6, time: 1000});
- self.monthAmt(self.planYear);
- }
- });
- }
- if (obj.field === 'remark') {
- var list = [{
- amt: obj.data.amtPlan,
- assignAmt: obj.data.assignAmt,
- remark: obj.data.remark,
- remark: obj.data.remark,
- ymonth: obj.data.kjMonth,
- id: obj.data.planId
- }]
- App.postJson("/api/amtPlan/save", {subId: subId, amtPlans: list}, function (res) {
- if (res.success) {
- layer.msg("成功", {icon: 6, time: 1000});
- self.monthAmt(self.planYear);
- }
- });
- }
- if (obj.field === 'amtRt') {
- if (obj.value != '' && !isNumber(obj.value)) {
- App.msg.warn("请填写数字");
- $(this).val(oldText);
- obj.value = oldText;
- obj.data[obj.field] = oldText;
- obj.update(obj.data);
- }
- //保存投资金额
- var data = {};
- data.subId = subId
- data.amtRt = obj.value
- data.year = obj.data.kjMonth.substring(0, 4)
- data.month = obj.data.kjMonth.substring(4, 6)
- data.date = "01"
- data.beginDate = data.year + "-" + data.month + "-" + data.date
- data.endDate = null
- // alert(JSON.stringify(data))
- App.postJson("/api/monthReport/saveReportRtAmt", data, function (res) {
- if (res.success) {
- layer.msg("保存成功");
- self.monthAmt(self.planYear);
- }
- });
- }
- });
- },
- loadTable_weekReport(data) {
- layui.table.render({
- elem: '#table_zb', // 指定原始表格元素选择器(推荐id选择器)
- even: true,
- limit: data.length,
- cols: [[ // 设置表头
- {field: 'kjMonth', title: '周报期间', width: '30%'},
- // {field: 'amt', title: '本月实际投资', width: '20%', templet: function(row){
- // if(row.amt){
- // return "<span>"+row.amt+"万元</span>";
- // }else{
- // return "";
- // }
- // }},
- {field: 'content', title: '项目进展情况', width: '70%'}
- ]],
- data: data,
- fixed: true,
- height: window.screen.availHeight - 350,
- })
- },
- /* loadTable_amtPlan: function (data) {
- var self = this;
- layui.table.render({
- elem: '#amtPlan', // 指定原始表格元素选择器(推荐id选择器)
- even: true,
- cols: [[ // 设置表头
- {type: 'numbers', title: '序号'},
- {field: 'ymonth', title: '年月', minWidth: 100},
- {field: 'amt', title: '当月资金(万元)', minWidth: 100},
- {field: 'remark', title: '备注', minWidth: 100, edit: 'text'}
- ]],
- fixed: true,
- height: window.screen.availHeight - 350,
- width:'50%',
- limit: data.length,
- data: data
- });
- }, */
- monthAmt: function (year) {
- var self = this;
- var subId = $("#subId").val();
- App.postJson("/api/amtPlan/getBySubId", {subId: subId, year: year}, function (res) {
- if (res.success) {
- self.planAmt = res.data.planAmt;
- //self.loadTable_amtPlan(res.data.list || []);
- /* setTimeout(function () {
- layui.form.render();
- }, 200); */
- App.postJson("/api/rptCont/getListBySub", {subId: subId, year: year}, function (re) {
- if (res.success) {
- self.amtYear = re.data.amtYear;
- self.amtRt = re.data.amtRt;
- var datas = self.getMonthArray(year);
- for (let j = 0; j < datas.length; j++) {
- for (let i = 0; i < re.data.data.length; i++) {
- if (re.data.data[i].kjMonth == datas[j].kjMonth) {
- datas[j] = re.data.data[i];
- }
- }
- for (let i = 0; i < res.data.list.length; i++) {
- if (res.data.list[i].ymonth == datas[j].kjMonth) {
- datas[j].amtPlan = res.data.list[i].amt;
- datas[j].assignAmt = res.data.list[i].assignAmt;
- datas[j].remark = res.data.list[i].remark;
- datas[j].remark = res.data.list[i].remark;
- datas[j].planId = res.data.list[i].id;
- }
- }
- }
- self.loadTable(datas);
- const now = new Date();
- var curMonth = now.format("yyyyMM");
- self.monthInfo = datas.find((item) => {
- return item.kjMonth === curMonth
- })
- if (!self.monthInfo) {
- self.monthInfo = datas[0]
- }
- self.monthData = datas
- self.createMonthSelect(datas)
- self.setMonthFileValue(self.monthInfo.subId, self.monthInfo.year, self.monthInfo.beginDate)
- }
- });
- }
- });
- },
- setMonthFileValue: function (subId, year, kj_month) {
- if (!kj_month) {
- this.monthImages = [];
- return
- }
- var self = this;
- /* var date = new Date();*/
- /* alert(kj_month)
- alert(kj_month.split("-")[0])
- alert(kj_month.split("-")[1])
- date.setYear(kj_month.split("-")[0]);
- date.setMonth(kj_month.split("-")[1]+1);
- date.setDate(1);
- alert(date.format("yyyy-MM-dd"));*/
- App.postJson("/api/monthReport/getByInfo", {
- subId: subId,
- year: year,
- startDate: kj_month.split("-")[0] + "-" + kj_month.split("-")[1] + "-" + "01"
- }, function (res) {
- setTimeout(() => {
- self.monthImages = res.data || [];
- layui.form.render();
- }, 300);
- });
- // this.setValueEdit(row);
- },
- createMonthSelect() {
- $("#month").html();
- //alert(curMonth);
- var options = '<option value="">--请选择--</option>'
- for (let i = 0; i < this.monthData.length; i++) {
- if (this.monthInfo.id === this.monthData[i].id) {
- options += '<option value="' + this.monthData[i].id + '" selected>' + this.monthData[i].kjMonth + '</option>'
- } else {
- options += '<option value="' + this.monthData[i].id + '">' + this.monthData[i].kjMonth + '</option>'
- }
- }
- $("#month").html(options);
- layui.form.render();
- var self = this;
- layui.form.on('select(month)', function (data) {
- self.monthInfo = self.monthData.find((item) => {
- return item.id === data.value
- })
- if (self.monthInfo) {
- self.setMonthFileValue(self.monthInfo.subId, self.monthInfo.year, self.monthInfo.beginDate)
- } else {
- self.monthInfo = {}
- self.monthImages = []
- }
- });
- },
- loadData(year) {
- var self = this;
- var subId = $("#subId").val();
- App.postJson("/api/weekReport/getListBySub", {subId: subId, year: year}, function (res) {
- if (res.success) {
- var datas = res.data;
- for (let i = 0; i < datas.length; i++) {
- datas[i].kjMonth = datas[i].beginDate + "至" + datas[i].endDate
- }
- /* self.loadTable_weekReport(datas);*/
- /* alert(JSON.stringify(datas))*/
- self.weekInfo = datas[0]
- self.weekData = datas
- self.createSelect(datas)
- self.setFileValue(self.weekInfo.subId, self.weekInfo.year, self.weekInfo.beginDate)
- }
- });
- },
- createSelect() {
- $("#week").html();
- var options = '<option value="">--请选择--</option>'
- for (let i = 0; i < this.weekData.length; i++) {
- if (this.weekInfo.id === this.weekData[i].id) {
- options += '<option value="' + this.weekData[i].id + '" selected>' + this.weekData[i].kjMonth + '</option>'
- } else {
- options += '<option value="' + this.weekData[i].id + '">' + this.weekData[i].kjMonth + '</option>'
- }
- }
- $("#week").html(options);
- layui.form.render();
- var self = this;
- layui.form.on('select(week)', function (data) {
- self.weekInfo = self.weekData.find((item) => {
- return item.id === data.value
- })
- if (self.weekInfo) {
- self.setFileValue(self.weekInfo.subId, self.weekInfo.year, self.weekInfo.beginDate)
- } else {
- self.weekInfo = {}
- self.images = []
- }
- });
- },
- setFileValue: function (subId, year, beginDate) {
- var self = this;
- App.postJson("/api/weekReport/getByInfo", {
- subId: subId,
- year: year,
- startDate: beginDate
- }, function (res) {
- setTimeout(() => {
- self.images = res.data || [];
- }, 300);
- });
- },
- getMonthArray(year) {
- var month = "";
- var months = [];
- for (var i = 1; i < 13; i++) {
- if (i < 10) {
- month = "0" + i;
- } else {
- month = "" + i
- }
- months.push({kjMonth: year + month});
- }
- return months;
- },
- getYearArray: function (startTime, endTime) {
- var self = this;
- var now = new Date();
- self.planYear = now.getFullYear();
- console.log(startTime, endTime)
- const startYear = startTime;
- const endYear = endTime;
- console.log(startYear, endYear);
- if (endYear > self.planYear) {
- self.yearsArray = Array.from({length: self.planYear - startYear + 2}, (_, i) => startYear + i);
- } else if (endYear <= self.planYear) {
- self.planYear = endYear;
- self.yearsArray = Array.from({length: endYear - startYear + 2}, (_, i) => startYear + i);
- } else {
- self.planYear = startYear;
- self.yearsArray = [startYear];
- }
- self.yearsArray.reverse();
- if (self.yearsArray.length > 5) {
- self.yearsArray = self.yearsArray.slice(0, 5);
- }
- self.monthAmt(self.planYear);
- },
- clickYear: function (year) {
- var self = this;
- self.planYear = year;
- self.monthAmt(year);
- this.weekInfo = {content: ""};
- this.images = [];
- self.loadData(year);
- this.monthInfo = {content: ""};
- this.monthImages = [];
- // self.selectYearPlan(year);
- },
- showTitle(obj) {
- return "附件名称:" + obj.fileName;
- },
- download(fileId, fileName) {
- var url = "static/file/download/" + fileId;
- App.common.utils.downFile(App.getUrl(url));
- },
- showImage: function (fileId, type, createTime) {
- var imageUrl = "";
- var realUrl = "";
- var mp4Url = "";
- if (type == 8) {
- imageUrl = "${domain}/static/file/" + fileId + "/showfile";
- } else if (type == null || type == "") {
- } else if (type == 101 || type == 102 || type == 103 || type == 104 || type == 105) {
- imageUrl = "${domain}/static/file/" + fileId + "/showfile";
- } else if (type == 4 || type == 5) {
- imageUrl = "${WebSite.asset}/css/images/excel.png";
- realUrl = "/static/file/download/" + fileId + "";
- } else if (type == 2 || type == 3) {
- imageUrl = "${WebSite.asset}/css/images/word.png";
- realUrl = "/static/file/download/" + fileId + "";
- } else {
- imageUrl = '<video width="100%" height="100%" controls="controls" autobuffer="autobuffer" autoplay="autoplay" loop="loop"><source src="${domain}/static/file/' + fileId + '/showfile" type="video/mp4"></source></video>';
- }
- if (imageUrl) {
- if (type == 2 || type == 3 || type == 4 || type == 5) {
- window.location.href = App.getUrl(realUrl);
- } else if (type == 203) {
- layer.open({
- type: 1,
- title: '播放视频',
- content: imageUrl,
- offset: 'auto',
- area: ['60%', '60%'],
- shade: 0.5,
- shadeClose: true
- });
- } else {
- if (type == 8) {
- // var pdfIndex = layer.open({
- // type: 2,
- // content: imageUrl,
- // area: ['80%', '80%'],
- // offset: 'auto'
- // });
- // layer.full(pdfIndex);
- window.open(imageUrl)
- } else {
- App.common.utils.imageWater(imageUrl, createTime, function (image) {
- layer.photos({
- photos: {
- "title": "",
- "id": fileId,
- "start": 0,
- "data": [
- {
- "alt": "",
- "pid": fileId,
- "src": image,
- "thumb": imageUrl
- }
- ]
- },
- anim: 5
- });
- });
- }
- }
- }
- },
- picShow(fileId, type) {
- var tempId = "#" + fileId;
- if (type == 8) {
- return "${WebSite.asset}/css/images/pdf.png";
- } else if (type == null || type == "") {
- } else if (type == 101 || type == 102 || type == 103 || type == 104 || type == 105) {
- return "${domain}/static/file/" + fileId + "/showfile";
- } else if (type == 4 || type == 5) {
- return "${WebSite.asset}/css/images/excel.png";
- } else if (type == 2 || type == 3) {
- return "${WebSite.asset}/css/images/word.png";
- } else if (type == 203) {
- return "${WebSite.asset}/css/images/video.png";
- }
- },
- }
- });
- </script>
- </body>
- </html>
|