RainMan 06409283b3 mobile deploy 2 years ago
..
docs 4b3e8f686c mobile deploy 2 years ago
public 27e4d19e19 mobile deploy 2 years ago
scripts 5d3d890155 change script 2 years ago
src 06409283b3 mobile deploy 2 years ago
tests b687286ed8 add mobile vue project 2 years ago
.browserslistrc b687286ed8 add mobile vue project 2 years ago
.editorconfig 6c1aefbc0e 모바일 - 하자작업지시,하자조회,회의실예약,회의실예약 승인 2 years ago
.env b4e27ab74a 모바일 - 기본 페이지 , 토스트, 모달 2 years ago
.env.development b68e03eecf mobile deploy and file format 2 years ago
.env.production 63d35c1fe6 협력업체 수정 요청 사항 반영 2 years ago
.env.test b4e27ab74a 모바일 - 기본 페이지 , 토스트, 모달 2 years ago
.eslintrc.js b687286ed8 add mobile vue project 2 years ago
.gitignore b687286ed8 add mobile vue project 2 years ago
.npmrc 09d2bff1c9 mobile depoly 2 years ago
.prettierrc b68e03eecf mobile deploy and file format 2 years ago
README.md 9db35a09c0 add README 2 years ago
babel.config.js b687286ed8 add mobile vue project 2 years ago
banner.txt dc024f0285 change mobile banner 2 years ago
capacitor.config.ts 60273fa6e9 del 2 years ago
cypress.json b687286ed8 add mobile vue project 2 years ago
ionic.config.json 60273fa6e9 del 2 years ago
jest.config.js b687286ed8 add mobile vue project 2 years ago
package-lock.json 8ca0934d54 mobile deploy 2 years ago
package.json 8ca0934d54 mobile deploy 2 years ago
tsconfig.json c691816d89 mobile deploy 2 years ago
vue.config.js 9f9dc56058 mobile deploy 2 years ago

README.md

SGC Mobile (Ionic Vue)

Install - required

# https://nodejs.org/ko/download/
# node install
npm uninstall -g ionic # uninstall if ionic is installed
npm install -g @ionic/cli@latest # install
npm install -g @vue/cli # Vue Cli

Install - optional

npm install --save-dev node-sass sass-loader # Scss Loader optional
npm install -g http-server # http server  optional
npm install --save-dev colors # for deploy command  optional
npm install --save-dev iconv-lite # for deploy command  optional

Project Run & Build

ionic serve # run server
ionic serve -lab # run server for ios and android
ionic build --prod # Build the application for production
ionic build --aot # Perform ahead-of-time compilation for this build
ionic build --minifyjs # Minify JS for this build
ionic build --minifycss # Minify CSS for this build
ionic build --optimizejs # Perform JS optimizations for this build
# change package.json version 
npm install # if need when change the package
ionic build --prod --minifyjs --minifycss --optimizejs # default origial command
npm run format # file formatter not need. (if need run) 
npm run db2file # DB SQL(docs/DB_SQL.sql) to java, mapper, interface. (if need run) 
npm run translate # translate json file to other language.
npm run compile # comple source to dist (ts to javascript) 
npm run deploy # copy dist folder to src/main/webapp/mobile. need  npm install -g colors , npm install -g iconv-lite

ENV-Development

  • portal (임직원)
    • ./.env.development (change this file and run ionic serve again)
    • VUE_APP_TYPE=portal
    • _VUE_APP_TYPE=as
  • as (협력업체)
    • ./.env.development (change this file and run ionic serve again)
    • _VUE_APP_TYPE=portal
    • VUE_APP_TYPE=as

Push Test

VSCode Extension

Menu Struct

모바일(공통)

  • 로그인 (views/common/LoginPage.vue)
    • 아이디 찾기 (views/common/modals/FindIdModal.vue)
    • 비밀번호 찾기 (views/common/modals/FindPwModal.vue)
  • 메인(홈) (views/common/HomePage.vue)

