<%@ page contentType="text/html;charset=UTF-8"%>
<%@ include file="/WEB-INF/views/include/taglib.jsp"%>
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>待收货项目</title>
    <meta name="renderer" content="webkit">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">
    <meta name="decorator" content="base" />
    <link rel="stylesheet" type="text/css" href="${ctxPlugin}/static/css/reset.css" />
    <link rel="stylesheet" href="${ctxPlugin}/lib/layuiAdmin/dist/layuiadmin/style/formSelects-v4.css" media="all">
    <link rel="stylesheet" type="text/css" href="${ctxPlugin}/lib/font/iconfont.css" />
</head>
<body>

<div class="layui-fluid">
    <div class="layui-form layui-card">
        <div class="layui-tab layui-tab-brief">
            <ul class="layui-tab-title">
                <sfTags:pagePermission authFlag="XMGL_DSHXM_XSJCB_T" html='<a href="${ctx}/customerEntry/esalesBasisList"><li class="layui-this">销售基础表</li></a>'/>
                <button class="layui-btn f-r mt-10 mr-15 pl-10 pr-10 " type="reset"  onclick="reset()" >
                    <i class="layui-icon fs-12">&#xe9aa;</i>
                    重置
                </button>
                <button class="layui-btn f-r mt-10 mr-15 pl-10 pr-10" id="searchBtn" lay-submit lay-filter="LAY-user-back-search"><i class="layui-icon fs-12">&#xe615;</i>查询</button>
            </ul>
        </div>
        <div class="layui-card-body layuiadmin-card-header-auto" id="searchForm">
            <div class="layui-form-item">
                <div class="layui-col-lg2 layui-col-sm3">
                    <label class="layui-form-label">产品编号：</label>
                    <div class="layui-input-block" >
                        <select name="projectCode" id="projectId">
                            <option value="">请选择</option>
                            <c:forEach items="${projectList}" var="project">
                                <option value="${project.columns.id}">${project.columns.code}</option>
                            </c:forEach>
                        </select>
                    </div>
                </div>
                <div class="layui-col-lg2 layui-col-sm3">
                    <label class="layui-form-label">电站编码：</label>
                    <div class="layui-input-block">
                        <input type="text" name="powerStationCode" id="powerStationCode" class="layui-input">
                    </div>
                </div>
                <div class="layui-col-lg2 layui-col-sm3">
                    <label class="layui-form-label">业主姓名：</label>
                    <div class="layui-input-block">
                        <input type="text" name="tenantName" id="tenantName" class="layui-input">
                    </div>
                </div>
                <div class="layui-col-lg2 layui-col-sm3">
                    <label class="layui-form-label">安装地址：</label>
                    <div class="layui-input-block">
                        <input type="text" name="tenantAddress" id="tenantAddress" class="layui-input">
                    </div>
                </div>
                <div class="layui-col-lg2 layui-col-sm3">
                    <label class="layui-form-label">安装方式：</label>
                    <div class="layui-input-block">
                        <select name="installWay" id="installWay">
                            <option value="">请选择</option>
                            <c:forEach items="${installWays}" var="installWay">
                                <option value="${installWay.columns.id}">${installWay.columns.name}</option>
                            </c:forEach>
                        </select>
                    </div>
                </div>
                <div class="layui-col-lg2 layui-col-sm3">
                    <label class="layui-form-label">屋顶类型：</label>
                    <div class="layui-input-block" >
                        <select name="roofType" id="roofType">
                            <option value="">请选择</option>
                            <option value="平屋顶">平屋顶</option>
                            <option value="斜屋顶">斜屋顶</option>
                        </select>
                    </div>
                </div>
                <div class="layui-col-lg2 layui-col-sm3">
                    <label class="layui-form-label">匹配方案：</label>
                    <div class="layui-input-block" >
                        <select name="plan" id="plan">
                            <option value="">请选择</option>
                            <c:forEach items="${plans}" var="plan">
                                <option value="${plan.columns.id}">${plan.columns.name}</option>
                            </c:forEach>
                        </select>
                    </div>
                </div>
                <div class="layui-col-lg2 layui-col-sm3">
                    <label class="layui-form-label">备注：</label>
                    <div class="layui-input-block">
                        <input type="text" name="remarks" id="remarks" class="layui-input" >
                    </div>
                </div>
                <div class="layui-col-lg2 layui-col-sm3">
                    <label class="layui-form-label">标记类型：</label>
                    <div class="layui-input-block" xm-select="flag"  xm-select-type="1" xm-select-height="25px" xm-select-show-count="6">
                        <select name="flag" id="flag">
                            <option value="">请选择</option>
                            <c:forEach items="${typeList}" var="flag">
                                <option value="${flag.columns.id}" >${flag.columns.name}</option>
                            </c:forEach>
                        </select>
                    </div>
                </div>
                <div class="layui-col-lg4 layui-col-sm6">
                    <label class="layui-form-label">下单时间：</label>
                    <div class="layui-input-block">
                        <div class="layui-col-xs5">
                            <input type="text" readonly name="orderTimeMin" class="layui-input" id="endStartTime" placeholder="开始日期">
                        </div>
                        <div class="layui-col-xs2 text-c lh-30">
                            —
                        </div>
                        <div class="layui-col-xs5">
                            <input type="text" readonly name="orderTimeMax" class="layui-input" id="endEndTime" placeholder="结束日期">
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </div>
    <div class="layui-card">
        <div class="layui-card-body">
            <table class="layui-hide" lay-skin="row" id="test" lay-filter="test"></table>
            <script type="text/html" id="toolbarDemo">
                <div class="layui-btn-container">
                 <%--   <sfTags:pagePermission authFlag="XMGL_DSHXM_DSHXM_SQCS_B" html='<button class="layui-btn layui-btn-sm" lay-event="retrialBtn" id="retrialBtn"><i class="layui-icon layui-icon-ok-circle"></i>申请重审</button>'/>
                    <sfTags:pagePermission authFlag="XMGL_DSHXM_DSHXM_PLSH_B" html='<button class="layui-btn layui-btn-sm" lay-event="batchReceive" id="batchReceiveBtn"><i class="layui-icon layui-icon-ok-circle"></i>批量收货</button>'/>
                    <sfTags:pagePermission authFlag="XMGL_DSHXM_DSHXM_DCWL_B" html='<button class="layui-btn layui-btn-sm" lay-event="exportfittingBtn" id="exportfittingBtn"><i class="layui-icon layui-icon-ok-circle"></i>导出物料</button>'/>--%>
                    <sfTags:pagePermission authFlag="XMGL_DSHXM_XSJCB_DC_B" html='<button class="layui-btn layui-btn-sm" lay-event="export" id="exportBtn"><i class="layui-icon layui-icon-export"></i>导出列表</button>'/>
                </div>
            </script>
        </div>
    </div>
