| | |
| | | package kr.wisestone.owl.service.impl; |
| | | |
| | | import kr.wisestone.owl.domain.CompanyField; |
| | | import kr.wisestone.owl.domain.CustomField; |
| | | import kr.wisestone.owl.service.UserService; |
| | | import kr.wisestone.owl.web.condition.CompanyFieldCondition; |
| | | import kr.wisestone.owl.web.form.CompanyFieldForm; |
| | | import org.apache.commons.lang3.StringUtils; |
| | | import org.springframework.ui.Model; |
| | | import com.google.common.collect.Lists; |
| | | import kr.wisestone.owl.common.ExcelConditionCheck; |
| | |
| | | // 업체 추가 |
| | | @Override |
| | | public CompanyField addCompany(CompanyFieldForm companyFieldForm) { |
| | | // url 유효성 체크 |
| | | this.verifyUrl(companyFieldForm.getUrl()); |
| | | |
| | | CompanyField companyField = ConvertUtil.copyProperties(companyFieldForm, CompanyField.class); |
| | | companyFieldRepository.saveAndFlush(companyField); |
| | | return companyField; |
| | | } |
| | | |
| | | // url 유효성 체크 |
| | | private void verifyUrl(String url) { |
| | | if (StringUtils.isEmpty(url)) { |
| | | throw new OwlRuntimeException( |
| | | this.messageAccessor.getMessage(MsgConstants.COMPANYFIELD_NOT_URL)); |
| | | } |
| | | CompanyField companyField = this.companyFieldRepository.findByUrl(url); |
| | | |
| | | if (companyField != null) { |
| | | throw new OwlRuntimeException( |
| | | this.messageAccessor.getMessage(MsgConstants.COMPANYFIELD_USED_URL)); |
| | | } |
| | | } |
| | | |
| | | // 업체 목록을 가져온다. |
| | |
| | | // 업체 정로를 수정한다. |
| | | @Override |
| | | public void modifyCompany(CompanyFieldForm companyFieldForm) { |
| | | // url 유효성 체크 |
| | | this.verifyUrl(companyFieldForm.getUrl()); |
| | | |
| | | CompanyField companyField = ConvertUtil.copyProperties(companyFieldForm, CompanyField.class); |
| | | companyFieldRepository.saveAndFlush(companyField); |
| | | } |
| | |
| | | throw new OwlRuntimeException( |
| | | this.messageAccessor.getMessage(MsgConstants.COMPANY_REMOVE_NOT_SELECT)); |
| | | } |
| | | this.companyFieldRepository.flush(); |
| | | for (Long id : companyFieldForm.getRemoveIds()) { |
| | | this.companyFieldRepository.deleteById(id); |
| | | this.companyFieldRepository.flush(); |
| | | } |
| | | } |
| | | |
| | | // 업체 목록을 엑셀로 다운로드 한다. |
| | |
| | | } |
| | | |
| | | CompanyFieldCondition companyFieldCondition = CompanyFieldCondition.make(conditions); |
| | | |
| | | |
| | | List<Map<String, Object>> results = this.companyFieldMapper.find(companyFieldCondition); |
| | | List<CompanyFieldVo> companyFieldVos = ConvertUtil.convertListToListClass(results, CompanyFieldVo.class); |
| | | |
| | | // code_ko_KR 에 code명 설정 |
| | | ExportExcelVo excelInfo = new ExportExcelVo(); |
| | | excelInfo.setFileName(this.messageAccessor.message("업체 목록")); |
| | | excelInfo.addAttrInfos(new ExportExcelAttrVo("companyName", this.messageAccessor.message("departmentManage.departmentName"), 6, ExportExcelAttrVo.ALIGN_CENTER)); |
| | | excelInfo.addAttrInfos(new ExportExcelAttrVo("", this.messageAccessor.message("departmentManage.departmentDescription"), 10, ExportExcelAttrVo.ALIGN_CENTER)); |
| | | excelInfo.addAttrInfos(new ExportExcelAttrVo("companyPhone", this.messageAccessor.message("departmentManage.departmentCount"), 10, ExportExcelAttrVo.ALIGN_CENTER)); |
| | | excelInfo.addAttrInfos(new ExportExcelAttrVo("companyEmail", this.messageAccessor.message("departmentManage.departmentCount"), 10, ExportExcelAttrVo.ALIGN_CENTER)); |
| | | excelInfo.addAttrInfos(new ExportExcelAttrVo("companyDesc", this.messageAccessor.message("departmentManage.departmentCount"), 10, ExportExcelAttrVo.ALIGN_CENTER)); |
| | | excelInfo.addAttrInfos(new ExportExcelAttrVo("name", this.messageAccessor.message("companyField.companyName"), 6, ExportExcelAttrVo.ALIGN_CENTER)); |
| | | 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); |
| | | |
| | | model.addAttribute(Constants.EXCEL, excelInfo); |
| | | return new ModelAndView(this.excelView); |
| | | } |
| | | |
| | | // 삭제 할 업체가 있는지 확인 |
| | | @Override |
| | | public boolean company(Long Id) { |
| | | return this.companyFieldMapper.findByCompany(Id) > 0; |
| | | } |
| | | |
| | | // 검색 결과를 CompanyFieldVo 로 변환한다. |
| | |
| | | throw new OwlRuntimeException( |
| | | this.messageAccessor.getMessage(MsgConstants.COMPANYFIELD_NOT_EXIST)); |
| | | } |
| | | |
| | | CompanyField companyField = this.findOne(id); |
| | | |
| | | if (companyField == null) { |