fix(amap):core
This commit is contained in:
parent
9248a85e34
commit
941f469032
|
@ -6,10 +6,12 @@ import { useEffect, useState } from "react";
|
|||
import { Store } from "antd/lib/form/interface";
|
||||
import SimpleForm from "@/components/form/simple_form";
|
||||
import React from "react";
|
||||
import MinusCircleOutlined from "@ant-design/icons/lib/icons/MinusCircleOutlined";
|
||||
import FolderTwoTone from "@ant-design/icons/FolderOpenTwoTone";
|
||||
import { folderConfig } from "./archives_conf";
|
||||
import { Form, Select } from "antd";
|
||||
import { useNavigate } from "react-router";
|
||||
import "./preview.less";
|
||||
const { Option } = Select;
|
||||
const ArchivesFolder = (props: Store) => {
|
||||
const { folderStore, acStore } = props;
|
||||
|
@ -48,8 +50,9 @@ const ArchivesFolder = (props: Store) => {
|
|||
setIsModalOpen(false);
|
||||
};
|
||||
|
||||
|
||||
|
||||
const remove = (id: string) => {
|
||||
folderStore.deleteItem(id);
|
||||
};
|
||||
|
||||
const onFinishFailed = () => {};
|
||||
return (
|
||||
|
@ -63,14 +66,27 @@ const ArchivesFolder = (props: Store) => {
|
|||
<Flex wrap gap="25px" justify="start">
|
||||
{Array.from({ length: folderStore.list?.length ?? 0 }, (_, i) => (
|
||||
<div
|
||||
className="folder_box"
|
||||
key={i}
|
||||
onClick={() =>
|
||||
//folderHandle(folderStore.list[i])
|
||||
nav("/admin/archives/folder/" + folderStore.list[i].identity)
|
||||
}
|
||||
style={{ cursor: "pointer", width: "120px" }}
|
||||
style={{
|
||||
cursor: "pointer",
|
||||
width: "120px",
|
||||
position: "relative",
|
||||
}}
|
||||
>
|
||||
<FolderTwoTone rotate={-270} style={{ fontSize: "80px" }} />
|
||||
<MinusCircleOutlined
|
||||
onClick={() => {
|
||||
remove(folderStore.list[i].id);
|
||||
}}
|
||||
className="close_icon"
|
||||
/>
|
||||
<FolderTwoTone
|
||||
rotate={-270}
|
||||
style={{ fontSize: "70px" }}
|
||||
onClick={() =>
|
||||
nav("/admin/archives/folder/" + folderStore.list[i].identity)
|
||||
}
|
||||
/>
|
||||
<p style={{ fontSize: "14px" }}>
|
||||
{folderStore.list[i].folder_name}
|
||||
</p>
|
||||
|
|
|
@ -1,19 +1,19 @@
|
|||
.preview_container{
|
||||
.preview_container {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
display: flex;
|
||||
align-items: start;
|
||||
.preview_center{
|
||||
.preview_center {
|
||||
width: 10px;
|
||||
}
|
||||
.preview_left{
|
||||
.preview_left {
|
||||
width: 10%;
|
||||
height: 100%;
|
||||
.select{
|
||||
.select {
|
||||
background-color: red;
|
||||
color: #fff;
|
||||
}
|
||||
>span{
|
||||
> span {
|
||||
display: block;
|
||||
padding-left: 10px;
|
||||
cursor: pointer;
|
||||
|
@ -21,8 +21,21 @@
|
|||
line-height: 35px;
|
||||
}
|
||||
}
|
||||
.preview_right{
|
||||
.preview_right {
|
||||
width: 75%;
|
||||
height: 100%;
|
||||
}
|
||||
}
|
||||
.folder_box {
|
||||
.close_icon {
|
||||
position: absolute;
|
||||
top: 10px;
|
||||
right: 0px;
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
.folder_box:hover{
|
||||
.close_icon {
|
||||
display: inline-block;
|
||||
}
|
||||
}
|
|
@ -11,6 +11,8 @@ const Turn = (props: Store) => {
|
|||
const [folderList, setfolderList] = useState<any>([]);
|
||||
const [imageList, setImageList] = useState<any>([]);
|
||||
const [imageUrl, setImageUrl] = useState<any>([]);
|
||||
const [taskId, setTaskId] = useState<any>([]);
|
||||
const [folderId, setFolderId] = useState<any>([]);
|
||||
|
||||
const initChart = (data) => {
|
||||
var myChart = echarts.init(document.getElementById("xunlian"));
|
||||
|
@ -30,13 +32,11 @@ const Turn = (props: Store) => {
|
|||
setisModalOpen(true);
|
||||
};
|
||||
const getFolderhandler = (id: string) => {
|
||||
// trainingStore.getlist();
|
||||
folderStore?.getFolderList(id).then((res) => {
|
||||
setfolderList(res?.data?.record ?? []);
|
||||
});
|
||||
};
|
||||
const getAehandler = async (id: string) => {
|
||||
// trainingStore.getlist();
|
||||
await folderStore?.getAlist(id).then(() => {
|
||||
folderStore.alist?.forEach((elem) => {
|
||||
elem.url = elem.file_url;
|
||||
|
@ -73,8 +73,12 @@ const Turn = (props: Store) => {
|
|||
{trainingStore.list?.map((item) => {
|
||||
return (
|
||||
<p
|
||||
style={{ color: "#fff", cursor: "pointer" }}
|
||||
style={{
|
||||
color: item.identity === taskId ? "blue" : "#fff",
|
||||
cursor: "pointer",
|
||||
}}
|
||||
onClick={() => {
|
||||
setTaskId(item.identity);
|
||||
getFolderhandler(item.archives_category_identity);
|
||||
}}
|
||||
>
|
||||
|
@ -90,8 +94,12 @@ const Turn = (props: Store) => {
|
|||
{folderList?.map((item) => {
|
||||
return (
|
||||
<p
|
||||
style={{ color: "#fff", cursor: "pointer" }}
|
||||
style={{
|
||||
color: folderId === item.identity ? "blue" : "#fff",
|
||||
cursor: "pointer",
|
||||
}}
|
||||
onClick={() => {
|
||||
setFolderId(item.identity)
|
||||
getAehandler(item.identity);
|
||||
}}
|
||||
>
|
||||
|
@ -107,9 +115,9 @@ const Turn = (props: Store) => {
|
|||
{imageList?.map((item) => {
|
||||
return (
|
||||
<img
|
||||
onClick={()=>{
|
||||
setImageUrl(item.file_url)
|
||||
}}
|
||||
onClick={() => {
|
||||
setImageUrl(item.file_url);
|
||||
}}
|
||||
style={{ width: "80px", height: "80px" }}
|
||||
src={item.file_url}
|
||||
alt=""
|
||||
|
@ -120,7 +128,11 @@ const Turn = (props: Store) => {
|
|||
</Col>
|
||||
<Col span={18}>
|
||||
<div style={{ color: "#fff" }}>
|
||||
<img style={{ width: "100%", height: "800px" }} src={imageUrl} alt="" />
|
||||
<img
|
||||
style={{ width: "100%", height: "800px" }}
|
||||
src={imageUrl}
|
||||
alt=""
|
||||
/>
|
||||
</div>
|
||||
</Col>
|
||||
</Row>
|
||||
|
|
|
@ -69,13 +69,6 @@ const PoverPage = (props:Store) => {
|
|||
<span>基干民兵</span>
|
||||
</div>
|
||||
</div>
|
||||
<div className="pv-head-item">
|
||||
<SnippetsTwoTone style={{ fontSize: 30 }} />
|
||||
<div>
|
||||
<div>120人</div>
|
||||
<span>基干民兵</span>
|
||||
</div>
|
||||
</div>
|
||||
<div className="pv-head-item">
|
||||
<SnippetsTwoTone style={{ fontSize: 30 }} />
|
||||
<div>
|
||||
|
|
|
@ -17,6 +17,7 @@
|
|||
.content-right {
|
||||
width: 85%;
|
||||
height: 100%;
|
||||
overflow: auto;
|
||||
text-align: center;
|
||||
color: #fff;
|
||||
}
|
||||
|
|
|
@ -25,17 +25,17 @@ const PvTable = () => {
|
|||
<tbody>
|
||||
<tr onClick={(e) => console.log(e)}>
|
||||
<td>1</td>
|
||||
<td>1</td>
|
||||
<td>1</td>
|
||||
<td>1</td>
|
||||
<td>1</td>
|
||||
<td>1</td>
|
||||
<td>1</td>
|
||||
<td>1</td>
|
||||
<td>1</td>
|
||||
<td>1</td>
|
||||
<td>1</td>
|
||||
<td>1</td>
|
||||
<td>wang_yp</td>
|
||||
<td>党员</td>
|
||||
<td>杨公社区</td>
|
||||
<td>√</td>
|
||||
<td></td>
|
||||
<td></td>
|
||||
<td></td>
|
||||
<td>√</td>
|
||||
<td>√</td>
|
||||
<td>√</td>
|
||||
<td>√</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
import { Button, Space, Modal, FormInstance } from "antd";
|
||||
import { Button, Space, Modal, FormInstance, Form, Select } from "antd";
|
||||
import { inject, observer } from "mobx-react";
|
||||
import BTable from "@/components/b_table";
|
||||
import { useEffect, useState } from "react";
|
||||
|
@ -7,9 +7,10 @@ import SimpleForm from "@/components/form/simple_form";
|
|||
import React from "react";
|
||||
import { columns, defaultConfig } from "./user_config";
|
||||
import "./user.less";
|
||||
const { Option } = Select;
|
||||
|
||||
const User = (props: Store) => {
|
||||
const { usrStore } = props;
|
||||
const { usrStore ,depStore} = props;
|
||||
const [isModalOpen, setIsModalOpen] = useState<boolean>(false);
|
||||
const [projectConfig, setProjectConfig] = useState<any>([]);
|
||||
const formRef = React.useRef<FormInstance>(null);
|
||||
|
@ -17,6 +18,7 @@ const User = (props: Store) => {
|
|||
const [team, setTeam] = useState<any>(null);
|
||||
const [per, setPer] = useState<any>(null);
|
||||
const [userId, setId] = useState<Number | null>(null);
|
||||
const [depList, setDeplist] = useState<any>([]);
|
||||
const actionWidget = (any, record) => {
|
||||
return (
|
||||
<Space wrap>
|
||||
|
@ -78,8 +80,6 @@ const User = (props: Store) => {
|
|||
data[index].label = data[index].name;
|
||||
data[index].value = data[index].identity;
|
||||
}
|
||||
console.log(data);
|
||||
|
||||
setTeam(data)
|
||||
});
|
||||
usrStore.getPer().then((res) => {
|
||||
|
@ -91,7 +91,11 @@ const User = (props: Store) => {
|
|||
setPer(data)
|
||||
});
|
||||
|
||||
}, [usrStore]);
|
||||
depStore.getlist().then(() => {
|
||||
setDeplist(depStore.list);
|
||||
});
|
||||
|
||||
}, [usrStore,depStore]);
|
||||
|
||||
const addHandler = () => {
|
||||
setProjectConfig(defaultConfig(team,per));
|
||||
|
@ -146,11 +150,30 @@ const User = (props: Store) => {
|
|||
onFinish={onFinish}
|
||||
initialValues={true}
|
||||
onFinishFailed={onFinishFailed}
|
||||
/>
|
||||
>
|
||||
<>
|
||||
<Form.Item
|
||||
key="dep_identity"
|
||||
label="部门选择"
|
||||
name="dep_identity"
|
||||
rules={[{ required: true, message: "请选择部门!" }]}
|
||||
>
|
||||
<Select placeholder="">
|
||||
{depList?.map((v: any) => {
|
||||
return (
|
||||
<Option key={v.identity} value={v.identity}>
|
||||
{v.dep_name}
|
||||
</Option>
|
||||
);
|
||||
})}
|
||||
</Select>
|
||||
</Form.Item>
|
||||
</>
|
||||
</SimpleForm>
|
||||
</Modal>
|
||||
</Space>
|
||||
</div>
|
||||
);
|
||||
};
|
||||
|
||||
export default inject("usrStore")(observer(User));
|
||||
export default inject("usrStore","depStore")(observer(User));
|
||||
|
|
|
@ -171,6 +171,120 @@ export const defaultConfig =(team,per)=>
|
|||
],
|
||||
rules: [{ required: true, message: "是否退役军人不能为空" }],
|
||||
},
|
||||
{
|
||||
type: FormType.date,
|
||||
label: "入伍时间",
|
||||
name: "vet_in_time",
|
||||
value: "",
|
||||
},
|
||||
{
|
||||
type: FormType.date,
|
||||
label: "退伍时间",
|
||||
name: "vet_out_time",
|
||||
value: "",
|
||||
},
|
||||
{
|
||||
type: FormType.radio,
|
||||
label: "单位类型",
|
||||
name: "o_type",
|
||||
value: 0,
|
||||
radioData: [
|
||||
{
|
||||
key: "机关单位",
|
||||
val: 1,
|
||||
},
|
||||
{
|
||||
key: "企事业单位",
|
||||
val: 2,
|
||||
},
|
||||
],
|
||||
rules: [{ required: true, message: "单位类型不能为空" }],
|
||||
},
|
||||
{
|
||||
type: FormType.radio,
|
||||
label: "积极力量",
|
||||
name: "a_member",
|
||||
value: 0,
|
||||
radioData: [
|
||||
{
|
||||
key: "是",
|
||||
val: 1,
|
||||
},
|
||||
{
|
||||
key: "否",
|
||||
val: 2,
|
||||
},
|
||||
],
|
||||
rules: [{ required: true, message: "积极力量不能为空" }],
|
||||
},
|
||||
{
|
||||
type: FormType.radio,
|
||||
label: "专业队伍",
|
||||
name: "p_team",
|
||||
value: 0,
|
||||
radioData: [
|
||||
{
|
||||
key: "是",
|
||||
val: 1,
|
||||
},
|
||||
{
|
||||
key: "否",
|
||||
val: 2,
|
||||
},
|
||||
],
|
||||
rules: [{ required: true, message: "专业队伍不能为空" }],
|
||||
},
|
||||
{
|
||||
type: FormType.radio,
|
||||
label: "民兵类型",
|
||||
name: "militia_type",
|
||||
value: 0,
|
||||
radioData: [
|
||||
{
|
||||
key: "基干民兵",
|
||||
val: 1,
|
||||
},
|
||||
{
|
||||
key: "普通民兵",
|
||||
val: 2,
|
||||
},
|
||||
],
|
||||
rules: [{ required: true, message: "民兵类型不能为空" }],
|
||||
},
|
||||
{
|
||||
type: FormType.radio,
|
||||
label: "是否为社干力量",
|
||||
name: "c_member",
|
||||
value: 0,
|
||||
radioData: [
|
||||
{
|
||||
key: "是",
|
||||
val: 1,
|
||||
},
|
||||
{
|
||||
key: "否",
|
||||
val: 2,
|
||||
},
|
||||
],
|
||||
rules: [{ required: true, message: "请选择" }],
|
||||
},
|
||||
{
|
||||
type: FormType.radio,
|
||||
label: "三方力量",
|
||||
name: "o_member",
|
||||
value: 0,
|
||||
radioData: [
|
||||
{
|
||||
key: "是",
|
||||
val: 1,
|
||||
},
|
||||
{
|
||||
key: "否",
|
||||
val: 2,
|
||||
},
|
||||
],
|
||||
rules: [{ required: true, message: "请选择" }],
|
||||
},
|
||||
|
||||
{
|
||||
type: FormType.textarea,
|
||||
|
|
Loading…
Reference in New Issue