可选中操作不同页的记录

{%extends file="common/widget/layoutlte/layout_lte.tpl"%}
{%block name="main-lte"%}

{%extends file="common/widget/table/table.tpl"%}
{%block name="keywords"%}{%Yii::t('theme','专题内容')%}{%/block%}
{%block name="description"%}{%Yii::t('theme','专题内容')%}{%/block%}
{%block name="title"%}{%Yii::t('theme','专题内容')%}{%/block%}

{%block name="main"%}
<div class="wrapper wrapper-content animated fadeInRight" id="tb-ani">
    <div class="ibox float-e-margins">
        <div class="ibox-content">
            <div class="row row-lg">
                <div class="row col-sm-12" id="search">
                    <div class="col-md-2">
                        <div class="input-group">
                            <span class="input-group-addon">{%Yii::t('theme','资源类型')%}</span>
                            <select name="resource_type" class="form-control">
                                <option value="">全部</option>
                              {%foreach $paramsMapping['resource_type'] as $k => $v%}
                              <option value="{%$k%}">{%$v%}</option>
                              {%/foreach%}
                            </select>
                        </div>
                    </div>
                    <div class="col-md-2">
                        <div class="input-group">
                            <span class="input-group-addon">{%Yii::t('theme','资源名称')%}</span>
                            <input type="text" name="resource_name" class="form-control">
                        </div>
                    </div>
                    <div class="col-md-2">
                        <div class="input-group">
                            <span class="input-group-addon">{%Yii::t('theme','资源ID')%}</span>
                            <input type="text" name="resource_id" class="form-control">
                        </div>
                    </div>
                    <div class="col-md-2">
                        <div class="input-group">
                            <span class="input-group-addon">{%Yii::t('theme','资源状态')%}</span>
                            <select name="resource_status" class="form-control">
                                <option value="">全部</option>
                                <option value="1">上架</option>
                                <option value="2">下架</option>
                            </select>
                        </div>
                    </div>
                    <div class="col-md-2">
                      <div class="input-group">
                        <span class="input-group-addon">{%Yii::t('theme','审核结果')%}</span>
                        <select name="audit_state" class="form-control">
                          <option value="">全部</option>
                          <option value="0">待审核</option>
                          <option value="1">通过</option>
                          <option value="2">不通过</option>
                        </select>
                      </div>
                    </div>
                    <div class="col-md-1">
                        <div class="input-group-btn">
                            <button class="btn  btn-primary search">
                                <i class="fa fa-search"></i>{%Yii::t('theme','搜索')%}
                            </button>
                        </div>
                    </div>
                </div>
                <div class="col-sm-12" id="content-table">
                    <div id="tool-bar">
                        {%if in_array('add', $auditContent)%}
                        <button class="btn  btn-primary" onclick="add()">
                            {%Yii::t('theme','新增')%}
                        </button>
                        {%/if%}
                        {%if in_array('import', $auditContent)%}
                        <button class="btn  btn-warning" onclick="importData()">
                            {%Yii::t('theme','导入')%}
                        </button>
                        {%/if%}
                        {%if in_array('delete', $auditContent)%}
                        <button class="btn  btn-danger" onclick="del()">
                            {%Yii::t('theme','删除')%}
                        </button>
                        {%/if%}
                        {%if in_array('audit', $auditContent)%}
                        <button type="button" class="btn btn-primary" id="allPassButton" onclick="allPass()">
                          {%Yii::t('theme','全部通过')%}
                        </button>
                        <button type="button" class="btn btn-danger" id="allRefuseButton" onclick="allRefuse()">
                          {%Yii::t('theme','全部不通过')%}
                        </button>
                        <button type="button" class="btn btn-primary" id="batchPassButton" onclick="batchPass()">
                          {%Yii::t('theme','批量通过')%}
                        </button>
                        <button type="button" class="btn btn-danger" id="batchRefuseButton" onclick="batchRefuse()">
                          {%Yii::t('theme','批量不通过')%}
                        </button>
                        {%/if%}
                    </div>
                    <table id="dataTable" data-mobile-responsive="true" data-toggle="table"></table>
                </div>
                <div class="col-sm-12 bottom-submit-button">
                  <span style="padding-right: 10px">已选择 <span id="select_num">0</span></span>
                  <span id="select_ids" style="display: none"></span>
                </div>
            </div>
        </div>
    </div>
