| | |
| | | /** 绩效详情 */ |
| | | 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(); |
| | |
| | | import fetch from '../../../../api/request'; |
| | | import moment from 'moment'; |
| | | const { MonthPicker } = DatePicker; |
| | | |
| | | const { TextArea } = Input; |
| | | |
| | | export default class MeritsDetail extends Component { |
| | | constructor(props) { |
| | |
| | | // 保存操作 |
| | | onSave = (item) => { |
| | | console.log('item', item); |
| | | let { meritsAssessId, meritsGrade } = item; |
| | | let { meritsAssessId, meritsGrade, meritsContent } = item; |
| | | fetch({ |
| | | url: `api/merits/assess/modifyGrade`, |
| | | params: { |
| | | method: 'POST', |
| | | data: { |
| | | id : meritsAssessId, |
| | | meritsGrade |
| | | meritsGrade : meritsGrade, |
| | | meritsContent : meritsContent |
| | | } |
| | | }).then(res => { |
| | | if (res) { |
| | |
| | | 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={{ |
| | |
| | | }}></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%' |
| | | }, |
| | | 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={(value) => { |
| | | item['meritsContent'] = value.targrt.value; |
| | | this.refs['table-view'].onSetDataSource({ index, data: item }) |
| | | }} /> |
| | | } |
| | | } |
| | | : |
| | | { |
| | | title: '配分(分)', dataIndex: 'allotment', width: '6%' |
| | | 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} |
| | |
| | | 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 { |
| | |
| | | url: `api/merits/assess/findMeritsDetail`, |
| | | formData: { |
| | | ...formData, |
| | | userId: this.props.match.params.userId || JSON.parse(window.localStorage.getItem('loginUser')) |
| | | userId: this.props.match.params.userId || JSON.parse(window.localStorage.getItem('loginUser')).userId |
| | | }, |
| | | key: formData.__key, |
| | | columns: this.renderColumns(), |