Commit d0f77ef8 authored by 皮倩雯's avatar 皮倩雯

fix: '修改样式'

parent b810613d
Pipeline #42517 skipped with stages
......@@ -948,34 +948,34 @@ const WebDic = () => {
fieldKey={[fieldKey, 'frist']}
rules={[
{ required: true, message: '不能为空' },
// {
// validator: (rule, value, callback) => {
// const nodeName = addForm.getFieldsValue().nodeName1; // 第一项的nodeName
// const nodeName1 = addForm.getFieldsValue();
// console.log(nodeName);
// let result = nodeName1.users;
// let arr = [];
// // eslint-disable-next-line array-callback-return
// result.map(item => {
// if (item) {
// let a = item.nodeName;
// if (a !== '') {
// arr.push(a);
// }
// }
// });
// if (nodeName !== undefined) {
// arr.unshift(nodeName);
// }
{
validator: (rule, value, callback) => {
const nodeName = addForm.getFieldsValue().nodeName1; // 第一项的nodeName
const nodeName1 = addForm.getFieldsValue();
console.log(nodeName);
let result = nodeName1.users;
let arr = [];
// eslint-disable-next-line array-callback-return
result.map(item => {
if (item) {
let a = item.nodeName;
if (a !== '') {
arr.push(a);
}
}
});
if (nodeName !== undefined) {
arr.unshift(nodeName);
}
// console.log(arr);
// if (new Set(arr).size !== arr.length) {
// arr = [...new Set(arr)];
// console.log(arr);
// callback('用户名重复');
// }
// },
// },
console.log(arr);
if (new Set(arr).size !== arr.length) {
arr = [...new Set(arr)];
console.log(arr);
callback('用户名重复');
}
},
},
]}
>
<Input placeholder="请输入名称" />
......
This diff is collapsed.
.dictionaryContainer{
.font {
font-weight: bold;
}
.containerBox {
width: 100vm;
height: calc(100vh - 70px) ;
background: #ffffff;
.ant-table.ant-table-small .ant-table-tbody .ant-table-wrapper:only-child .ant-table{
margin-left: 0;
}
.ant-table.ant-table-bordered > .ant-table-container{
border: none;
}
.clickRowStyle{
background: #cfe7fd;
}
.ant-table-thead tr th{
font-weight: 600;
color:rgba(0,0,0,0.85);
}
}
.config{
display: flex;
padding: 1rem 0 0.5rem 0.5rem;
justify-content: space-between;
width: calc(100% - 10px);
.title{
font-size: 18px;
color: rgba(0, 114, 255, 1);
font-weight: bold;
}
.btn{
display: flex;
justify-content: flex-end;
width: 20rem;
}
.ant-btn{
display: flex;
align-items: center;
margin-left: 20px;
}
}
}
\ No newline at end of file
.dictionaryContainer {
.ant-card-body {
padding: 0px 24px 24px 17px;
}
}
/*
* @Description:
* @Author: leizhe
* @Date: 2021-07-13 16:32:28
* @LastEditTime: 2021-10-26 16:38:27
* @LastEditors: leizhe
*/
import React from 'react';
import { Tabs, Card } from 'antd';
import PageContainer from '@/components/BasePageContainer';
import WebDic from './WebDic';
import AppDic from './AppDic';
import styles from './index.less';
// import VersionPublish from './VersionPublish';
const dictionary1 = () => {
const { TabPane } = Tabs;
return (
<PageContainer className={styles.dictionary1Container}>
<Card>
<Tabs defaultActiveKey="1">
<TabPane tab="通用数据字典" key="1">
<WebDic />
</TabPane>
<TabPane tab="App数据字典" key="2">
<AppDic />
</TabPane>
</Tabs>
</Card>
</PageContainer>
);
};
export default dictionary1;
.dictionary1Container{
.ant-card-body {
padding: 0px 24px 24px 17px;
}
}
\ No newline at end of file
......@@ -21,11 +21,7 @@ import {
CM_XWBPlan_DataList,
} from '@/services/maintenance/api';
import { CM_Event_LoadDepartmentAndRoles } from '@/services/standingBook/api';
import {
PlusOutlined,
DownOutlined,
StepForwardFilled,
} from '@ant-design/icons';
import { PlusOutlined, DownOutlined, StepForwardFilled } from '@ant-design/icons';
import ChangeAdd from './ChangeAdd';
const { Option } = Select;
......@@ -45,9 +41,9 @@ const AddModal = props => {
const [filed, setFiled] = useState({}); // 传给子组件列表数据
const [filed1, setFiled1] = useState({}); // 传给子组件列表数据
const [types, setTypes] = useState(''); // 弹窗类型
const [pickItem, setPickItem] = useState(''); //复选框数据填入项
const [checkedList1, setCheckedList1] = useState([]); //最新选择数据
const [characterValue, setCharacterValue] = useState(''); //打开弹框之前数据
const [pickItem, setPickItem] = useState(''); // 复选框数据填入项
const [checkedList1, setCheckedList1] = useState([]); // 最新选择数据
const [characterValue, setCharacterValue] = useState(''); // 打开弹框之前数据
const [ff, setFf] = useState([]);
const [form] = Form.useForm();
......@@ -368,10 +364,7 @@ const AddModal = props => {
</Menu>
}
>
<div
className={styles.linkDrowp}
onClick={e => e.preventDefault()}
>
<div className={styles.linkDrowp} onClick={e => e.preventDefault()}>
<DownOutlined
style={{
fontSize: '12px',
......@@ -396,11 +389,7 @@ const AddModal = props => {
},
]}
>
<Select
placeholder="选择计划执行周期"
onChange={changTable}
value={selectValue}
>
<Select placeholder="选择计划执行周期" onChange={changTable} value={selectValue}>
<Option value="一周一次">一周一次</Option>
<Option value="半月一次">半月一次</Option>
<Option value="一月一次">一月一次</Option>
......@@ -468,10 +457,7 @@ const AddModal = props => {
</Menu>
}
>
<div
className={styles.linkDrowp}
onClick={e => e.preventDefault()}
>
<div className={styles.linkDrowp} onClick={e => e.preventDefault()}>
<DownOutlined
style={{
fontSize: '12px',
......@@ -613,22 +599,14 @@ const AddModal = props => {
},
]}
>
<Select
placeholder="是否送审"
onChange={changTable1}
value={selectValue1}
>
<Select placeholder="是否送审" onChange={changTable1} value={selectValue1}>
<Option value="否"></Option>
<Option value="是"></Option>
</Select>
</Item>
</Col>
<Col span={23}>
<Item
label="台账过滤条件"
name="filterCondition"
labelCol={{ span: 4 }}
>
<Item label="台账过滤条件" name="filterCondition" labelCol={{ span: 4 }}>
<TextArea placeholder="设备对应的Scada台账名称,可多选" />
</Item>
</Col>
......@@ -641,6 +619,7 @@ const AddModal = props => {
newCheckedList={checkedList1}
isType={types}
filed={filed}
type={type}
filed1={filed1}
ff={ff}
pickItem={pickItem}
......
/* eslint-disable no-lonely-if */
/* eslint-disable eqeqeq */
import React, { useState, useEffect, PureComponent } from 'react';
import { Modal, Divider, Checkbox, Space, Button } from 'antd';
import styles from './maintenance.less';
......@@ -14,6 +16,7 @@ const ChangeAdd = props => {
pickItem,
characterValue,
ff,
type,
} = props;
const [checkedList, setCheckedList] = useState([]); // 选中的复选框内容
const [indeterminate, setIndeterminate] = useState(true); // 全选样式控制
......@@ -47,9 +50,7 @@ const ChangeAdd = props => {
const onSubmit = () => {
isType === 'rule'
? callBackSubmit(
`${
value === '无' || value === '' ? '' : `${value},`
}${checkValue.join(',')}`,
`${value === '无' || value === '' ? '' : `${value},`}${checkValue.join(',')}`,
)
: callBackSubmit({
checkedList,
......@@ -85,36 +86,62 @@ const ChangeAdd = props => {
useEffect(() => {
console.log(indeterminate);
if (isType != '' && isType === 'add') {
let checkArr = [];
console.log(newCheckedList);
newCheckedList.map(checkItem => {
if (filed.includes(checkItem)) {
checkArr.push(checkItem);
}
});
setCheckedList(checkArr);
setIndeterminate(
!!newCheckedList.length && newCheckedList.length < filed.length,
);
setCheckAll(newCheckedList.length === filed.length);
let newArr = characterValue.length ? characterValue.split(',') : [];
setSelectData(newArr);
} else if (isType === 'app') {
let checkArr = [];
console.log(newCheckedList);
newCheckedList.map(checkItem => {
if (ff.includes(checkItem)) {
checkArr.push(checkItem);
}
});
setCheckedList(checkArr);
setIndeterminate(
!!newCheckedList.length && newCheckedList.length < ff.length,
);
setCheckAll(newCheckedList.length === ff.length);
let newArr = characterValue.length ? characterValue.split(',') : [];
setSelectData(newArr);
if (type == 'edit') {
if (isType != '' && isType === 'add') {
let checkArr = [];
console.log(newCheckedList);
newCheckedList.map(checkItem => {
if (filed.includes(checkItem)) {
checkArr.push(checkItem);
}
});
setCheckedList(checkArr);
setIndeterminate(!!newCheckedList.length && newCheckedList.length < filed.length);
setCheckAll(newCheckedList.length === filed.length);
let newArr = characterValue.length ? characterValue.split(',') : [];
setSelectData(newArr);
} else if (isType === 'app') {
let checkArr = [];
console.log(newCheckedList);
newCheckedList.map(checkItem => {
if (ff.includes(checkItem)) {
checkArr.push(checkItem);
}
});
setCheckedList(checkArr);
setIndeterminate(!!newCheckedList.length && newCheckedList.length < ff.length);
setCheckAll(newCheckedList.length === ff.length);
let newArr = characterValue.length ? characterValue.split(',') : [];
setSelectData(newArr);
}
} else {
if (isType != '' && isType === 'add') {
let checkArr = [];
console.log(newCheckedList);
newCheckedList.map(checkItem => {
if (filed.includes(checkItem)) {
checkArr.push(checkItem);
}
});
setCheckedList(checkArr);
setIndeterminate(false);
setCheckAll(false);
let newArr = characterValue.length ? characterValue.split(',') : [];
setSelectData(newArr);
} else if (isType === 'app') {
let checkArr = [];
console.log(newCheckedList);
newCheckedList.map(checkItem => {
if (ff.includes(checkItem)) {
checkArr.push(checkItem);
}
});
setCheckedList(checkArr);
setIndeterminate(false);
setCheckAll(false);
let newArr = characterValue.length ? characterValue.split(',') : [];
setSelectData(newArr);
}
}
}, [visible]);
......
......@@ -2,10 +2,7 @@
/* eslint-disable camelcase */
import React, { useState, useEffect } from 'react';
import { Space, Table, Popconfirm, Tooltip, Button, notification } from 'antd';
import {
CM_XWBPlan_DataList,
CM_XWBPlan_RemovePlan,
} from '@/services/maintenance/api';
import { CM_XWBPlan_DataList, CM_XWBPlan_RemovePlan } from '@/services/maintenance/api';
import { EditTwoTone, DeleteOutlined, PlusOutlined } from '@ant-design/icons';
import styles from './maintenance.less';
import AddModal from './AddModal';
......@@ -24,82 +21,231 @@ const maintenance = () => {
dataIndex: 'businessName',
key: 'businessName',
width: 100,
onCell: () => ({
style: {
maxWidth: 100,
overflow: 'hidden',
whiteSpace: 'nowrap',
textOverflow: 'ellipsis',
cursor: 'pointer',
},
}),
align: 'center',
render: record => (
<Tooltip placement="topLeft" title={record}>
{record}
</Tooltip>
),
},
{
title: '业务类型',
dataIndex: 'businessType',
key: 'businessType',
width: 100,
ellipsis: true,
onCell: () => ({
style: {
maxWidth: 100,
overflow: 'hidden',
whiteSpace: 'nowrap',
textOverflow: 'ellipsis',
cursor: 'pointer',
},
}),
align: 'center',
render: record => (
<Tooltip placement="topLeft" title={record}>
{record}
</Tooltip>
),
},
{
title: '执行周期',
dataIndex: 'docycle',
key: 'docycle',
width: 100,
onCell: () => ({
style: {
maxWidth: 100,
overflow: 'hidden',
whiteSpace: 'nowrap',
textOverflow: 'ellipsis',
cursor: 'pointer',
},
}),
align: 'center',
render: record => (
<Tooltip placement="topLeft" title={record}>
{record}
</Tooltip>
),
},
{
title: '台账名称',
dataIndex: 'accountName',
key: 'accountName',
width: 200,
ellipsis: true,
width: 100,
onCell: () => ({
style: {
maxWidth: 100,
overflow: 'hidden',
whiteSpace: 'nowrap',
textOverflow: 'ellipsis',
cursor: 'pointer',
},
}),
align: 'center',
render: record => (
<Tooltip placement="topLeft" title={record}>
{record}
</Tooltip>
),
},
{
title: '反馈名称',
dataIndex: 'feedbackName',
key: 'feedbackName',
width: 200,
width: 100,
onCell: () => ({
style: {
maxWidth: 100,
overflow: 'hidden',
whiteSpace: 'nowrap',
textOverflow: 'ellipsis',
cursor: 'pointer',
},
}),
align: 'center',
render: record => (
<Tooltip placement="topLeft" title={record}>
{record}
</Tooltip>
),
},
{
title: '台账过滤条件',
dataIndex: 'filterCondition',
key: 'filterCondition',
width: 200,
ellipsis: true,
onCell: () => ({
style: {
maxWidth: 200,
overflow: 'hidden',
whiteSpace: 'nowrap',
textOverflow: 'ellipsis',
cursor: 'pointer',
},
}),
align: 'center',
render: record => (
<Tooltip placement="topLeft" title={record}>
{record}
</Tooltip>
),
},
{
title: '是否送审',
dataIndex: 'isSubmit',
key: 'isSubmit',
width: 100,
onCell: () => ({
style: {
maxWidth: 100,
overflow: 'hidden',
whiteSpace: 'nowrap',
textOverflow: 'ellipsis',
cursor: 'pointer',
},
}),
align: 'center',
render: record => (
<Tooltip placement="topLeft" title={record}>
{record}
</Tooltip>
),
},
{
title: '执行角色',
dataIndex: 'doRole',
key: 'doRole',
width: 200,
ellipsis: true,
width: 300,
onCell: () => ({
style: {
maxWidth: 300,
overflow: 'hidden',
whiteSpace: 'nowrap',
textOverflow: 'ellipsis',
cursor: 'pointer',
},
}),
align: 'center',
render: record => (
<Tooltip placement="topLeft" title={record}>
{record}
</Tooltip>
),
},
{
title: '预生成天数',
dataIndex: 'produceDays',
key: 'produceDays',
width: 100,
onCell: () => ({
style: {
maxWidth: 100,
overflow: 'hidden',
whiteSpace: 'nowrap',
textOverflow: 'ellipsis',
cursor: 'pointer',
},
}),
align: 'center',
render: record => (
<Tooltip placement="topLeft" title={record}>
{record}
</Tooltip>
),
},
{
title: '在线任务量',
dataIndex: 'onLines',
key: 'onLines',
width: 100,
ellipsis: true,
onCell: () => ({
style: {
maxWidth: 100,
overflow: 'hidden',
whiteSpace: 'nowrap',
textOverflow: 'ellipsis',
cursor: 'pointer',
},
}),
align: 'center',
render: record => (
<Tooltip placement="topLeft" title={record}>
{record}
</Tooltip>
),
},
{
title: '启停',
dataIndex: 'doNot',
key: 'doNot',
width: 100,
onCell: () => ({
style: {
maxWidth: 100,
overflow: 'hidden',
whiteSpace: 'nowrap',
textOverflow: 'ellipsis',
cursor: 'pointer',
},
}),
align: 'center',
render: record => (
<Tooltip placement="topLeft" title={record}>
{record}
</Tooltip>
),
},
{
title: '操作',
......@@ -109,10 +255,7 @@ const maintenance = () => {
render: (text, record) => (
<Space>
<Tooltip title="修改">
<EditTwoTone
onClick={() => editEventType(record)}
style={{ fontSize: '16px' }}
/>
<EditTwoTone onClick={() => editEventType(record)} style={{ fontSize: '16px' }} />
</Tooltip>
<Tooltip title="删除">
<Popconfirm
......@@ -206,8 +349,7 @@ const maintenance = () => {
dataSource={tableData}
scroll={{ y: 'calc(100vh - 215px)', x: 'max-content' }}
pagination={{
showTotal: (total, range) =>
`第${range[0]}-${range[1]} 条/共 ${total} 条`,
showTotal: (total, range) => `第${range[0]}-${range[1]} 条/共 ${total} 条`,
pageSizeOptions: [10, 20, 50, 100],
defaultPageSize: 20,
showQuickJumper: true,
......
.maintenanceContainer{
.ant-card-body {
padding: 12px 24px 24px 24px;
}
.pickItem{
background-color: #F5F6F9;
}
.maintenanceContainer {
.ant-card-body {
padding: 12px 24px 24px 24px;
}
.pickItem {
background-color: #f5f6f9;
}
}
.formData{
height: 38rem;
overflow-y: scroll;
.ant-form-item-label > label.ant-form-item-required:not(.ant-form-item-required-mark-optional)::before{
display: none;
}
.formData_label{
display: flex;
align-items: center;
}
.filed_listItem{
display: flex;
height: 3.6rem;
.ant-btn-icon-only {
width: 32px;
height: 32px;
/* padding: 2.4px 0; */
font-size: 16px;
border-radius: 2px;
display: flex;
align-items: center;
justify-content: center;
}
}
}
.linkDrowp{
position: absolute;
top: 0px;
left: 93.5%;
width: 1rem;
height: 100%;
.formData {
height: 38rem;
overflow-y: scroll;
.ant-form-item-label
> label.ant-form-item-required:not(.ant-form-item-required-mark-optional)::before {
display: none;
}
.formData_label {
display: flex;
align-items: center;
}
.listItem{
}
.filed_listItem {
display: flex;
justify-content: space-between;
font-size: 14px;
font-weight: 400;
color: #414E65;
cursor: pointer;
line-height: 28px;
align-items: center;
padding: 8px 14px;
height: 3.6rem;
.ant-btn-icon-only {
width: 32px;
height: 32px;
/* padding: 2.4px 0; */
font-size: 16px;
border-radius: 2px;
display: flex;
align-items: center;
justify-content: center;
}
}
}
.linkDrowp {
position: absolute;
top: 0px;
left: 93.5%;
width: 1rem;
height: 100%;
display: flex;
align-items: center;
}
.listItem {
display: flex;
justify-content: space-between;
font-size: 14px;
font-weight: 400;
color: #414e65;
cursor: pointer;
line-height: 28px;
align-items: center;
padding: 8px 14px;
}
.ant-select-arrow .anticon {
vertical-align: middle;
vertical-align: middle;
}
.listCard{
display: flex;
.cardItem{
padding: 0.5rem;
}
.cardContent{
height: 30rem;
overflow-y: scroll;
width: 100%;
}
.cardItemData{
display:inline-block;
padding: 0.5rem;
border: 1px solid #b5b8c8;
width:100%;
// height: 30rem;
overflow-y: scroll;
}
.listCard {
display: flex;
.cardItem {
padding: 0.5rem;
}
.cardContent {
height: 30rem;
overflow-y: scroll;
width: 100%;
}
.cardItemData {
display: inline-block;
padding: 0.5rem;
border: 1px solid #b5b8c8;
width: 100%;
// height: 30rem;
overflow-y: scroll;
}
}
.ant-modal-body {
padding: 10px 24px 0px 24px;
padding: 10px 24px 0px 24px;
}
.ant-modal-footer {
padding: 0px 48px 10px 40px;
padding: 0px 48px 10px 40px;
}
.ant-table-pagination.ant-pagination {
margin: 5px 0;
margin: 5px 0;
}
import { Tabs, Button } from 'antd';
import React, { useState, useEffect } from 'react';
import PageContainer from '@/components/BasePageContainer';
import styles from './dimensionsConfig.less'
import styles from './dimensionsConfig.less';
import TileConfig from './TileConfig/TileConfig';
import VectorData from './VectorData/VectorData';
import ProjectMessage from './projectMessage/projectMessage';
......@@ -10,32 +10,30 @@ import SolutionConfig from './solutionConfig/solutionConfig';
const { TabPane } = Tabs;
const SchemeConfig = () => {
const [activekey,setActiveKey] =useState('1')
const callback = (index) => {
setActiveKey(index)
}
const [activekey, setActiveKey] = useState('1');
const callback = index => {
setActiveKey(index);
};
return (
<PageContainer>
<div className={styles.container3d} activekey={activekey}>
<Tabs onChange={callback} type="card">
<TabPane tab="瓦片数据配置" key="1">
{activekey==='1'?<TileConfig />:''}
</TabPane>
<TabPane tab="数据源配置" key="2">
{activekey==='2'?<VectorData />:''}
</TabPane>
<TabPane tab="方案管理" key="3">
{activekey==='3'?<ProjectMessage />:''}
</TabPane>
<TabPane tab="方案配置" key="4">
{activekey==='4'?<SolutionConfig />:''}
</TabPane>
</Tabs>
</div>
</PageContainer>
)
}
export default SchemeConfig;
\ No newline at end of file
return (
<PageContainer>
<div className={styles.container3d} activekey={activekey}>
<Tabs onChange={callback} type="card">
<TabPane tab="瓦片数据配置" key="1">
{activekey === '1' ? <TileConfig /> : ''}
</TabPane>
<TabPane tab="数据源配置" key="2">
{activekey === '2' ? <VectorData /> : ''}
</TabPane>
<TabPane tab="方案管理" key="3">
{activekey === '3' ? <ProjectMessage /> : ''}
</TabPane>
<TabPane tab="方案配置" key="4">
{activekey === '4' ? <SolutionConfig /> : ''}
</TabPane>
</Tabs>
</div>
</PageContainer>
);
};
export default SchemeConfig;
.container3d{
width: 100%;
.container3d {
width: 100%;
background-color: #ffffff;
display: flex;
.ant-table {
min-height: 15rem !important;
}
padding: 0.8rem;
.ant-table-thead tr th {
font-weight: 600;
color: rgba(0, 0, 0, 0.85);
}
overflow-y: scroll;
.ant-input-number-input {
background-color: #ffffff;
display: flex;
.ant-table {
min-height: 15rem !important;
}
padding: 0.8rem;
.ant-table-thead tr th {
font-weight: 600;
color: rgba(0, 0, 0, 0.85);
}
overflow-y: scroll;
.ant-input-number-input{
background-color: #ffffff;
color: #000000;
}
.ant-card-body {
padding: 12px 24px 24px 25px;
}
}
.imgList{
display: flex;
flex-wrap: wrap;
}
.imgItem{
display: flex;
flex-direction: column;
align-items: center;
margin:0 1rem 1rem 0;
}
.tileBtn{
display: flex;
justify-content: flex-end;
width: 100%;
padding: 0 0 2rem
}
.schemeName{
margin-right: 0.8rem;
font-weight: bold;
color: #000000;
}
.ant-card-body {
padding: 12px 24px 24px 25px;
}
}
.imgList {
display: flex;
flex-wrap: wrap;
}
.imgItem {
display: flex;
flex-direction: column;
align-items: center;
margin: 0 1rem 1rem 0;
}
.tileBtn {
display: flex;
justify-content: flex-end;
width: 100%;
padding: 0 0 2rem;
}
.schemeName {
margin-right: 0.8rem;
font-weight: bold;
}
.schemeItem,.schemeBtn{
display: flex;
align-items: center;
}
.schemeBtn{
width: 12rem;
justify-content: center;
}
.mapItem{
display: flex;
border: 1px solid #ccc;
border-radius: 4px;
height: 2.2rem;
align-items: center;
margin: 0.5rem 0;
width: 14.5rem;
}
.defaultTile{
background: #ccc;
color: white;
cursor: pointer;
height: 100%;
display: flex;
align-items: center;
width: 3rem;
justify-content: center;
.schemeItem,
.schemeBtn {
display: flex;
align-items: center;
}
.mapText{
width: 10rem;
text-align: center;
.schemeBtn {
width: 12rem;
justify-content: center;
}
.mapIcon{
display: flex;
justify-content: center;
align-items: center;
cursor: pointer;
.mapItem {
display: flex;
border: 1px solid #ccc;
border-radius: 4px;
height: 2.2rem;
align-items: center;
margin: 0.5rem 0;
width: 14.5rem;
}
.activeTile{
background-color: #4699f4
.defaultTile {
background: #ccc;
color: white;
cursor: pointer;
height: 100%;
display: flex;
align-items: center;
width: 3rem;
justify-content: center;
}
.mapText {
width: 10rem;
text-align: center;
}
.mapIcon {
display: flex;
justify-content: center;
align-items: center;
cursor: pointer;
}
.activeTile {
background-color: #4699f4;
}
.dropList {
position: absolute;
right: 2%;
top: 25%;
color: rgba(0, 0, 0, 0.25);
z-index: 99;
}
.divider{
display: flex;
align-items: center;
line-height: 100%;
padding: 0.5rem;
.dividerIcon{
margin-left: 0.8rem;
color: #4699f4;
cursor: pointer;
}
position: absolute;
right: 2%;
top: 25%;
color: rgba(0, 0, 0, 0.25);
z-index: 99;
}
.cardsList{
display: flex;
flex-wrap: wrap;
}
.cardItem{
width: 18rem;
height: 26rem;
margin: 0 2rem;
.divider {
display: flex;
align-items: center;
line-height: 100%;
padding: 0.5rem;
.dividerIcon {
margin-left: 0.8rem;
color: #4699f4;
cursor: pointer;
}
.containerFileds{
display: flex;
justify-content: space-between;
width: 98%;
border:1px solid #f0f0f0;
margin-top: 1rem;
}
\ No newline at end of file
}
.cardsList {
display: flex;
flex-wrap: wrap;
}
.cardItem {
width: 18rem;
height: 26rem;
margin: 0 2rem;
}
.containerFileds {
display: flex;
justify-content: space-between;
width: 98%;
border: 1px solid #f0f0f0;
margin-top: 0.5rem;
}
......@@ -69,7 +69,6 @@ const BaseConfig = () => {
</div>
)}
<br />
<Button style={{ marginLeft: '116px', marginTop: '10px' }}>生成编号</Button>
<div style={{ marginTop: '50px', display: 'flex', alignItems: 'center' }}>
<img src={servie} style={{ height: '16px' }} alt="" />
<span style={{ marginLeft: '10px', fontWeight: 'bold' }}>服务器链接</span>
......
......@@ -17,11 +17,7 @@ import {
notification,
Spin,
} from 'antd';
import {
PlusCircleOutlined,
EditTwoTone,
DeleteOutlined,
} from '@ant-design/icons';
import { PlusCircleOutlined, EditTwoTone, DeleteOutlined } from '@ant-design/icons';
const { Search } = Input;
const { Option } = Select;
......@@ -148,6 +144,21 @@ const TemplateManage = () => {
dataIndex: 'third_id',
key: 'third_id',
align: 'center',
width: 150,
onCell: () => ({
style: {
maxWidth: 150,
overflow: 'hidden',
whiteSpace: 'nowrap',
textOverflow: 'ellipsis',
cursor: 'pointer',
},
}),
render: record => (
<Tooltip placement="topLeft" title={record}>
{record}
</Tooltip>
),
},
{
title: '模板参数1.0',
......@@ -172,6 +183,21 @@ const TemplateManage = () => {
dataIndex: 'analysis_params',
key: 'analysis_params',
align: 'center',
width: 150,
onCell: () => ({
style: {
maxWidth: 150,
overflow: 'hidden',
whiteSpace: 'nowrap',
textOverflow: 'ellipsis',
cursor: 'pointer',
},
}),
render: record => (
<Tooltip placement="topLeft" title={record}>
{record}
</Tooltip>
),
},
{
title: '操作',
......@@ -203,9 +229,7 @@ const TemplateManage = () => {
delTemplate(record);
}}
>
<DeleteOutlined
style={{ fontSize: '16px', color: '#e86060' }}
/>
<DeleteOutlined style={{ fontSize: '16px', color: '#e86060' }} />
</Popconfirm>
</div>
</Tooltip>
......@@ -218,10 +242,7 @@ const TemplateManage = () => {
const searchStyle = val => {
let n;
if (showSearchStyle) {
n = val.replace(
new RegExp(value, 'g'),
`<span style='color:red'>${value}</span>`,
);
n = val.replace(new RegExp(value, 'g'), `<span style='color:red'>${value}</span>`);
} else {
n = val;
}
......
import { Tabs, Button } from 'antd';
import React from 'react';
import PageContainer from '@/components/BasePageContainer';
import styles from './SchemeConfig.less'
import styles from './SchemeConfig.less';
import TileConfig from './TileConfig/TileConfig';
import VectorData from './VectorData/VectorData';
import ProjectMessage from './projectMessage/projectMessage';
......@@ -10,32 +10,27 @@ import SolutionConfig from './solutionConfig/solutionConfig';
const { TabPane } = Tabs;
const SchemeConfig = () => {
const callback = () => {};
const callback = () => {
}
return (
<PageContainer>
<div className={styles.container}>
<Tabs onChange={callback} type="card">
<TabPane tab="瓦片数据配置" key="1">
<TileConfig />
</TabPane>
<TabPane tab="矢量数据配置" key="2">
<VectorData />
</TabPane>
<TabPane tab="方案管理" key="3">
<ProjectMessage />
</TabPane>
<TabPane tab="方案配置" key="4">
<SolutionConfig/>
</TabPane>
</Tabs>
</div>
</PageContainer>
)
}
export default SchemeConfig;
\ No newline at end of file
return (
<PageContainer>
<div className={styles.container}>
<Tabs onChange={callback} type="card">
<TabPane tab="瓦片数据配置" key="1">
<TileConfig />
</TabPane>
<TabPane tab="矢量数据配置" key="2">
<VectorData />
</TabPane>
<TabPane tab="方案管理" key="3">
<ProjectMessage />
</TabPane>
<TabPane tab="方案配置" key="4">
<SolutionConfig />
</TabPane>
</Tabs>
</div>
</PageContainer>
);
};
export default SchemeConfig;
......@@ -2,22 +2,30 @@ import React, { useEffect, useState } from 'react';
import { Form, Modal, Row, Col, Input, Select, notification } from 'antd';
const VideoModal = props => {
const { callBackSubmit = () => { }, visible, onCancel, obj } = props;
const { callBackSubmit = () => {}, visible, onCancel, obj } = props;
return (
<Modal
visible={visible}
title={obj.Name}
onCancel={onCancel}
destroyOnClose
width="1000px"
maskClosable={false}
footer={[]}
>
<div className="pp">
< iframe style={{ border: 0, width: "100%", height: 630, }} src={window.location.origin + `/web4/video/indexAll.html?ID=${obj.EquipmentCode}&skipCheck=true&name=${obj.Name}&disk=${obj.RecorderName}&site=null`} />
</div>
</Modal>
)
}
export default VideoModal
\ No newline at end of file
return (
<Modal
visible={visible}
title={obj.Name}
onCancel={onCancel}
destroyOnClose
width="1000px"
maskClosable={false}
footer={[]}
>
<div className="pp">
<iframe
style={{ border: 0, width: '100%', height: 630 }}
src={
window.location.origin +
`/web4/video/indexAll.html?ID=${obj.EquipmentCode}&skipCheck=true&name=${
obj.Name
}&disk=${obj.RecorderName}&site=null`
}
/>
</div>
</Modal>
);
};
export default VideoModal;
......@@ -25,7 +25,6 @@ import RoleManage from '@/pages/userCenter/roleManage/RoleManage';
import SiteManage from '../pages/userCenter/siteManage/SiteManage';
import Dictionary from '../pages/dataCenter/dictionary';
import Dictionary1 from '../pages/dataCenter/dictionary1';
// import Search from '../pages/dataCenter/search';
import ServiceLog from '../pages/log/serviceLog';
import LoginLog from '../pages/log/loginLog';
......@@ -381,14 +380,8 @@ export default {
routes: [
{
path: '/dataCenter/dictionary',
name: '数据字典1',
hideMenu: true,
component: Dictionary,
},
{
path: '/dataCenter/dictionary1',
name: '数据字典',
component: Dictionary1,
component: Dictionary,
},
// {
// path: '/dataCenter/search',
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment