hdw
2018-11-02 7b8e271ed8344866c0dbe56942625ccedb5564c7
问题反馈
1个文件已添加
3个文件已修改
599 ■■■■■ 已修改文件
gx_tieta/WebRoot/batt-fault-manage.jsp 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
gx_tieta/WebRoot/iframe/batt-fault-manage-add.html 79 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
gx_tieta/WebRoot/iframe/batt-fault-manage-add1.html 470 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
gx_tieta/WebRoot/pages/css/mylayui.css 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
gx_tieta/WebRoot/batt-fault-manage.jsp
@@ -86,6 +86,7 @@
            <a href="javascript:" id="export_table"  class="layui-btn layui-btn-normal outbtn"><s:text name="Export"/></a>        <!-- 导出 -->
        </div>
    </div>
    <div id="closeUploadBtn"></div>
    <div id="details"></div>
    <div id="detailsOpts"></div>
    <script type="text/javascript" src="jqueryui/jquery-ui.min.js"></script>
@@ -149,9 +150,10 @@
            $(document).on('click','.addbtn',function(){
                searchStationHistRecord();
            });
            var uploadIframe;
            function searchStationHistRecord(){
                // 显示面板
                layer.open({
                uploadIframe = layer.open({
                    type: 2,
                    title: '<span style="font-weight:bold">>>问题添加</span>',
                    area: ['1200px', '600px'],
@@ -161,7 +163,12 @@
                    content: 'iframe/batt-fault-manage-add1.html'
                });
                
            }
            }
            // 关闭上传图片的面板
            $('#closeUploadBtn').click(function() {
                layer.close(uploadIframe);
            });
            // 省-市-机房-电池组
            $(document).ready(function() {
@@ -325,11 +332,10 @@
                    StationName2:$('#city').val(),
                    StationName5:"",
                    page:{
                            pageSize:10,
                            pageCurr:1,
                            pageSize: 10,
                            pageCurr:1
                        },    
                };
                console.info(temp);
                return temp; 
            }
            
@@ -363,9 +369,8 @@
                        }else {
                            layer.msg('暂无数据!', {icon:0, shade: 0.1,shadeClose:true});
                        }
                        //console.info(tOptions);
                        var pageNum = tOptions.data.length;
                        //console.info(pageNum);
                        tOptions.limit = pageNum;
                        // 设置分页信息
                        $('#total').text(pageNum);
gx_tieta/WebRoot/iframe/batt-fault-manage-add.html
@@ -38,21 +38,24 @@
                                <table>
                                    <tbody>
                                        <tr>
                                            <th>省</th>
                                            <!-- 省 -->
                                            <th>市</th>
                                            <!-- 市 -->
                                            <th>机房名称</th>
                                            <!-- 机房站点 -->
                                            <th>省</th>            <!-- 省 -->
                                            <th>市</th>            <!-- 市 -->
                                            <th>区/县</th>        <!-- 区/县 -->
                                            <th>机房名称</th>        <!-- 机房站点 -->
                                        </tr>
                                        <tr>
                                            <td><select name="station_name1" id="station_name1" lay-verify="">
                                            </select></td>
                                            <td><select name="" id="city" lay-verify="">
                                            </select></td>
                                            <td><select name="" id="station_name3" lay-verify="">
                                            </select></td>
                                            <td>
                                                <select name="station_name1" id="station_name1"></select>、
                                            </td>
                                            <td>
                                                <select name="" id="city"></select>
                                            </td>
                                            <td>
                                                <select name="" id="county"></select>
                                            </td>
                                            <td>
                                                <select name="" id="station_name3" ></select>
                                            </td>
                                        </tr>
                                    </tbody>
                                </table>
