forked from huge/frontEnd/hugeOA

Mr Ke
2020-06-24 cb0a06de99bd629c2021e3d9b32fe8eae8c54879
src/components/oa/merits/meritsDetail/index.jsx
@@ -7,7 +7,7 @@
/** 绩效详情 */
import React, { ReactNode, ReactEventHandler, Component } from 'react';
import TableView from '../../../common/TableView';
import { Row, Col, Button, InputNumber, message, DatePicker } from 'antd';
import { Row, Col, Button, InputNumber, message, DatePicker, Input } from 'antd';
import { createHashHistory } from 'history';
import './index.scss';
const history = createHashHistory();
@@ -15,7 +15,7 @@
import fetch from '../../../../api/request';
import moment from 'moment';
const { MonthPicker } = DatePicker;
const { TextArea } = Input;
export default class MeritsDetail extends Component {
  constructor(props) {
@@ -71,12 +71,14 @@
  // 保存操作
  onSave = (item) => {
    console.log('item', item);
    let { meritsAssessId, meritsGrade } = item;
    let { meritsAssessId, meritsGrade, meritsContent } = item;
    fetch({
      url: `api/merits/assess/modifyGrade`,
      params: {
        id : meritsAssessId,
        meritsGrade
      method: 'POST',
      data: {
        id: meritsAssessId,
        meritsGrade: meritsGrade,
        meritsContent: meritsContent
      }
    }).then(res => {
      if (res) {
@@ -95,7 +97,7 @@
    var cols = [
      { title: '编号', dataIndex: 'id', width: '3%' },
      { title: '评分项目', dataIndex: 'scoreItems', width: '6%' },
      { title: '评分目标', dataIndex: 'scoreTarget', width: '10%' },
      // { title: '评分目标', dataIndex: 'scoreTarget', width: '10%' },
      {
        title: '定义与标准', dataIndex: 'standard', width: '25%', render: (cur, item) => {
          return <div dangerouslySetInnerHTML={{
@@ -110,36 +112,60 @@
          }}></div>
        }
      },
      { title: '数据来源', dataIndex: 'dataSources', width: '8%' },
      { title: '取值范围', dataIndex: 'valueRange', width: '5%' },
      // { title: '数据来源', dataIndex: 'dataSources', width: '8%' },
      {
        title: '计算方式', dataIndex: 'countMethod', width: '8%', render: (cur, item) => {
        title: '权重(%)', dataIndex: 'weight', width: '5%'
      },
      {
        title: '取值范围', dataIndex: 'valueRange', width: '5%'
      },
      {
        title: '计算方式', dataIndex: 'countMethod', width: '10%', render: (cur, item) => {
          return <div dangerouslySetInnerHTML={{
            __html: cur.replace(/\n/g, "<br/>")
          }}></div>
        }
      },
      {
        title: '权重(%)', dataIndex: 'weight', width: '6%'
        title: '计算结果', dataIndex: 'alculation', width: '10%'
      },
      {
        title: '配分(分)', dataIndex: 'allotment', width: '6%'
      },
      {
        title: '考评得分(分)', dataIndex: 'meritsGrade', width: '6%', render: (cur, item, index) => {
          return <InputNumber size="small" min={0}
            max={100} formatter={cur => `${cur}分`} parser={value => value.replace('分', '')} value={cur || 0} onChange={(value) => {
              item['meritsGrade'] = value;
      this.props.match.params.boolean == 'true' ?
        {
          title: '评分意见', dataIndex: 'meritsContent', width: '13%', render: (cur, item, index) => {
            return <TextArea autoSize={{ minRows: 3, maxRows: 10 }} value={cur} onChange={({ target: { value } }) => {
              console.log('value', value);
              item['meritsContent'] = value;
              this.refs['table-view'].onSetDataSource({ index, data: item })
            }} />
          }
        }
      },
        :
        {
          title: '评分意见', dataIndex: 'meritsContent', width: '13%'
        },
      // {
      //   title: '配分(分)', dataIndex: 'allotment', width: '6%'
      // },
      this.props.match.params.boolean == 'true' ?
        {
          title: '考评得分(分)', dataIndex: 'meritsGrade', width: '6%', render: (cur, item, index) => {
            return <InputNumber size="small" min={0}
              max={100} formatter={cur => `${cur}分`} parser={value => value.replace('分', '')} value={cur || 0} onChange={(value) => {
                item['meritsGrade'] = value;
                this.refs['table-view'].onSetDataSource({ index, data: item })
              }} />
          }
        }
        :
        {
          title: '考评得分(分)', dataIndex: 'meritsGrade', width: '6%'
        },
    ];
    if (this.props.match.params.boolean) {
    if (this.props.match.params.boolean == 'true') {
      console.log(this.props.match.params.boolean);
      return cols.concat({
        title: '操作', dataIndex: 'operation', width: '10%', render: (cur, item) => {
          return <a onClick={() => { this.onSave(item) }}>保存</a>
          return <a onClick={() => { this.onSave(item) }}>评分</a>
        }
      })
    } else {