<?php include_once(mvc::$cfg['PATH_TPL'].'public/headBase.php');?>
<style>
    .layui-form-radio{
        vertical-align: middle;
    }
</style>
<div class="left-searchs" style="width: 100%;">

    <div class="left-searchs" style="margin-left: 100px;margin-top: 10px">
        <form class="layui-form" action="<?php echo mvc::$cfg['SELF_URI'];?>super/proSyn" method="get" id="SearchForm" style="margin-bottom:5px;">
            <div class="layui-form-item">
                <div class="layui-inline">
                    <label class="layui-form-label">代理名称</label>
                    <div class="layui-input-block">
                        <input type="text" name="keyword" autocomplete="off" placeholder="请输入店铺名称、手机号码" class="layui-input" value="<?php echo $Params['keyword'] ?: '' ?>">
                    </div>
                </div>
                <div class="layui-inline">
                    <label class="layui-form-label">状态</label>
                    <div class="layui-input-block " >
                        <input type="radio" name="sps_status" value="" title="全部" <?php if(empty($Params['sps_status']) ){ echo 'checked';} ?>>
                        <input type="radio" name="sps_status" value="0" title="暂停" <?php if(is_numeric($Params['sps_status']) && $Params['sps_status'] == 0){ echo 'checked';} ?>>
                        <input type="radio" name="sps_status" value="1" title="启用" <?php if($Params['sps_status'] == 1){ echo 'checked';} ?>>
                    </div>
                </div>
                <div class="layui-inline">
                    <button class="layui-btn layuiadmin-btn-list" lay-submit="" lay-filter="LAY-app-contlist-search">
                        <i class="layui-icon layui-icon-search layuiadmin-button-btn"></i>
                    </button>
                </div>
            </div>
        </form>
            <div style="display: inline-block;position: absolute;left: 10px;top: 10px;">
                <a target="_blank" lay-href="<?php echo mvc::$cfg['SELF_URI'];?>super/setProSyn"><button class="layui-btn layui-btn-sm layui-btn-primary">添加配置</button></a>
            </div>
        </div>

    </div>
</div>
<div class="right-searchs" style="margin-left: 10px;margin-right: 10px;">
    <table class="layui-table layui-form">
        <thead>
        <tr>
            <th width="30"><input type="checkbox" lay-filter="lay-selectall" value="sps_id[]" lay-skin="primary"/></th>
            <th style="width: 140px;" >操作</th>
            <th style="width: 200px;">代理店铺</th>
            <th style="width: 50px">状态</th>
            <th style="width: 60px">代理商状态</th>
            <th>同步类型</th>
            <th style=" width: 130px;">创建时间</th>
        </tr>
        </thead>
        <tbody class="clicktr">
        <?php if(!empty($list)) { ?>
            <?php foreach($list as $v){?>
                <tr>
                    <td>
						<input type="checkbox" name="sps_id[]" value="<?php echo $v['sps_id'];?>" lay-skin="primary"/>
					</td>
                    <td style="width: 150px;">
                        <?php if($v['sps_chkstatus'] && $v['sps_status']) { ?>
                        <a class="layui-btn layui-btn-normal layui-btn-sm" href="javascript:;" onclick="syncProduct(this, '<?php echo $v['sps_id'];?>')">同步</a>
                        <?php } ?>
                        <a class="layui-btn layui-btn-xs" lay-href="<?php echo mvc::$cfg['SELF_URI'];?>super/setProSyn?sps_id=<?php echo $v['sps_id'];?>" class="a_blue" target="_blank">编辑</a>
                        <a class="layui-btn layui-btn-danger layui-btn-xs" href="javascript:;" onclick="deletes(this, '<?php echo $v['sps_id'];?>')" class="a_blue">删除</a>
                    </td>
                    <td><?php echo $v['to_shop_name'];?><?php echo $v['to_mobile']?'('.$v['to_mobile'].')':'';?></td>
                    <td><?php if( $v['sps_status'] == 0){ echo '<span class="gray">暂停</span>'; }elseif ($v['sps_status'] == 1 ){echo '<span class="green">启用</span>';}else{ echo '未知' ;}  ?></td>
                    <td><?php if( $v['sps_chkstatus'] == 0){ echo '<span class="gray">待确认</span>'; }elseif ($v['sps_status'] == 1 ){echo '<span class="green">已确认</span>';}else{ echo '未知' ;}  ?></td>
                    <td><?php echo $v['sync_name'];?></td>
                    <td><?php echo date('Y-m-d H:i:s',$v['sps_atime']);?></td>
                </tr>
            <?php }?>
        <?php }else{  ?>
            <tr style="text-align: center;">
                <td colspan="8">暂无相关配置</td>
            </tr>
        <?php } ?>
            
        </tbody>
        <?php if(!empty($list)){?>
			<tfoot>
				<tr>
					<td colspan="8">
						<button class="layui-btn layui-btn-sm layui-btn-danger" id="delete-checked">批量删除</button>
					</td>
				</tr>
			</tfoot>
			<?php }?>
    </table>
    <?php echo $pageMsg;?>