</div>
<script src="${ctxPlugin}/lib/layuiAdmin/dist/layuiadmin/layui/layui.js"></script>
<script src="${ctxPlugin}/lib/layuiAdmin/dist/layuiadmin/lib/formSelects-v4.js"></script>
<script>
    var entrycount=0;
    layui.config({
        base: '${ctxPlugin}/lib/layuiAdmin/dist/layuiadmin/' //静态资源所在路径
    }).extend({
        index: 'lib/index' //主入口模块
    }).use(['index', 'tableExt', 'jquery', 'layer','laypage','laydate','form'], function(){
        //layui.use(['table','layer','laypage','laydate','form'], function(){
        $ = layui.$;
        tableExt = layui.tableExt;
        layer = layui.layer;
        laypage = layui.laypage;
        laydate = layui.laydate;
        form = layui.form;
        table = tableExt.getLayTable();

        var type = "${user.userType}";

        //开始日期
        var endStartTime = laydate.render({
            elem: '#endStartTime'
            /* ,type: 'datetime'*/
            ,done: function(value, date){
                //更新结束日期的最小日期
                endEndTime.config.min = lay.extend({}, date, {
                    month: date.month - 1
                });
                //自动弹出结束日期的选择器
                endEndTime.config.elem[0].focus();
            }
        });
        //结束日期
        var endEndTime = laydate.render({
            elem: '#endEndTime'
            /* ,type: 'datetime'*/
            ,done: function(value, date){
                //更新开始日期的最大日期
               /* endStartTime.config.max = lay.extend({}, date, {
                    month: date.month - 1
                });*/
            }
        });

        tableExt.render({
            elem: '#test'
            , title:'销售基础表'
            , height: 'full-180'
            , toolbar: '#toolbarDemo'
            , defaultToolbar: false
            , limits : [ 20, 50, 100 ]
            , limit:20
            , page : true //开启分页
            , url: '${ctx}/customerEntry/esalesBasisPage'
            , cols: [[
                {type: 'numbers', fixed: 'left', title: '序号'}
                , {field: 'id', minWidth: '4%', checkbox: true, align: 'center', rowspan: '2', fixed: 'left'}
                , {
                    field: 'power_station_code',
                    title: '电站编码',
                    minWidth: 200,
                    sort: false,
                    fixed: 'left',
                    align: 'center',
                    exportable: true,
                    templet: function (d) {
                        var html = "";
                        return html + '<a href="#" class="layui-table-link" onclick="psDetail(\'' + d.id + '\')">' + d.power_station_code + '</a>';
                    },
                    expFormat: function (d) {
                        return d.power_station_code;
                    }
                }
                , {field: 'tenant_name', title: '业主姓名', minWidth: 150, sort: false, align: 'center', exportable: true}
                , {field: 'mobile', title: '联系电话', minWidth: 130, sort: false, align: 'center', exportable: true}
                /*  , {field: 'address', title: '租户地址',minWidth: 130, sort: false, align: 'center',exportable:true}*/
                , {field: 'project_code', title: '产品编号', minWidth: 130, sort: false, align: 'center', exportable: true}
                , {field: 'project_name', title: '产品名称', minWidth: 130, sort: false, align: 'center', exportable: true}
                , {field: 'trader_name', title: '代理商名称', minWidth: 130, sort: false, align: 'center', exportable: true}
                , {
                    field: 'project_company_name',
                    title: '项目公司',
                    minWidth: 130,
                    sort: false,
                    align: 'center',
                    exportable: true
                }
                , {field: 'creator', title: '业务人员', minWidth: 130, sort: false, align: 'center', exportable: true}
                , {
                    field: 'design_capacity',
                    title: '设计安装容量(W)',
                    minWidth: 130,
                    sort: false,
                    align: 'center',
                    exportable: true
                }
                , {
                    field: 'actual_capacity',
                    title: '实际安装容量(W)',
                    minWidth: 150,
                    sort: false,
                    align: 'center',
                    exportable: true
                }
                , {
                    field: 'epc_price',
                    title: 'EPC单价（元/W）',
                    minWidth: 180,
                    sort: false,
                    align: 'center',
                    exportable: true
                }
                , {field: 'finalCost', title: '甲供成本（元）',minWidth: 180, sort: false, align: 'center',exportable:true}
                , {field: 'setprice', title: '结算费用（元）',minWidth: 180, sort: false, align: 'center',exportable:true}
                , {field: 'merge_time', title: '并网时间',minWidth: 180, sort: false, align: 'center',exportable:true}
                , {field: 'check_accept_time', title: '并网验收时间',minWidth: 180, sort: false, align: 'center',exportable:true}
            ]]
            ,exportOpt:{                           //导出选项配置
                ele:'#exportBtn',                   //导出的Dom元素
                headerTitle: '销售基础表',             //excel表格的标题
                pageData:false,                     //true:导出的数据为页面数据，false:最大导出maxAmount条数据
                maxAmount: 5000,                    //当pageData为false生效
                fileName: '销售基础表',
                where: function (){                 //当pageData为false时生效，过滤的条件
                    return _serializeJson($("#searchForm"));
                }
            },done: function(res, curr, count){
                //得到数据总量
                entrycount = count;
            }
        });

        table.on('toolbar(test)',function(obj) {
            var checkStatus = table.checkStatus(obj.config.id);
            if (obj.event === 'batchReceive') {
                if(checkStatus.data.length < 1){
                    layer.msg("请先选择数据",{icon:5,anim:6});
                    return;
                }
                var ids = [];
                var checkpro=false;
                for(var i=0; i<checkStatus.data.length; i++){
                    ids.push(checkStatus.data[i].id);
               /*     console.log(checkStatus.data[i].projectCode)
                    if(_checkProjectCode(checkStatus.data[i].projectCode)){
                        checkpro = true;
                        layer.msg("选择的数据中含有不可操作的项目信息",{icon:5,anim:6});
                        return;
                    }*/
                }
                if(checkpro){
                    layer.msg("选择的数据中含有不可操作的项目信息",{icon:5,anim:6});
                    return;
                }
                layer.confirm('确认要收货吗？', {
                    icon:3,
                        btn:['确定','取消'] //按钮
                }, function(){
                    $.ajax({
                        type: 'post',
                        url: '${ctx}/customerEntry/batchReceive',
                        contentType: 'application/json',
                        data: JSON.stringify(ids),
                        success: function(data){
                            if (data.code === '200') {
                                layer.msg('操作成功', {time: 1000});
                                searchOrder();
                            }else if(data.code === '501'){
                                layer.msg(data.errMsg, {time: 1000});
                            }else {
                                layer.msg('操作失败', {time: 1000});
                            }
                        }
                    })
                });
            }else  if (obj.event === 'retrialBtn') {
                if(checkStatus.data.length < 1){
                    layer.msg("请先选择数据",{icon:5,anim:6});
                    return;
                }
                var ids = [];
                var checkpros=false;
                for(var i=0; i<checkStatus.data.length; i++){
                    ids.push(checkStatus.data[i].id);
                    if(_checkProjectCode(checkStatus.data[i].projectCode)){
                        checkpros = true;
                        layer.msg("选择的数据中含有不可操作的项目信息",{icon:5,anim:6});
                        return;
                    }
                }
                if(checkpros){
                    layer.msg("选择的数据中含有不可操作的项目信息",{icon:5,anim:6});
                    return;
                }
                layer.open({
                    type: 2,
                    content: "${ctx}/customerEntry/entryRetrialDetail?ids="+ids
                    ,title: "申请重审"
                    ,area:["600px","430px"]
                    ,closeBtn: 0
                    ,shadeClose:true

                });


            } else  if(obj.event === 'deleteBtn'){
                var data = checkStatus.data;
                console.log(data)
                if (data.length <1) {
                    layer.msg("请选择数据",{icon:5,anim:6});
                    return false;
                }
                var chename = "";
                var ids = [];
                for(var i=0; i<checkStatus.data.length; i++){
                    if(checkStatus.data[i].status=='8' || checkStatus.data[i].status=='9' ||checkStatus.data[i].status=='11'||checkStatus.data[i].status=='a'){
                        chename = "300";
                        return
                    }
                    ids.push(checkStatus.data[i].id);
                }
                if(chename =='300'){
                    layer.msg("选择的数据中有不可删除信息",{icon:5,anim:6});
                    return false;
                }
                layer.confirm('确认要删除吗？', {
                    icon:3,
                    btn:['确定','取消'] //按钮
                }, function(){
                    $.ajax({
                        type: 'post',
                        url: '${ctx}/customerEntry/batchDeleteOrder',

                        contentType: 'application/json',
                        data: JSON.stringify(ids),
                        success: function(data){
                            if (data.code === '200') {
                                layer.msg('操作成功', {time: 1000});
                                searchOrder();
                            }else if(data.code === '501'){
                                layer.msg(data.errMsg, {time: 1000});
                            }else {
                                layer.msg('操作失败', {time: 1000});
                            }
                        }
                    })
                });

            }else  if (obj.event === 'exportfittingBtn') {
                if(entrycount<1){
                    layer.msg('当前无数据导出', {time: 1000});
                    return ;
                }

                let hideSubmitForm = document.createElement("form");
                hideSubmitForm.id = "tempForm1";
                hideSubmitForm.method = "post";
                hideSubmitForm.action = "${ctx}/excel/doExportUserExcel";
                hideSubmitForm.target = "_blank";
                hideSubmitForm.appendChild(createHideInput("status",isBlank($("#status").val())?"":$("#status").val()));
                hideSubmitForm.appendChild(createHideInput("projectId", isBlank($("#projectId").val())?"":$("#projectId").val()));
                hideSubmitForm.appendChild(createHideInput("powerStationCode", isBlank($("#powerStationCode").val())?"":$("#powerStationCode").val()));
                hideSubmitForm.appendChild(createHideInput("traderId", isBlank($("#traderId").val())?"":$("#traderId").val()));
                hideSubmitForm.appendChild(createHideInput("traderMobile", isBlank($("#traderMobile").val())?"":$("#traderMobile").val()));
                hideSubmitForm.appendChild(createHideInput("tenantName", isBlank($("#tenantName").val())?"":$("#tenantName").val()));
                hideSubmitForm.appendChild(createHideInput("checkAcceptBy", isBlank($("#checkAcceptBy").val())?"":$("#checkAcceptBy").val()));
                hideSubmitForm.appendChild(createHideInput("tenantAddress", isBlank($("#tenantAddress").val())?"":$("#tenantAddress").val()));
                hideSubmitForm.appendChild(createHideInput("installWay", isBlank($("#installWay").val())?"":$("#installWay").val()));
                hideSubmitForm.appendChild(createHideInput("roofType", isBlank($("#roofType").val())?"":$("#roofType").val()));
                hideSubmitForm.appendChild(createHideInput("plan", isBlank($("#plan").val())?"":$("#plan").val()));
                hideSubmitForm.appendChild(createHideInput("remarks", isBlank($("#remarks").val())?"":$("#remarks").val()));
                hideSubmitForm.appendChild(createHideInput("deliverBy", isBlank($("#deliverBy").val())?"":$("#deliverBy").val()));
                hideSubmitForm.appendChild(createHideInput("orderTimeMin", isBlank($("#endStartTime").val())?"":$("#endStartTime").val()));
                hideSubmitForm.appendChild(createHideInput("orderTimeMax", isBlank($("#endEndTime").val())?"":$("#endEndTime").val()));
                hideSubmitForm.addEventListener('onsubmit', function(){
                    // this.openDownloadWindow(name);
                });
                document.body.appendChild(hideSubmitForm);
                hideSubmitForm.submit();
                document.body.removeChild(hideSubmitForm);

                //  window.open("${ctx}/excel/doExportUserExcel?status=3&"+$("#searchForm"))
            }
        });

        function  createHideInput(name, value){
            let hideInput = document.createElement("input");
            hideInput.type = "hidden";
            hideInput.name = name;
            hideInput.value = value;
            return hideInput;
        }

        //监听搜索
        form.on('submit(LAY-user-back-search)', function(data){
            var field = data.field;
            //执行重载
            tableExt.reload('test', {
                where: field,
                page:{
                    curr:1
                }
            });
        });

        $('input').on('keydown', function(event){
            if(event.keyCode == 13){
                //执行相关操作
                $("#searchBtn").click();
            }
        });
    })


    function searchOrder() {
        layer.closeAll()
        //执行重载
        table.reload('test', {
            where: function (){
                return _serializeJson($("#searchForm"));
            }
        });
    }

    //查看详情
    function psDetail(id){
        layer.open({
            type: 2
            , title: '电站详情'
            , content: '${ctx}/customerEntry/entryDetail?entryId=' + id
            , area: ['100%', '100%']
            , yes: function(index, layero){

            }
        });
    }
    function customerEntryFlag(id){
        layer.open({
            type: 2,
            content: "${ctx}/customerEntry/getFlagcustomerEntry?customerEntryId="+id //这里content是一个DOM，注意：最好该元素要存放在body最外层，否则可能被其它的相对元素所影响
            ,title: "标记项目"
            ,area:["300px","260px"]
            ,closeBtn: 0
            ,shadeClose:true

        });
    }
    function planDetail(entryId){
        layer.open({
            type: 2,
            title: '查看',
            content: '${ctx}/planManage/viewMatchedPlan?entryId=' + entryId,
            area: ['80%','80%']
        });
    }

    function isBlank(val) {
        if (val == null || val == '' || val == undefined) {
            return true;
        }
        return false;
    }

    function reset(){
        layui.form.render();
        $("#searchForm").find("select").val("");
        $("#searchForm").find("input").val("");
    }
</script>
</body>
</html>

