function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
/**
 * 异常统计
 */
import { useSetState } from 'ahooks';
import dayjs from 'dayjs';
import { VmEmpty, VmPieCharts, VmWrapper } from "../../../_components";
import { AttendanceService } from "../../api";
import { sumBy } from 'lodash';
import { jsx as _jsx } from "react/jsx-runtime";
export default function Exeception(props) {
  var id = props.id,
    service = props.service;
  var _useSetState = useSetState({
      startDate: dayjs().startOf('M'),
      endDate: dayjs()
    }),
    _useSetState2 = _slicedToArray(_useSetState, 2),
    state = _useSetState2[0],
    setState = _useSetState2[1];
  var startDate = state.startDate,
    endDate = state.endDate;
  var _AttendanceService$us = AttendanceService.useAnalysis(id, startDate.format('YYYY-MM-DD'), endDate.format('YYYY-MM-DD'), service),
    attendAnalysisRes = _AttendanceService$us.attendAnalysisRes;
  var handleDateChange = function handleDateChange(dates) {
    setState({
      startDate: dates[0],
      endDate: dates[1]
    });
  };
  return /*#__PURE__*/_jsx("div", {
    className: "staff-attend-exec",
    children: /*#__PURE__*/_jsx(VmWrapper, {
      title: "\u8003\u52E4\u5F02\u5E38\u7EDF\u8BA1",
      dateValue: [dayjs(startDate), dayjs(endDate)],
      filterType: "rangePicker",
      filterChange: function filterChange(dates) {
        return dates && handleDateChange(dates);
      },
      children: (attendAnalysisRes === null || attendAnalysisRes === void 0 ? void 0 : attendAnalysisRes.length) > 0 ? /*#__PURE__*/_jsx(VmPieCharts, {
        unit: "\u6B21",
        name: "\u8003\u52E4\u5F02\u5E38",
        innerRadius: ['50%', '65%'],
        outerRadius: ['65%', '70%'],
        dataList: attendAnalysisRes || [],
        total: sumBy(attendAnalysisRes, 'value'),
        title: "\u603B\u6570(\u6B21)",
        legendConfig: {
          right: 12
        }
      }) : /*#__PURE__*/_jsx(VmEmpty, {
        type: "NO_CHART"
      })
    })
  }, id);
}