Browse Source

报表配置修改

dev
wenlele 1 year ago
parent
commit
1ad0f97842
  1. 37
      web/client/src/sections/service/components/automatic-Modal.jsx
  2. 6
      web/client/src/sections/service/containers/automaticReport.jsx

37
web/client/src/sections/service/components/automatic-Modal.jsx

@ -33,7 +33,7 @@ const AutomaticModal = ({ actions, dispatch, apiRoot, qiniuUrl, visible, eidtDat
setStructChech(struc) setStructChech(struc)
let Factor = {} let Factor = {}
struc?.forEach(d => { struc?.forEach(d => {
Factor[d.strucId] = d.factor?.filter(w => eidtData?.structList?.find(h => h.structId == d.strucId)?.factors?.map(g => g.codeName)?.includes(w.proto)) Factor[d.strucId] = d.factor?.filter(w => eidtData?.structList?.find(h => h.structId == d.strucId)?.factors?.map(g => g.codeName)?.includes(w.id))
}) })
setFactorChech(Factor) setFactorChech(Factor)
// setActiveKey(eidtData?.factors?.map(s => s.codeName) || []) // setActiveKey(eidtData?.factors?.map(s => s.codeName) || [])
@ -61,7 +61,7 @@ const AutomaticModal = ({ actions, dispatch, apiRoot, qiniuUrl, visible, eidtDat
onOk={() => { onOk={() => {
form.current.validate().then((v) => { form.current.validate().then((v) => {
console.log(11, v); // console.log(11, v);
let data = { let data = {
id: eidtData?.id, id: eidtData?.id,
reportName: v.reportName, // reportName: v.reportName, //
@ -104,7 +104,7 @@ const AutomaticModal = ({ actions, dispatch, apiRoot, qiniuUrl, visible, eidtDat
v[p + 'factorId']?.forEach(d => { v[p + 'factorId']?.forEach(d => {
let factorFind = structFind?.factors?.find(c => c.codeName == d) || {} let factorFind = structFind?.factors?.find(c => c.codeName == d) || {}
let index = d.length + structNameIndex + 5 let index = d.toString().length + structNameIndex + 5
let factorData = {} let factorData = {}
for (let key in v) { for (let key in v) {
factorData.codeName = d factorData.codeName = d
@ -118,7 +118,7 @@ const AutomaticModal = ({ actions, dispatch, apiRoot, qiniuUrl, visible, eidtDat
// //
if (key?.slice(index) == 'factorDescrip') factorData.factorDescrip = v[key] if (key?.slice(index) == 'factorDescrip') factorData.factorDescrip = v[key]
// //
if (key?.slice(index) == 'sensorNames') factorData.sensorNames = factorChech[p]?.find(p => p.proto == d)?.sensor?.filter(f => v[key]?.includes(f.id))?.map(c => ({ id: c.id, name: c.name })) || [] if (key?.slice(index) == 'sensorNames') factorData.sensorNames = factorChech[p]?.find(p => p.id == d)?.sensor?.filter(f => v[key]?.includes(f.id))?.map(c => ({ id: c.id, name: c.name })) || []
// //
if (key?.slice(index) == 'startEndTime') { if (key?.slice(index) == 'startEndTime') {
factorData.startTime = v[key] && v[key][0] && moment(v[key][0]).format('YYYY-MM-DD HH:mm:ss') factorData.startTime = v[key] && v[key][0] && moment(v[key][0]).format('YYYY-MM-DD HH:mm:ss')
@ -129,7 +129,7 @@ const AutomaticModal = ({ actions, dispatch, apiRoot, qiniuUrl, visible, eidtDat
factorData.tempName?.push({ factorData.tempName?.push({
index: 1, index: 1,
id: v[key], id: v[key],
name: factorChech[p]?.find(p => p.proto == d)?.sensor?.find(f => v[key] == f.id)?.name name: factorChech[p]?.find(p => p.id == d)?.sensor?.find(f => v[key] == f.id)?.name
}) })
} }
// //
@ -157,6 +157,7 @@ const AutomaticModal = ({ actions, dispatch, apiRoot, qiniuUrl, visible, eidtDat
data.structList.push(structData) data.structList.push(structData)
}) })
// console.log(222, data);
dispatch(service.postAutomaticReport(data)).then((res) => { dispatch(service.postAutomaticReport(data)).then((res) => {
if (res.success) { if (res.success) {
close() close()
@ -288,11 +289,11 @@ const AutomaticModal = ({ actions, dispatch, apiRoot, qiniuUrl, visible, eidtDat
initValue={structFind?.factors?.map(s => s.codeName) || []} initValue={structFind?.factors?.map(s => s.codeName) || []}
rules={[{ required: true, message: "请选择监测因素" }]} disabled={structId ? false : true} rules={[{ required: true, message: "请选择监测因素" }]} disabled={structId ? false : true}
onChange={v => { onChange={v => {
setFactorChech({ ...factorChech, [s.strucId]: s.factor?.filter(d => v.includes(d.proto)) || [] }) setFactorChech({ ...factorChech, [s.strucId]: s.factor?.filter(d => v.includes(d.id)) || [] })
// setActiveKey(v) // setActiveKey(v)
}} > }} >
{s.factor?.map((item) => { {s.factor?.map((item) => {
return <Form.Select.Option value={item.proto} key={item.proto} label={item.name}></Form.Select.Option> return <Form.Select.Option value={item.id} key={item.id} label={item.name}></Form.Select.Option>
})} })}
</Form.Select> </Form.Select>
@ -305,14 +306,14 @@ const AutomaticModal = ({ actions, dispatch, apiRoot, qiniuUrl, visible, eidtDat
> >
{ {
factorChech[s.strucId]?.map(p => { factorChech[s.strucId]?.map(p => {
let factorFind = structFind?.factors?.find(c => c.codeName == p.proto) || {} let factorFind = structFind?.factors?.find(c => c.codeName == p.id) || {}
return <Collapse.Panel header={p.name} itemKey={p.proto} key={p.proto}> return <Collapse.Panel header={p.name} itemKey={p.id} key={p.id}>
<div style={{ background: "#FFF" }}> <div style={{ background: "#FFF" }}>
<Form.TextArea field={s.strucId + 'struc' + p.proto + "pointDescrip"} label='布点描述' style={{ width: 400 }} autosize={{ minRows: 2, maxRows: 10 }} placeholder="请输入布点描述" showClear <Form.TextArea field={s.strucId + 'struc' + p.id + "pointDescrip"} label='布点描述' style={{ width: 340 }} autosize={{ minRows: 2, maxRows: 10 }} placeholder="请输入布点描述" showClear
initValue={factorFind?.pointDescrip || ""} initValue={factorFind?.pointDescrip || ""}
rules={[{ required: true, message: "请输入布点描述" }]} rules={[{ required: true, message: "请输入布点描述" }]}
/> />
<Form.Upload label="布点图片" field={s.strucId + 'struc' + p.proto + "pointPicPath"} style={{ display: 'inline-block', }} <Form.Upload label="布点图片" field={s.strucId + 'struc' + p.id + "pointPicPath"} style={{ display: 'inline-block', }}
initValue={factorFind?.pointPicPath && [{ url: `/_file-server/${factorFind?.pointPicPath?.slice(qiniuUrl.length + 1)}`, name: factorFind?.pointPicPath?.split('/')?.pop(), status: 'success', preview: ['png', 'jpg', 'jpeg'].includes(factorFind?.pointPicPath?.split('.')?.pop()?.replace('.', '')) }] || null} initValue={factorFind?.pointPicPath && [{ url: `/_file-server/${factorFind?.pointPicPath?.slice(qiniuUrl.length + 1)}`, name: factorFind?.pointPicPath?.split('/')?.pop(), status: 'success', preview: ['png', 'jpg', 'jpeg'].includes(factorFind?.pointPicPath?.split('.')?.pop()?.replace('.', '')) }] || null}
rules={[{ required: true, message: "请上传布点图片" }]} rules={[{ required: true, message: "请上传布点图片" }]}
action={`${apiRoot}/attachments/p`} action={`${apiRoot}/attachments/p`}
@ -325,12 +326,12 @@ const AutomaticModal = ({ actions, dispatch, apiRoot, qiniuUrl, visible, eidtDat
</Form.Upload> </Form.Upload>
{s.proto == 2001 && {s.proto == 2001 &&
<Form.TextArea field={s.strucId + 'struc' + p.proto + "factorDescrip"} label='索力监测描述' style={{ width: 400 }} autosize={{ minRows: 2, maxRows: 10 }} placeholder="请输入布点描述" showClear <Form.TextArea field={s.strucId + 'struc' + p.id + "factorDescrip"} label='索力监测描述' style={{ width: 400 }} autosize={{ minRows: 2, maxRows: 10 }} placeholder="请输入布点描述" showClear
initValue={factorFind?.factorDescrip || ""} initValue={factorFind?.factorDescrip || ""}
/> />
} }
<Form.Select label="测点选择" field={s.strucId + 'struc' + p.proto + "sensorNames"} multiple={true} placeholder="请选择测点选择" style={{ width: 300 }} showClear filter <Form.Select label="测点选择" field={s.strucId + 'struc' + p.id + "sensorNames"} multiple={true} placeholder="请选择测点选择" style={{ width: 300 }} showClear filter
initValue={factorFind?.sensorNames?.map(a => a.id) || []} initValue={factorFind?.sensorNames?.map(a => a.id) || []}
rules={[{ required: true, message: "请选择测点选择" }]} rules={[{ required: true, message: "请选择测点选择" }]}
> >
@ -338,20 +339,20 @@ const AutomaticModal = ({ actions, dispatch, apiRoot, qiniuUrl, visible, eidtDat
return <Form.Select.Option value={item.id} label={item.name}></Form.Select.Option> return <Form.Select.Option value={item.id} label={item.name}></Form.Select.Option>
})} })}
</Form.Select> </Form.Select>
<Form.DatePicker field={s.strucId + 'struc' + p.proto + 'startEndTime'} label='开始结束时间' type='dateTimeRange' showClear style={{ width: 360 }} <Form.DatePicker field={s.strucId + 'struc' + p.id + 'startEndTime'} label='开始结束时间' type='dateTimeRange' showClear style={{ width: 360 }}
initValue={factorFind?.startTime && [moment(factorFind?.startTime).format('YYYY-MM-DD HH:mm:ss'), moment(factorFind?.endTime).format('YYYY-MM-DD HH:mm:ss')] || null} initValue={factorFind?.startTime && [moment(factorFind?.startTime).format('YYYY-MM-DD HH:mm:ss'), moment(factorFind?.endTime).format('YYYY-MM-DD HH:mm:ss')] || null}
rules={[{ required: true, message: "请选择开始结束时间" }]} rules={[{ required: true, message: "请选择开始结束时间" }]}
/> />
{ {
['2001', '4004', '4007', '4008'].includes(p.proto) && ['2001', '4004', '4007', '4008'].includes(p.proto) &&
<Form.DatePicker field={s.strucId + 'struc' + p.proto + 'initialTime'} label='数据初始时间' type='dateTime' showClear <Form.DatePicker field={s.strucId + 'struc' + p.id + 'initialTime'} label='数据初始时间' type='dateTime' showClear
rules={[{ required: true, message: "请选择数据初始时间" }]} rules={[{ required: true, message: "请选择数据初始时间" }]}
initValue={factorFind?.initialTime && moment(factorFind?.initialTime).format('YYYY-MM-DD HH:mm:ss')} initValue={factorFind?.initialTime && moment(factorFind?.initialTime).format('YYYY-MM-DD HH:mm:ss')}
/> />
} }
{ {
['4009', '3001', '4004', '4001', '4007'].includes(s.proto) && <> ['4009', '3001', '4004', '4001', '4007'].includes(s.proto) && <>
<Form.Select label="关联温度的测点" field={s.strucId + 'struc' + p.proto + "tempName1"} showClear placeholder="请选择关联的温度测点" style={{ width: 300 }} filter <Form.Select label="关联温度的测点" field={s.strucId + 'struc' + p.id + "tempName1"} showClear placeholder="请选择关联的温度测点" style={{ width: 300 }} filter
initValue={factorFind?.tempName?.find(c => c.index == 1)?.id || ""} initValue={factorFind?.tempName?.find(c => c.index == 1)?.id || ""}
onChange={v => { onChange={v => {
@ -363,7 +364,7 @@ const AutomaticModal = ({ actions, dispatch, apiRoot, qiniuUrl, visible, eidtDat
})} })}
</Form.Select> </Form.Select>
<Form.Select label="温度测点" field={s.strucId + 'struc' + p.proto + "tempName2"} placeholder="请选择温度测点" style={{ width: 300 }} filter showClear <Form.Select label="温度测点" field={s.strucId + 'struc' + p.id + "tempName2"} placeholder="请选择温度测点" style={{ width: 300 }} filter showClear
initValue={factorFind?.tempName?.find(c => c.index == 2)?.id || ""} initValue={factorFind?.tempName?.find(c => c.index == 2)?.id || ""}
> >
{s.factors?.find(d => d.proto == 1004 || d.proto == 1002)?.sensor?.map((item) => { {s.factors?.find(d => d.proto == 1004 || d.proto == 1002)?.sensor?.map((item) => {
@ -371,7 +372,7 @@ const AutomaticModal = ({ actions, dispatch, apiRoot, qiniuUrl, visible, eidtDat
})} })}
</Form.Select> </Form.Select>
<Form.DatePicker field={s.strucId + 'struc' + p.proto + 'releTime'} label='关联开始结束时间' type='dateTimeRange' showClear style={{ width: 360 }} <Form.DatePicker field={s.strucId + 'struc' + p.id + 'releTime'} label='关联开始结束时间' type='dateTimeRange' showClear style={{ width: 360 }}
initValue={factorFind?.releStartTime && [moment(factorFind?.releStartTime).format('YYYY-MM-DD HH:mm:ss'), moment(factorFind?.releEndTime).format('YYYY-MM-DD HH:mm:ss')] || null} initValue={factorFind?.releStartTime && [moment(factorFind?.releStartTime).format('YYYY-MM-DD HH:mm:ss'), moment(factorFind?.releEndTime).format('YYYY-MM-DD HH:mm:ss')] || null}
/> />
</> </>

6
web/client/src/sections/service/containers/automaticReport.jsx

@ -134,9 +134,9 @@ const AutomaticReport = ({ dispatch, actions, user, clientHeight, loading, gener
4007: 'QDQXJC', 4007: 'QDQXJC',
1004: 'JGWDJC' 1004: 'JGWDJC'
} }
row?.factors?.forEach(d => { // row?.factors?.forEach(d => {
d.codeName = dataList[d.codeName] // d.codeName = dataList[d.codeName]
}) // })
dispatch(service.postGenerateReport({ ...row, structId: "" })).then((res) => { dispatch(service.postGenerateReport({ ...row, structId: "" })).then((res) => {
if (res.success) { if (res.success) {

Loading…
Cancel
Save