Skip to content

A web app that validates and processes shutdown maintenance data, generating Job Plan Labor, Job Plan Task, and PM Plan via Excel Macro-Enabled Workbooks with MxLoader v8.4.2.

License

Notifications You must be signed in to change notification settings

naravid19/maximo_project

Repository files navigation

Maximo Project Banner

Maximo Project

Maximo Project คือโปรแกรมตรวจสอบและจัดทำข้อมูลงานบำรุงรักษาแบบหยุดตามวาระในรูปแบบใหม่ โดยผสานระบบบริหารจัดการงานบำรุงรักษาด้วยคอมพิวเตอร์ (CMMS) เพื่อให้กระบวนการจัดทำข้อมูลมีความถูกต้อง โปร่งใส และรวดเร็ว

สารบัญ

⚙️ เกริ่นนำ

โปรเจกต์นี้ออกแบบมาเพื่อแก้ปัญหาความซับซ้อนและข้อผิดพลาดในกระบวนการจัดทำ:

  • Job Plan Task (ใบงานงาน)
  • Job Plan Labor (ใบงานค่าแรง)
  • PM Plan (แผนบำรุงรักษาตามวาระ)

โดยข้อมูลจะถูกจัดทำเป็นไฟล์ Excel Macro-Enabled Workbook ที่สามารถใช้งานร่วมกับ MxLoader (v8.4.2) ได้อย่างมีประสิทธิภาพ ซึ่งช่วยสนับสนุนการดำเนินงานในโรงไฟฟ้าให้มีความปลอดภัยและพร้อมจ่ายไฟฟ้าได้รวดเร็ว

🌟 ฟีเจอร์หลัก

  • Data Validation
    ตรวจสอบและกลั่นกรองข้อมูลก่อนสร้างใบงาน ลดข้อผิดพลาดและเพิ่มความถูกต้อง

  • MxLoader Template Generation
    สร้างไฟล์ Excel Macro-Enabled สำหรับนำเข้าข้อมูลสู่ระบบ Maximo อย่างครบถ้วน

  • Job Plan & PM Plan Management
    จัดกลุ่มใบงาน (Job Plan Task, Job Plan Labor) และสร้าง PM Plan ด้วยวิธีที่มีประสิทธิภาพ

  • Responsive UI Development
    พัฒนา Frontend ทันสมัยด้วย Tailwind CSS, Flowbite และ jQuery

  • Robust Backend
    ใช้ Django 5.1 ผสานกับ Pandas, NumPy, OpenPyXL เพื่อประมวลผลข้อมูล Excel และจัดการไฟล์

  • Background Task Processing
    รันงาน background (เช่น การลบไฟล์เก่า)

📋 สิ่งที่ต้องเตรียม

🔧 การติดตั้ง

1. โคลนโปรเจกต์

git clone https://github.com/naravid19/maximo_project.git
cd maximo_project

2. ติดตั้งไลบรารี Python

pip install -r requirements.txt

3. ติดตั้ง Dependencies Node.js

npm install

4. คอมไพล์ CSS ด้วย Tailwind CSS

  • คอมไพล์ครั้งเดียว

    npm run build
  • คอมไพล์แบบเรียลไทม์

    npm run watch

หมายเหตุ: สำหรับ production ควรรันคำสั่ง

python manage.py collectstatic --noinput

เพื่อรวบรวมไฟล์ static ไว้ในโฟลเดอร์ที่กำหนด

🚀 การใช้งาน

รัน Backend (Django)

python manage.py runserver

เปิดเว็บแอปที่ http://localhost:8000

Background Task Processing

เพื่อให้ task ทำงาน (เช่น ลบไฟล์เก่า) ต้องรันคำสั่ง:

python manage.py process_tasks

ใน production คุณสามารถใช้ process manager (เช่น Supervisor หรือ systemd) เพื่อให้คำสั่งนี้ทำงานตลอดเวลา

🗂️ โครงสร้างโปรเจกต์

maximo_project/
│
├── manage.py
├── requirements.txt
│
├── maximo_app/
│   ├── models.py              # โครงสร้างฐานข้อมูล
│   ├── views.py               # ฟังก์ชันจัดการและประมวลผลข้อมูล
│   ├── forms.py               # ฟอร์มรับข้อมูลผู้ใช้
│   ├── urls.py                # URL และ API สำหรับ AJAX
│   ├── tasks.py               # งาน background (เช่น ลบไฟล์เก่า)
│   └── templates/
│       └── maximo_app/
│           └── upload_form.html
│
├── static/
│   ├── js/                    # ไฟล์ JavaScript (all-code.js, ajax-*.js, grouping.js, upload-loading.js, etc.)
│   └── src/                   # Tailwind CSS input/output
│
├── package.json               # การตั้งค่า Node.js และ Tailwind CSS
├── tailwind.config.js         # กำหนดค่า Tailwind CSS
└── README.md

🤝 การมีส่วนร่วม

นักพัฒนาที่สนใจสามารถ:

  • Fork โปรเจกต์นี้และส่ง Pull Request เพื่อเพิ่มฟีเจอร์หรือแก้ไขบั๊ก
  • เปิด Issue หากพบปัญหาหรือมีข้อเสนอแนะ

📜 License

โปรเจกต์นี้ใช้ MIT License ดูรายละเอียดเพิ่มเติมในไฟล์ LICENSE

📚 เอกสารอ้างอิง

About

A web app that validates and processes shutdown maintenance data, generating Job Plan Labor, Job Plan Task, and PM Plan via Excel Macro-Enabled Workbooks with MxLoader v8.4.2.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published