</div>
<?php include_once(mvc::$cfg['PATH_TPL'].'public/footBase.php');?>
<script>
    //删除设置
    function deletes(obj, spsId)
    {
        layer.confirm('是否保留已同步数据?', {icon: 3, title: false,btn:['保留','删除']}, function(index){
            var layLoading = layer.load();
            $.ajax({
                type: 'POST',
                data: {isAjax:1, sps_id: spsId.split(','),delStatus:1},
                url: SELF_URI+"super/delProSyn",
                dataType: "json",
                success: function(res){
                    layer.close(layLoading);
                    if(!AJAX.checkData(res)) return false;
                    layer.msg('删除成功', {icon: 1, time: 1000}, function(){window.location.reload(true);});
                }
            });
        },function(){
            var layLoading = layer.load();
            $.ajax({
                type: 'POST',
                data: {isAjax:1, sps_id: spsId.split(','),delStatus:0},
                url: SELF_URI+"super/delProSyn",
                dataType: "json",
                success: function(res){
                    layer.close(layLoading);
                    if(!AJAX.checkData(res)) return false;
                    layer.msg('删除成功', {icon: 1, time: 1000}, function(){window.location.reload(true);});
                }
            });
        });
    }
    function syncProduct(obj, spsId)
    {
        layer.confirm('确定要执行同步吗?', {icon: 3, title: false}, function(index){
            layer.close(index);
            $.get(SELF_URI+'/super/getProSynProd',{isAjax:1, sps_id: spsId}, function(res){
                if(!AJAX.checkData(res)) return false;
                if(res.data && res.data.length > 0) {
                    var array = res.data;
                    // 继续执行同步逻辑
                    var html = `<div id="import-status" style="padding:0px 20px;">
                        <h3 class="warn martb10">共`+array.length+`条数据，正在处理中，请勿关闭此页面！</h3>
                        <div class="layui-progress layui-progress-big" lay-showPercent="true">
                            <div class="layui-progress-bar layui-bg-blue" lay-percent="0%"><span class="layui-progress-text">0%</span></div>
                        </div>
                    </div>`;
                    var rateindex = layer.open({
                        type: 1,
                        offset: '20px',
                        title: '配对进度',
                        btn: false,
                        shade: [0.9, '#393D49'],
                        area: ['400px', '150px'],
                        content: html
                    });
                    autoSyn(array, 0, spsId);
                } else {
                    layer.msg('没有可同步的数据', {icon: 0});
                    doDeleteProSyn(spsId);
                }
            }, 'json')
            .fail(function(){
                layer.msg('获取同步数据失败', {icon: 0});
            });
           
        });  
    }

    function autoSyn(pairArr, bkey,spsId)
    {
        var per = 10;
        var ids = new Array();
        var len = pairArr.length;
        var ekey = bkey+per > len? len: bkey+per;
        $.each(pairArr, function(key, val){
            if(key >= bkey && key < ekey){
                ids.push(val);
            }
        });
        if(ids.length > 0){
            $.ajax({
                type: 'get',
                data: {isAjax:1, sps_id: spsId, prod_ids: ids.join(',')},
                url: SELF_URI+"super/doBatchProSyn",
                dataType: "json",
                success: function(res){
                    if(AJAX.checkData(res)){
                        var rate = parseInt(ekey/len*100);
                        $('#import-status').find('.layui-progress-bar').attr('lay-percent', rate+'%').css('width', rate+'%').html('<span class="layui-progress-text">'+rate+'%</span>');
                       
                        if(ekey < len){
                        
                            autoSyn(pairArr, ekey,spsId);
                        }else if(ekey == len){
                            doDeleteProSyn(spsId);
                            layer.msg('同步完成', {icon: 1, time: 1000}, function(){
                                layer.closeAll();
                                window.location.reload(true);
                            });
                        }
                    }
                }
            });
        }
    }

    function doDeleteProSyn(spsId)
    {
        $.ajax({
            type: 'get',
            data: {isAjax:1, sps_id: spsId},
            url: SELF_URI+"super/doDeleteProSyn",
            dataType: "json",
            success: function(res){
                if(AJAX.checkData(res)){
                    
                }
            }
        }); 
    }

    layui.use('form', function(){

        var form = layui.form;
        form.on('checkbox(lay-selectall)', function(data){
            $('[name="'+data.value+'"').prop('checked', data.elem.checked);
            form.render('checkbox');
        });

        $('#delete-checked').click(function(){
            if($('[name="sps_id[]"]:checked').length < 1)
            {
                layer.msg("请先选择需要删除的选项！");
                return false;
            }else{
                var spsIds = INPUT.getCheckedVal('sps_id[]');
                layer.confirm('是否保留已同步数据?', {icon: 3, title: false,btn:['保留','删除']}, function(index){
                    var layLoading = layer.load();
                    $.ajax({
                        type: 'POST',
                        data: {isAjax:1, sps_id: spsIds,delStatus:1},
                        url: SELF_URI+"super/delProSyn",
                        dataType: "json",
                        success: function(res){
                            layer.close(layLoading);
                            if(!AJAX.checkData(res)) return false;
                            layer.msg('删除成功', {icon: 1, time: 1000}, function(){window.location.reload(true);});
                        }
                    });
                },function(){
                    var layLoading = layer.load();
                    $.ajax({
                        type: 'POST',
                        data: {isAjax:1, sps_id: spsIds,delStatus:0},
                        url: SELF_URI+"super/delProSyn",
                        dataType: "json",
                        success: function(res){
                            layer.close(layLoading);
                            if(!AJAX.checkData(res)) return false;
                            layer.msg('删除成功', {icon: 1, time: 1000}, function(){window.location.reload(true);});
                        }
                    });
                });
            }
        });
    });
</script>