yazid138 3 yıl önce
ebeveyn
işleme
4e31d3bab0
2 değiştirilmiş dosya ile 45 ekleme ve 42 silme
  1. 22 18
      pages/app/pelaporan/search.js
  2. 23 24
      pages/app/pemantauan/index.js

+ 22 - 18
pages/app/pelaporan/search.js

@@ -11,6 +11,7 @@ import "rc-slider/assets/index.css";
 import Select from "react-select";
 // DateTimePicker
 import "react-datetime/css/react-datetime.css";
+import { connect } from "react-redux";
 
 var pembina = [];
 const selectInstanceId = 1;
@@ -46,7 +47,6 @@ class Search extends Component {
 	};
 
 	handleClick = (e, PT_ID) => {
-		const query = { ptId: PT_ID };
 		e.preventDefault();
 		Router.push({
 			pathname: "/app/pelaporan/new",
@@ -55,7 +55,7 @@ class Search extends Component {
 	};
 
 	fetchData = async () => {
-		const pembina = this.state.selectedOptionMulti.join(",");
+		const pembina = this.props.user.peran[0].peran.id === 2021 ? this.props.user.peran[0].organisasi.id : this.state.selectedOptionMulti.join(",");
 		const searchValue = document.getElementById("searchInput").value;
 		const jsonData = await getPT({ search: searchValue, pembina });
 		this.setState({ data: jsonData.data });
@@ -96,6 +96,7 @@ class Search extends Component {
 											{pt.sk_pendirian} - {pt.website} - {pt.email}
 										</small>
 										<p>{pt.alamat.jalan}</p>
+										{this.props.user.peran[0].peran.id === 2021 ? "" : <p>Pembina: {pt.pembina.nama}</p>}
 									</div>
 									<div className="ml-auto">
 										<Button color="info" size="sm" onClick={(e) => this.handleClick(e, pt.id)}>
@@ -113,8 +114,6 @@ class Search extends Component {
 
 	render() {
 		const { selectedOptionMulti, pembina } = this.state;
-		console.log(pembina);
-
 		return (
 			<ContentWrapper>
 				<div className="content-heading">
@@ -129,14 +128,14 @@ class Search extends Component {
 					</div>
 				</div>
 				<Row>
-					<Col lg="9">
+					<Col lg={this.props.user.peran[0].peran.id === 2021 ? 12 : 9}>
 						<div className="form-group mb-4">
 							<input className="form-control mb-2" type="text" id="searchInput" placeholder="Pencarian Nama Perguruan Tinggi" />
 							<div className="d-flex">
 								<button className="btn btn-secondary" type="button" onClick={(e) => this.handleSearchClick()}>
 									Search
 								</button>
-								<div className="ml-auto"></div>
+								<div className="ml-auto">{this.props.user.peran[0].peran.id === 2021 && `Pembina: ${this.props.user.peran[0].organisasi.nama}`}</div>
 							</div>
 						</div>
 						<div className="card card-default">
@@ -155,21 +154,26 @@ class Search extends Component {
 							</div>
 						</div>
 					</Col>
-					<Col lg="3">
-						<h3 className="m-0 pb-3">Filters</h3>
-						<div className="form-group mb-4">
-							<label className="col-form-label mb-2">by Pembina</label>
-							<br />
-							<Select instanceId={selectInstanceId + 1} isMulti value={selectedOptionMulti} onChange={this.handleChangeSelectMulti} options={pembina ? this.optionsPembina(pembina) : []} required />
-						</div>
-						<Button color="secondary" size="lg" onClick={(e) => this.handleApplyClick()}>
-							Apply
-						</Button>
-					</Col>
+					{this.props.user.peran[0].peran.id === 2021 ? (
+						""
+					) : (
+						<Col lg="3">
+							<h3 className="m-0 pb-3">Filters</h3>
+							<div className="form-group mb-4">
+								<label className="col-form-label mb-2">by Pembina</label>
+								<br />
+								<Select instanceId={selectInstanceId + 1} isMulti value={selectedOptionMulti} onChange={this.handleChangeSelectMulti} options={pembina ? this.optionsPembina(pembina) : []} required />
+							</div>
+							<Button color="secondary" size="lg" onClick={(e) => this.handleApplyClick()}>
+								Apply
+							</Button>
+						</Col>
+					)}
 				</Row>
 			</ContentWrapper>
 		);
 	}
 }
 
-export default Search;
+const mapStateToProps = (state) => ({ user: state.user });
+export default connect(mapStateToProps)(Search);

+ 23 - 24
pages/app/pemantauan/index.js

@@ -1,20 +1,14 @@
 import React, { Component } from "react";
 import Router from "next/router";
 import ContentWrapper from "@/components/Layout/ContentWrapper";
-import { Row, Col, Button, Table, Pagination, PaginationItem, PaginationLink } from "reactstrap";
-// React Slider
+import { Row, Col, Button, Table } from "reactstrap";
 import { getPT, getPembina } from "@/actions/PT";
-import Slider from "rc-slider";
 import "rc-slider/assets/index.css";
 // React Select
 import Select from "react-select";
 // DateTimePicker
-import Datetime from "react-datetime";
 import "react-datetime/css/react-datetime.css";
-
-import https from "https";
-
-import CardTool from "@/components/Common/CardTool";
+import { connect } from "react-redux";
 
 // import dummyData from "../PT-ID.json";
 
@@ -59,7 +53,7 @@ class Search extends Component {
 	};
 
 	fetchData = async () => {
-		const pembina = this.state.selectedOptionMulti.join(",");
+		const pembina = this.props.user.peran[0].peran.id === 2021 ? this.props.user.peran[0].organisasi.id : this.state.selectedOptionMulti.join(",");
 		const searchValue = document.getElementById("searchInput").value;
 		const jsonData = await getPT({ search: searchValue, pembina });
 		this.setState({ data: jsonData.data ? jsonData.data : [] });
@@ -100,6 +94,7 @@ class Search extends Component {
 											{pt.sk_pendirian} - {pt.website} - {pt.email}
 										</small>
 										<p>{pt.alamat.jalan}</p>
+										{this.props.user.peran[0].peran.id === 2021 ? "" : <p>Pembina: {pt.pembina.nama}</p>}
 									</div>
 									<div className="ml-auto">
 										<Button color="info" size="sm" onClick={(e) => this.handleClick(e, pt.id)}>
@@ -117,7 +112,6 @@ class Search extends Component {
 
 	render() {
 		const { selectedOptionMulti, pembina } = this.state;
-		// console.log(pembina);
 		return (
 			<ContentWrapper>
 				<div className="content-heading">
@@ -127,14 +121,14 @@ class Search extends Component {
 					</div>
 				</div>
 				<Row>
-					<Col lg="9">
+					<Col lg={this.props.user.peran[0].peran.id === 2021 ? 12 : 9}>
 						<div className="form-group mb-4">
 							<input className="form-control mb-2" type="text" id="searchInput" placeholder="Pencarian Nama Perguruan Tinggi" />
 							<div className="d-flex">
 								<button className="btn btn-secondary" type="button" onClick={(e) => this.handleSearchClick()}>
 									Search
 								</button>
-								<div className="ml-auto"></div>
+								<div className="ml-auto">{this.props.user.peran[0].peran.id === 2021 && `Pembina: ${this.props.user.peran[0].organisasi.nama}`}</div>
 							</div>
 						</div>
 						{/* START card */}
@@ -157,21 +151,26 @@ class Search extends Component {
 						</div>
 						{/* END card */}
 					</Col>
-					<Col lg="3">
-						<h3 className="m-0 pb-3">Filters</h3>
-						<div className="form-group mb-4">
-							<label className="col-form-label mb-2">by Pembina</label>
-							<br />
-							<Select instanceId={selectInstanceId + 1} isMulti value={selectedOptionMulti} onChange={this.handleChangeSelectMulti} options={pembina ? this.optionsPembina(pembina) : []} required />
-						</div>
-						<Button color="secondary" size="lg" onClick={(e) => this.handleApplyClick()}>
-							Apply
-						</Button>
-					</Col>
+					{this.props.user.peran[0].peran.id === 2021 ? (
+						""
+					) : (
+						<Col lg="3">
+							<h3 className="m-0 pb-3">Filters</h3>
+							<div className="form-group mb-4">
+								<label className="col-form-label mb-2">by Pembina</label>
+								<br />
+								<Select instanceId={selectInstanceId + 1} isMulti value={selectedOptionMulti} onChange={this.handleChangeSelectMulti} options={pembina ? this.optionsPembina(pembina) : []} required />
+							</div>
+							<Button color="secondary" size="lg" onClick={(e) => this.handleApplyClick()}>
+								Apply
+							</Button>
+						</Col>
+					)}
 				</Row>
 			</ContentWrapper>
 		);
 	}
 }
 
-export default Search;
+const mapStateToProps = (state) => ({ user: state.user });
+export default connect(mapStateToProps)(Search);