فهرست منبع

12. kotak ttd jadi center baris kolom✅
13. tombol save ganti ke simpan DONE✅
14. bug...klik tidak perlu tmt akibat nya gak bisa kirim di menu turun sanksi✅
15. bug upload dokumen di menu turun sanksi✅
16. button delegasi tidak muncul ✅

andi 2 سال پیش
والد
کامیت
9bcf32e3ff

+ 1 - 1
components/RekomendasiDelegasi/TableLaporan.js

@@ -65,7 +65,7 @@ function TableLaporan({ listData, to, linkName, status = false, noBy = false })
 											{status ? (
 												<td>
 													<h4 className="m-0">{data.laporan.role_data === "dikti" ? "Ditindaklanjuti DIKTI" : "Delegasi Ke LLDIKTI"}</h4>
-													<p className="w-105">Sanksi Administratif: {data.pelanggaran.map((e) => e.label_sanksi)}</p>
+													{data.pelanggaran.map((e) => (<p className="w-105">Sanksi Administratif:  {e.label_sanksi}</p>))}
 												</td>
 											) : (
 												""

+ 1 - 1
components/Sanksi/BeritaAcara_A.js

@@ -273,7 +273,7 @@ class BeritaAcara extends Component {
                                                     <td>{e.pasal}</td>
                                                     <td>{e.butir_pelanggaran}</td>
                                                     <td>{e.pelanggaran}</td>
-                                                    <td contenteditable='true'>[Mohon Diisi]</td>
+                                                    <td contenteditable='true' onc>[Mohon Diisi]</td>
                                                     <td contenteditable='true'>[Mohon Diisi]</td>
                                                 </tr>
 

+ 56 - 3
components/Sanksi/Ringkasan.js

@@ -4,7 +4,7 @@ import moment from "moment";
 import 'moment/locale/id'
 moment.locale('id')
 
-function Ringkasan({ dataLaporan, dataPelanggaran, dataUpload }) {
+function Ringkasan({ dataLaporan, dataPelanggaran, dataUpload, autoSaveDataPelanggaran }) {
 	return (
 		<>
 			<Row>
@@ -65,7 +65,60 @@ function Ringkasan({ dataLaporan, dataPelanggaran, dataUpload }) {
 								</tr>
 							</thead>
 							<tbody>
-								{dataPelanggaran
+								{dataPelanggaran?.map((e, i) => (
+									<tr key={e._id}>
+										<td>{++i}</td>
+										<td>
+											<div className="media align-items-center">
+												<div className="media-body d-flex">
+													<div>
+														<p>{e.pelanggaran}</p>
+														<p>TMT : {e.tmt_bulan} Bulan</p>
+														<p>Level Pelanggaran : {e.label_sanksi}</p>
+													</div>
+												</div>
+											</div>
+										</td>
+										<td>
+											<div className="media align-items-center">
+												<div className="media-body d-flex">
+													<div>
+														<p>{e.sanksi}</p>
+														<p>Keterangan : {e.keterangan_sanksi}</p>
+													</div>
+												</div>
+											</div>
+										</td>
+									</tr>
+								)) ||
+									autoSaveDataPelanggaran?.map((e, i) => (
+										<tr key={e._id}>
+											<td>{++i}</td>
+											<td>
+												<div className="media align-items-center">
+													<div className="media-body d-flex">
+														<div>
+															<p>{e.pelanggaran}</p>
+															<p>TMT : {e.tmt_bulan} Bulan</p>
+															<p>Level Pelanggaran : {e.label_sanksi}</p>
+														</div>
+													</div>
+												</div>
+											</td>
+											<td>
+												<div className="media align-items-center">
+													<div className="media-body d-flex">
+														<div>
+															<p>{e.sanksi}</p>
+															<p>Keterangan : {e.keterangan_sanksi}</p>
+														</div>
+													</div>
+												</div>
+											</td>
+										</tr>
+									))
+								}
+								{/* {dataPelanggaran
 									? dataPelanggaran.map((e, i) => (
 										<tr key={e._id}>
 											<td>{++i}</td>
@@ -92,7 +145,7 @@ function Ringkasan({ dataLaporan, dataPelanggaran, dataUpload }) {
 											</td>
 										</tr>
 									))
-									: ""}
+									: ""} */}
 							</tbody>
 						</Table>
 					</Card>

+ 15 - 4
components/Sanksi/SuratBA.js

@@ -111,8 +111,20 @@ class ComponentToPrint extends React.Component {
                                     </tr>
                                 </thead>
                                 <tbody>
-                                    {dataPelanggaran
-                                        ? dataPelanggaran.map((e, i) => (
+                                    {dataPelanggaran?.map((e, i) => (
+                                        <tr key={e._id}>
+                                            <td>{++i}</td>
+                                            {dataLaporan.data && (<td className='BA-header'>{dataLaporan.data.pt.nama}</td>)}
+                                            <td>{e.pasal}</td>
+                                            <td>{e.butir_pelanggaran}</td>
+                                            <td>{e.pelanggaran}</td>
+                                            <td contenteditable='true'>[Mohon Diisi]</td>
+                                            <td contenteditable='true'>[Mohon Diisi]</td>
+                                        </tr>
+
+                                    )) ||
+
+                                        autoSaveDataPelanggaran?.map((e, i) => (
                                             <tr key={e._id}>
                                                 <td>{++i}</td>
                                                 {dataLaporan.data && (<td className='BA-header'>{dataLaporan.data.pt.nama}</td>)}
@@ -123,8 +135,7 @@ class ComponentToPrint extends React.Component {
                                                 <td contenteditable='true'>[Mohon Diisi]</td>
                                             </tr>
 
-                                        ))
-                                        : ""}
+                                        ))}
                                 </tbody>
                             </table>
                             {/* </div> */}

+ 1 - 0
components/Sanksi/TablePenetapanSanksi.js

@@ -50,6 +50,7 @@ export class TablePenetapanSanksi extends Component {
 
 	render() {
 		const { pelanggaran, labelSanksi, checkedData } = this.state;
+		console.log(labelSanksi)
 
 		return (
 			<Card className="card-default">

+ 2 - 2
components/TurunSanksi/InputTanggal.js

@@ -46,7 +46,7 @@ const rekomendasiSchema = Yup.object().shape({
     no_sanksi: Yup.string().required("Wajib isi Nomor Sanksi"),
     keterangan: Yup.string().min(3, "Minimal 3 Huruf").max(200).required("Wajib isi keterangan"),
     from_date: Yup.date().required("Wajib diisi"),
-    to_date: Yup.date().required("Wajib diisi"),
+    to_date: Yup.date().notRequired("Wajib diisi"),
     sanksi: Yup.array().required("Wajib isi pelanggaran"),
     dokumen: Yup.array().required("Wajib diisi").test("filesize", "Maksimal ukuran dokumen 15mb", checkIfFilesAreTooBig),
 });
@@ -335,7 +335,7 @@ class InputTanggal extends Component {
                                     </div>
                                 </FormGroup>
                                 <FormGroup row className="mt-3">
-                                    <label className="col-md-2 col-form-label">Dokumen Perpanjangan Sanksi : <span className="text-danger">*</span></label>
+                                    <label className="col-md-2 col-form-label">Dokumen Perubahan sanksi : <span className="text-danger">*</span></label>
                                     <div className="col-md-10">
                                         <Field name="dokumen">
                                             {({ field, form }) => (

+ 2 - 2
pages/app/sanksi/proses.js

@@ -271,7 +271,7 @@ class ProsesSanksi extends Component {
 										<TabPane tabId="3">
 											<div className="pt-3 mb-3">
 												<h2>Penetapan Jenis Pelanggaran</h2>
-												<TablePenetapanSanksi handleDelegasi={this.handleDelegasi} handleAutoSave={this.handleAutoSave} setCheckedData={this.setCheckedData} data={pelaporan.data} />
+												<TablePenetapanSanksi query={this.props.query} handleDelegasi={this.handleDelegasi} handleAutoSave={this.handleAutoSave} setCheckedData={this.setCheckedData} dataPelanggaran={dataPelanggaran.data} />
 											</div>
 											<hr />
 											<div className="d-flex">
@@ -314,7 +314,7 @@ class ProsesSanksi extends Component {
 										<TabPane tabId="6">
 											<div className="pt-3 mb-3">
 												<h2>Ringkasan</h2>
-												{pelaporan.data ? <Ringkasan dataLaporan={pelaporan.data} dataPelanggaran={dataPelanggaran.data} dataUpload={dataUpload} /> : <Loader />}
+												{pelaporan.data ? <Ringkasan dataLaporan={pelaporan.data} autoSaveDataPelanggaran={autoSaveDataPelanggaran} dataPelanggaran={dataPelanggaran.data} dataUpload={dataUpload} /> : <Loader />}
 											</div>
 											<hr />
 											<div className="d-flex">

+ 14 - 12
pages/signature/pleno-sanksi/[id].js

@@ -111,24 +111,26 @@ class PlenoSanksi extends Component {
 
                     <ModalBody>
                         <FormGroup row>
-                            <label className="col-md-2 col-form-label">Nama:</label>
+                            <label className="col-md-2 col-form-label">Nama <span className=' text-danger'>*</span>:</label>
                             <div className="col-md-10">
                                 <Input type="text" value={this.state.nama} onChange={(e) => { this.updateValueNama(e) }} />
                             </div>
                         </FormGroup>
                         <FormGroup row>
-                            <SignatureCanvas penColor='black' canvasProps={{ className: 'sigCanvas signature-style' }} ref={(ref) => { this.sigPad = ref }} onEnd={(e) => this.setState({ changesign: false })} />
-
-                            <ModalFooter>
-                                <Button color className="btn-login" onClick={this.updateValueSignature
-                                }>
-                                    <span className="font-color-white">Save</span>
-                                </Button>
-                                <Button color className="btn-v2" onClick={() => { this.clear(), this.updateValueSignature() }}>
-                                    Hapus
-                                </Button>
-                            </ModalFooter>
+                            <label className="col-md-2 col-form-label">Tanda Tangan:</label>
+                            <div className="col-md-10">
+                                <SignatureCanvas penColor='black' canvasProps={{ className: 'sigCanvas signature-style' }} ref={(ref) => { this.sigPad = ref }} onEnd={(e) => this.setState({ changesign: false })} />
+                            </div>
                         </FormGroup>
+                        <ModalFooter>
+                            <Button color className="btn-login" onClick={this.updateValueSignature
+                            }>
+                                <span className="font-color-white">Simpan</span>
+                            </Button>
+                            <Button color className="btn-v2" onClick={() => { this.clear(), this.updateValueSignature() }}>
+                                Hapus
+                            </Button>
+                        </ModalFooter>
                         <ModalFooter>
                             <Button color disabled={signature === "" || signature === "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAAtJREFUGFdjYAACAAAFAAGq1chRAAAAAElFTkSuQmCC" || nama === "" || changesign === false} className="btn-login" onClick={this.onSubmit}>
                                 <span className="font-color-white">Kirim</span>

+ 3 - 2
styles/bootstrap/_print.scss

@@ -282,11 +282,12 @@ body {
 
 }
 .signature-style{
-  border: 1px solid#b9b9b9;
-width: 350px;
+  border: 1px solid#c9c8c8;
+width: 380px;
 height: 200px;
 margin-left: auto;
 margin-right: auto;
+border-radius: 4px;
 }