package com.engine.kq.cmd.upgrade;

import com.engine.common.biz.AbstractCommonCommand;
import com.engine.common.entity.BizLogContext;
import com.engine.core.interceptor.CommandContext;
import com.engine.kq.biz.KQOneStopUp;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import weaver.conn.RecordSet;
import weaver.hrm.User;
import weaver.hrm.company.DepartmentComInfo;
import weaver.hrm.company.SubCompanyComInfo;
import weaver.hrm.resource.ResourceComInfo;
import weaver.systeminfo.SystemEnv;

/**
 * 调休数据升级
 * @author pzy
 *
 */
public class DoUpgrade7Cmd extends AbstractCommonCommand<Map<String, Object>>{

	public DoUpgrade7Cmd(Map<String, Object> params, User user) {
		this.user = user;
		this.params = params;
	}

	@Override
	public BizLogContext getLogContext() {
		// TODO Auto-generated method stub
		return null;
	}

	@Override
	public Map<String, Object> execute(CommandContext commandContext) {
		Map<String,Object> retmap = new HashMap<String,Object>();
    List<Object> items = new ArrayList<>();
    RecordSet rs = new RecordSet();
    RecordSet rs1 = new RecordSet();
		try {
      ResourceComInfo rci = new ResourceComInfo();
      SubCompanyComInfo sci = new SubCompanyComInfo();
      DepartmentComInfo dci = new DepartmentComInfo();
		  KQOneStopUp kqOneStopUp = new KQOneStopUp();
      kqOneStopUp.clearBalance("-13");
		  kqOneStopUp.upOvertimePiad();

      Map<String,Object> overtimepaidmap = new HashMap<String,Object>();
      List<Object> overtimepaidList = new ArrayList<>();

      String getOvertimepaidSql = "select* from kq_BalanceOfLeave where leaverulesid in(-13) order by leaverulesid ";
      rs.executeQuery(getOvertimepaidSql);
      while (rs.next()){
        String resourceid = rs.getString("resourceid");
        String lastname = rci.getLastname(resourceid);
        String subname = sci.getSubCompanyname(rci.getSubCompanyID(resourceid));
        String deptname = dci.getDepartmentname(rci.getDepartmentID(resourceid));
        String extraamount = rs.getString("extraamount");
        String desc = lastname+" "+subname+" "+deptname+" "+extraamount;
        overtimepaidList.add(desc);
      }
      overtimepaidmap.put("label", SystemEnv.getHtmlLabelName(10000844,weaver.general.Util.getIntValue(user.getLanguage())));
      overtimepaidmap.put("status", "1");
      overtimepaidmap.put("results", overtimepaidList);
      items.add(overtimepaidmap);

			retmap.put("status", "1");
      retmap.put("items", items);
		} catch (Exception e) {
			writeLog(e);
      retmap.put("status", "-1");
      retmap.put("message",  SystemEnv.getHtmlLabelName(382661,user.getLanguage()));
		}
		return retmap;
	}

}