모바일(임직원)

  • 하자관리
    • 하자작업지시 (views/po/PoDeftMangPage.vue - MO03010001U)
      • 하자작업지시 상세(views/po/PoDeftMangViewPage.vue - MO03010001U)
    • 하자조회 (views/po/PoDeftQuePage.vue - MO03020001U)
      • 하자조회 상세(views/po/PoDeftQueViewPage.vue - MO03020001U)
  • 회의실관리
    • 회의실예약 (views/po/PoRoomRevPage.vue - MO01010001U)
    • 회의실예약승인 (views/po/PoRoomAppPage.vue - MO01020001)
  • 현장 주소록(views/common/SiteAddressPage.vue)
    • 현장 주소록 지도보기(views/common/modals/SiteAddressMapModal.vue)

모바일(협력업체)

  • 하자관리
    • 하자처리 (views/as/AsDeftIngPage.vue - MO02010001U)
      • 하자처리 상세 (views/as/AsDeftIngViewPage.vue - MO02010001U)
    • 하자완료조회 (views/as/AsDeftDonePage.vue - MO02020001U)
      • 하자완료조회 상세(views/as/AsDeftDoneViewPage.vue - MO02020001U)

SRC File Struct

mobile-src/src/
├── App.vue
├── assets
│   ├── SGC-CI.svg  (로그인 페이지 하단 로고)
│   ├── SGC.svg  (페이지 홈 로고)
│   ├── calendar-number-outline.svg (날자 선택 우측 아이콘)
│   ├── checkmark-circle-outline.svg (라디오 박스)
│   ├── checkmark-outline.svg (체크박스)
│   ├── mobile-main-01.svg (홈 하자 권한이 없을 경우 대체 이미지)
│   └── mobile-main.svg (홈 하자 권한이 없을 경우 대체 이미지)
├── main.ts (메인 index - 진입시 작동됨)
├── registerServiceWorker.ts (Service Worker)
├── router
│   └── index.ts (Router - 라우터 패스 정보 관리 및 권한 체크)
├── services
│   ├── api.service.ts (Api Service - WAS 와 통신을 위한 서비스)
│   ├── code.service.ts (Code Service for checkbox, radio, select)
│   ├── common.interface.ts (Interfaces)
│   ├── common.service.ts (Common Service - 공통 작업 서비스)
│   ├── i18n.ts (Translate text for multi localization)
│   ├── icon.ts (Icons - 페이지에서 사용되는 아이콘을 적재하고 있음)
│   ├── index.ts
│   ├── shared.service.ts (Shared Data Service for login info, site info etc)
│   └── utils.service.ts (Template Util)
├── shims-vue.d.ts 
├── theme
│   ├── global.scss ( Global style)
│   └── variables.css ( Css Color variables)
└── views
    ├── as (협력업체)
    │   ├── AsDeftDonePage.vue (하자완료조회)
    │   ├── AsDeftDoneViewPage.vue (하자완료조회 상세)
    │   ├── AsDeftIngPage.vue (하자처리)
    │   ├── AsDeftIngViewPage.vue (하자처리 상세)
    │   └── modals
    │       └── index.ts
    ├── common
    │   ├── ErrorPage.vue (오류 페이지)
    │   ├── HomePage.vue (홈, 메인)
    │   ├── LoginPage.vue (로그인)
    │   ├── PushDevPage.vue (푸시 테스트)
    │   ├── SamplePage.vue (디자인 가이드)
    │   ├── SiteAddressPage.vue (현장 주소록)
    │   └── modals
    │       ├── DeftCustsignModal.vue (고객 서명 모달)
    │       ├── DeftElpsRegModal.vue (하자 경과 등록 모달)
    │       ├── DeftElpsSmsModal.vue  (하자 작업 지시 SMS&PUSH 전송 모달)
    │       ├── DeftElpsViewModal.vue (하자 작업 지시 보기 모달)
    │       ├── DeftPhotoModal.vue (하자 이미지 보기 모달)
    │       ├── FindIdModal.vue (아이디 찾기 모달)
    │       ├── FindPwModal.vue (암호 찾기 모달)
    │       ├── SettingModal.vue (설정 모달)
    │       ├── SiteAddressMapModal.vue (현장 지도보기 모달)
    │       └── index.ts
    ├── components
    │   ├── SgcCheckbox.vue (체크 박스)
    │   ├── SgcConsole.vue (콘솔 로그)
    │   ├── SgcDatetime.vue (날자 선택)
    │   ├── SgcDatetimeRange.vue (기간 범위)
    │   ├── SgcHourRange.vue (시간 범위)
    │   ├── SgcItemInput.vue (아이템 입력)
    │   ├── SgcItemView.vue (아이템 보기)
    │   ├── SgcLoading.vue (페이지 로딩)
    │   ├── SgcModal.vue (모달 외곽 템플릿)
    │   ├── SgcPage.vue (페이지 외곽 템플릿)
    │   ├── SgcRadio.vue (라디오 박스)
    │   ├── SgcSearchId.vue (현장 검색)
    │   ├── SgcSelect.vue (콤보 박스)
    │   ├── index.ts
    │   └── modals
    │       └── SearchCovendModal.vue (현장 검색)
    └── po
        ├── PoDeftMangPage.vue (하자작업지시)
        ├── PoDeftMangViewPage.vue (하자작업지시 상세)
        ├── PoDeftQuePage.vue (하자조회및완료처리)
        ├── PoDeftQueViewPage.vue (하자조회및완료처리 상세)
        ├── PoRoomAppPage.vue (회의실예약승인)
        ├── PoRoomRevPage.vue (회의실예약)
        └── modals
            ├── PoRoomRevRegModal.vue (회의실예약)
            ├── PoRoomRevViewModal.vue (회의실예약 상세)
            └── index.ts

