Merge branch '20220620-详审打分无最低分校验' into 'release_20220624'

6.24 详审打分无最低分校验

See merge request eshop/fe_service_ebtp_frontend!139
This commit is contained in:
周建龙
2022-06-24 21:25:14 +08:00
4 changed files with 90 additions and 54 deletions

View File

@ -1,5 +1,5 @@
import React, { useEffect, useState } from 'react';
import { Button, Table, Tabs, Space, Progress, Radio, Input, Checkbox, Select, Modal, Pagination, Spin, Form, message, Upload } from 'antd';
import { Button, Table, Tabs, Space, Progress, Radio, Input, Checkbox, Select, Modal, Pagination, Spin, Form, message, Upload, Tooltip } from 'antd';
import { getTabList, getProgress, getScoreDetail, getRegister, submitDetail, updateJudgesStatus, findPriceScoreList, getEval, getFile, calculationPriceScore, saveOffer, getPage, getProjectById, getOfferUrl } from './service';
import '@/assets/ld_style.less'
import FirstTrialTableDetailed from '../BidDetailedManager/module/FirstTrialTableDetailed';
@ -218,7 +218,7 @@ const Index: React.FC<{}> = () => {
title: showNameT.tbr + '报价(元)',
dataIndex: 'evaluatingContent',
sorter: {
compare: (a, b) => a.evaluatingContent - b.evaluatingContent,
compare: (a: any, b: any) => a.evaluatingContent - b.evaluatingContent,
multiple: 2,
},
},
@ -921,13 +921,15 @@ const Index: React.FC<{}> = () => {
if (record.scoreMap && record.scoreMap[item.supplierRegisterId]) {
return (
<div>
<Input
disabled={disabled || endProgress}
min={1} max={record.highScore}
value={record.scoreMap[item.supplierRegisterId].resultValue}
style={{ width: 160 }}
onChange={e => inputChange(e, record.scoreMap[item.supplierRegisterId], item.supplierRegisterId, record.highScore)}
/>
<Tooltip trigger={['focus']} title={<span>{record.lowScore}~{record.highScore}</span>} placement="topLeft">
<Input
disabled={disabled || endProgress}
min={1} max={record.highScore}
value={record.scoreMap[item.supplierRegisterId].resultValue}
style={{ width: 160 }}
onChange={e => inputChange(e, record.scoreMap[item.supplierRegisterId], item.supplierRegisterId, record.highScore, record.lowScore)}
/>
</Tooltip>
<br />
<Button type="link" danger onClick={() => getRemark(record.scoreMap[item.supplierRegisterId], item.supplierRegisterId)}></Button>
<Button hidden={btnAuthority(['ebtp-expert'])} type="link" danger onClick={() => lookFile(record.id, item.supplierRegisterId)}>{showNameT.tb}</Button>
@ -936,7 +938,10 @@ const Index: React.FC<{}> = () => {
} else {
return (
<div>
<Input disabled={disabled || endProgress} min={1} max={record.highScore} onChange={e => inputChange(e, record, item.supplierRegisterId, record.highScore)} style={{ width: 160 }} /><br />
<Tooltip trigger={['focus']} title={<span>{record.lowScore}~{record.highScore}</span>} placement="topLeft">
<Input disabled={disabled || endProgress} min={1} max={record.highScore} onChange={e => inputChange(e, record, item.supplierRegisterId, record.highScore, record.lowScore)} style={{ width: 160 }} />
</Tooltip>
<br />
<Button type="link" danger onClick={() => getRemark(record, item.supplierRegisterId)}></Button>
<Button hidden={btnAuthority(['ebtp-expert'])} type="link" danger onClick={() => lookFile(record.id, item.supplierRegisterId)}>{showNameT.tb}</Button>
</div>
@ -1246,7 +1251,7 @@ const Index: React.FC<{}> = () => {
setDataSource([...totalQualified])
}
const inputChange = (e: any, val: any, id: any, sorce: any) => { // 输入框操作
const inputChange = (e: any, val: any, id: any, sorce: any, lowScore: any) => { // 输入框操作
let inpVal = e.target.value
let inputNum = /^(\-|\+?)\d{0,4}(\.\d{0,5})?$/
if (inputNum.test(inpVal)) {
@ -1254,6 +1259,10 @@ const Index: React.FC<{}> = () => {
message.error('输入分值不可大于最高分值!')
inpVal = sorce
}
if (Number(inpVal) < lowScore) {
message.error('输入分值不可小于最低分值!')
inpVal = lowScore
}
} else {
message.error('请输入正确的分值!')
inpVal = inpVal.substring(0, inpVal.length - 1)

View File

@ -1,5 +1,5 @@
import React, { useEffect, useRef, useState } from 'react';
import { Button, Table, Tabs, Space, Progress, Radio, Input, Checkbox, Select, Modal, Menu, Pagination, Spin, Form, message, Collapse, Upload } from 'antd';
import { Button, Table, Tabs, Space, Progress, Radio, Input, Checkbox, Select, Modal, Menu, Pagination, Spin, Form, message, Collapse, Upload, Tooltip } from 'antd';
import { getTabList, getProgress, getScoreDetail, getRegister, submitDetail, updateJudgesStatus, findPriceScoreList, getMemberInfo, getEval, getUnlock, getCheckData, isStatus, getFile, calculationPriceScore, saveOffer, getPage, getProjectById, getOfferUrl } from './service';
import '@/assets/ld_style.less'
import FirstTrialTableDetailed from '../BidDetailedManager/module/FirstTrialTableDetailed';
@ -954,13 +954,15 @@ const Index: React.FC<{}> = () => {
if (record.scoreMap && record.scoreMap[item.supplierRegisterId]) {
return (
<div>
<Input
disabled={disabled || endProgress}
value={record.scoreMap[item.supplierRegisterId].resultValue}
style={{ width: 160 }}
onChange={e => inputChange(e, record.scoreMap[item.supplierRegisterId], item.supplierRegisterId, record.highScore)}
// onFocus={e => inputFocus(e, record.scoreMap[item.supplierRegisterId], item.supplierRegisterId)}
/>
<Tooltip trigger={['focus']} title={<span>{record.lowScore}~{record.highScore}</span>} placement="topLeft">
<Input
disabled={disabled || endProgress}
value={record.scoreMap[item.supplierRegisterId].resultValue}
style={{ width: 160 }}
onChange={e => inputChange(e, record.scoreMap[item.supplierRegisterId], item.supplierRegisterId, record.highScore, record.lowScore)}
// onFocus={e => inputFocus(e, record.scoreMap[item.supplierRegisterId], item.supplierRegisterId)}
/>
</Tooltip>
<br />
<Button type="link" danger onClick={() => getRemark(record.scoreMap[item.supplierRegisterId], item.supplierRegisterId)}></Button>
<Button hidden={btnAuthority(['ebtp-expert'])} type="link" danger onClick={() => lookFile(record.id, item.supplierRegisterId)}>{showNameT.tb}</Button>
@ -969,7 +971,10 @@ const Index: React.FC<{}> = () => {
} else {
return (
<div>
<Input disabled={disabled || endProgress} onChange={e => inputChange(e, record, item.supplierRegisterId, record.highScore)} style={{ width: 160 }} /><br />
<Tooltip trigger={['focus']} title={<span>{record.lowScore}~{record.highScore}</span>} placement="topLeft">
<Input disabled={disabled || endProgress} onChange={e => inputChange(e, record, item.supplierRegisterId, record.highScore, record.lowScore)} style={{ width: 160 }} />
</Tooltip>
<br />
<Button type="link" danger onClick={() => getRemark(record, item.supplierRegisterId)}></Button>
<Button hidden={btnAuthority(['ebtp-expert'])} type="link" danger onClick={() => lookFile(record.id, item.supplierRegisterId)}>{showNameT.tb}</Button>
</div>
@ -1277,7 +1282,7 @@ const Index: React.FC<{}> = () => {
setDataSource([...totalQualified])
}
const inputChange = (e: any, val: any, id: any, sorce: any) => { // 输入框操作
const inputChange = (e: any, val: any, id: any, sorce: any, lowScore: any) => { // 输入框操作
let inpVal = e.target.value
let inputNum = /^(\-|\+?)\d{0,4}(\.\d{0,5})?$/
if (inputNum.test(inpVal)) {
@ -1285,6 +1290,10 @@ const Index: React.FC<{}> = () => {
message.error('输入分值不可大于最高分值!')
inpVal = sorce
}
if (Number(inpVal) < lowScore) {
message.error('输入分值不可小于最低分值!')
inpVal = lowScore
}
} else {
message.error('请输入正确的分值!')
inpVal = inpVal.substring(0, inpVal.length - 1)

View File

@ -1,5 +1,5 @@
import React, { useEffect, useState } from 'react';
import { Button, Table, Tabs, Space, Progress, Radio, Input, Checkbox, Select, Modal, Pagination, Spin, Form, message, Upload } from 'antd';
import { Button, Table, Tabs, Space, Progress, Radio, Input, Checkbox, Select, Modal, Pagination, Spin, Form, message, Upload, Tooltip } from 'antd';
import { getTabList, getProgress, getScoreDetail, getRegister, submitDetail, updateJudgesStatus, getEval, getFile } from './service';
import '@/assets/ld_style.less'
import { getSessionUserData, getRoomId, getUserToken } from '@/utils/session';
@ -110,7 +110,7 @@ const Index: React.FC<{}> = () => {
category: typeCategory,
judgesStatus: '1',
bidEvalDetailDTOList: bidEvalDetailDTOList,
assessRoomId: assessRoomId,
assessRoomId: assessRoomId,
}
submitDetail({ ...date }).then((res) => {
if (res.code == 200) {
@ -138,7 +138,7 @@ const Index: React.FC<{}> = () => {
category: typeCategory,
judgesStatus: '1',
bidEvalDetailDTOList: bidEvalDetailDTOList,
assessRoomId: assessRoomId,
assessRoomId: assessRoomId,
}
submitDetail({ ...date }).then((res) => {
if (res.code == 200) {
@ -183,7 +183,7 @@ const Index: React.FC<{}> = () => {
category: typeCategory,
judgesStatus: '1',
bidEvalDetailDTOList: bidEvalDetailDTOList,
assessRoomId: assessRoomId,
assessRoomId: assessRoomId,
}
submitDetail({ ...date }).then((res) => {
if (res.code == 200) {
@ -197,7 +197,7 @@ const Index: React.FC<{}> = () => {
}
getProgress({ ...date }).then((res) => {
if (res.code == 200) {
if(res.data == 100){
if (res.data == 100) {
setSpinVisible(false)
bidEvalDetailDTOList = []
submitApi()
@ -228,7 +228,7 @@ const Index: React.FC<{}> = () => {
}
getProgress({ ...date }).then((res) => {
if (res.code == 200) {
if(res.data == 100){
if (res.data == 100) {
submitApi()
} else {
message.error("您有未完成的打分项,请完成后再提交!")
@ -389,7 +389,7 @@ const Index: React.FC<{}> = () => {
record?.standardList?.map((item: any) => {
checkboxOptions.push({ label: item.standardName + '(' + item.standardDetailScore + '分)', value: item.standardDetailScore + '-' + item.id })
})
if (record?.scoreMap && record?.scoreMap[item.supplierRegisterId] && ( record?.scoreMap[item.supplierRegisterId]?.standardId || record?.scoreMap[item.supplierRegisterId]?.id)) {
if (record?.scoreMap && record?.scoreMap[item.supplierRegisterId] && (record?.scoreMap[item.supplierRegisterId]?.standardId || record?.scoreMap[item.supplierRegisterId]?.id)) {
let defaultArr = record.scoreMap[item.supplierRegisterId].standardId.split(",")
let defaultValue: any = []
record?.standardList?.map((item: any) => {
@ -431,14 +431,16 @@ const Index: React.FC<{}> = () => {
if (record.scoreMap && record.scoreMap[item.supplierRegisterId]) {
return (
<div>
<Input
disabled={disabled}
min={1} max={record.highScore}
value={record.scoreMap[item.supplierRegisterId].resultValue}
style={{ width: 160 }}
onChange={e => inputChange(e, record.scoreMap[item.supplierRegisterId], item.supplierRegisterId, record.highScore)}
// onFocus={e => inputFocus(e, record.scoreMap[item.supplierRegisterId], item.supplierRegisterId)}
/>
<Tooltip trigger={['focus']} title={<span>{record.lowScore}~{record.highScore}</span>} placement="topLeft">
<Input
disabled={disabled}
min={1} max={record.highScore}
value={record.scoreMap[item.supplierRegisterId].resultValue}
style={{ width: 160 }}
onChange={e => inputChange(e, record.scoreMap[item.supplierRegisterId], item.supplierRegisterId, record.highScore, record.lowScore)}
// onFocus={e => inputFocus(e, record.scoreMap[item.supplierRegisterId], item.supplierRegisterId)}
/>
</Tooltip>
<br />
<Button type="link" danger onClick={() => getRemark(record.scoreMap[item.supplierRegisterId], item.supplierRegisterId)}></Button>
<Button hidden={btnAuthority(['ebtp-expert'])} type="link" danger onClick={() => lookFile(record.id, item.supplierRegisterId)}></Button>
@ -447,7 +449,10 @@ const Index: React.FC<{}> = () => {
} else {
return (
<div>
<Input disabled={disabled} min={1} max={record.highScore} onChange={e => inputChange(e, record, item.supplierRegisterId, record.highScore)} style={{ width: 160 }} /><br />
<Tooltip trigger={['focus']} title={<span>{record.lowScore}~{record.highScore}</span>} placement="topLeft">
<Input disabled={disabled} min={1} max={record.highScore} onChange={e => inputChange(e, record, item.supplierRegisterId, record.highScore, record.lowScore)} style={{ width: 160 }} />
</Tooltip>
<br />
<Button type="link" danger onClick={() => getRemark(record, item.supplierRegisterId)}></Button>
<Button hidden={btnAuthority(['ebtp-expert'])} type="link" danger onClick={() => lookFile(record.id, item.supplierRegisterId)}></Button>
</div>
@ -615,7 +620,7 @@ const Index: React.FC<{}> = () => {
}
detailValue = detailValueArr.toString()
standardId = standardIdArr.toString()
if(resultValue == 0 && detailValue == "" && standardId == ""){
if (resultValue == 0 && detailValue == "" && standardId == "") {
resultValue = ""
}
} else {
@ -641,9 +646,9 @@ const Index: React.FC<{}> = () => {
if (item.scoreMap == null) {
item.scoreMap = []
}
if(item.scoreMap[supplierId[i]]){
if (item.scoreMap[supplierId[i]]) {
item.scoreMap[supplierId[i]] = { 'categoryId': val.categoryId, 'detailValue': detailValue, 'resultValue': resultValue, 'standardId': standardId, 'id': item.scoreMap[supplierId[i]].id, 'supplierRegisterId': id, 'detailId': val.id, 'remarks': '' }
}else {
} else {
item.scoreMap[supplierId[i]] = { 'categoryId': val.categoryId, 'detailValue': detailValue, 'resultValue': resultValue, 'standardId': standardId, 'id': '', 'supplierRegisterId': id, 'detailId': val.id, 'remarks': '' }
}
}
@ -662,7 +667,7 @@ const Index: React.FC<{}> = () => {
}
})
} else {
if(bidEvalDetailDTOList){
if (bidEvalDetailDTOList) {
bidEvalDetailDTOList.map((item: any) => {
if (item.supplierRegisterId == id && item.detailId == val.id) {
item.resultValue = resultValue
@ -727,7 +732,7 @@ const Index: React.FC<{}> = () => {
setDataSource([...totalQualified])
}
const inputChange = (e: any, val: any, id: any, sorce: any) => { // 输入框操作
const inputChange = (e: any, val: any, id: any, sorce: any, lowScore: any) => { // 输入框操作
let inpVal = e.target.value
let inputNum = /^(\-|\+?)\d{0,4}(\.\d{0,5})?$/
if (inputNum.test(inpVal)) {
@ -735,6 +740,10 @@ const Index: React.FC<{}> = () => {
message.error('输入分值不可大于最高分值!')
inpVal = sorce
}
if (Number(inpVal) < lowScore) {
message.error('输入分值不可小于最低分值!')
inpVal = lowScore
}
} else {
message.error('请输入正确的分值!')
inpVal = inpVal.substring(0, inpVal.length - 1)

View File

@ -1,5 +1,5 @@
import React, { useEffect, useRef, useState } from 'react';
import { Button, Table, Tabs, Space, Progress, Radio, Input, Checkbox, Select, Modal, Menu, Pagination, Spin, Form, message, Collapse, Upload } from 'antd';
import { Button, Table, Tabs, Space, Progress, Radio, Input, Checkbox, Select, Modal, Menu, Pagination, Spin, Form, message, Collapse, Upload, Tooltip } from 'antd';
import { getTabList, getProgress, getScoreDetail, getRegister, submitDetail, updateJudgesStatus, getMemberInfo, getEval, getUnlock, getCheckData, isStatus, getFile } from './service';
import '@/assets/ld_style.less'
import FirstTrialTableLimitedQuantity from '../BidNumberManager/module/FirstTrialTableLimitedQuantity';
@ -250,7 +250,7 @@ const Index: React.FC<{}> = () => {
}
getProgress({ ...date }).then((res) => {
if (res.code == 200) {
if(res.data == 100){
if (res.data == 100) {
submitApi()
} else {
message.error("您有未完成的打分项,请完成后再提交!")
@ -458,13 +458,15 @@ const Index: React.FC<{}> = () => {
if (record.scoreMap && record.scoreMap[item.supplierRegisterId]) {
return (
<div>
<Input
disabled={disabled}
value={record.scoreMap[item.supplierRegisterId].resultValue}
style={{ width: 160 }}
onChange={e => inputChange(e, record.scoreMap[item.supplierRegisterId], item.supplierRegisterId, record.highScore)}
// onFocus={e => inputFocus(e, record.scoreMap[item.supplierRegisterId], item.supplierRegisterId)}
/>
<Tooltip trigger={['focus']} title={<span>{record.lowScore}~{record.highScore}</span>} placement="topLeft">
<Input
disabled={disabled}
value={record.scoreMap[item.supplierRegisterId].resultValue}
style={{ width: 160 }}
onChange={e => inputChange(e, record.scoreMap[item.supplierRegisterId], item.supplierRegisterId, record.highScore, record.lowScore)}
// onFocus={e => inputFocus(e, record.scoreMap[item.supplierRegisterId], item.supplierRegisterId)}
/>
</Tooltip>
<br />
<Button type="link" danger onClick={() => getRemark(record.scoreMap[item.supplierRegisterId], item.supplierRegisterId)}></Button>
<Button hidden={btnAuthority(['ebtp-expert'])} type="link" danger onClick={() => lookFile(record.id, item.supplierRegisterId)}></Button>
@ -473,7 +475,10 @@ const Index: React.FC<{}> = () => {
} else {
return (
<div>
<Input disabled={disabled} onChange={e => inputChange(e, record, item.supplierRegisterId, record.highScore)} style={{ width: 160 }} /><br />
<Tooltip trigger={['focus']} title={<span>{record.lowScore}~{record.highScore}</span>} placement="topLeft">
<Input disabled={disabled} onChange={e => inputChange(e, record, item.supplierRegisterId, record.highScore, record.lowScore)} style={{ width: 160 }} />
</Tooltip>
<br />
<Button type="link" danger onClick={() => getRemark(record, item.supplierRegisterId)}></Button>
<Button hidden={btnAuthority(['ebtp-expert'])} type="link" danger onClick={() => lookFile(record.id, item.supplierRegisterId)}></Button>
</div>
@ -753,7 +758,7 @@ const Index: React.FC<{}> = () => {
setDataSource([...totalQualified])
}
const inputChange = (e: any, val: any, id: any, sorce: any) => { // 输入框操作
const inputChange = (e: any, val: any, id: any, sorce: any, lowScore: any) => { // 输入框操作
let inpVal = e.target.value
let inputNum = /^(\-|\+?)\d{0,4}(\.\d{0,5})?$/
if (inputNum.test(inpVal)) {
@ -761,6 +766,10 @@ const Index: React.FC<{}> = () => {
message.error('输入分值不可大于最高分值!')
inpVal = sorce
}
if (Number(inpVal) < lowScore) {
message.error('输入分值不可小于最低分值!')
inpVal = lowScore
}
} else {
message.error('请输入正确的分值!')
inpVal = inpVal.substring(0, inpVal.length - 1)