Merge branch 'master' of http://192.168.0.25:9001/r/owl-kisa
Conflicts:
src/main/resources/migration/V1_12__Alter_Table.sql
6개 파일 추가됨
2개 파일 이름 변경됨
71개 파일 변경됨
| | |
| | | private String name; |
| | | private String manager; |
| | | private String tel; |
| | | private String url; |
| | | private String email; |
| | | private String memo; |
| | | |
| | |
| | | public void setMemo(String memo) { |
| | | this.memo = memo; |
| | | } |
| | | |
| | | public String getUrl() { |
| | | return url; |
| | | } |
| | | |
| | | public void setUrl(String url) { |
| | | this.url = url; |
| | | } |
| | | } |
| | |
| | | private String manager; |
| | | private String tel; |
| | | private String email; |
| | | private String url; |
| | | private String memo; |
| | | |
| | | public HostingField() {} |
| | |
| | | this.memo = memo; |
| | | } |
| | | |
| | | public String getUrl() { |
| | | return url; |
| | | } |
| | | |
| | | public void setUrl(String url) { |
| | | this.url = url; |
| | | } |
| | | } |
| | |
| | | private String manager; |
| | | private String tel; |
| | | private String email; |
| | | private String url; |
| | | private String memo; |
| | | |
| | | public IspField() {} |
| | |
| | | this.memo = memo; |
| | | } |
| | | |
| | | } |
| | | public String getUrl() { |
| | | return url; |
| | | } |
| | | |
| | | public void setUrl(String url) { |
| | | this.url = url; |
| | | } |
| | | } |
| | |
| | | private String manager; |
| | | private String tel; |
| | | private String email; |
| | | private String url; |
| | | private String memo; |
| | | |
| | | @ManyToOne(fetch = FetchType.LAZY) |
| | |
| | | |
| | | public IssueCompany(){} |
| | | |
| | | public IssueCompany(Issue issue, CompanyField companyField, String name, String manager, String tel, String email, String memo){ |
| | | public IssueCompany(Issue issue, CompanyField companyField, String name, String manager, String tel, String email, String url, String memo){ |
| | | this.issue = issue; |
| | | this.companyField = companyField; |
| | | this.name = name; |
| | | this.manager = manager; |
| | | this.tel = tel; |
| | | this.email = email; |
| | | this.url = url; |
| | | this.memo = memo; |
| | | } |
| | | |
| | |
| | | public void setCompanyField(CompanyField companyField) { |
| | | this.companyField = companyField; |
| | | } |
| | | |
| | | public String getUrl() { |
| | | return url; |
| | | } |
| | | |
| | | public void setUrl(String url) { |
| | | this.url = url; |
| | | } |
| | | } |
| | |
| | | private String manager; |
| | | private String tel; |
| | | private String email; |
| | | private String url; |
| | | private String memo; |
| | | |
| | | @ManyToOne(fetch = FetchType.LAZY) |
| | |
| | | this.manager = manager; |
| | | this.tel = tel; |
| | | this.email = email; |
| | | this.url = url; |
| | | this.memo = memo; |
| | | } |
| | | |
| | |
| | | public void setHostingField(HostingField hostingField) { |
| | | this.hostingField = hostingField; |
| | | } |
| | | |
| | | public String getUrl() { |
| | | return url; |
| | | } |
| | | |
| | | public void setUrl(String url) { |
| | | this.url = url; |
| | | } |
| | | } |
| | |
| | | private String manager; |
| | | private String tel; |
| | | private String email; |
| | | private String url; |
| | | private String memo; |
| | | |
| | | @ManyToOne(fetch = FetchType.LAZY) |
| | |
| | | this.manager = manager; |
| | | this.tel = tel; |
| | | this.email = email; |
| | | this.url = url; |
| | | this.memo = memo; |
| | | } |
| | | |
| | |
| | | public void setIspField(IspField ispField) { |
| | | this.ispField = ispField; |
| | | } |
| | | |
| | | public String getUrl() { |
| | | return url; |
| | | } |
| | | |
| | | public void setUrl(String url) { |
| | | this.url = url; |
| | | } |
| | | } |
| | |
| | | |
| | | public static final String USER_STATUS_ACTIVE = "01"; // 사용자 활성 |
| | | public static final String USER_STATUS_DEL = "02"; // 사용자 탈퇴 |
| | | public static final String DEFAULT_PROFILE = "assets/images/default_profile.png"; // 기본 프로필 |
| | | //public static final String DEFAULT_PROFILE = "assets/images/default_profile.png"; // 기본 프로필 |
| | | public static final String DEFAULT_PROFILE = "assets/images/default-profile-kisa.png"; // 인터넷진흥원 기본 프로필 |
| | | //public static final String DEFAULT_RESERVATION_NOTIFY_TIME = "09:00"; // 기본 이메일 알림 예정 시간 |
| | | public static final String DEFAULT_RESERVATION_NOTIFY_TIME = "false"; // 기본 이메일 알림 예정 시간 false로 변경 |
| | | public static final String DEFAULT_LANGUAGE = "ko"; // 기본 언어 |
| | |
| | | List<Map<String, Object>> findProjectMemberIssueByDepartment(WidgetCondition widgetCondition); |
| | | |
| | | List<Map<String, Object>> findMyAssigneeIssueByDepartment(WidgetCondition makeWidgetCondition); |
| | | |
| | | List<Map<String, Object>> findByStandIssueTypeOfDepartment(WidgetCondition widgetCondition); |
| | | |
| | | List<Map<String, Object>> findByStandIssueStatusOfDepartment(WidgetCondition widgetCondition); |
| | | } |
| | |
| | | |
| | | public interface IssueRelationRepository extends JpaRepository<IssueRelation, Long> { |
| | | List<IssueRelation> findAllByIssueId(Long issueId); |
| | | |
| | | List<IssueRelation> findByRelationIssueId(Long relationIssueId); |
| | | } |
| | |
| | | excelInfo.addAttrInfos(new ExportExcelAttrVo("manager", this.messageAccessor.message("companyField.companyManager"), 10, ExportExcelAttrVo.ALIGN_CENTER)); |
| | | excelInfo.addAttrInfos(new ExportExcelAttrVo("tel", this.messageAccessor.message("companyField.companyTel"), 10, ExportExcelAttrVo.ALIGN_CENTER)); |
| | | excelInfo.addAttrInfos(new ExportExcelAttrVo("email", this.messageAccessor.message("companyField.companyEmail"), 10, ExportExcelAttrVo.ALIGN_CENTER)); |
| | | excelInfo.addAttrInfos(new ExportExcelAttrVo("url", this.messageAccessor.message("companyField.companyUrl"), 10, ExportExcelAttrVo.ALIGN_CENTER)); |
| | | excelInfo.addAttrInfos(new ExportExcelAttrVo("memo", this.messageAccessor.message("companyField.companyMemo"), 10, ExportExcelAttrVo.ALIGN_CENTER)); |
| | | |
| | | excelInfo.setDatas(companyFieldVos); |
File was renamed from src/main/java/kr/wisestone/owl/service/impl/HostingFieldFieldServiceImpl.java |
| | |
| | | import java.util.Map; |
| | | |
| | | @Service |
| | | public class HostingFieldFieldServiceImpl extends AbstractServiceImpl<HostingField, Long, JpaRepository<HostingField, Long>> implements HostingFieldService { |
| | | public class HostingFieldServiceImpl extends AbstractServiceImpl<HostingField, Long, JpaRepository<HostingField, Long>> implements HostingFieldService { |
| | | |
| | | @Autowired |
| | | private HostingFieldRepository hostingFieldRepository; |
| | |
| | | excelInfo.addAttrInfos(new ExportExcelAttrVo("manager", this.messageAccessor.message("Hosting.HostingManager"), 10, ExportExcelAttrVo.ALIGN_CENTER)); |
| | | excelInfo.addAttrInfos(new ExportExcelAttrVo("tel", this.messageAccessor.message("Hosting.HostingTel"), 10, ExportExcelAttrVo.ALIGN_CENTER)); |
| | | excelInfo.addAttrInfos(new ExportExcelAttrVo("email", this.messageAccessor.message("Hosting.HostingEmail"), 10, ExportExcelAttrVo.ALIGN_CENTER)); |
| | | excelInfo.addAttrInfos(new ExportExcelAttrVo("url", this.messageAccessor.message("Hosting.HostingUrl"), 10, ExportExcelAttrVo.ALIGN_CENTER)); |
| | | excelInfo.addAttrInfos(new ExportExcelAttrVo("memo", this.messageAccessor.message("Hosting.HostingMemo"), 10, ExportExcelAttrVo.ALIGN_CENTER)); |
| | | |
| | | excelInfo.setDatas(hostingFieldVos); |
File was renamed from src/main/java/kr/wisestone/owl/service/impl/IspFieldFieldServiceImpl.java |
| | |
| | | import java.util.Map; |
| | | |
| | | @Service |
| | | public class IspFieldFieldServiceImpl extends AbstractServiceImpl<IspField, Long, JpaRepository<IspField, Long>> implements IspFieldService { |
| | | public class IspFieldServiceImpl extends AbstractServiceImpl<IspField, Long, JpaRepository<IspField, Long>> implements IspFieldService { |
| | | |
| | | @Autowired |
| | | private IspFieldRepository ispFieldRepository; |
| | |
| | | excelInfo.addAttrInfos(new ExportExcelAttrVo("manager", this.messageAccessor.message("isp.ispManager"), 10, ExportExcelAttrVo.ALIGN_CENTER)); |
| | | excelInfo.addAttrInfos(new ExportExcelAttrVo("tel", this.messageAccessor.message("isp.ispTel"), 10, ExportExcelAttrVo.ALIGN_CENTER)); |
| | | excelInfo.addAttrInfos(new ExportExcelAttrVo("email", this.messageAccessor.message("isp.ispEmail"), 10, ExportExcelAttrVo.ALIGN_CENTER)); |
| | | excelInfo.addAttrInfos(new ExportExcelAttrVo("url", this.messageAccessor.message("isp.ispUrl"), 10, ExportExcelAttrVo.ALIGN_CENTER)); |
| | | excelInfo.addAttrInfos(new ExportExcelAttrVo("memo", this.messageAccessor.message("isp.ispMemo"), 10, ExportExcelAttrVo.ALIGN_CENTER)); |
| | | |
| | | excelInfo.setDatas(ispFieldVos); |
| | |
| | | import kr.wisestone.owl.exception.OwlRuntimeException; |
| | | import kr.wisestone.owl.mapper.IssueMapper; |
| | | import kr.wisestone.owl.mapper.ProjectMapper; |
| | | import kr.wisestone.owl.repository.IssueRelationRepository; |
| | | import kr.wisestone.owl.repository.IssueRepository; |
| | | import kr.wisestone.owl.repository.UserDepartmentRepository; |
| | | import kr.wisestone.owl.repository.WorkflowDepartmentRepository; |
| | |
| | | |
| | | @Autowired |
| | | private IssueRelationService issueRelationService; |
| | | |
| | | @Autowired |
| | | private IssueRelationRepository issueRelationRepository; |
| | | |
| | | @Autowired |
| | | private ExcelView excelView; |
| | |
| | | // 날짜 유효성 체크 |
| | | this.checkStartCompleteDate(issueForm.getStartDate(), issueForm.getCompleteDate()); |
| | | // 담당 부서 유효성 체크 |
| | | this.verifyIssueDepartment(project, issueForm); |
| | | //this.verifyIssueDepartment(project, issueForm); |
| | | |
| | | // 이슈 상태 유형이 '대기' 인 이슈 상태 가져오기 |
| | | IssueStatus issueStatus = this.issueStatusService.findByIssueStatusTypeIsReady(issueType.getWorkflow()); |
| | |
| | | // 날짜 유효성 체크 |
| | | this.checkStartCompleteDate(issueForm.getStartDate(), issueForm.getCompleteDate()); |
| | | // 담당 부서 유효성 체크 |
| | | this.verifyIssueDepartment(project, issueForm); |
| | | //this.verifyIssueDepartment(project, issueForm); |
| | | |
| | | // 이슈 상태 유형이 '대기' 인 이슈 상태 가져오기 |
| | | IssueStatus issueStatus = this.issueStatusService.findByIssueStatusTypeIsReady(issueType.getWorkflow()); |
| | |
| | | // 담당자 유효성 체크 |
| | | //this.verifyIssueAssignee(project, issueForm); |
| | | // 담당부서 유효성 체크 |
| | | this.verifyIssueDepartment(project, issueForm); |
| | | //this.verifyIssueDepartment(project, issueForm); |
| | | |
| | | CheckIssueData checkIssueData = new CheckIssueData(); |
| | | checkIssueData.setIssue(issue); |
| | |
| | | this.attachedFileService.removeAttachedFiles(attachedFileIds); |
| | | } |
| | | |
| | | // 지울 이슈가 연관이슈인지 체크 후 연관이슈 테이블에서도 삭제한다. |
| | | List<IssueRelation> issueRelationList = this.issueRelationRepository.findByRelationIssueId(issueId); |
| | | if (issueRelationList != null && issueRelationList.size() > 0) { |
| | | for(IssueRelation issueRelation : issueRelationList){ |
| | | StringBuilder sb = new StringBuilder(); |
| | | issueHistoryService.detectRelationIssue(IssueHistoryType.DELETE, issueRelation, sb); |
| | | issueHistoryService.addIssueHistory(issueRelation.getIssue(), IssueHistoryType.MODIFY, sb.toString()); |
| | | this.issueRelationRepository.delete(issueRelation); |
| | | } |
| | | } |
| | | |
| | | // 이슈 생성, 삭제시 예약 이메일에 등록해놓는다. |
| | | this.reservationIssueEmail(issue, EmailType.ISSUE_REMOVE); |
| | | // 이슈 삭제 |
| | |
| | | delayIssue = this.widgetMapper.countTodayDelayIssueByDepartment(widgetCondition); // 지연된 이슈 |
| | | assigneeIssue = this.widgetMapper.countAssigneeIssueByDepartment(widgetCondition); // 할당된 이슈 |
| | | registerIssue = this.widgetMapper.countTodayRegisterIssueByDepartment(widgetCondition); // 등록한 이슈 |
| | | noAssigneeIssue = this.widgetMapper.countNoAssigneeIssueByDepartment(widgetCondition); // 미할당 이슈 |
| | | //noAssigneeIssue = this.widgetMapper.countNoAssigneeIssueByDepartment(widgetCondition); // 일반 유저는 미할당 이슈 0개로 보이게 |
| | | completeIssue = this.widgetMapper.countCompleteIssueByDepartment(widgetCondition); // 완료된 이슈 |
| | | } |
| | | } |
| | |
| | | } |
| | | |
| | | List<Map<String, Object>> results = Lists.newArrayList(); |
| | | User user = this.webAppUtil.getLoginUserObject(); |
| | | |
| | | if (widgetCondition.getProjectIds().size() > 0) { |
| | | SetMeAndDownProjectIds(widgetCondition.getProjectIds(), widgetCondition); |
| | | results = this.widgetMapper.findByStandIssueStatus(widgetCondition); |
| | | if (this.userWorkspaceService.checkWorkspaceManager(user)) { |
| | | results = this.widgetMapper.findByStandIssueStatus(widgetCondition); |
| | | }else { |
| | | results = this.widgetMapper.findByStandIssueStatusOfDepartment(widgetCondition); |
| | | } |
| | | } |
| | | |
| | | for (Map<String, Object> result : results) { |
| | |
| | | public void findByStandIssueType(Map<String, Object> resJsonData, WidgetCondition widgetCondition, Boolean getWidgetCondition) { |
| | | // 위젯 검색 조건을 얻어야 할 상황일 때 - 화면에서 탭을 눌러 데이터를 재요청했을 때 위젯 검색 조건을 만들고 전체 프로젝트 정보를 리턴한다. |
| | | Map<String, Object> results = this.makeWidgetConditionAllProject(widgetCondition, getWidgetCondition); |
| | | |
| | | User user = this.webAppUtil.getLoginUserObject(); |
| | | if (widgetCondition.getProjectId() != null) { |
| | | SetMeAndDownProjectIds(widgetCondition.getProjectIds(), widgetCondition); |
| | | List<Map<String, Object>> issueTypeIssues = this.widgetMapper.findByStandIssueType(widgetCondition); |
| | | List<Map<String, Object>> issueTypeIssues = Lists.newArrayList(); |
| | | if (this.userWorkspaceService.checkWorkspaceManager(user)) { |
| | | issueTypeIssues = this.widgetMapper.findByStandIssueType(widgetCondition); |
| | | } else { |
| | | issueTypeIssues = this.widgetMapper.findByStandIssueTypeOfDepartment(widgetCondition); |
| | | } |
| | | // 이슈 정보 |
| | | results.put("issues", issueTypeIssues); |
| | | } else { |
| | |
| | | private String manager; |
| | | private String tel; |
| | | private String email; |
| | | private String url; |
| | | private String memo; |
| | | |
| | | public CompanyFieldVo() {} |
| | |
| | | this.manager = manager; |
| | | this.tel = tel; |
| | | this.email = email; |
| | | this.url = url; |
| | | this.memo = memo; |
| | | } |
| | | |
| | |
| | | public void setMemo(String memo) { |
| | | this.memo = memo; |
| | | } |
| | | |
| | | public String getUrl() { |
| | | return url; |
| | | } |
| | | |
| | | public void setUrl(String url) { |
| | | this.url = url; |
| | | } |
| | | } |
| | |
| | | private String tel; |
| | | private String email; |
| | | private String memo; |
| | | private String url; |
| | | private String byName; |
| | | |
| | | public HostingFieldVo() {} |
| | |
| | | this.manager = manager; |
| | | this.tel = tel; |
| | | this.email = email; |
| | | this.url = url; |
| | | this.memo = memo; |
| | | } |
| | | |
| | |
| | | public void setByName(String byName) { |
| | | this.byName = byName; |
| | | } |
| | | |
| | | public String getUrl() { |
| | | return url; |
| | | } |
| | | |
| | | public void setUrl(String url) { |
| | | this.url = url; |
| | | } |
| | | } |
| | |
| | | private String manager; |
| | | private String tel; |
| | | private String email; |
| | | private String url; |
| | | private String memo; |
| | | |
| | | public IspFieldVo() {} |
| | |
| | | this.manager = manager; |
| | | this.tel = tel; |
| | | this.email = email; |
| | | this.url = url; |
| | | this.memo = memo; |
| | | } |
| | | |
| | |
| | | public void setMemo(String memo) { |
| | | this.memo = memo; |
| | | } |
| | | |
| | | public String getUrl() { |
| | | return url; |
| | | } |
| | | |
| | | public void setUrl(String url) { |
| | | this.url = url; |
| | | } |
| | | } |
| | |
| | | private Long companyId; |
| | | private String name; |
| | | private String manager; |
| | | private String url; |
| | | private String tel; |
| | | private String email; |
| | | private String memo; |
| | |
| | | public void setMemo(String memo) { |
| | | this.memo = memo; |
| | | } |
| | | |
| | | public String getUrl() { |
| | | return url; |
| | | } |
| | | |
| | | public void setUrl(String url) { |
| | | this.url = url; |
| | | } |
| | | } |
| | |
| | | private String name; |
| | | private String code; |
| | | private String manager; |
| | | private String url; |
| | | private String tel; |
| | | private String email; |
| | | private String memo; |
| | |
| | | public void setMemo(String memo) { |
| | | this.memo = memo; |
| | | } |
| | | |
| | | public String getUrl() { |
| | | return url; |
| | | } |
| | | |
| | | public void setUrl(String url) { |
| | | this.url = url; |
| | | } |
| | | } |
| | |
| | | private String name; |
| | | private String code; |
| | | private String manager; |
| | | private String url; |
| | | private String tel; |
| | | private String email; |
| | | private String memo; |
| | |
| | | public void setMemo(String memo) { |
| | | this.memo = memo; |
| | | } |
| | | |
| | | public String getUrl() { |
| | | return url; |
| | | } |
| | | |
| | | public void setUrl(String url) { |
| | | this.url = url; |
| | | } |
| | | } |
| | |
| | | private String manager; |
| | | private String tel; |
| | | private String email; |
| | | private String url; |
| | | private String memo; |
| | | |
| | | private Integer Page; |
| | |
| | | public void setPageSize(Integer pageSize) { |
| | | PageSize = pageSize; |
| | | } |
| | | |
| | | public String getUrl() { |
| | | return url; |
| | | } |
| | | |
| | | public void setUrl(String url) { |
| | | this.url = url; |
| | | } |
| | | } |
| | |
| | | private String manager; |
| | | private String tel; |
| | | private String email; |
| | | private String url; |
| | | private String memo; |
| | | |
| | | private Integer Page; |
| | |
| | | public void setPageSize(Integer pageSize) { |
| | | PageSize = pageSize; |
| | | } |
| | | |
| | | public String getUrl() { |
| | | return url; |
| | | } |
| | | |
| | | public void setUrl(String url) { |
| | | this.url = url; |
| | | } |
| | | } |
| | |
| | | private String manager; |
| | | private String tel; |
| | | private String email; |
| | | private String url; |
| | | private String memo; |
| | | |
| | | private Integer Page; |
| | |
| | | public void setPageSize(Integer pageSize) { |
| | | PageSize = pageSize; |
| | | } |
| | | |
| | | public String getUrl() { |
| | | return url; |
| | | } |
| | | |
| | | public void setUrl(String url) { |
| | | this.url = url; |
| | | } |
| | | } |
| | |
| | | public class CompanyFieldForm extends UsePartnerForm { |
| | | private String manager; |
| | | private String tel; |
| | | private String url; |
| | | private String memo; |
| | | private List<Long> removeIds = Lists.newArrayList(); |
| | | |
| | |
| | | this.tel = tel; |
| | | } |
| | | |
| | | public String getUrl() { |
| | | return url; |
| | | } |
| | | |
| | | public void setUrl(String url) { |
| | | this.url = url; |
| | | } |
| | | |
| | | public String getMemo() { |
| | | return memo; |
| | | } |
| | |
| | | private String code; |
| | | private String manager; |
| | | private String tel; |
| | | private String url; |
| | | private String memo; |
| | | private List<Long> removeIds = Lists.newArrayList(); |
| | | |
| | |
| | | public void setRemoveIds(List<Long> removeIds) { |
| | | this.removeIds = removeIds; |
| | | } |
| | | |
| | | public String getUrl() { |
| | | return url; |
| | | } |
| | | |
| | | public void setUrl(String url) { |
| | | this.url = url; |
| | | } |
| | | } |
| | |
| | | private String code; |
| | | private String manager; |
| | | private String tel; |
| | | private String url; |
| | | private String memo; |
| | | private List<Long> removeIds = Lists.newArrayList(); |
| | | |
| | |
| | | public void setRemoveIds(List<Long> removeIds) { |
| | | this.removeIds = removeIds; |
| | | } |
| | | |
| | | public String getUrl() { |
| | | return url; |
| | | } |
| | | |
| | | public void setUrl(String url) { |
| | | this.url = url; |
| | | } |
| | | } |
| | |
| | | ALTER TABLE `hosting_field` ADD COLUMN `url` VARCHAR(255) NULL; |
| | | |
| | | -- 자동 완료 상태 추가 |
| | | ALTER TABLE `issue_type` ADD COLUMN `complete_issue_status_id` BIGINT(20) NULL; |
| | | ALTER TABLE `issue_type` ADD COLUMN `complete_issue_status_id` BIGINT(20) NULL; |
| | | ALTER TABLE `issue_company` ADD COLUMN `url` VARCHAR(255) NULL; |
| | | ALTER TABLE `issue_isp` ADD COLUMN `url` VARCHAR(255) NULL; |
| | | ALTER TABLE `issue_hosting` ADD COLUMN `url` VARCHAR(255) NULL; |
| | |
| | | h.manager as manager, |
| | | h.tel as tel, |
| | | h.email as email, |
| | | h.url as url, |
| | | h.memo as memo |
| | | FROM |
| | | hosting_field h |
| | |
| | | i.manager as manager, |
| | | i.tel as tel, |
| | | i.email as email, |
| | | i.url as url, |
| | | i.memo as memo |
| | | FROM |
| | | isp_field i |
| | |
| | | cf.manager as manager, |
| | | cf.tel as tel, |
| | | cf.email as email, |
| | | cf.url as url, |
| | | cf.memo as memo |
| | | FROM |
| | | company_field cf |
| | |
| | | </when> |
| | | </choose> |
| | | AND issue.parent_issue_id IS NULL |
| | | AND issue_status.issue_status_type != 'CLOSE' |
| | | AND issue.reverse_index <![CDATA[ < ]]> 0 |
| | | AND workspace.id = #{workspaceId} |
| | | GROUP BY issue.id |
| | |
| | | INNER JOIN priority priority FORCE INDEX(PRIMARY) ON issue.priority_id = priority.id |
| | | INNER JOIN severity severity FORCE INDEX(PRIMARY) ON issue.severity_id = severity.id |
| | | INNER JOIN issue_department isd ON isd.issue_id = issue.id |
| | | INNER JOIN department d ON d.id = isd.department_id |
| | | INNER JOIN user_department ud ON ud.department_id = isd.department_id |
| | | LEFT OUTER JOIN issue_custom_field_value issue_custom FORCE INDEX(issueIdIndex) ON issue.id = issue_custom.issue_id |
| | | LEFT OUTER JOIN (SELECT issue_id, COUNT(id) as attachedFileCount FROM attached_file GROUP BY issue_id) |
| | | temp_attached_file on (temp_attached_file.issue_id = issue.id) |
| | |
| | | </when> |
| | | </choose> |
| | | AND issue.parent_issue_id IS NULL |
| | | AND issue_status.issue_status_type != 'CLOSE' |
| | | AND issue.reverse_index <![CDATA[ < ]]> 0 |
| | | AND workspace.id = #{workspaceId} |
| | | GROUP BY issue.id |
| | |
| | | COUNT(DISTINCT issue.id) |
| | | FROM issue issue |
| | | LEFT OUTER JOIN issue_department isd ON issue.id = isd.issue_id |
| | | LEFT OUTER JOIN issue_status iss ON iss.id = issue.issue_status_id |
| | | WHERE 1=1 |
| | | AND issue.parent_issue_id IS NULL |
| | | AND iss.issue_status_type != 'CLOSE' |
| | | <if test="title != null and !title.equals('') "> |
| | | AND issue.title like CONCAT('%',#{title},'%') |
| | | </if> |
| | |
| | | COUNT(DISTINCT issue.id) |
| | | FROM issue issue |
| | | LEFT OUTER JOIN issue_department isd ON issue.id = isd.issue_id |
| | | LEFT OUTER JOIN issue_status iss ON iss.id = issue.issue_status_id |
| | | WHERE 1=1 |
| | | AND issue.parent_issue_id IS NULL |
| | | AND iss.issue_status_type != 'CLOSE' |
| | | <if test="title != null and !title.equals('') "> |
| | | AND issue.title like CONCAT('%',#{title},'%') |
| | | </if> |
| | |
| | | ic.manager as companyManager, |
| | | ic.tel as companyTel, |
| | | ic.email as companyEmail, |
| | | ic.url as companyUrl, |
| | | ic.memo as companyMemo |
| | | FROM issue_company ic |
| | | WHERE 1=1 |
| | |
| | | ih.manager as hostingManager, |
| | | ih.tel as hostingTel, |
| | | ih.email as hostingEmail, |
| | | ih.url as hostingUrl, |
| | | ih.memo as hostingMemo |
| | | FROM issue_hosting ih |
| | | WHERE 1=1 |
| | |
| | | ii.manager as ispManager, |
| | | ii.tel as ispTel, |
| | | ii.email as ispEmail, |
| | | ii.url as ispUrl, |
| | | ii.memo as ispMemo |
| | | FROM issue_isp ii |
| | | WHERE 1=1 |
| | |
| | | project p |
| | | INNER JOIN project_role pr on p.id = pr.project_id |
| | | INNER JOIN project_role_department prd on prd.project_role_id = pr.id |
| | | INNER JOIN department d on d.id = prd.department_id |
| | | INNER JOIN user_department ud on ud.department_id = prd.department_id |
| | | INNER JOIN workspace ws on ws.id = p.workspace_id |
| | | LEFT JOIN project_closure pc ON p.id = pc.project_id |
| | | WHERE if (pc.parent_project_id > -1, pc.parent_project_id, -1) = -1 |
| | | AND prd.department_id = d.id |
| | | <if test="name != '' and name != null"> |
| | | AND p.name like CONCAT('%',#{name},'%') |
| | | </if> |
| | |
| | | #{item} |
| | | </foreach> |
| | | </when> |
| | | <otherwise> |
| | | AND 1 != 1 |
| | | </otherwise> |
| | | </choose> |
| | | |
| | | <choose> |
| | |
| | | project p |
| | | INNER JOIN project_role pr on p.id = pr.project_id |
| | | INNER JOIN project_role_department prd on prd.project_role_id = pr.id |
| | | INNER JOIN department d on d.id = prd.department_id |
| | | INNER JOIN user_department ud on ud.department_id = prd.department_id |
| | | INNER JOIN workspace ws on ws.id = p.workspace_id |
| | | LEFT JOIN project_closure pc on p.id = pc.project_id |
| | | WHERE prd.department_id = d.id |
| | | WHERE prd.department_id = ud.id |
| | | AND if (pc.parent_project_id > -1, pc.parent_project_id, -1) = -1 |
| | | <if test="name != '' and name != null"> |
| | | AND p.name like CONCAT('%',#{name},'%') |
| | | </if> |
| | | |
| | | <choose> |
| | | <when test="myDepartmentIds.size != 0"> |
| | | AND prd.department_id IN |
| | | <foreach collection="myDepartmentIds" item="item" index="index" separator="," open="(" close=")"> |
| | | #{item} |
| | | </foreach> |
| | | </when> |
| | | </choose> |
| | | |
| | | <choose> |
| | | <when test="roleTypes.size != 0"> |
| | |
| | | project p |
| | | INNER JOIN project_role pr on p.id = pr.project_id |
| | | INNER JOIN project_role_department prd on prd.project_role_id = pr.id |
| | | INNER JOIN department d on d.id = prd.department_id |
| | | INNER JOIN user_department ud on ud.department_id = prd.department_id |
| | | LEFT JOIN project_closure pc ON p.id = pc.project_id |
| | | WHERE prd.department_id = d.id |
| | | WHERE prd.department_id = ud.department_id |
| | | AND if (pc.parent_project_id > -1, pc.parent_project_id, -1) = -1 |
| | | AND p.workspace_id = #{workspaceId} |
| | | <if test="name != '' and name != null"> |
| | |
| | | project p |
| | | INNER JOIN project_role pr on p.id = pr.project_id |
| | | INNER JOIN project_role_department prd on prd.project_role_id = pr.id |
| | | INNER JOIN department d on d.id = prd.department_id |
| | | INNER JOIN user_department ud on ud.department_id = prd.department_id |
| | | WHERE 1=1 |
| | | AND p.id = #{id} |
| | | </select> |
| | |
| | | SELECT |
| | | COUNT(i.id) FROM issue i |
| | | INNER JOIN issue_department isd ON isd.issue_id = i.id |
| | | INNER JOIN department d ON d.id = isd.department_id |
| | | INNER JOIN user_department ud ON ud.department_id = isd.department_id |
| | | WHERE EXISTS(SELECT 1 FROM issue_status iss WHERE iss.issue_status_type != 'CLOSE' AND i.issue_status_id = |
| | | iss.id) |
| | | <choose> |
| | |
| | | SELECT |
| | | COUNT(i.id) FROM issue i |
| | | INNER JOIN issue_department isd ON isd.issue_id = i.id |
| | | INNER JOIN department d ON d.id = isd.department_id |
| | | INNER JOIN user_department ud ON ud.department_id = isd.department_id |
| | | where exists(select 1 from issue_status iss where iss.id = i.issue_status_id and iss.issue_status_type != 'CLOSE') |
| | | <choose> |
| | | <when test="meAndDownProjectIds != null and meAndDownProjectIds.size != 0"> |
| | |
| | | SELECT |
| | | COUNT(i.id) FROM issue i |
| | | INNER JOIN issue_department isd ON isd.issue_id = i.id |
| | | INNER JOIN department d ON d.id = isd.department_id |
| | | INNER JOIN user_department ud ON ud.department_id = isd.department_id |
| | | WHERE EXISTS(SELECT 1 FROM issue_department isd WHERE isd.issue_id = i.id |
| | | <choose> |
| | | <when test="myDepartmentIds.size != 0"> |
| | |
| | | select |
| | | count(i.id) as todayCount from issue i |
| | | INNER JOIN issue_department isd ON isd.issue_id = i.id |
| | | INNER JOIN department d ON d.id = isd.department_id |
| | | INNER JOIN user_department ud ON ud.department_id = isd.department_id |
| | | where |
| | | i.register_id = #{loginUserId} |
| | | <choose> |
| | |
| | | AND isd.id IS NULL |
| | | </select> |
| | | |
| | | <select id="countNoAssigneeIssueByDepartment" resultType="java.lang.Long" |
| | | <!--<select id="countNoAssigneeIssueByDepartment" resultType="java.lang.Long" |
| | | parameterType="kr.wisestone.owl.web.condition.WidgetCondition"> |
| | | SELECT |
| | | COUNT(DISTINCT i.id) FROM issue i |
| | |
| | | </when> |
| | | </choose> |
| | | AND isd.id IS NULL |
| | | </select> |
| | | </select>--> |
| | | |
| | | <!-- 완료된 이슈 개수 --> |
| | | <select id="countCompleteIssue" resultType="java.lang.Long" |
| | |
| | | count(*) as issueCount from issue i |
| | | inner join issue_status iss on iss.id = i.issue_status_id |
| | | INNER JOIN issue_department isd ON isd.issue_id = i.id |
| | | INNER JOIN department d ON d.id = isd.department_id |
| | | INNER JOIN user_department ud ON ud.department_id = isd.department_id |
| | | where iss.issue_status_type = 'CLOSE' |
| | | <choose> |
| | | <when test="meAndDownProjectIds != null and meAndDownProjectIds.size != 0"> |
| | |
| | | parameterType="kr.wisestone.owl.web.condition.WidgetCondition"> |
| | | select |
| | | count(i.id) as todayCount from issue i where |
| | | exists(select 1 from issue_department isd where isd.issue_id = i.id |
| | | exists(select 1 from issue_department isd |
| | | INNER JOIN user_department ud ON ud.department_id = isd.department_id |
| | | where isd.issue_id = i.id |
| | | <choose> |
| | | <when test="myDepartmentIds.size != 0"> |
| | | AND isd.department_id IN |
| | |
| | | replace(SUBSTRING(i.register_date, 1, 10), "-", ".") as registerDate |
| | | from issue i |
| | | inner join issue_department isd on isd.issue_id = i.id |
| | | INNER JOIN user_department ud ON ud.department_id = isd.department_id |
| | | inner join issue_status iss on iss.id = i.issue_status_id |
| | | inner join project p on p.id = i.project_id |
| | | WHERE 1=1 |
| | |
| | | group by p.id |
| | | </select> |
| | | |
| | | <select id="findByStandIssueStatusOfDepartment" resultType="java.util.HashMap" |
| | | parameterType="kr.wisestone.owl.web.condition.WidgetCondition"> |
| | | select |
| | | <choose> |
| | | <when test="issueStatuses.size != 0"> |
| | | <foreach collection="issueStatuses" item="item" index="index" separator="," open="" close=""> |
| | | count(case when i.issue_status_id = #{item.id} then 1 end) as #{item.name} |
| | | </foreach> |
| | | </when> |
| | | </choose> |
| | | ,p.id, |
| | | p.name as projectName |
| | | from issue i |
| | | inner join project p on p.id = i.project_id |
| | | inner join issue_status iss on iss.id = i.issue_status_id |
| | | INNER JOIN issue_department isd ON isd.issue_id = i.id |
| | | INNER JOIN user_department ud ON ud.department_id = isd.department_id |
| | | where 1=1 |
| | | <choose> |
| | | <when test="meAndDownProjectIds != null and meAndDownProjectIds.size != 0"> |
| | | AND i.project_id IN |
| | | <foreach collection="meAndDownProjectIds" item="item" index="index" separator="," open="(" close=")"> |
| | | #{item} |
| | | </foreach> |
| | | </when> |
| | | </choose> |
| | | group by p.id |
| | | </select> |
| | | |
| | | <!-- 9번 위젯 끝 --> |
| | | |
| | | <!-- 11번 위젯 시작 --> |
| | |
| | | from |
| | | department d |
| | | inner join project_role_department prd on prd.department_id = d.id |
| | | INNER JOIN user_department ud ON ud.department_id = prd.department_id |
| | | inner join project_role pr on pr.id = prd.project_role_id |
| | | inner join project p on p.id = pr.project_id |
| | | WHERE |
| | |
| | | |
| | | <select id="findByStandIssueType" resultType="java.util.HashMap" |
| | | parameterType="kr.wisestone.owl.web.condition.WidgetCondition"> |
| | | SELECT issue_type.name as name, COUNT(issue.id) as issueCount FROM issue issue |
| | | INNER JOIN issue_type issue_type ON issue.issue_type_id = issue_type.id |
| | | SELECT issue_type.name as name, COUNT(issue.id) as issueCount FROM issue |
| | | INNER JOIN issue_type ON issue.issue_type_id = issue_type.id |
| | | WHERE issue.project_id = #{projectId} |
| | | GROUP BY issue_type.name |
| | | </select> |
| | | |
| | | <select id="findByStandIssueTypeOfDepartment" resultType="java.util.HashMap" |
| | | parameterType="kr.wisestone.owl.web.condition.WidgetCondition"> |
| | | SELECT issue_type.name as name, COUNT(issue.id) as issueCount FROM issue |
| | | INNER JOIN issue_type ON issue.issue_type_id = issue_type.id |
| | | INNER JOIN issue_department isd ON isd.issue_id = issue.id |
| | | INNER JOIN user_department ud ON ud.department_id = isd.department_id |
| | | WHERE issue.project_id = #{projectId} |
| | | GROUP BY issue_type.name |
| | | </select> |
| | |
| | | INNER JOIN severity s ON s.id = i.severity_id |
| | | INNER JOIN issue_status iss ON iss.id = i.issue_status_id |
| | | INNER JOIN issue_department isd on isd.issue_id = i.id |
| | | INNER JOIN user_department ud ON ud.department_id = isd.department_id |
| | | WHERE w.id = #{workspaceId} |
| | | AND iss.issue_status_type != 'CLOSE' |
| | | <choose> |
| | |
| | | INNER JOIN severity s ON s.id = i.severity_id |
| | | INNER JOIN issue_status iss ON iss.id = i.issue_status_id |
| | | INNER JOIN issue_department isd on isd.issue_id = i.id |
| | | INNER JOIN user_department ud ON ud.department_id = isd.department_id |
| | | WHERE w.id = #{workspaceId} |
| | | AND s.id = #{severityId} |
| | | AND iss.issue_status_type != 'CLOSE' |
| | |
| | | common.delayingIssue=\uC9C0\uC5F0 \uC911\uC778 \uC774\uC288 |
| | | common.assignedIssue=\uB2F4\uB2F9 \uC774\uC288 |
| | | common.delaying=\uC9C0\uC5F0\uC911 |
| | | common.progressByMember=\uBA64\uBC84\uBCC4 \uC9C4\uD589\uB960 |
| | | common.progressByMember=\uBD80\uC11C\uBCC4 \uC9C4\uD589\uB960 |
| | | common.myIssueStatus=\uB098\uC758 \uC774\uC288 \uD604\uD669 |
| | | common.division=\uAD6C\uBD84 |
| | | common.complete=\uC644\uB8CC |
| | |
| | | companyField.companyManager=\uB2F4\uB2F9\uC790 |
| | | companyField.companyTel=\uC804\uD654\uBC88\uD638 |
| | | companyField.companyEmail=\uC774\uBA54\uC77C |
| | | companyField.companyUrl=url |
| | | companyField.companyMemo=\uBE44\uACE0 |
| | | isp.ispName=ISP \uC774\uB984 |
| | | isp.ispCode=\uCF54\uB4DC |
| | | isp.ispManager=\uB2F4\uB2F9\uC790 |
| | | isp.ispTel=\uC804\uD654\uBC88\uD638 |
| | | isp.ispEmail=\uC774\uBA54\uC77C |
| | | isp.ispUrl=url |
| | | isp.ispMemo=\uBE44\uACE0 |
| | | Hosting.HostingName=\uD638\uC2A4\uD305 \uC774\uB984 |
| | | Hosting.HostingCode=\uCF54\uB4DC |
| | | Hosting.HostingManager=\uB2F4\uB2F9\uC790 |
| | | Hosting.HostingTel=\uC804\uD654\uBC88\uD638 |
| | | Hosting.HostingEmail=\uC774\uBA54\uC77C |
| | | Hosting.HostingUrl=url |
| | | Hosting.HostingMemo=\uBE44\uACE0 |
| | |
| | | .menu-w .logo-w .logo-element, |
| | | .top-bar .logo-w .logo-element { |
| | | content: ""; |
| | | width: 60px; |
| | | height: 30px; |
| | | background-image: url(../images/logo-owl.png); |
| | | width: 110px; |
| | | height: 40px; |
| | | background-image: url(../images/logo-kisa-en.png); |
| | | background-size: cover; |
| | | position: relative; |
| | | display: inline-block; |
| | | vertical-align: middle; |
| | | margin-right: 20px; |
| | | margin-right: 0px; |
| | | right: 10px; |
| | | -webkit-transition: all 0.2s ease; |
| | | transition: all 0.2s ease; |
| | | } |
| | |
| | | .menu-w .logo-w .logo-element:after, |
| | | .top-bar .logo-w .logo-element:after { |
| | | content: ""; |
| | | width: 105px; |
| | | height: 31px; |
| | | background-image: url(../images/logo-owltxt.png); |
| | | width: 120px; |
| | | height: 30px; |
| | | background-image: url(../images/logo-kisa-txt.png); |
| | | background-size: cover; |
| | | right: -20px; |
| | | left: 70px; |
| | | left: 110px; |
| | | top: 10px; |
| | | position: absolute; |
| | | -webkit-transition: all 0.2s ease; |
| | | transition: all 0.2s ease; |
| | |
| | | |
| | | .menu-w .logo-w .logo:hover .logo-element, |
| | | .top-bar .logo-w .logo:hover .logo-element { |
| | | -webkit-transform: translateX(5px); |
| | | transform: translateX(5px); |
| | | -webkit-transform: translateX(2px); |
| | | transform: translateX(2px); |
| | | } |
| | | |
| | | .menu-w .logo-w .logo:hover .logo-element:after, |
| | | .top-bar .logo-w .logo:hover .logo-element:after { |
| | | -webkit-transform: translateX(-10px); |
| | | transform: translateX(-10px); |
| | | -webkit-transform: translateX(-3px); |
| | | transform: translateX(-3px); |
| | | } |
| | | |
| | | .menu-w .logo-w .logo:hover .logo-label:after, |
| | |
| | | |
| | | .menu-w .logo-w { |
| | | text-align: center; |
| | | padding: 14px 1rem 14px 1.7rem; |
| | | padding: 10px 1rem 12px 1.1rem; |
| | | } |
| | | |
| | | .menu-w .logo-w a { |
| | |
| | | } |
| | | |
| | | .menu-position-side.menu-w.color-scheme-dark .logo-w { |
| | | background-color: #000035; |
| | | background-color:#f2f4f8; |
| | | } |
| | | |
| | | .menu-position-side.menu-w.color-scheme-dark .element-search:before { |
| | |
| | | line-height: 20px; |
| | | text-align: center; |
| | | } |
| | | |
| | | .auth-box-w .auth-header img { |
| | | /* 기존 로고 위치 및 크기 */ |
| | | /*.auth-box-w .auth-header img { |
| | | width: 70px; |
| | | } |
| | | }*/ |
| | | |
| | | /* 인터넷 진흥원 로고 위치 및 크기 조정*/ |
| | | .auth-box-w .auth-header img { |
| | | width: 120px; |
| | | position: relative; |
| | | bottom: 6px; |
| | | } |
| | | .auth-box-w form { |
| | | padding: 20px 50px; |
| | | padding-bottom: 20px; |
| | |
| | | transition: .4s; |
| | | } |
| | | |
| | | .slider-disabled { |
| | | position: absolute; |
| | | cursor: pointer; |
| | | top: 0; |
| | | left: 0; |
| | | right: 0; |
| | | bottom: 0; |
| | | background-color: #2196F3; |
| | | } |
| | | |
| | | .slider-disabled:before { |
| | | position: absolute; |
| | | content: ""; |
| | | height: 18px; |
| | | width: 18px; |
| | | left: 30px; |
| | | bottom: 4px; |
| | | background-color: white; |
| | | } |
| | | |
| | | |
| | | input:checked + .slider { |
| | | background-color: #2196F3; |
| | | } |
| | |
| | | border-radius: 50%; |
| | | } |
| | | |
| | | .slider-disabled.round { |
| | | border-radius: 34px; |
| | | } |
| | | |
| | | .slider-disabled.round:before { |
| | | border-radius: 50%; |
| | | } |
| | | |
| | | .tab { |
| | | position: relative; |
| | | margin-top: 20px; |
| | |
| | | <img ng-if="settings.imageable && (option.profile != '' && option.profile != undefined) && settings.type == 'user'" |
| | | ng-src='{{option.profile}}' class="autocomplte-img"> |
| | | <img ng-if="settings.imageable && (option.profile == '' || option.profile == undefined) && settings.type == 'user'" |
| | | src="/assets/images/default_profile.png" class="autocomplte-img"> |
| | | src="/assets/images/default-profile-kisa.png" class="autocomplte-img"> |
| | | {{fn.getPropertyForObject(option, settings.displayProp)}}</label> |
| | | </div> |
| | | </a> |
| | |
| | | <img ng-if="settings.imageable && (option[settings.imagePathProp] != '' && option[settings.imagePathProp] != undefined) && settings.type == 'user'" |
| | | ng-src='{{option.profile}}' class="autocomplte-img"> |
| | | <img ng-if="settings.imageable && (option[settings.imagePathProp] == '' || option[settings.imagePathProp] == undefined) && settings.type == 'user'" |
| | | src="/assets/images/default_profile.png" class="autocomplte-img"> |
| | | src="/assets/images/default-profile-kisa.png" class="autocomplte-img"> |
| | | <span class="option-span" |
| | | translate="{{fn.getPropertyForObject(option, settings.displayProp)}}"></span> |
| | | </a> |
| | |
| | | <a role="menuitem" data-id="{{fn.getPropertyForObject(option,settings.idProp)}}" class="option-a height-auto" |
| | | tabindex="-1" ng-click="fn.selectTarget(fn.getPropertyForObject(option,settings.idProp))"> |
| | | <img ng-if="settings.imageable && (option.profile != '' && option.profile != undefined) && settings.type == 'user'" ng-src='{{option.profile}}' class="autocomplte-img"> |
| | | <img ng-if="settings.imageable && (option.profile == '' || option.profile == undefined) && settings.type == 'user'" src="assets/images/default_profile.png" class="autocomplte-img"> |
| | | <img ng-if="settings.imageable && (option.profile == '' || option.profile == undefined) && settings.type == 'user'" src="assets/images/default-profile-kisa.png" class="autocomplte-img"> |
| | | <span class="option-span title-span" |
| | | translate="{{fn.getPropertyForObject(option, settings.displayProp)}}"></span> |
| | | </a> |
| | |
| | | ng-src='{{option.profile}}' |
| | | class="autocomplte-img"> |
| | | <img ng-if="settings.imageable && (option.profile == '' || option.profile == undefined) && settings.type == 'user'" |
| | | src="assets/images/default_profile.png" |
| | | src="assets/images/default-profile-kisa.png" |
| | | class="autocomplte-img"> |
| | | <span class="option-span" |
| | | translate="{{fn.getPropertyForObject(option, settings.displayProp)}}"></span> |
| | |
| | | "delayDate": "지연일", |
| | | "statusOfIssues": "상태별 이슈 현황", |
| | | "doesNotExistWorkflow": "워크플로우가 없습니다.", |
| | | "progressByMember": "멤버별 진행률", |
| | | "progressByMember": "부서별 진행률", |
| | | "assignedIssue": "담당 이슈", |
| | | "delaying": "지연중", |
| | | "myIssueStatus": "나의 이슈 현황", |
| | |
| | | "profitYN" : "영리/비영리", |
| | | "industry" : "산업 분류", |
| | | "domain" : "도메인", |
| | | "url" : "url", |
| | | "ipAdress" : "ip주소", |
| | | "manager" : "담당자", |
| | | "tel" : "전화번호", |
| | |
| | | manager : "", //담당자 |
| | | tel : "", //전화번호 |
| | | email : "", //이메일 |
| | | url : "", // url |
| | | memo : "" //비고 |
| | | } |
| | | }; |
| | |
| | | manager : $scope.vm.form.manager, //담당자 |
| | | tel : $scope.vm.form.tel, //전화번호 |
| | | email : $scope.vm.form.email, //이메일 |
| | | url : $scope.vm.form.url, // url |
| | | memo : $scope.vm.form.memo //비고 |
| | | }; |
| | | |
| | |
| | | .setDName("email") |
| | | .setDAlign("text-center")); |
| | | $scope.vm.tableConfigs.push($tableProvider.config() |
| | | .setHName("companyField.url") |
| | | .setHWidth("bold") |
| | | .setDName("url") |
| | | .setDAlign("text-center")); |
| | | $scope.vm.tableConfigs.push($tableProvider.config() |
| | | .setHName("companyField.memo") |
| | | .setHWidth("bold") |
| | | .setDName("memo") |
| | |
| | | manager : "", //담당자 |
| | | tel : "", //전화번호 |
| | | email : "", //이메일 |
| | | url : "", // url |
| | | memo : "" //메모(비고) |
| | | } |
| | | }; |
| | |
| | | manager : $rootScope.preventXss($scope.vm.form.manager), |
| | | tel : $rootScope.preventXss($scope.vm.form.tel), |
| | | email : $rootScope.preventXss($scope.vm.form.email), |
| | | url : $rootScope.preventXss($scope.vm.form.url), // url |
| | | memo : $rootScope.preventXss($scope.vm.form.memo) |
| | | }; |
| | | |
| | |
| | | $scope.vm.form.manager = result.data.content.manager; |
| | | $scope.vm.form.email = result.data.content.email; |
| | | $scope.vm.form.tel = result.data.content.tel; |
| | | $scope.vm.form.url = result.data.content.url; |
| | | $scope.vm.form.memo = result.data.content.memo; |
| | | } |
| | | } |
| | |
| | | manager : "", //담당자 |
| | | tel : "", //전화번호 |
| | | email : "", //이메일 |
| | | url : "", // url |
| | | memo : "" //비고 |
| | | } |
| | | }; |
| | |
| | | manager : $scope.vm.form.manager, //담당자 |
| | | tel : $scope.vm.form.tel, //전화번호 |
| | | email : $scope.vm.form.email, //이메일 |
| | | url : $scope.vm.form.url, // url |
| | | memo : $scope.vm.form.memo //비고 |
| | | }; |
| | | |
| | |
| | | .setDName("email") |
| | | .setDAlign("text-center")); |
| | | $scope.vm.tableConfigs.push($tableProvider.config() |
| | | .setHName("companyField.url") |
| | | .setHWidth("bold") |
| | | .setDName("url") |
| | | .setDAlign("text-center")); |
| | | $scope.vm.tableConfigs.push($tableProvider.config() |
| | | .setHName("hostingField.memo") |
| | | .setHWidth("bold") |
| | | .setDName("memo") |
| | |
| | | manager : "", //담당자 |
| | | tel : "", //전화번호 |
| | | email : "", //이메일 |
| | | url : "", // url |
| | | memo : "" //메모(비고) |
| | | } |
| | | }; |
| | |
| | | manager : $rootScope.preventXss($scope.vm.form.manager), |
| | | tel : $rootScope.preventXss($scope.vm.form.tel), |
| | | email : $rootScope.preventXss($scope.vm.form.email), |
| | | url : $rootScope.preventXss($scope.vm.form.url), // url |
| | | memo : $rootScope.preventXss($scope.vm.form.memo) |
| | | }; |
| | | |
| | |
| | | $scope.vm.form.manager = result.data.content.manager; |
| | | $scope.vm.form.email = result.data.content.email; |
| | | $scope.vm.form.tel = result.data.content.tel; |
| | | $scope.vm.form.url = result.data.content.url; |
| | | $scope.vm.form.memo = result.data.content.memo; |
| | | } |
| | | } |
| | |
| | | manager : "", //담당자 |
| | | tel : "", //전화번호 |
| | | email : "", //이메일 |
| | | url : "", // url |
| | | memo : "" //비고 |
| | | } |
| | | }; |
| | |
| | | manager : $scope.vm.form.manager, //담당자 |
| | | tel : $scope.vm.form.tel, //전화번호 |
| | | email : $scope.vm.form.email, //이메일 |
| | | url : $scope.vm.form.url, // url |
| | | memo : $scope.vm.form.memo //비고 |
| | | }; |
| | | |
| | |
| | | .setDName("email") |
| | | .setDAlign("text-center")); |
| | | $scope.vm.tableConfigs.push($tableProvider.config() |
| | | .setHName("companyField.url") |
| | | .setHWidth("bold") |
| | | .setDName("url") |
| | | .setDAlign("text-center")); |
| | | $scope.vm.tableConfigs.push($tableProvider.config() |
| | | .setHName("ispField.memo") |
| | | .setHWidth("bold") |
| | | .setDName("memo") |
| | |
| | | manager : "", //담당자 |
| | | tel : "", //전화번호 |
| | | email : "", //이메일 |
| | | url : "", // url |
| | | memo : "" //메모(비고) |
| | | } |
| | | }; |
| | |
| | | manager : $rootScope.preventXss($scope.vm.form.manager), |
| | | tel : $rootScope.preventXss($scope.vm.form.tel), |
| | | email : $rootScope.preventXss($scope.vm.form.email), |
| | | url : $rootScope.preventXss($scope.vm.form.url), // url |
| | | memo : $rootScope.preventXss($scope.vm.form.memo) |
| | | }; |
| | | |
| | |
| | | $scope.vm.form.manager = result.data.content.manager; |
| | | $scope.vm.form.email = result.data.content.email; |
| | | $scope.vm.form.tel = result.data.content.tel; |
| | | $scope.vm.form.url = result.data.content.url; |
| | | $scope.vm.form.memo = result.data.content.memo; |
| | | } |
| | | } |
| | |
| | | companyManager : "", // 업체 담당자 |
| | | companyTel : "", // 업체 전화번호 |
| | | companyEmail : "", // 업체 이메일 |
| | | companyUrl : "", // 업체 url |
| | | companyMemo : "", // 업체 비고 |
| | | ispId : -1, // ISP ID |
| | | ispName : "", // ISP 명 |
| | |
| | | ispManager : "", // ISP 담당자 |
| | | ispTel : "", // ISP 전화번호 |
| | | ispEmail : "", // ISP 이메일 |
| | | ispUrl : "", // url |
| | | ispMemo : "", // ISP 비고 |
| | | hostingId : -1, // 호스팅 ID |
| | | hostingName : "", // 호스팅명 검색 |
| | | hostingManager : "", // 호스팅 담당자 |
| | | hostingTel : "", // 호스팅 전화번호 |
| | | hostingEmail : "", // 호스팅 이메일 |
| | | hostingUrl : "", // url |
| | | hostingMemo :"", // 호스팅 비고 |
| | | |
| | | autoCompletePage : { |
| | |
| | | $scope.vm.companyManager = result[0].manager; |
| | | $scope.vm.companyTel = result[0].tel; |
| | | $scope.vm.companyEmail = result[0].email; |
| | | $scope.vm.companyUrl = result[0].url; |
| | | $scope.vm.companyMemo = result[0].memo; |
| | | |
| | | }); |
| | |
| | | $scope.vm.ispManager = result[0].manager; |
| | | $scope.vm.ispTel = result[0].tel; |
| | | $scope.vm.ispEmail = result[0].email; |
| | | $scope.vm.ispUrl = result[0].url; |
| | | $scope.vm.ispMemo = result[0].memo; |
| | | }); |
| | | |
| | |
| | | $scope.vm.hostingManager = result[0].manager; |
| | | $scope.vm.hostingTel = result[0].tel; |
| | | $scope.vm.hostingEmail = result[0].email; |
| | | $scope.vm.hostingUrl = result[0].url; |
| | | $scope.vm.hostingMemo = result[0].memo; |
| | | }); |
| | | |
| | |
| | | manager : $scope.vm.companyManager, |
| | | tel : $scope.vm.companyTel, |
| | | email :$scope.vm.companyEmail, |
| | | url :$scope.vm.companyUrl, |
| | | memo : $scope.vm.companyMemo |
| | | }); |
| | | } |
| | |
| | | manager : $scope.vm.ispManager, |
| | | tel : $scope.vm.ispTel, |
| | | email :$scope.vm.ispEmail, |
| | | url :$scope.vm.ispUrl, |
| | | memo : $scope.vm.ispMemo |
| | | }; |
| | | |
| | |
| | | manager : $scope.vm.hostingManager, |
| | | tel : $scope.vm.hostingTel, |
| | | email :$scope.vm.hostingEmail, |
| | | url :$scope.vm.hostingUrl, |
| | | memo : $scope.vm.hostingMemo |
| | | }; |
| | | } |
| | |
| | | companyManager : "", // 업체 담당자 |
| | | companyTel : "", // 업체 전화번호 |
| | | companyEmail : "", // 업체 이메일 |
| | | companyUrl : "", // 업체 url |
| | | companyMemo : "", // 업체 비고 |
| | | ispId : -1, // ISP ID |
| | | ispName : "", // ISP 명 |
| | |
| | | ispManager : "", // ISP 담당자 |
| | | ispTel : "", // ISP 전화번호 |
| | | ispEmail : "", // ISP 이메일 |
| | | ispUrl : "", // ISP url |
| | | ispMemo : "", // ISP 비고 |
| | | hostingId : -1, // 호스팅 ID |
| | | hostingName : "", // 호스팅명 검색 |
| | |
| | | hostingTel : "", // 호스팅 전화번호 |
| | | hostingCode : "", // 호스팅 코드 |
| | | hostingEmail : "", // 호스팅 이메일 |
| | | hostingUrl : "", // 호스팅 url |
| | | hostingMemo :"", // 호스팅 비고 |
| | | |
| | | |
| | |
| | | $scope.vm.companyManager = result[0].manager; |
| | | $scope.vm.companyTel = result[0].tel; |
| | | $scope.vm.companyEmail = result[0].email; |
| | | $scope.vm.companyUrl = result[0].url; |
| | | $scope.vm.companyMemo = result[0].memo; |
| | | |
| | | }); |
| | |
| | | $scope.vm.ispManager = result[0].manager; |
| | | $scope.vm.ispTel = result[0].tel; |
| | | $scope.vm.ispEmail = result[0].email; |
| | | $scope.vm.ispUrl = result[0].url; |
| | | $scope.vm.ispMemo = result[0].memo; |
| | | }); |
| | | |
| | |
| | | $scope.vm.hostingManager = result[0].manager; |
| | | $scope.vm.hostingTel = result[0].tel; |
| | | $scope.vm.hostingEmail = result[0].email; |
| | | $scope.vm.hostingUrl = result[0].url; |
| | | $scope.vm.hostingMemo = result[0].memo; |
| | | }); |
| | | |
| | |
| | | companyManager : $scope.vm.companyManager, |
| | | companyTel : $scope.vm.companyTel, |
| | | companyEmail :$scope.vm.companyEmail, |
| | | companyUrl : $scope.vm.companyUrl, |
| | | companyMemo : $scope.vm.companyMemo, |
| | | ispName : $scope.vm.ispName, |
| | | ispCode : $scope.vm.ispCode, |
| | | ispManager : $scope.vm.ispManager, |
| | | ispTel : $scope.vm.ispTel, |
| | | ispEmail : $scope.vm.ispEmail, |
| | | ispUrl : $scope.vm.ispUrl, |
| | | ispMemo : $scope.vm.ispMemo, |
| | | hostingName : $scope.vm.hostingName, |
| | | hostingCode : $scope.vm.hostingCode, |
| | | hostingManager : $scope.vm.hostingManager, |
| | | hostingTel : $scope.vm.hostingTel, |
| | | hostingEmail : $scope.vm.hostingEmail, |
| | | hostingUrl : $scope.vm.hostingUrl, |
| | | hostingMemo : $scope.vm.hostingMemo, |
| | | |
| | | projectId : (function () { // 프로젝트 아이디 |
| | |
| | | manager : $scope.vm.companyManager, |
| | | tel : $scope.vm.companyTel, |
| | | email :$scope.vm.companyEmail, |
| | | url :$scope.vm.companyUrl, |
| | | memo : $scope.vm.companyMemo |
| | | }); |
| | | } |
| | |
| | | manager : $scope.vm.ispManager, |
| | | tel : $scope.vm.ispTel, |
| | | email :$scope.vm.ispEmail, |
| | | url :$scope.vm.ispUrl, |
| | | memo : $scope.vm.ispMemo |
| | | }); |
| | | |
| | |
| | | manager : $scope.vm.hostingManager, |
| | | tel : $scope.vm.hostingTel, |
| | | email :$scope.vm.hostingEmail, |
| | | url :$scope.vm.hostingUrl, |
| | | memo : $scope.vm.hostingMemo |
| | | }); |
| | | } |
| | |
| | | name : $filter("translate")("issue.issueTitle"), // 이슈 제목 |
| | | key : "ISSUE_TITLE", |
| | | width : "width-140-p", |
| | | position : 1, |
| | | display : true |
| | | position : 0, |
| | | display : true, |
| | | checkboxShow : false |
| | | }, { |
| | | name : $filter("translate")("common.priority"), // 우선순위 |
| | | key : "PRIORITY", |
| | | width : "width-80-p", |
| | | position : 2, |
| | | display : true |
| | | position : 1, |
| | | display : true, |
| | | checkboxShow : true |
| | | }, { |
| | | name : $filter("translate")("common.importance"), // 중요도 |
| | | key : "SEVERITY", |
| | | width : "width-80-p", |
| | | position : 3, |
| | | display : true |
| | | position : 2, |
| | | display : true, |
| | | checkboxShow : true |
| | | }, { |
| | | name : $filter("translate")("issue.issueType"), // 이슈 타입 |
| | | key : "ISSUE_TYPE", |
| | | width : "width-140-p", |
| | | position : 4, |
| | | display : true |
| | | position : 3, |
| | | display : true, |
| | | checkboxShow : true |
| | | }, { |
| | | name : $filter("translate")("common.assigneeTeam"), // 담당부서 |
| | | key : "ASSIGNEE_TEAM", |
| | | width : "width-100-p", |
| | | position : 5, |
| | | display : true |
| | | position : 4, |
| | | display : true, |
| | | checkboxShow : true |
| | | }, { |
| | | name : $filter("translate")("common.countDownIssue"), // 하위이슈 카운트 |
| | | key : "COUNT_DOWN_ISSUE", |
| | | width : "width-100-p", |
| | | position : 6, |
| | | display : false |
| | | position : 5, |
| | | display : false, |
| | | checkboxShow : true |
| | | }, { |
| | | name : $filter("translate")("common.register"), // 등록자 |
| | | key : "REGISTER", |
| | | width : "width-100-p", |
| | | position : 7, |
| | | display : false |
| | | position : 6, |
| | | display : false, |
| | | checkboxShow : true |
| | | }, { |
| | | name : $filter("translate")("common.period"), // 기간 |
| | | key : "PERIOD", |
| | | width : "width-140-p", |
| | | position : 8, |
| | | display : false |
| | | position : 7, |
| | | display : false, |
| | | checkboxShow : true |
| | | }, { |
| | | name : $filter("translate")("common.lastChangeDate"), // 최근 변경일 |
| | | key : "MODIFY_DATE", |
| | | width : "width-100-p", |
| | | position : 9, |
| | | display : false |
| | | position : 8, |
| | | display : false, |
| | | checkboxShow : true |
| | | }, { |
| | | }] |
| | | }; |
| | |
| | | key : "CUSTOM_FIELD_" + customField.id, |
| | | width : "width-100-p", |
| | | display : false, |
| | | checkboxShow : true, |
| | | position : count |
| | | }); |
| | | |
| | |
| | | else { |
| | | // 최초 업무 공간에 들어왔을 경우 |
| | | $scope.vm.issueTableConfigs = [{ |
| | | name : $filter("translate")("issue.issueTitle"), // 이슈 제목 |
| | | key : "ISSUE_TITLE", |
| | | width : "width-140-p", |
| | | position : 1, |
| | | display : true |
| | | }, { |
| | | name : $filter("translate")("common.priority"), // 우선순위 |
| | | key : "PRIORITY", |
| | | width : "width-80-p", |
| | | position : 1, |
| | | position : 2, |
| | | display : true |
| | | }, { |
| | | name : $filter("translate")("common.importance"), // 중요도 |
| | | key : "SEVERITY", |
| | | width : "width-80-p", |
| | | position : 2, |
| | | position : 3, |
| | | display : true |
| | | }, { |
| | | name : $filter("translate")("issue.issueType"), // 이슈 타입 |
| | | key : "ISSUE_TYPE", |
| | | width : "width-140-p", |
| | | position : 3, |
| | | position : 4, |
| | | display : true |
| | | }, { |
| | | name : $filter("translate")("common.assigneeTeam"), // 담당부서 |
| | | key : "ASSIGNEE_TEAM", |
| | | width : "width-140-p", |
| | | position : 4, |
| | | position : 5, |
| | | display : true |
| | | }]; |
| | | } |
| | |
| | | companyManager : "", // 업체 담당자 |
| | | companyTel : "", // 업체 전화번호 |
| | | companyEmail : "", // 업체 이메일 |
| | | companyUrl : "", // 업체 url |
| | | companyMemo : "", // 업체 비고 |
| | | ispId : -1, |
| | | ispName : "", // ISP 명 |
| | |
| | | ispManager : "", // ISP 담당자 |
| | | ispTel : "", // ISP 전화번호 |
| | | ispEmail : "", // ISP 이메일 |
| | | ispUrl : "", // url |
| | | ispMemo : "", // ISP 비고 |
| | | hostingId : -1, |
| | | hostingName : "", // 호스팅명 검색 |
| | |
| | | hostingCode : "", // 호스팅 코드 |
| | | hostingTel : "", // 호스팅 전화번호 |
| | | hostingEmail : "", // 호스팅 이메일 |
| | | hostingUrl : "", // url |
| | | hostingMemo : "", // 호스팅 비고 |
| | | autoCompletePage : { |
| | | // user : { |
| | |
| | | $scope.vm.companyManager = result[0].manager; |
| | | $scope.vm.companyTel = result[0].tel; |
| | | $scope.vm.companyEmail = result[0].email; |
| | | $scope.vm.companyUrl = result[0].url; |
| | | $scope.vm.companyMemo = result[0].memo; |
| | | |
| | | }); |
| | |
| | | $scope.vm.ispManager = result[0].manager; |
| | | $scope.vm.ispTel = result[0].tel; |
| | | $scope.vm.ispEmail = result[0].email; |
| | | $scope.vm.ispUrl = result[0].url; |
| | | $scope.vm.ispMemo = result[0].memo; |
| | | }); |
| | | |
| | |
| | | $scope.vm.hostingManager = result[0].manager; |
| | | $scope.vm.hostingTel = result[0].tel; |
| | | $scope.vm.hostingEmail = result[0].email; |
| | | $scope.vm.hostingUrl = result[0].url; |
| | | $scope.vm.hostingMemo = result[0].memo; |
| | | }); |
| | | |
| | |
| | | companyManager : $scope.vm.companyManager, |
| | | companyTel : $scope.vm.companyTel, |
| | | companyEmail :$scope.vm.companyEmail, |
| | | companyUrl : $scope.vm.companyUrl, |
| | | companyMemo : $scope.vm.companyMemo, |
| | | ispName : $scope.vm.ispName, |
| | | ispCode : $scope.vm.ispCode, |
| | | ispManager : $scope.vm.ispManager, |
| | | ispTel : $scope.vm.ispTel, |
| | | ispEmail : $scope.vm.ispEmail, |
| | | ispUrl : $scope.vm.ispUrl, |
| | | ispMemo : $scope.vm.ispMemo, |
| | | hostingName : $scope.vm.hostingName, |
| | | hostingCode : $scope.vm.hostingCode, |
| | | hostingManager : $scope.vm.hostingManager, |
| | | hostingTel : $scope.vm.hostingTel, |
| | | hostingEmail : $scope.vm.hostingEmail, |
| | | hostingUrl : $scope.vm.hostingUrl, |
| | | hostingMemo : $scope.vm.hostingMemo, |
| | | |
| | | projectId : (function () { // 프로젝트 아이디 |
| | |
| | | manager : $scope.vm.companyManager, |
| | | tel : $scope.vm.companyTel, |
| | | email :$scope.vm.companyEmail, |
| | | url :$scope.vm.companyUrl, |
| | | memo : $scope.vm.companyMemo |
| | | }); |
| | | } |
| | |
| | | manager : $scope.vm.ispManager, |
| | | tel : $scope.vm.ispTel, |
| | | email :$scope.vm.ispEmail, |
| | | url :$scope.vm.ispUrl, |
| | | memo : $scope.vm.ispMemo |
| | | }); |
| | | |
| | |
| | | manager : $scope.vm.hostingManager, |
| | | tel : $scope.vm.hostingTel, |
| | | email :$scope.vm.hostingEmail, |
| | | url :$scope.vm.hostingUrl, |
| | | memo : $scope.vm.hostingMemo |
| | | }); |
| | | } |
| | |
| | | $scope.vm.companyManager = issueCompanyFieldValue.manager; |
| | | $scope.vm.companyTel = issueCompanyFieldValue.tel; |
| | | $scope.vm.companyEmail = issueCompanyFieldValue.email; |
| | | $scope.vm.companyUrl = issueCompanyFieldValue.url; |
| | | $scope.vm.companyMemo = issueCompanyFieldValue.memo; |
| | | } |
| | | if (result.data.data.issueIspVos != null && result.data.data.issueIspVos.length > 0) { |
| | |
| | | $scope.vm.ispManager = issueIspFieldValue.manager; |
| | | $scope.vm.ispTel = issueIspFieldValue.tel; |
| | | $scope.vm.ispEmail = issueIspFieldValue.email; |
| | | $scope.vm.ispUrl = issueIspFieldValue.url; |
| | | $scope.vm.ispMemo = issueIspFieldValue.memo; |
| | | } |
| | | |
| | |
| | | $scope.vm.hostingManager = issueHostingFieldValue.manager; |
| | | $scope.vm.hostingTel = issueHostingFieldValue.tel; |
| | | $scope.vm.hostingEmail = issueHostingFieldValue.email; |
| | | $scope.vm.hostingUrl = issueHostingFieldValue.url; |
| | | $scope.vm.hostingMemo = issueHostingFieldValue.memo; |
| | | } |
| | | |
| | |
| | | $scope.vm = { |
| | | form : { |
| | | departments : [], // 담당부서 |
| | | projects : [] |
| | | projects : [], |
| | | issueTypeId : "" |
| | | }, |
| | | departmentName : "", // 부서 검색 |
| | | autoCompletePage : { |
| | |
| | | |
| | | function getIssueDepartmentList(query, excludeList, page, callBack) { |
| | | var conditions = { |
| | | issueTypeId : $scope.vm.form.issueTypeId, |
| | | //issueTypeId : $scope.vm.form.issueTypeId, |
| | | issueTypeId : $rootScope.currentDetailIssueId, |
| | | departmentName : query, |
| | | userId : $rootScope.user.id, |
| | | projectId : (function () { |
| | |
| | | conditions, $resourceProvider.getPageContent($rootScope.isDefined(page) ? page : 0, $rootScope.isDefined(page) ? 10 : 25))).then(function (result) { |
| | | if (result.data.message.status === "success") { |
| | | const departments = result.data.data; |
| | | if(departments != null && departments.length() > 0){ |
| | | if(departments != null){ |
| | | var filterDepartments = departments.filter(function(item, idx){ |
| | | return departments.findIndex(function(item2, idx2){ |
| | | return item.departmentName === item2.departmentName |
| | |
| | | </div> |
| | | <div> |
| | | <div class="form-group"> |
| | | <label for="companyFieldAddForm10" class="issue-label"> |
| | | <span translate="companyField.url">url</span> |
| | | </label> |
| | | <input id="companyFieldAddForm10" |
| | | name="url" |
| | | type="text" |
| | | class="form-control" |
| | | kr-input |
| | | autocomplete="off" |
| | | ng-model="vm.form.url" |
| | | ng-maxlength="200" |
| | | maxlength="200" |
| | | > |
| | | </div> |
| | | </div> |
| | | <div> |
| | | <div class="form-group"> |
| | | <label for="companyFieldAddForm8" class="issue-label"> |
| | | <span translate="companyField.memo">비고</span> |
| | | </label> |
| | |
| | | </div> |
| | | <div> |
| | | <div class="form-group"> |
| | | <label for="companyFieldAddForm10" class="issue-label"> |
| | | <span translate="companyField.url">url</span> |
| | | </label> |
| | | <input id="companyFieldAddForm10" |
| | | name="url" |
| | | type="text" |
| | | class="form-control" |
| | | kr-input |
| | | autocomplete="off" |
| | | ng-model="vm.form.url" |
| | | ng-maxlength="200" |
| | | maxlength="200" |
| | | > |
| | | </div> |
| | | </div> |
| | | <div> |
| | | <div class="form-group"> |
| | | <label for="companyFieldModifyForm8" class="issue-label"> |
| | | <span translate="companyField.memo">비고</span> |
| | | </label> |
| | |
| | | </div> |
| | | <div> |
| | | <div class="form-group"> |
| | | <label for="hostingFieldAddForm11" class="issue-label"> |
| | | <span translate="companyField.url">url</span> |
| | | </label> |
| | | <input id="hostingFieldAddForm11" |
| | | name="url" |
| | | type="text" |
| | | class="form-control" |
| | | kr-input |
| | | autocomplete="off" |
| | | ng-model="vm.form.url" |
| | | ng-maxlength="200" |
| | | maxlength="200" |
| | | > |
| | | </div> |
| | | </div> |
| | | <div> |
| | | <div class="form-group"> |
| | | <label for="hostingFieldAddForm8" class="issue-label"> |
| | | <span translate="hostingField.memo">비고</span> |
| | | </label> |
| | |
| | | </div> |
| | | <div> |
| | | <div class="form-group"> |
| | | <label for="hostingFieldAddForm11" class="issue-label"> |
| | | <span translate="companyField.url">url</span> |
| | | </label> |
| | | <input id="hostingFieldAddForm11" |
| | | name="url" |
| | | type="text" |
| | | class="form-control" |
| | | kr-input |
| | | autocomplete="off" |
| | | ng-model="vm.form.url" |
| | | ng-maxlength="200" |
| | | maxlength="200" |
| | | > |
| | | </div> |
| | | </div> |
| | | <div> |
| | | <div class="form-group"> |
| | | <label for="hostingFieldModifyForm8" class="issue-label"> |
| | | <span translate="hostingField.memo">비고</span> |
| | | </label> |
| | |
| | | </div> |
| | | <div> |
| | | <div class="form-group"> |
| | | <label for="ispFieldAddForm12" class="issue-label"> |
| | | <span translate="companyField.url">url</span> |
| | | </label> |
| | | <input id="ispFieldAddForm12" |
| | | name="url" |
| | | type="text" |
| | | class="form-control" |
| | | kr-input |
| | | autocomplete="off" |
| | | ng-model="vm.form.url" |
| | | ng-maxlength="200" |
| | | maxlength="200" |
| | | > |
| | | </div> |
| | | </div> |
| | | <div> |
| | | <div class="form-group"> |
| | | <label for="ispFieldAddForm8" class="issue-label"> |
| | | <span translate="ispField.memo">비고</span> |
| | | </label> |
| | |
| | | </div> |
| | | <div> |
| | | <div class="form-group"> |
| | | <label for="ispFieldAddForm12" class="issue-label"> |
| | | <span translate="companyField.url">url</span> |
| | | </label> |
| | | <input id="ispFieldAddForm12" |
| | | name="url" |
| | | type="text" |
| | | class="form-control" |
| | | kr-input |
| | | autocomplete="off" |
| | | ng-model="vm.form.url" |
| | | ng-maxlength="200" |
| | | maxlength="200" |
| | | > |
| | | </div> |
| | | </div> |
| | | <div> |
| | | <div class="form-group"> |
| | | <label for="hostingFieldModifyForm8" class="issue-label"> |
| | | <span translate="hostingField.memo">비고</span> |
| | | </label> |
| | |
| | | </div> |
| | | <div class="col-lg-4"> |
| | | <div class="form-group mgb5"> |
| | | <label for="companyFieldUrlAddForm" class="issue-label"><span translate="companyField.url">url</span></label> |
| | | <input id="companyFieldUrlAddForm" |
| | | name="companyUrl" |
| | | type="text" |
| | | class="form-control" |
| | | kr-input |
| | | autocomplete="off" |
| | | ng-maxlength="200" |
| | | ng-model="vm.companyUrl" |
| | | maxlength="200"> |
| | | </div> |
| | | </div> |
| | | <div class="col-lg-4"> |
| | | <div class="form-group mgb5"> |
| | | <label for="companyFieldDescAddForm" class="issue-label"><span translate="companyField.memo">비고</span></label> |
| | | <input id="companyFieldDescAddForm" |
| | | name="companyMemo" |
| | |
| | | </div> |
| | | <div class="col-lg-4"> |
| | | <div class="form-group mgb5"> |
| | | <label for="ispFieldUrlAddForm" class="issue-label"><span translate="companyField.url">url</span></label> |
| | | <input id="ispFieldUrlAddForm" |
| | | name="ispUrl" |
| | | type="text" |
| | | class="form-control" |
| | | kr-input |
| | | autocomplete="off" |
| | | ng-maxlength="200" |
| | | ng-model="vm.ispUrl" |
| | | maxlength="200"> |
| | | </div> |
| | | </div> |
| | | <div class="col-lg-4"> |
| | | <div class="form-group mgb5"> |
| | | <label for="ispFieldDescAddForm" class="issue-label"><span translate="ispField.memo">비고</span></label> |
| | | <input id="ispFieldDescAddForm" |
| | | name="ispMemo" |
| | |
| | | </div> |
| | | <div class="col-lg-4"> |
| | | <div class="form-group mgb5"> |
| | | <label for="hostingFieldUrlAddForm" class="issue-label"><span translate="companyField.url">url</span></label> |
| | | <input id="hostingFieldUrlAddForm" |
| | | name="hostingUrl" |
| | | type="text" |
| | | class="form-control" |
| | | kr-input |
| | | autocomplete="off" |
| | | ng-maxlength="200" |
| | | ng-model="vm.hostingUrl" |
| | | maxlength="200"> |
| | | </div> |
| | | </div> |
| | | <div class="col-lg-4"> |
| | | <div class="form-group mgb5"> |
| | | <label for="hostingFieldDescAdd" class="issue-label"><span translate="hostingField.memo">비고</span></label> |
| | | <input id="hostingFieldDescAdd" |
| | | name="hostingMemo" |
| | |
| | | </div> |
| | | <div class="col-lg-4"> |
| | | <div class="form-group mgb5"> |
| | | <label for="companyFieldUrlAddForm" class="issue-label"><span translate="companyField.url">url</span></label> |
| | | <input id="companyFieldUrlAddForm" |
| | | name="companyUrl" |
| | | type="text" |
| | | class="form-control" |
| | | kr-input |
| | | autocomplete="off" |
| | | ng-maxlength="200" |
| | | ng-model="vm.companyUrl" |
| | | maxlength="200"> |
| | | </div> |
| | | </div> |
| | | <div class="col-lg-4"> |
| | | <div class="form-group mgb5"> |
| | | <label for="companyFieldDescAddForm" class="issue-label"><span translate="companyField.memo">비고</span></label> |
| | | <input id="companyFieldDescAddForm" |
| | | name="companyMemo" |
| | |
| | | </div> |
| | | <div class="col-lg-4"> |
| | | <div class="form-group mgb5"> |
| | | <label for="ispFieldUrlAddForm" class="issue-label"><span translate="companyField.url">url</span></label> |
| | | <input id="ispFieldUrlAddForm" |
| | | name="ispUrl" |
| | | type="text" |
| | | class="form-control" |
| | | kr-input |
| | | autocomplete="off" |
| | | ng-maxlength="200" |
| | | ng-model="vm.ispUrl" |
| | | maxlength="200"> |
| | | </div> |
| | | </div> |
| | | <div class="col-lg-4"> |
| | | <div class="form-group mgb5"> |
| | | <label for="ispFieldDescAddForm" class="issue-label"><span translate="ispField.memo">비고</span></label> |
| | | <input id="ispFieldDescAddForm" |
| | | name="ispMemo" |
| | |
| | | </div> |
| | | <div class="col-lg-4"> |
| | | <div class="form-group mgb5"> |
| | | <label for="hostingFieldUrlAddForm" class="issue-label"><span translate="companyField.url">url</span></label> |
| | | <input id="hostingFieldUrlAddForm" |
| | | name="hostingUrl" |
| | | type="text" |
| | | class="form-control" |
| | | kr-input |
| | | autocomplete="off" |
| | | ng-maxlength="200" |
| | | ng-model="vm.hostingUrl" |
| | | maxlength="200"> |
| | | </div> |
| | | </div> |
| | | <div class="col-lg-4"> |
| | | <div class="form-group mgb5"> |
| | | <label for="hostingFieldDescAdd" class="issue-label"><span translate="hostingField.memo">비고</span></label> |
| | | <input id="hostingFieldDescAdd" |
| | | name="hostingMemo" |
| | |
| | | <option value="width-40">40%</option> |
| | | <option value="width-50">50%</option> |
| | | </select> |
| | | </td> |
| | | <td class="text-center"> |
| | | <label class='switch'><input type='checkbox' ng-model='issueTableConfig.display'><span class='slider round'></span></label> |
| | | <!-- 이슈 제목 표시 버튼 disabled --> |
| | | <label ng-if="!issueTableConfig.checkboxShow" class='switch'><input type="checkbox" ><span class='slider-disabled round'></span></label> |
| | | <!-- 나머지 버튼 표시 --> |
| | | <label ng-if="issueTableConfig.checkboxShow" class='switch'><input type="checkbox" ng-model="issueTableConfig.display"><span class='slider round'></span ></label> |
| | | </td> |
| | | <td class="text-center"> |
| | | <input type="text" class="form-control" ng-model="issueTableConfig.position" maxlength="2" input-regex="[^0-9]"> |
| | |
| | | <span class="info_detail_font h3" translate="issue.downIssue">하위 이슈</span> |
| | | </div> |
| | | <div class="col-sm-2"> |
| | | <button type="button" class="btn btn-primary form-control input-sm offset-5" ng-click="fn.modifyDownIssueStatus()" |
| | | <button type="button" class="btn btn-darkgrey form-control input-sm offset-5" ng-click="fn.modifyDownIssueStatus()" |
| | | translate="common.updateDownIssueAllStatus">하위이슈 상태 전체 변경</button> |
| | | </div> |
| | | <div class="col-sm-1"> |
| | |
| | | </div> |
| | | <div class="col-lg-4"> |
| | | <div class="form-group mgb5"> |
| | | <label for="companyFieldUrlAddForm" class="issue-label"><span translate="companyField.url">url</span></label> |
| | | <input id="companyFieldUrlAddForm" |
| | | name="companyUrl" |
| | | type="text" |
| | | class="form-control" |
| | | kr-input |
| | | autocomplete="off" |
| | | ng-maxlength="200" |
| | | ng-model="vm.companyUrl" |
| | | maxlength="200"> |
| | | </div> |
| | | </div> |
| | | <div class="col-lg-4"> |
| | | <div class="form-group mgb5"> |
| | | <label for="companyFieldDescAddForm" class="issue-label"><span translate="companyField.memo">비고</span></label> |
| | | <input id="companyFieldDescAddForm" |
| | | name="companyMemo" |
| | |
| | | </div> |
| | | <div class="col-lg-4"> |
| | | <div class="form-group mgb5"> |
| | | <label for="ispFieldUrlAddForm" class="issue-label"><span translate="companyField.url">url</span></label> |
| | | <input id="ispFieldUrlAddForm" |
| | | name="ispUrl" |
| | | type="text" |
| | | class="form-control" |
| | | kr-input |
| | | autocomplete="off" |
| | | ng-maxlength="200" |
| | | ng-model="vm.ispUrl" |
| | | maxlength="200"> |
| | | </div> |
| | | </div> |
| | | <div class="col-lg-4"> |
| | | <div class="form-group mgb5"> |
| | | <label for="ispFieldDescAddForm" class="issue-label"><span translate="ispField.memo">비고</span></label> |
| | | <input id="ispFieldDescAddForm" |
| | | name="ispMemo" |
| | |
| | | </div> |
| | | <div class="col-lg-4"> |
| | | <div class="form-group mgb5"> |
| | | <label for="hostingFieldUrlAddForm" class="issue-label"><span translate="companyField.url">url</span></label> |
| | | <input id="hostingFieldUrlAddForm" |
| | | name="hostingUrl" |
| | | type="text" |
| | | class="form-control" |
| | | kr-input |
| | | autocomplete="off" |
| | | ng-maxlength="200" |
| | | ng-model="vm.hostingUrl" |
| | | maxlength="200"> |
| | | </div> |
| | | </div> |
| | | <div class="col-lg-4"> |
| | | <div class="form-group mgb5"> |
| | | <label for="hostingFieldDescAdd" class="issue-label"><span translate="hostingField.memo">비고</span></label> |
| | | <input id="hostingFieldDescAdd" |
| | | name="hostingMemo" |
| | |
| | | <img ng-show="vm.form.template == 'ISSUE_SEND_3'" style="margin: 50px auto 0;" id="Email-Template3" src="assets/images/emailthumb-hosting.png"> |
| | | </div> |
| | | </div> |
| | | <summernote |
| | | class="summernote" |
| | | lang="ko-KR" |
| | | config="vm.options" |
| | | ng-model="vm.form.description" |
| | | target=".note-editable"></summernote> |
| | | </div> |
| | | </form> |
| | | </div> |
| | |
| | | <div class="flex"> |
| | | <div class="loginbackdiv"> |
| | | <div class="loginback"> |
| | | <img src="/assets/images/loginlogo.png"/> |
| | | <img src="/assets/images/logo-kisa-vertical.png"/> |
| | | <div class="stardiv"> |
| | | <div class="stars"></div> |
| | | <!-- <div class="stars"></div> |
| | | <div class="twinkling"></div> |
| | | </div> |
| | | <div class="bgdiv"> |
| | |
| | | <div class="login-circle"> |
| | | <div class="circle1"></div> |
| | | <div class="circle2"></div> |
| | | <div class="circle3"></div> |
| | | <div class="circle3"></div>--> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class="logincont"> |
| | | <div class="auth-box-w"> |
| | | <h3 class="auth-header"> |
| | | <img alt="" src="/assets/images/logineyes.png"> |
| | | <img alt="" src="/assets/images/logo-kisa-en.png"> |
| | | LOG IN |
| | | </h3> |
| | | <form role="form" ng-enter="fn.login()" name="loginForm"> |
| | |
| | | <div class="content-box"> |
| | | <div class="row"> |
| | | <div class="join-box"> |
| | | <a href="http://owlsolution.co.kr" target="_self"><img alt="" src="/assets/images/logo-owl-dark.png" class="join-logo"></a> |
| | | <a href="http://owlsolution.co.kr" target="_self"><img alt="" src="/assets/images/logo-kisa-ko.png" class="join-logo"></a> |
| | | <div class="join"> |
| | | <h4 translate="users.setupOWLITSMembership">OWL ITS 최고관리자 생성</h4> |
| | | <form name="userAddForm"> |
| | |
| | | <div class="content-box"> |
| | | <div class="row"> |
| | | <div class="join-box"> |
| | | <a href="http://owlsolution.co.kr" target="_self"><img alt="" src="/assets/images/logo-owl-dark.png" class="join-logo"></a> |
| | | <a href="http://owlsolution.co.kr" target="_self"><img alt="" src="/assets/images/logo-kisa-ko.png" class="join-logo"></a> |
| | | <span class="login-btn"><span translate="users.usedAccount">이미 계정이 있으신가요?</span> |
| | | <a class="link" ui-sref="login">Log in</a> |
| | | </span> |