Public File Struct

mobile-src/public/
├── firebase-messaging-sw.js (구글 파이어 베이스 푸시 알림 정보)
├── img
│   └── icons (어플 아이콘)
│       ├── android-chrome-144x144.png (어플 아이콘)
│       ├── android-chrome-167x167.png (어플 아이콘)
│       ├── android-chrome-180x180.png (어플 아이콘)
│       ├── android-chrome-192x192.png (어플 아이콘)
│       ├── android-chrome-20x20.png (어플 아이콘)
│       ├── android-chrome-29x29.png (어플 아이콘)
│       ├── android-chrome-40x40.png (어플 아이콘)
│       ├── android-chrome-512x512.png (로딩 아이콘)
│       ├── android-chrome-76x76.png (어플 아이콘)
│       ├── android-chrome-maskable-192x192.png (어플 아이콘)
│       ├── android-chrome-maskable-512x512.png (어플 아이콘)
│       ├── favicon-16x16.png (파비콘)
│       ├── favicon-20x20.png (파비콘)
│       ├── favicon-32x32.png (파비콘)
│       ├── favicon.ico (파비콘)
│       ├── favicon.svg (파비콘)
│       ├── icon-messages-27x20.png (푸시 메세지 아이콘)
│       ├── icon-messages-54x40.png (푸시 메세지 아이콘)
│       ├── icon-messages-81x60.png (푸시 메세지 아이콘)
│       ├── icon-messages-96x96.png (푸시 메세지 아이콘)
│       ├── marker_blue.png (현장 지도 마크 아이콘)
│       ├── marker_gray.png (현장 지도 마크 아이콘)
│       ├── marker_green.png (현장 지도 마크 아이콘)
│       ├── marker_orange.png (현장 지도 마크 아이콘)
│       ├── marker_purple.png (현장 지도 마크 아이콘)
│       ├── marker_red.png (현장 지도 마크 아이콘)
│       ├── marker_yellow.png (현장 지도 마크 아이콘)
│       ├── menu-deftdone-96x96.png (어플 간편 진입 아이콘)
│       ├── menu-defting-96x96.png (어플 간편 진입 아이콘)
│       ├── menu-deftmang-96x96.png (어플 간편 진입 아이콘)
│       ├── menu-deftque-96x96.png (어플 간편 진입 아이콘)
│       ├── menu-home-96x96.png (어플 간편 진입 아이콘)
│       ├── menu-roomapp-96x96.png (어플 간편 진입 아이콘)
│       ├── menu-roomrev-96x96.png (어플 간편 진입 아이콘)
│       └── safari-pinned-tab.svg (사파리 아이콘)
└── index.html (메인 index)