</div>
{%/block%}

{%/block%}

{%block name="modal"%}
<!-- 新增/更新弹窗 -->
<div id="add_modal" style="display:none;"  tabindex="-1" role="dialog" aria-hidden="true">
    <div  style="width: 600px;">
        <form class="form-horizontal m-t" id="add_form" method="post">
            <div class="form-group">
                <label class="col-sm-3 control-label">{%Yii::t('theme', '资源类型')%}</label>
                <div class="col-sm-8">
                    <select name="resource_type" class="form-control source-type">
                      {%foreach $resourceTypeList as $k => $v%}
                      <option value="{%$k%}">{%$v%}</option>
                      {%/foreach%}
                    </select>
                </div>
            </div>
            <div class="form-group">
                <label class="col-sm-3 control-label">{%Yii::t('theme', '资源名称')%}</label>
                <div class="col-sm-8">
                    <select name="resource_id" id="form_source_name" class="form-control"></select>
                </div>
                <div class="col-sm-1">
                  <div class="input-group-btn">
                    <div class="btn  btn-primary" onclick="selectMore()">
                      {%Yii::t('theme','更多')%}
                    </div>
                  </div>
                </div>
            </div>
            <div class="form-group">
                <label class="col-sm-3 control-label">{%Yii::t('theme', '操作理由')%}</label>
                <div class="col-sm-8">
                    <input type="text" name="operation_reason" class="form-control" placeholder="请输入完善的操作理由和需求来源,否则将会被收回权限">
                </div>
            </div>
        </form>
    </div>
</div>


<!-- 删除弹窗 -->
<div id="reason_modal" style="display:none;width: 550px;">
    <form class="form-horizontal m-t" id="reason_form" method="post">
        <div class="form-group">
            <label class="col-sm-3 control-label">{%Yii::t('theme', '操作理由')%}</label>
            <div class="col-sm-9">
                <input type="text" name="operation_reason" class="form-control" placeholder="请输入完善的操作理由和需求来源,否则将会被收回权限">
            </div>
        </div>
    </form>
</div>

<!-- 导入弹窗 -->
<div id="import_modal" style="display:none;width: 600px;">
    <form class="form-horizontal m-t" id="import_form" method="post">
        <div class="form-group">
            <label class="col-sm-3 control-label">{%Yii::t('theme', '导入模板')%}</label>
            <div class="col-sm-9">
                <a href="/theme/operate/topic-tag/export-resource.json" class="btn btn-primary" target="_blank">模板下载</a>
            </div>
        </div>
        <div class="form-group">
            <label class="col-sm-3 control-label">{%Yii::t('theme', '导入文件')%}</label>
            <div class="col-sm-9">
                <div class="upload-img-btn">
                    <div id="uploadImgBtn">上传文件</div>
                </div>
                <input type="text" id="excelUrl" name="excelUrl" class="form-control" readonly/>
            </div>
        </div>
        <div class="form-group">
            <label class="col-sm-3 control-label">{%Yii::t('theme', '操作理由')%}</label>
            <div class="col-sm-9">
                <input type="text" name="operation_reason" class="form-control" placeholder="请输入完善的操作理由和需求来源,否则将会被收回权限">
            </div>
        </div>
    </form>
</div>

{%/block%}

