package com.engine.kq.service.impl;

import com.engine.core.impl.Service;
import com.engine.kq.cmd.reportfielddefine.*;
import com.engine.kq.service.KQReportFieldDefineService;
import weaver.hrm.User;

import java.util.Map;


public class KQReportFieldDefineServiceImpl extends Service implements KQReportFieldDefineService {

  /**
   * 获取考勤报表定制列右键菜单
   *
   * @param params
   * @param user
   * @return
   */
  @Override
  public Map<String, Object> getRightMenu(Map<String, Object> params, User user) {
    return commandExecutor.execute(new GetRightMenuCmd(params, user));
  }

  /**
   * 获取考勤报表定制列页签
   *
   * @param params
   * @param user
   * @return
   */
  @Override
  public Map<String, Object> getFieldDefineTabs(Map<String, Object> params, User user) {
    return commandExecutor.execute(new GetFieldDefineTabsCmd(params, user));
  }

  /**
   * 获取考勤报表定制列列表
   *
   * @param params
   * @param user
   * @return
   */
  @Override
  public Map<String, Object> getFieldDefineList(Map<String, Object> params, User user) {
    return commandExecutor.execute(new GetFieldDefineListCmd(params, user));
  }

  /**
   * 保存考勤报表定制列列表
   *
   * @param params
   * @param user
   * @return
   */
  @Override
  public Map<String, Object> saveFieldDefineList(Map<String, Object> params, User user) {
    return commandExecutor.execute(new SaveFieldDefineListCmd(params, user));
  }

  /**
   * 新增考勤报表定制列表单
   *
   * @param params
   * @param user
   * @return
   */
  @Override
  public Map<String, Object> getFieldDefineForm(Map<String, Object> params, User user) {
    return commandExecutor.execute(new GetFieldDefineFormCmd(params, user));
  }

  /**
   * 保存考勤报表定制列表单
   *
   * @param params
   * @param user
   * @return
   */
  @Override
  public Map<String, Object> saveFieldDefine(Map<String, Object> params, User user) {
    return commandExecutor.execute(new SaveFieldDefineCmd(params, user));
  }

  /**
   * 删除考勤报表定制列
   *
   * @param params
   * @param user
   * @return
   */
  @Override
  public Map<String, Object> deleteFieldDefine(Map<String, Object> params, User user) {
    return commandExecutor.execute(new DeleteFieldDefineCmd(params, user));
  }

  /**
   * 获取考勤报表定制列分组列表
   *
   * @param params
   * @param user
   * @return
   */
  @Override
  public Map<String, Object> getGroupList(Map<String, Object> params, User user) {
    return commandExecutor.execute(new GetGroupListCmd(params, user));
  }

  /**
   * 获取考勤报表定制列分组表单
   *
   * @param params
   * @param user
   * @return
   */
  @Override
  public Map<String, Object> getGroupForm(Map<String, Object> params, User user) {
    return commandExecutor.execute(new GetGroupFormCmd(params, user));
  }

  /**
   * 保存考勤报表定制列分组表单
   *
   * @param params
   * @param user
   * @return
   */
  @Override
  public Map<String, Object> saveGroup(Map<String, Object> params, User user) {
    return commandExecutor.execute(new SaveGroupCmd(params, user));
  }

  /**
   * 删除考勤报表定制列分组
   *
   * @param params
   * @param user
   * @return
   */
  @Override
  public Map<String, Object> deleteGroup(Map<String, Object> params, User user) {
    return commandExecutor.execute(new DeleteGroupCmd(params, user));
  }

  /**
   * 移动考勤报表定制列分组
   *
   * @param params
   * @param user
   * @return
   */
  public Map<String, Object> changeFieldGroup(Map<String, Object> params, User user) {
    return commandExecutor.execute(new ChangeFieldGroupCmd(params, user));
  }

  /**
   * 获取考勤报表展示列模板页签
   *
   * @param params
   * @param user
   * @return
   */
  @Override
  public Map<String, Object> getReportMoudleTabs(Map<String, Object> params, User user) {
    return commandExecutor.execute(new GetReportMoudleTabsCmd(params, user));
  }

  /**
   * 获取自定义模板表单
   *
   * @param params
   * @param user
   * @return
   */
  @Override
  public Map<String, Object> getReportMoudleForm(Map<String, Object> params, User user) {
    return commandExecutor.execute(new GetReportMoudleFormCmd(params, user));
  }

  /**
   * 保存考勤报表展示列模板页签
   *
   * @param params
   * @param user
   * @return
   */
  @Override
  public Map<String, Object> saveReportMoudle(Map<String, Object> params, User user) {
    return commandExecutor.execute(new SaveReportMoudleCmd(params, user));
  }

  /**
   * 删除考勤报表展示列模板页签
   *
   * @param params
   * @param user
   * @return
   */
  @Override
  public Map<String, Object> deleteReportMoudle(Map<String, Object> params, User user) {
    return commandExecutor.execute(new DeleteReportMoudleCmd(params, user));
  }

  /**
   * 获取考勤报表排序设置
   *
   * @param params
   * @param user
   * @return
   */
  @Override
  public Map<String, Object> getFieldOrderDefine(Map<String, Object> params, User user) {
    return commandExecutor.execute(new GetFieldOrderDefineCmd(params, user));
  }

  /**
   * 保存考勤报表排序设置
   *
   * @param params
   * @param user
   * @return
   */
  public Map<String, Object> saveFieldOrderDefine(Map<String, Object> params, User user) {
    return commandExecutor.execute(new SaveFieldOrderDefineCmd(params, user));
  }
}