@@ -201,18 +204,64 @@
                    $select.text('').html('<option>暂无可测市</option>');
                    renderForm();
                }
                findStationNamebyStationname1();
                searchCounty();
            }
        });
    }
    // 查询区/县
    function searchCounty() {
        // 构造查询条件
        var tmp = {
            StationName1: $("#province").val(),
            StationName2: $("#city").val()
        };
        // 根据构造条件查询内容
        $.ajax({
            type: 'post',
            async: true,
            url: 'BattInfAction!serchStationName5',
            dataType: 'json',
            data: "json = "+JSON.stringify(tmp),
            success: function(result) {
                var rs = JSON.parse(result.result);
                var list = [];                // option结果集
                var ele = $('#county');    // 目标select
                if(rs.code == 1) {
                    var data = rs.data;
                    list.push(getLayuiSelect('请选择区/县', '', {}, undefined));
                    // 遍历查询结果
                    for(var i=0; i<data.length; i++) {
                        var _data = data[i];
                        var _tmp = getLayuiSelect(_data.StationName5, _data.StationName5, {}, _data);
                        list.push(_tmp);
                    }
                }else {
                    list.push(getLayuiSelect('暂无区/县', '', {}, undefined));
                }
                // 根据对象数组生成下拉列表
                createLayuiSelect(ele, list);
                form.render('select', 'countyFilter');
                // 查询机房
                findCity();
            }
        });
    }
    //当维护区的值变换时更新市
    $('#station_name1').change(function() {
        findCity();
    });
    //当维护区的值变换时更新机房站点
    $('#city').change(function() {
        findStationNamebyStationname1();
        searchCounty();
    });
    // 切换区/县-机房
    form.on('select(county)', function(data) {
        // 查询机房
        findCity(true);
    });
    //根据省,市查询站点
    function findStationNamebyStationname1() {
gx_tieta/WebRoot/iframe/batt-fault-manage-add1.html
New file
@@ -0,0 +1,470 @@
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>添加问题反馈</title>
    <link rel="stylesheet" type="text/css" href="../pages/css/base.css">
    <link rel="stylesheet" type="text/css" href="../jqueryui/jquery-ui.css">
    <link rel="stylesheet" type="text/css" href="../src/css/layui.css">
    <link rel="stylesheet" type="text/css" href="../pages/css/mylayui.css">
    <style>
        .bottom-btn {
            position: absolute;
            bottom: 10px;
            right: 20px;
        }
    </style>
</head>
<body>
    <div class="layui-page-container">
        <!-- 条件筛选 -->
        <div class="layui-page-filter">
            <div class="page-filter-header layui-page-filter-fweight">问题反馈</div>
            <div class="page-filter-content">
                <table>
                    <tr class="layui-page-filter-tbl-header layui-page-filter-fweight">
                        <td>省</td>                        <!-- 省 -->
                        <td>市</td>                        <!-- 市 -->
                        <td>区/县</td>                    <!-- 区/县 -->
                        <td>机房名称</td>                    <!-- 机房名称 -->
                    </tr>
                    <tr>
                        <td>
                            <div class="layui-form" lay-filter="provinceFilter">
                                <div class="layui-form-item">
                                    <div class="layui-input-block">
                                        <select name="province" id="province" lay-filter="province">
                                            <option value="">请选择省</option>
                                        </select>
                                    </div>
                                </div>
                            </div>
                        </td>
                        <td>
                            <div class="layui-form" lay-filter="cityFilter">
                                <div class="layui-form-item">
                                    <div class="layui-input-block">
                                        <select name="city" id="city" lay-filter="city">
                                            <option value="">请选择市/区</option>
                                        </select>
                                    </div>
                                </div>
                            </div>
                        </td>
                        <td>
                            <div class="layui-form" lay-filter="countyFilter">
                                <div class="layui-form-item">
                                    <div class="layui-input-block">
                                        <select name="county" id="county" lay-filter="county">
                                            <option value="">请选择区/县</option>
                                        </select>
                                    </div>
                                </div>
                            </div>
                        </td>
                        <td style="width: 530px">
                            <div class="layui-form" lay-filter="homeFilter">
                                <div class="layui-form-item">
                                    <div class="layui-input-block">
                                        <select name="home" id="home" lay-filter="home">
                                            <option value="">请选择机房</option>
                                        </select>
                                    </div>
                                </div>
                            </div>
                        </td>
                    </tr>
                </table>
            </div>
        </div>
        <!-- 页面主题内容 -->
        <div class="layui-page-content abs abs-top100">
            <div class="abs-container">
                <div class="layui-upload">
                       <div class="layui-upload-list">
                           <table class="layui-table">
                               <thead>
                                <tr>
                                    <th>图片预览</th>
                                    <th>文件名</th>
                                    <th>大小</th>
                                    <th>操作</th>
                                  </tr>
                          </thead>
                          <tbody id="imgsInfo"></tbody>
                           </table>
                       </div>
                   </div>
                   <div class="layui-form layui-form-pane" style="margin-bottom: 60px;">
                    <label class="layui-form-label">问题描述</label>
                       <div class="layui-form-item layui-form-text">
                        <div class="layui-input-block">
                            <textarea placeholder="问题描述" class="layui-textarea" name="desc" id="desc"></textarea>
                        </div>
                    </div>
                   </div>
            </div>
        </div>
        <div class="bottom-btn">
            <button type="button" class="layui-btn layui-btn-normal" id="addImgs">添加图片</button>
            <button type="button" class="layui-btn layui-btn-normal" id="addImgsAction">提交反馈</button>
        </div>
     </div>
     <div style="display:none">
         <form action="#" method="post" enctype="multipart/form-data" id="noImgForm">
             <input type="file" id="noImg" accept="image/png"/>                     <!-- 班组logo -->
         </form>
     </div>
    <script type="text/javascript" src="../js/jquery-1.8.3.js"></script>
    <script type="text/javascript" src="../js/base.js"></script>
    <script type="text/javascript" src="../jqueryui/jquery-ui.min.js"></script>
    <script type="text/javascript" src="../src/layui.js"></script>
    <script type="text/javascript" src="../pages/js/mylayui.js"></script>
    <script type="text/javascript">
        layui.use(['form','table', 'upload', 'layer'], function() {
            var form = layui.form;
            var upload = layui.upload;
            var layer = layui.layer;
            // 图片上传
            var imgsInfo = $('#imgsInfo');
            var date = new Date();
            var addImgsOpts = {
                json:{
                    'record_time': date.format('yyyy-MM-dd hh:mm:ss'),    // 提交日期
                    'error_descript': '',
                    'stationId': '',
                    'picture_num':4
                },
                files: {}
            };
            var uploadImgs = upload.render({
                elem: '#addImgs'
                ,url: 'Deverror_recordAction!add'
                ,accept: 'file'
                ,multiple: true
                ,number: 4
                ,auto: false
                ,bindAction: '#addImgsActionTmp'
                ,choose: function(obj){
                    addImgsOpts.files = this.files = obj.pushFile(); //将每次选择的文件追加到文件队列
                    var files = this.files = obj.pushFile();
                    //读取本地文件
                      obj.preview(function(index, file, result){
                          var tr = $(['<tr id="upload-'+ index +'">'
                            ,'<td><img src="'+result+'">'
                          ,'<td>'+ file.name +'</td>'
                          ,'<td>'+ (file.size/1014).toFixed(1) +'kb</td>'
                          ,'<td>'
                            ,'<button class="layui-btn layui-btn-xs imgs-reload layui-hide">重传</button>'
                            ,'<button class="layui-btn layui-btn-xs layui-btn-danger imgs-delete">删除</button>'
                          ,'</td>'
                        ,'</tr>'].join(''));
                        //单个重传
                        tr.find('.imgs-reload').on('click', function(){
                          obj.upload(index, file);
                        });
                        //删除
                        tr.find('.imgs-delete').on('click', function(){
                          delete files[index]; //删除对应的文件
                          tr.remove();
                          uploadImgs.config.elem.next()[0].value = ''; //清空 input file 值,以免删除后出现同名文件不可选
                        });
                        imgsInfo.append(tr);
                      });
                }
            });
            var closePage = parent.$('#closeUploadBtn');
            // 点击添加生成
            $('#addImgsAction').click(function() {
                uploadQuestionImgs();
            });
            // 上传
            function uploadQuestionImgs() {
                // 更新内容
                createUploadData();
                var formData = new FormData();
                var files = addImgsOpts.files;
                var filesArr = [];
                Object.keys(files).forEach(function(key) {
                    filesArr.push(files[key]);
                });
                addImgsOpts.json.picture_num = filesArr.length;
                var json = JSON.stringify(addImgsOpts.json);
                formData.append('json', json);
                for(var i=0;i<filesArr.length; i++) {
                    var _files = filesArr[i];
                    formData.append('file', _files);
                    if(i==0) {
                        formData.append('fileType', 'picture_one');
                    }
                    if(i==1) {
                        formData.append('fileType', 'picture_two');
                    }
                    if(i==2) {
                        formData.append('fileType', 'picture_three');
                    }
                    if(i==3) {
                        formData.append('fileType', 'picture_four');
                    }
                }
                if(addImgsOpts.json.picture_num>4) {
                    layer.msg('最多上传4张图片');
                    return;
                }
                if(addImgsOpts.json.stationId == 0) {
                    layer.msg('请选择机房!!!');
                    return;
                }
                var load = layer.load(1);
                $.ajax({
                    type: "post",
                    url: "Deverror_recordAction!add",
                    async:true,
                    dataType:'text',
                    data:formData,
                    contentType: false,//这里
                     processData: false,//这两个一定设置为false
                    success: function(data){
                        layer.close(load);
                        layer.closeAll();
                        layer.msg('上传成功!3秒后自动关闭')    ;
                        setTimeout(function() {
                            closePage.click();
                        }, 3000);
                    },
                    error:function(e){
                        layer.close(load);
                        layer.msg('上传失败!')    ;
                    }
                });
            }
            // 更新上传后台的信息
            function createUploadData() {
                var home = $('#home').find('option:selected');
                var stationid = home.attr('stationid')?home.attr('stationid'):0;
                var json = addImgsOpts.json;
                json.record_time = date.format('yyyy-MM-dd hh:mm:ss');    // 提交日期
                json.error_descript = $('#desc').val();                    // 问题描述
                json.stationId = stationid;
            }
            // 查询省下拉框
            var filterLoad = layer.load();
            searchProvince();
            // 查询省
            function searchProvince() {
                // 请求后台查询
                $.ajax({
                    type:'post',
                    async:true,
                    url: 'User_battgroup_baojigroup_battgroupAction!serchStationName1InGroup',
                    data: null,
                    dataType: 'json',
                    success:function(result) {
                        var rs = JSON.parse(result.result);
                        var list = [];                // option结果集
                        var ele = $('#province');    // 目标select
                        if(rs.code == 1) {
                            var data = rs.data;
                            list.push(getLayuiSelect('请选择省/直辖市', '', {}, undefined));
                            // 遍历查询结果
                            for(var i=0; i<data.length; i++) {
                                var _data = data[i];
                                var _tmp = getLayuiSelect(_data, _data, {}, {});
                                list.push(_tmp);
                            }
                        }else {
                            list.push(getLayuiSelect('暂无省/直辖市', '', {}, undefined));
                        }
                        // 根据对象数组生成下拉列表
                        createLayuiSelect(ele, list);
                        form.render('select', 'provinceFilter');
                        // 查询市
                        searchCity();
                    }
                });
            }
            // 切换省-市
            form.on('select(province)', function(data) {
                // 查询市
                searchCity(true);
            });
            // 查询市
            function searchCity(isLoad) {
                // 构造查询条件
                var tmp = {
                    StationName1: $("#province").val()
                };
                // 是否添加等待
                if(isLoad) {
                    filterLoad = layer.load();
                }
                // 根据构造条件查询内容
                $.ajax({
                    type: 'post',
                    async: true,
                    url: 'BattInfAction!serchStationName2',
                    dataType: 'json',
                    data: "json = "+JSON.stringify(tmp),
                    success: function(result) {
                        var rs = JSON.parse(result.result);
                        var list = [];                // option结果集
                        var ele = $('#city');    // 目标select
                        if(rs.code == 1) {
                            var data = rs.data;
                            list.push(getLayuiSelect('请选择市', '', {}, undefined));
                            // 遍历查询结果
                            for(var i=0; i<data.length; i++) {
                                var _data = data[i];
                                var _tmp = getLayuiSelect(_data.StationName2, _data.StationName2, {}, _data);
                                list.push(_tmp);
                            }
                        }else {
                            list.push(getLayuiSelect('暂无市', '', {}, undefined));
                        }
                        // 根据对象数组生成下拉列表
                        createLayuiSelect(ele, list);
                        form.render('select', 'cityFilter');
                        // 查询区/县
                        searchCounty();
                    }
                });
            }
            // 查询区/县
            function searchCounty(isLoad) {
                // 构造查询条件
                var tmp = {
                    StationName1: $("#province").val(),
                    StationName2: $("#city").val()
                };
                // 是否添加等待
                if(isLoad) {
                    filterLoad = layer.load();
                }
                // 根据构造条件查询内容
                $.ajax({
                    type: 'post',
                    async: true,
                    url: 'BattInfAction!serchStationName5',
                    dataType: 'json',
                    data: "json = "+JSON.stringify(tmp),
                    success: function(result) {
                        var rs = JSON.parse(result.result);
                        var list = [];                // option结果集
                        var ele = $('#county');    // 目标select
                        if(rs.code == 1) {
                            var data = rs.data;
                            list.push(getLayuiSelect('请选择区/县', '', {}, undefined));
                            // 遍历查询结果
                            for(var i=0; i<data.length; i++) {
                                var _data = data[i];
                                var _tmp = getLayuiSelect(_data.StationName5, _data.StationName5, {}, _data);
                                list.push(_tmp);
                            }
                        }else {
                            list.push(getLayuiSelect('暂无区/县', '', {}, undefined));
                        }
                        // 根据对象数组生成下拉列表
                        createLayuiSelect(ele, list);
                        form.render('select', 'countyFilter');
                        // 查询机房
                        searchHome();
                    }
                });
            }
            // 切换市-区/县
            form.on('select(city)', function(data) {
                // 查询区/县
                searchCounty(true);
            });
            // 切换区/县-机房
            form.on('select(county)', function(data) {
                // 查询机房
                searchHome(true);
            });
            // 查询机房
            function searchHome(isLoad) {
                // 构造查询条件
                var tmp = {
                    StationName1:$("#province").val(),
                    StationName2:$("#city").val(),
                    StationName5:$("#county").val()
                };
                // 是否添加等待
                if(isLoad) {
                    filterLoad = layer.load();
                }
                // 根据构造条件查询内容
                $.ajax({
                    type: 'post',
                    async: true,
                    url: 'BattInfAction!serchStationName3',
                    dataType: 'json',
                    data: "json = "+JSON.stringify(tmp),
                    success: function(result) {
                        var rs = JSON.parse(result.result);
                        var list = [];                // option结果集
                        var ele = $('#home');    // 目标select
                        if(rs.code == 1) {
                            var data = rs.data;
                            list.push(getLayuiSelect('请选择机房', '', {StationId: ''}, undefined));
                            // 遍历查询结果
                            for(var i=0; i<data.length; i++) {
                                var _data = data[i];
                                var _attr = {
                                    StationId: _data.StationId
                                };
                                var _tmp = getLayuiSelect(_data.StationName, _data.StationName, _attr, _data);
                                list.push(_tmp);
                            }
                        }else {
                            list.push(getLayuiSelect('暂无机房', '', {}, undefined));
                        }
                        layer.close(filterLoad);
                        // 根据对象数组生成下拉列表
                        createLayuiSelect(ele, list);
                        form.render('select', 'homeFilter');
                    }
                });
            }
        });
    </script>
</body>
</html>
gx_tieta/WebRoot/pages/css/mylayui.css
@@ -11,7 +11,7 @@
/* layui-page-filter */
.page-filter-header {
    line-height: 36px;
    line-height: 32px;
    background: url('../images/table_th_bg.gif') repeat-x;
    text-align:center;
}
@@ -95,6 +95,35 @@
    width:100%;
}
body .layui-table th {
    padding-top: 6px;
    padding-bottom: 6px;
}
.abs {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    overflow:hidden;
}
.abs .abs-container {
    position: relative;
    height: 100%;
    overflow-y: auto;
}
/* abs-top */
.abs.abs-top100 {
    top: 100px;
}
/* abs-bottom */
.abs.abs-bottom60 {
    bottom: 60px;
}
.abs.abs-bottom120 {
    bottom: 120px;
}
/* width */
.w272 {
    width: 272px;