{%block name="needcss"%}
{%require name="common:staticlib/css/plugins/webuploader/webuploader.css"%}
{%require name="common:staticlib/css/plugins/select2/select2.min.css"%}
<style type="text/css">
    .title{margin-bottom: 0;cursor: pointer;color:#337ab7;}
    .title:hover{color:#13a285;}

    .modal {z-index: 2060 !important;}
    .layui-layer-shade{
        z-index: 1060 !important;
    }
    #layui-layer1 {
        z-index: 1061 !important;
    }
    .modal-backdrop + .modal-backdrop{z-index: 2055 !important;}
    .select2-container {
        z-index: 100000000;
        display: block;
        width:auto !important;
    }
</style>
{%/block%}

{%block name="needjs"%}
<script type="text/javascript">
    var fileHost = '{%$file_host%}';
    var auditContent = "{%implode(',',$auditContent)%}";
    console.log(auditContent);
</script>
{%require name="common:staticlib/js/plugins/validate/jquery.validate.min.js"%}
{%require name="common:staticlib/js/utility.js"%}
{%require name="common:staticlib/js/plugins/select2/select2.min.js"%}
{%require name="common:staticlib/js/plugins/validate/jquery.validate.min.js"%}
{%require name="common:staticlib/js/plugins/validate/messages_$language.min.js"%}
{%require name="common:staticlib/js/plugins/webuploader/webuploader.min.js"%}
{%require name="common:staticlib/js/uploader/upload.js"%}
{%require name="theme:page/operate/topic-tag/js/detail.js"%}
{%/block%}

var operate_tag_id = getQueryString('operate_tag_id');

var table = $('#dataTable');
table_config.url = '/theme/operate/topic-tag/detail.json';
table_config.showColumns = true;
table_config.pageSize = 20;
table_config.pageList = [20, 50, 100, 500, 1000, 1500, 2000, 2500, 3000, 5000, 10000];
// table_config.pagination = false;
// table_config.height = 1200;
table_config.queryParams = function(params) {
    if (!params) {
        params = {};
    }
    params.operate_tag_id = operate_tag_id;
    params.oper = "select";
    if (!params.sort) {
        params.sort = 'id';
        params.order = 'desc';
    }
    $('#search').find('input[name]').each(function() {
        params[$(this).attr('name')] = $(this).val();
    });
    $('#search').find('select[name]').each(function() {
        params[$(this).attr('name')] = $(this).val();
    });

    return params;
};

table_config.onCheck = function (row) {
  selectOne(row);
};
table_config.onUncheck = function (row) {
  cancelOne(row);
};
table_config.onCheckAll = function (rows) {
  var row_data = $.map(table.bootstrapTable('getSelections'), function (row) {
    return row;
  });
  console.log(row_data)
  var data = row_data[0];
  for (var item of rows) {
    selectOne(item);
  }
}
table_config.onUncheckAll = function (rows) {
  for (var item of rows) {
    cancelOne(item);
  }
}

table.on('load-success.bs.table', function (e,data) {
  var select_ids = $("#select_ids").text();
  select_ids = select_ids ? select_ids.split(",") : [];
  if (select_ids.length === 0) {
    return false;
  }
  for (var row of data.rows) {
    var id = row.id;
    if (-1 !== select_ids.indexOf(id + "")) {
      var td = $("#content-table table.table tbody tr td:contains(" + id + ")").map(function(){
        if ($(this).text() == id) {
          var length = $(this).length;
          var text = $(this).text();
          console.log("id:" + id + ",length:" + length + ",text:" + text);
          $(this).prev().trigger("click");
        }
      });
    }
  }
});

function selectOne(row) {
  var id = row.id;
  var select_ids = $("#select_ids").text();
  select_ids = select_ids ? select_ids.split(",") : [];
  var pos = select_ids.indexOf(id + "");
  if (-1 === pos) {
    var select_num = $("#select_num").text();
    $("#select_num").text(select_num - 0 + 1);
    select_ids.push(id);
    $("#select_ids").text(select_ids.join(","));
  }
}
function cancelOne(row) {
  var id = row.id;
  var select_ids = $("#select_ids").text();
  select_ids = select_ids ? select_ids.split(",") : [];
  var pos = select_ids.indexOf(id + "");
  if (-1 !== pos) {
    var select_num = $("#select_num").text();
    $("#select_num").text(select_num - 1);
    select_ids.splice(pos, 1);
    $("#select_ids").text(select_ids.join(","));
  }
}
table_config.columns = [
    { field: 'choose', title: "选择", checkbox: true },
    { field: "id", title: "ID" },
    { field: "tag_name", title: "话题tag名称" },
    {
        field: "resource_id",
        title: "资源ID",
        formatter: function(value, row, index) {
            return row.resource_id;
        }
    },
    {
        field: "resource_name",
        title: "资源名称",
        formatter: function(value, row, index) {
            return row.resource_info.name;
        }
    },
    {
        field: "thumbnail_pic",
        title: "缩略图",
        formatter: function(value, row, index) {
            if (!value) {
                return '-'
            }
            let img_path = (value.indexOf('http') !== -1) ? value : fileHost + value;
            return img_path ? '<img src="' + img_path + '" alt="图片" style="height:50px;" class="min-pic">' : '-';
        }
    },
    { field: "resource_type_text", title: "资源类型" },
    {
        field: "resource_price",
        title: "资源价格",
        formatter: function(value, row, index) {
            return row.resource_info.price;
        }
    },
    { field: "level_text", title: "资源评级" },
    {
        field: "resource_author",
        title: "作者名称",
        formatter: function(value, row, index) {
            return row.resource_info.author;
        }
    },
    {
      field: "resource_status_text",
      title: "资源状态",
      formatter: function(value, row, index) {
        return row.resource_info.status_text;
      }
    },
    { field: "audit_state_text", title: "审核结果" },
    { field: "reason", title: "审核理由" },
    { field: "create_operator", title: "创建人" },
    { field: "create_time", title: "创建时间" },
    { field: "update_operator", title: "更新人" },
    { field: "update_time", title: "更新时间" },
    {
      field: "configure", title: "审核操作", formatter: function (value, row, index) {
        var html = '';
        if (auditContent.indexOf('audit') > -1) {
          html += '<button class="btn btn-xs btn-primary" style="margin: 1px;" οnclick="pass(' + row.id + ')">通过</button>';
        }

        if (auditContent.indexOf('audit') > -1) {
          html += '<button class="btn btn-xs btn-danger" style="margin: 1px;" οnclick="refuse(' + row.id + ')">不通过</button>';
        }

        return html;
      }
    },
];

var table_i18n = { en_US: {}, zh_CN: {} };
$.each(table_config.columns, function(i, o) {
    if (language == 'en_US') {
        table_i18n.en_US[o.field] = $.i18n.prop(o.field);
    }
    table_i18n.zh_CN[o.field] = o.title;
});
ini_table_operation("dataTable");
table.bootstrapTable(table_config);

/**
 * 搜索框参数设置
 */
$('body').bind('click', function(e) {
    var tgt = $(e.target);
    if (tgt.hasClass('btn')) {
        if (tgt.hasClass('search')) {
            table_config.queryParams();
            table.bootstrapTable("refresh", table_config);
        }
    }
});


/**
 * 新增
 */
function add() {
    layer.open({
        type: 1,
        title: '新增',
        content: $('#add_modal'),
        btn: ['确认', '取消'],
        closeBtn: 1,
        area: ['650px'], //默认auto, ['','']
        offset: '100px',

        yes: function(index, layero) {
            var form = $('#add_form');
            var form_validate_config = {
                rules: {
                    id: 'required',
                    resource_type: 'required',
                    resource_id: 'required',
                    operation_reason: 'required'
                },
                errorPlacement: function (error, element) {
                  if (element.attr("name") == 'resource_id') {
                    error.appendTo(element.parent());
                  } else {
                    error.insertAfter(element);
                  }
                },
            };
            form.validate(form_validate_config);
            if (!form.valid()) {
                return;
            }

            //设置数据
            var formData = $('#add_form').serializeArray();
            var resourceIdArr = [];
            var i = 0;
            $.each(formData, function(key, val) {
                if (val.name == 'resource_id') {
                    resourceIdArr[i++] = val.value;
                }
            })
            console.log(resourceIdArr)
            formData.push({ name: 'resourceIdArr', value: resourceIdArr });
            formData.push({ name: 'operate_tag_id', value: operate_tag_id });
            formData.push({ name: 'oper', value: 'add' });
            layer.load();
            $.ajax({
                url: '/theme/operate/topic-tag/detail.json',
                data: formData,
                type: 'post',
                success: function(data) {
                    layer.closeAll('loading');
                    var res = data.data;
                    if (data.errno != 0) {
                        layer.msg(res.message);
                        // table.bootstrapTable('refresh');
                        layer.closeAll('loading');
                        // layer.close(index);
                        return;
                    }

                    layer.msg('操作成功', function() {
                        table.bootstrapTable('refresh');
                        layer.closeAll('loading');
                        // layer.close(index); 根据运营同学反馈:需要新增的操作较多,其要求不关闭弹窗,方便新增操作
                    })
                },
                error: function() {
                    layer.msg('操作失败!');
                    layer.closeAll('loading');
                    // layer.close(index);
                }
            });

        },
        cancel: function(index) {
            parent.layer.close(index);
        },
        end: function() {
            $('#add_form select[name="resource_id"]').val(null).trigger('change');
            $('#add_form')[0].reset();
        }
    });
}

/**
 * 删除操作
 */
function del() {
    var ids = $("#select_ids").text();
    ids = ids ? ids.split(",") : [];
    if (ids.length < 1) {
      layer.msg('请先勾选数据!');
      return false;
    }
    ids = ids.join(',');
    $('#reason_form')[0].reset();
    layer.confirm('确认要删除该记录?', {
      btn: ['确定', '取消']
      // 按钮
    }, function () {
      layer.closeAll('dialog'); // 关闭消息框
      layer.open({
        type: 1,
        title: '确认删除',
        content: $('#reason_modal'),
        btn: ['确认', '取消'],
        closeBtn: 1,
        area: ['600px'],
        offset: ['150px'],
        yes: function(index, layero) {
          var form = $('#reason_form');
          var form_validate_config = {
            rules: {
              operation_reason: 'required'
            }
          };
          form.validate(form_validate_config);
          if (!form.valid()) {
            return;
          }

          layer.load();
          $.ajax({
            url: '/theme/operate/topic-tag/detail.json',
            data: {
              'id': ids,
              'operate_tag_id': operate_tag_id,
              'oper': 'delete',
              'operation_reason': $('#reason_form input[name="operation_reason"]').val()
            },
            type: 'post',
            dataType: 'json',
            success: function(data) {
              layer.closeAll('loading');
              var res = data.data;
              if (data.errno != 0) {
                layer.msg(res.message);
                return;
              }

              layer.close(index);
              layer.msg('操作成功', function() {
                table.bootstrapTable('refresh');
              })
            },
            error: function() {
              layer.msg('操作失败!');
              layer.closeAll('loading');
              layer.close(index);
            }
          });

        },
        cancel: function(index) {
          parent.layer.close(index);
        }
      });
    });
}

// 通过
function pass(id) {
  $('#reason_form')[0].reset();
  layer.open({
    type: 1,
    title: '通过',
    content: $('#reason_modal'),
    btn: ['确认', '取消'],
    closeBtn: 1,
    area: ['600px'],
    offset: ['150px'],
    yes: function(index, layero) {
      var form = $('#reason_form');
      var form_validate_config = {
        rules: {
          operation_reason: 'required'
        }
      };
      form.validate(form_validate_config);
      if (!form.valid()) {
        return;
      }

      layer.load();
      $.ajax({
        url: '/theme/operate/topic-tag/detail.json',
        data: {
          'id': id,
          'operate_tag_id': operate_tag_id,
          'oper': 'pass',
          'operation_reason': $('#reason_form input[name="operation_reason"]').val()
        },
        type: 'post',
        dataType: 'json',
        success: function(data) {
          layer.closeAll('loading');
          var res = data.data;
          if (data.errno != 0) {
            layer.msg(res.message);
            return;
          }

          layer.close(index);
          layer.msg('操作成功', function() {
            table.bootstrapTable('refresh');
          })
        },
        error: function() {
          layer.msg('操作失败!');
          layer.closeAll('loading');
          layer.close(index);
        }
      });

    },
    cancel: function(index) {
      parent.layer.close(index);
    }
  });
}

// 不通过
function refuse(id) {
  $('#reason_form')[0].reset();
  layer.open({
    type: 1,
    title: '不通过',
    content: $('#reason_modal'),
    btn: ['确认', '取消'],
    closeBtn: 1,
    area: ['600px'],
    offset: ['150px'],
    yes: function(index, layero) {
      var form = $('#reason_form');
      var form_validate_config = {
        rules: {
          operation_reason: 'required'
        }
      };
      form.validate(form_validate_config);
      if (!form.valid()) {
        return;
      }

      layer.load();
      $.ajax({
        url: '/theme/operate/topic-tag/detail.json',
        data: {
          'id': id,
          'operate_tag_id': operate_tag_id,
          'oper': 'refuse',
          'operation_reason': $('#reason_form input[name="operation_reason"]').val()
        },
        type: 'post',
        dataType: 'json',
        success: function(data) {
          layer.closeAll('loading');
          var res = data.data;
          if (data.errno != 0) {
            layer.msg(res.message);
            return;
          }

          layer.close(index);
          layer.msg('操作成功', function() {
            table.bootstrapTable('refresh');
          })
        },
        error: function() {
          layer.msg('操作失败!');
          layer.closeAll('loading');
          layer.close(index);
        }
      });

    },
    cancel: function(index) {
      parent.layer.close(index);
    }
  });
}

// 批量通过
function batchPass() {
  var ids = $("#select_ids").text();
  ids = ids ? ids.split(",") : [];
  if (ids.length < 1) {
    layer.msg('请先勾选数据!');
    return false;
  }
  ids = ids.join(',');
  $('#reason_form')[0].reset();
  layer.confirm('确认要批量通过该记录?', {
    btn: ['确定', '取消']
    // 按钮
  }, function () {
    layer.closeAll('dialog'); // 关闭消息框
    layer.open({
      type: 1,
      title: '批量通过',
      content: $('#reason_modal'),
      btn: ['确认', '取消'],
      closeBtn: 1,
      area: ['600px'],
      offset: ['150px'],
      yes: function(index, layero) {
        var form = $('#reason_form');
        var form_validate_config = {
          rules: {
            operation_reason: 'required'
          }
        };
        form.validate(form_validate_config);
        if (!form.valid()) {
          return;
        }

        layer.load();
        $.ajax({
          url: '/theme/operate/topic-tag/detail.json',
          data: {
            'id': ids,
            'operate_tag_id': operate_tag_id,
            'oper': 'pass',
            'operation_reason': $('#reason_form input[name="operation_reason"]').val()
          },
          type: 'post',
          dataType: 'json',
          success: function(data) {
            layer.closeAll('loading');
            var res = data.data;
            if (data.errno != 0) {
              layer.msg(res.message);
              return;
            }

            layer.close(index);
            layer.msg('操作成功', function() {
              table.bootstrapTable('refresh');
            })
          },
          error: function() {
            layer.msg('操作失败!');
            layer.closeAll('loading');
            layer.close(index);
          }
        });

      },
      cancel: function(index) {
        parent.layer.close(index);
      }
    });
  });
}

// 批量不通过
function batchRefuse() {
  var ids = $("#select_ids").text();
  ids = ids ? ids.split(",") : [];
  if (ids.length < 1) {
    layer.msg('请先勾选数据!');
    return false;
  }
  ids = ids.join(',');
  $('#reason_form')[0].reset();
  layer.confirm('确认要批量不通过该记录?', {
    btn: ['确定', '取消']
    // 按钮
  }, function () {
    layer.closeAll('dialog'); // 关闭消息框
    layer.open({
      type: 1,
      title: '批量不通过',
      content: $('#reason_modal'),
      btn: ['确认', '取消'],
      closeBtn: 1,
      area: ['600px'],
      offset: ['150px'],
      yes: function(index, layero) {
        var form = $('#reason_form');
        var form_validate_config = {
          rules: {
            operation_reason: 'required'
          }
        };
        form.validate(form_validate_config);
        if (!form.valid()) {
          return;
        }

        layer.load();
        $.ajax({
          url: '/theme/operate/topic-tag/detail.json',
          data: {
            'id': ids,
            'operate_tag_id': operate_tag_id,
            'oper': 'refuse',
            'operation_reason': $('#reason_form input[name="operation_reason"]').val()
          },
          type: 'post',
          dataType: 'json',
          success: function(data) {
            layer.closeAll('loading');
            var res = data.data;
            if (data.errno != 0) {
              layer.msg(res.message);
              return;
            }

            layer.close(index);
            layer.msg('操作成功', function() {
              table.bootstrapTable('refresh');
            })
          },
          error: function() {
            layer.msg('操作失败!');
            layer.closeAll('loading');
            layer.close(index);
          }
        });

      },
      cancel: function(index) {
        parent.layer.close(index);
      }
    });
  });
}

// 全部通过
function allPass() {
  $('#reason_form')[0].reset();
  layer.confirm('确认要全部通过?', {
    btn: ['确定', '取消']
    // 按钮
  }, function () {
    layer.closeAll('dialog'); // 关闭消息框
    layer.open({
      type: 1,
      title: '全部通过',
      content: $('#reason_modal'),
      btn: ['确认', '取消'],
      closeBtn: 1,
      area: ['600px'],
      offset: ['150px'],
      yes: function(index, layero) {
        var form = $('#reason_form');
        var form_validate_config = {
          rules: {
            operation_reason: 'required'
          }
        };
        form.validate(form_validate_config);
        if (!form.valid()) {
          return;
        }

        layer.load();
        $.ajax({
          url: '/theme/operate/topic-tag/detail.json',
          data: {
            'operate_tag_id': operate_tag_id,
            'oper': 'allPass',
            'operation_reason': $('#reason_form input[name="operation_reason"]').val()
          },
          type: 'post',
          dataType: 'json',
          success: function(data) {
            layer.closeAll('loading');
            var res = data.data;
            if (data.errno != 0) {
              layer.msg(res.message);
              return;
            }

            layer.close(index);
            layer.msg('操作成功', function() {
              table.bootstrapTable('refresh');
            })
          },
          error: function() {
            layer.msg('操作失败!');
            layer.closeAll('loading');
            layer.close(index);
          }
        });

      },
      cancel: function(index) {
        parent.layer.close(index);
      }
    });
  });
}

// 全部不通过
function allRefuse() {
  $('#reason_form')[0].reset();
  layer.confirm('确认要全部不通过?', {
    btn: ['确定', '取消']
    // 按钮
  }, function () {
    layer.closeAll('dialog'); // 关闭消息框
    layer.open({
      type: 1,
      title: '全部不通过',
      content: $('#reason_modal'),
      btn: ['确认', '取消'],
      closeBtn: 1,
      area: ['600px'],
      offset: ['150px'],
      yes: function(index, layero) {
        var form = $('#reason_form');
        var form_validate_config = {
          rules: {
            operation_reason: 'required'
          }
        };
        form.validate(form_validate_config);
        if (!form.valid()) {
          return;
        }

        layer.load();
        $.ajax({
          url: '/theme/operate/topic-tag/detail.json',
          data: {
            'operate_tag_id': operate_tag_id,
            'oper': 'allRefuse',
            'operation_reason': $('#reason_form input[name="operation_reason"]').val()
          },
          type: 'post',
          dataType: 'json',
          success: function(data) {
            layer.closeAll('loading');
            var res = data.data;
            if (data.errno != 0) {
              layer.msg(res.message);
              return;
            }

            layer.close(index);
            layer.msg('操作成功', function() {
              table.bootstrapTable('refresh');
            })
          },
          error: function() {
            layer.msg('操作失败!');
            layer.closeAll('loading');
            layer.close(index);
          }
        });

      },
      cancel: function(index) {
        parent.layer.close(index);
      }
    });
  });
}

function uploader_pic_init() {
    var uploader = PORTAL.Upload('excelUrl', 'uploadImgBtn', 'excelUrl', 'resource', '', 'xls,xlsx');
    uploader.on('uploadSuccess', function(file, response) {
        $('#excelUrl').val(response.data.url);
    });
}

var uploader_init_flag = false;

function importData() {
    $('#import_form')[0].reset();
    layer.open({
        type: 1,
        title: '资源导入',
        content: $('#import_modal'),
        btn: ['确认', '取消'],
        closeBtn: 1,
        area: ['650px', '400px'], //默认auto, ['width','height']
        offset: ['100px'],
        success: function() {
            if (uploader_init_flag == false) {
                uploader_pic_init();
                uploader_init_flag = true;
            }
        },
        yes: function(index, layero) {
            var form = $('#import_form');
            var form_validate_config = {
                rules: {
                    excelUrl: 'required',
                    operation_reason: 'required'
                }
            };
            form.validate(form_validate_config);
            if (!form.valid()) {
                return;
            }

            var data = $('#import_form').serializeArray();
            data.push({ name: 'operate_tag_id', value: operate_tag_id });
            data.push({ name: 'oper', value: 'import' });

            layer.load();
            $.ajax({
                url: '/theme/operate/topic-tag/detail.json',
                data: data,
                type: 'post',
                success: function(data) {
                    layer.closeAll('loading');
                    var res = data.data;
                    if (data.errno != 0) {
                        layer.msg(res.message);
                        return;
                    }

                    layer.close(index);
                    layer.msg('操作成功', function() {
                        table.bootstrapTable('refresh');
                    })
                },
                error: function() {
                    layer.msg('操作失败!');
                    layer.closeAll('loading');
                    // layer.close(index);
                }
            });

        },
        cancel: function(index) {
            parent.layer.close(index);
        }
    });
}

/**
 * 资源名称加载
 */
$('#form_source_name').select2({
    placeholder: "请选择",
    language: "zh-CN",
    ajax: {
        url: '/utility/api/api/theme-jumpselect.json',
        dataType: 'json',
        delay: 250,
        data: function(params) {
            console.log(params);
            var query = {
                keyword: params.term, //输入的内容,会发给服务器进行查找
                oper: 'select',
                type: sourceTypeMap($('#add_form select[name="resource_type"]').val()),
                //以下两行可以在数据量大的时候用到(当下拉框往下拉的时候会加载下一页),数据量不大的时候,可以直接注释
                pagesize: 10, //页面大小
                page: params.page || 1, //当前页
                // 兼容接口
                offset: ((params.page || 1) - 1) * 10,
                limit: 10,
            };
            // 支持孔雀屏
            if (getQueryString("version")) {
              query.version = getQueryString("version");
            }
            return query;
        },
        processResults: function(data, params) {
            var data = data.data;
            params.page = params.page || 1;

            var rows = [];
            for (var item of data.rows) {
              rows.push({id: item.id, text: item.text + "(" + item.id + ")"});
            }

            return {
              results: rows,
              pagination: {
                more: (params.page * 10) < data.total
              }
            };
        }
    },
    escapeMarkup: function(markup) { return markup; }
});

/**
 * 新旧资源类型映射
 * @param type
 * @returns {number}
 */
/*function sourceTypeMap(type) {
    var type = Number(type);
    switch (type) {
        case 1:
            return 1;
        case 5:
            return 2;
        case 8:
            return 3;
        case 10:
            return 4;
        case 11:
            return 5;
        case 12:
            return 6;
        case 13:
            return 8;
        default:
            return 0;
    }
}*/
function sourceTypeMap(type) {
  var type = Number(type);
  switch (type) {
    case 1:
      return 1;
    case 5:
      return 3;
    case 8:
      return 5;
    case 10:
      return 25;
    case 11:
      return 34;
    case 12:
      return 30;
    case 13:
      return 41;
    case 14:
      return 60;
    case 15:
      return 57;
    default:
      return 0;
  }
}

$('body').on('change', '#add_form select[name="resource_type"]', function() {
    $('#add_form select[name="resource_id"]').val(null).trigger('change');
});

// 更多
var selectMore = function() {
  var resource_type = $('#add_modal select[name="resource_type"]').val();
  var source_type_name = { 1: 'theme', 5: 'font', 8: 'wallpaper', 10: 'video-ring', 11: 'ring', 12: 'live-wp' ,13:'screen-clock', 14:'lock-screen' ,15:'control-center'}[resource_type]
  var url = "/theme/operateres/index/" + source_type_name + "?from=operate_tag";
  // 支持孔雀屏
  if (getQueryString("version")) {
    url += "&version=" + getQueryString("version");
  }
  url += "&operate_tag_id=" + operate_tag_id;
  location.href = url;
  console.log(source_type)
};

// 返回话题tag列表页
function backToList() {
    var url = '/theme/operate/topic-tag/index?oper=select';
    // 支持孔雀屏
    if (getQueryString("version")) {
      url += "&version=" + getQueryString("version");
    }
    location.href = url;
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值