From 305dc0c57b588f15dd53e5c6c01c3210292a3e9d Mon Sep 17 00:00:00 2001 From: 杜洪波 <1074825718@qq.com> Date: 星期四, 22 八月 2024 18:15:25 +0800 Subject: [PATCH] 文档管理目录调整 --- src/main/java/com/product/file/service/DocumentDirectoryService.java | 483 ++++++++++++++++++++++++++++------------------------- 1 files changed, 252 insertions(+), 231 deletions(-) diff --git a/src/main/java/com/product/file/service/DocumentDirectoryService.java b/src/main/java/com/product/file/service/DocumentDirectoryService.java index e9eacf2..7d9dd21 100644 --- a/src/main/java/com/product/file/service/DocumentDirectoryService.java +++ b/src/main/java/com/product/file/service/DocumentDirectoryService.java @@ -35,249 +35,270 @@ @Component public class DocumentDirectoryService extends AbstractBaseService implements IDocumentDirectoryService { - @Autowired - public BaseDao baseDao; - @Autowired - public DocumentDirectoryService documentDirectoryService; + @Autowired + public BaseDao baseDao; + @Autowired + public DocumentDirectoryService documentDirectoryService; + + /** + * 鍗曚綅鏂囦欢澶规爲 + * @return + */ + public DataTableEntity allDirectoryTree() { + DataTableEntity dtTree = baseDao.listTable(CmnConst.PRODUCT_OA_DIRECTORY, "directory_type = 1"); + if (!BaseUtil.dataTableIsEmpty(dtTree)) { + return BaseUtil.dataTableToTreeTable(dtTree, CmnConst.TRICODE, CmnConst.TRICODE_PARENT, null); + } + return dtTree; + } - @Override - @Transactional - public String addDocumentDirectory(FieldSetEntity fieldSetEntity) throws BaseException { + @Override + @Transactional + public String addDocumentDirectory(FieldSetEntity fieldSetEntity) throws BaseException { - String triCode = CodeUtil.getNewCodeByTemp(CmnConst.product_oa_DIRECTORY,CmnConst.TRICODE,!StringUtils.isEmpty(fieldSetEntity.getString(CmnConst.TRICODE_PARENT))?fieldSetEntity.getString(CmnConst.TRICODE_PARENT):""); - fieldSetEntity.setValue(CmnConst.TRICODE,triCode); - String[] codes = triCode.split("-"); - String org_level_uuid = SpringMVCContextHolder.getCurrentUser().getOrg_level_uuid(); - fieldSetEntity.setValue(CmnConst.ORG_LEVEL_UUID,org_level_uuid); - fieldSetEntity.setValue(CmnConst.DIRECTORY_TIER,codes.length); - fieldSetEntity.setValue(CmnConst.CREATED_BY, SpringMVCContextHolder.getCurrentUser().getUser_id());// 鑾峰彇鐧诲綍甯愬彿 - fieldSetEntity.setValue(CmnConst.CREATED_UTC_DATETIME, DateUtils.getDateTime());// 鍒涘缓鏃堕棿 - return baseDao.add(fieldSetEntity); - } + String triCode = CodeUtil.getNewCodeByTemp(CmnConst.PRODUCT_OA_DIRECTORY, CmnConst.TRICODE, + !StringUtils.isEmpty(fieldSetEntity.getString(CmnConst.TRICODE_PARENT)) + ? fieldSetEntity.getString(CmnConst.TRICODE_PARENT) + : ""); + fieldSetEntity.setValue(CmnConst.TRICODE, triCode); + String[] codes = triCode.split("-"); + String org_level_uuid = SpringMVCContextHolder.getCurrentUser().getOrg_level_uuid(); + fieldSetEntity.setValue(CmnConst.ORG_LEVEL_UUID, org_level_uuid); + fieldSetEntity.setValue(CmnConst.DIRECTORY_TIER, codes.length); + fieldSetEntity.setValue(CmnConst.CREATED_BY, SpringMVCContextHolder.getCurrentUser().getUser_id());// 鑾峰彇鐧诲綍甯愬彿 + fieldSetEntity.setValue(CmnConst.CREATED_UTC_DATETIME, DateUtils.getDateTime());// 鍒涘缓鏃堕棿 + return baseDao.add(fieldSetEntity); + } - @Override - @Transactional - public boolean upDocumentDirectory(FieldSetEntity fieldSetEntity) throws BaseException { - String uuid = fieldSetEntity.getString(CmnConst.UUID); - FieldSetEntity fieldSet = baseDao.getFieldSetEntity(CmnConst.product_oa_DIRECTORY, uuid, false); - String tricode_parent1 = fieldSetEntity.getString(CmnConst.TRICODE_PARENT); - String tricode_parent2 = fieldSet.getString(CmnConst.TRICODE_PARENT); - boolean flag; - //涓婄骇鐩綍tricode濡傛灉涓嶇浉绛� - if(!StringUtils.isEmpty(tricode_parent1) || !StringUtils.isEmpty(tricode_parent2)) { - if (!StringUtils.isEmpty(tricode_parent1) && !StringUtils.isEmpty(tricode_parent2) && !tricode_parent1.equals(tricode_parent2)) { - flag = true; - }else if(!StringUtils.isEmpty(tricode_parent1) && !StringUtils.isEmpty(tricode_parent2) && tricode_parent1.equals(tricode_parent2)){ - flag = false; - }else if(!StringUtils.isEmpty(tricode_parent1) && StringUtils.isEmpty(tricode_parent2)){ - tricode_parent2 = ""; - flag = true; - }else if (!StringUtils.isEmpty(tricode_parent2) && StringUtils.isEmpty(tricode_parent1)){ - tricode_parent1 = ""; - flag = true; - }else { - flag = false; - } - }else { - flag = false; - } + @Override + @Transactional + public boolean upDocumentDirectory(FieldSetEntity fieldSetEntity) throws BaseException { + String uuid = fieldSetEntity.getString(CmnConst.UUID); + FieldSetEntity fieldSet = baseDao.getFieldSetEntity(CmnConst.PRODUCT_OA_DIRECTORY, uuid, false); + String tricode_parent1 = fieldSetEntity.getString(CmnConst.TRICODE_PARENT); + String tricode_parent2 = fieldSet.getString(CmnConst.TRICODE_PARENT); + boolean flag; + // 涓婄骇鐩綍tricode濡傛灉涓嶇浉绛� + if (!StringUtils.isEmpty(tricode_parent1) || !StringUtils.isEmpty(tricode_parent2)) { + if (!StringUtils.isEmpty(tricode_parent1) && !StringUtils.isEmpty(tricode_parent2) + && !tricode_parent1.equals(tricode_parent2)) { + flag = true; + } else if (!StringUtils.isEmpty(tricode_parent1) && !StringUtils.isEmpty(tricode_parent2) + && tricode_parent1.equals(tricode_parent2)) { + flag = false; + } else if (!StringUtils.isEmpty(tricode_parent1) && StringUtils.isEmpty(tricode_parent2)) { + tricode_parent2 = ""; + flag = true; + } else if (!StringUtils.isEmpty(tricode_parent2) && StringUtils.isEmpty(tricode_parent1)) { + tricode_parent1 = ""; + flag = true; + } else { + flag = false; + } + } else { + flag = false; + } - if(flag){ - StringBuffer sql=new StringBuffer() ; - sql.append(" update product_oa_directory set tricode=replace("); - sql.append(" tricode,concat(?,'-'),concat(?,'-')),"); - sql.append(" tricode_parent=(case when tricode_parent=? then replace(tricode_parent,?,?) else "); - sql.append(" replace (tricode_parent,concat(?,'-'),concat(?,'-')) end )"); - sql.append(" where tricode like ?"); - baseDao.executeUpdate(sql.toString(), new String[]{ - tricode_parent1, - tricode_parent2, - tricode_parent1, - tricode_parent1, - tricode_parent2, - tricode_parent1, - tricode_parent2, - tricode_parent1+"-%", - }); - } + if (flag) { + StringBuffer sql = new StringBuffer(); + sql.append(" update PRODUCT_OA_directory set tricode=replace("); + sql.append(" tricode,concat(?,'-'),concat(?,'-')),"); + sql.append(" tricode_parent=(case when tricode_parent=? then replace(tricode_parent,?,?) else "); + sql.append(" replace (tricode_parent,concat(?,'-'),concat(?,'-')) end )"); + sql.append(" where tricode like ?"); + baseDao.executeUpdate(sql.toString(), new String[] { tricode_parent1, tricode_parent2, tricode_parent1, + tricode_parent1, tricode_parent2, tricode_parent1, tricode_parent2, tricode_parent1 + "-%", }); + } - fieldSetEntity.setValue(CmnConst.UPDATED_BY, SpringMVCContextHolder.getCurrentUser().getUser_id());// 鑾峰彇鐧诲綍甯愬彿 - fieldSetEntity.setValue(CmnConst.UPDATED_UTC_DATETIME, DateUtils.getDateTime());// 鍒涘缓鏃堕棿 - return baseDao.update(fieldSetEntity); - } + fieldSetEntity.setValue(CmnConst.UPDATED_BY, SpringMVCContextHolder.getCurrentUser().getUser_id());// 鑾峰彇鐧诲綍甯愬彿 + fieldSetEntity.setValue(CmnConst.UPDATED_UTC_DATETIME, DateUtils.getDateTime());// 鍒涘缓鏃堕棿 + return baseDao.update(fieldSetEntity); + } - @Override - @Transactional - public boolean delDocumentDirectory(FieldSetEntity fieldSetEntity) throws BaseException { - String uuid = fieldSetEntity.getString(CmnConst.UUID); - String directory_type = fieldSetEntity.getString(CmnConst.DIRECTORY_TYPE); - String filter = ""; - if("2".equals(directory_type)){ - filter = " AND " + "created_by = " + SpringMVCContextHolder.getCurrentUserId(); - } - DataTableEntity dataTableEntity = baseDao.listTable("SELECT * FROM product_oa_directory WHERE directory_type = ? AND tricode_parent = (SELECT tricode FROM product_oa_directory where uuid = ?)" + filter, - new String[]{directory_type,uuid}); - if(BaseUtil.dataTableIsEmpty(dataTableEntity)){ - baseDao.delete(CmnConst.product_oa_DOCUMENT, "directory_uuid = ?", new String[]{uuid}); - return baseDao.delete(CmnConst.product_oa_DIRECTORY, new String[]{uuid}); - }else { - throw new BaseException(DocumentCode.DOCUMENT_CATALOG_DELETE_FAIL.getValue(), DocumentCode.DOCUMENT_CATALOG_DELETE_FAIL.getText(), this.getClass(),"public boolean delDocumentDirectory(FieldSetEntity fieldSetEntity) throws BaseException"); - } - } + @Override + @Transactional + public boolean delDocumentDirectory(FieldSetEntity fieldSetEntity) throws BaseException { + String uuid = fieldSetEntity.getString(CmnConst.UUID); + String directory_type = fieldSetEntity.getString(CmnConst.DIRECTORY_TYPE); + String filter = ""; + if ("2".equals(directory_type)) { + filter = " AND " + "created_by = " + SpringMVCContextHolder.getCurrentUserId(); + } + DataTableEntity dataTableEntity = baseDao.listTable( + "SELECT * FROM PRODUCT_OA_directory WHERE directory_type = ? AND tricode_parent = (SELECT tricode FROM PRODUCT_OA_directory where uuid = ?)" + + filter, + new String[] { directory_type, uuid }); + if (BaseUtil.dataTableIsEmpty(dataTableEntity)) { + baseDao.delete(CmnConst.PRODUCT_OA_DOCUMENT, "directory_uuid = ?", new String[] { uuid }); + return baseDao.delete(CmnConst.PRODUCT_OA_DIRECTORY, new String[] { uuid }); + } else { + throw new BaseException(DocumentCode.DOCUMENT_CATALOG_DELETE_FAIL.getValue(), + DocumentCode.DOCUMENT_CATALOG_DELETE_FAIL.getText(), this.getClass(), + "public boolean delDocumentDirectory(FieldSetEntity fieldSetEntity) throws BaseException"); + } + } - /** - * 鑾峰彇褰撳墠鏂囦欢璺緞 - * @param fieldSetEntity - * @return - * @throws BaseException - */ - @Override - public DataTableEntity getDirectoryStructure(FieldSetEntity fieldSetEntity) throws BaseException { - String uuid = fieldSetEntity.getString(CmnConst.DIRECTORY_UUID); - fieldSetEntity = baseDao.getFieldSetEntity(CmnConst.product_oa_DIRECTORY, uuid, false); - String triCode = fieldSetEntity.getString(CmnConst.TRICODE); - String type = fieldSetEntity.getString(CmnConst.DIRECTORY_TYPE); - List<String> codeList = ListUtils.newArrayList(); - //鎷嗗垎涓轰笂绾х洰褰� - if(triCode.indexOf('-') != -1) { - do { - codeList.add(0, triCode); - triCode = triCode.substring(0, triCode.lastIndexOf('-')); - } while (triCode.indexOf('-') != -1); - codeList.add(0,triCode); - }else { - codeList.add(triCode); - } - SystemUser user = SpringMVCContextHolder.getCurrentUser(); - DataTableEntity dataTableEntity; - //鍗曚綅鏂囦欢澶� - if("1".equals(type)){ - codeList.add(0,user.getOrg_level_uuid()); - dataTableEntity = baseDao.listTable(CmnConst.product_oa_DIRECTORY,"directory_type = 1 AND org_level_uuid = ? AND "+BaseUtil.buildQuestionMarkFilter(CmnConst.TRICODE,codeList.size()-1,true),codeList.toArray(),"tricode"); - //涓汉鏂囦欢澶� - }else { - codeList.add(0,String.valueOf(user.getUser_id())); - dataTableEntity = baseDao.listTable(CmnConst.product_oa_DIRECTORY,"directory_type = 2 AND created_by = ? AND "+BaseUtil.buildQuestionMarkFilter(CmnConst.TRICODE,codeList.size()-1,true),codeList.toArray(),"tricode"); - } - baseDao.listInternationDataTable(dataTableEntity, null); - return dataTableEntity; - } + /** + * 鑾峰彇褰撳墠鏂囦欢璺緞 + * + * @param fieldSetEntity + * @return + * @throws BaseException + */ + @Override + public DataTableEntity getDirectoryStructure(FieldSetEntity fieldSetEntity) throws BaseException { + String uuid = fieldSetEntity.getString(CmnConst.DIRECTORY_UUID); + fieldSetEntity = baseDao.getFieldSetEntity(CmnConst.PRODUCT_OA_DIRECTORY, uuid, false); + String triCode = fieldSetEntity.getString(CmnConst.TRICODE); + String type = fieldSetEntity.getString(CmnConst.DIRECTORY_TYPE); + List<String> codeList = ListUtils.newArrayList(); + // 鎷嗗垎涓轰笂绾х洰褰� + if (triCode.indexOf('-') != -1) { + do { + codeList.add(0, triCode); + triCode = triCode.substring(0, triCode.lastIndexOf('-')); + } while (triCode.indexOf('-') != -1); + codeList.add(0, triCode); + } else { + codeList.add(triCode); + } + SystemUser user = SpringMVCContextHolder.getCurrentUser(); + DataTableEntity dataTableEntity; + // 鍗曚綅鏂囦欢澶� + if ("1".equals(type)) { + codeList.add(0, user.getOrg_level_uuid()); + dataTableEntity = baseDao.listTable(CmnConst.PRODUCT_OA_DIRECTORY, + "directory_type = 1 AND org_level_uuid = ? AND " + + BaseUtil.buildQuestionMarkFilter(CmnConst.TRICODE, codeList.size() - 1, true), + codeList.toArray(), "tricode"); + // 涓汉鏂囦欢澶� + } else { + codeList.add(0, String.valueOf(user.getUser_id())); + dataTableEntity = baseDao.listTable(CmnConst.PRODUCT_OA_DIRECTORY, + "directory_type = 2 AND created_by = ? AND " + + BaseUtil.buildQuestionMarkFilter(CmnConst.TRICODE, codeList.size() - 1, true), + codeList.toArray(), "tricode"); + } + baseDao.listInternationDataTable(dataTableEntity, null); + return dataTableEntity; + } + @Override + public JSONArray treeListAll(FieldSetEntity fieldSetEntity) throws BaseException { + // 鍏宠仈鍏徃uuid + String directory_type = fieldSetEntity.getString(CmnConst.DIRECTORY_TYPE); + // 鍏徃鏂囦欢澶� + DataTableEntity data; + SystemUser user = SpringMVCContextHolder.getCurrentUser(); + StringBuffer sql = new StringBuffer(); + sql.append("SELECT a.*,ifnull(b.number,0) number FROM PRODUCT_OA_directory a LEFT JOIN "); + sql.append( + "(SELECT COUNT(*) number,directory_uuid FROM PRODUCT_OA_document GROUP BY directory_uuid) b on a.uuid=b.directory_uuid "); - @Override - public JSONArray treeListAll(FieldSetEntity fieldSetEntity) throws BaseException { - //鍏宠仈鍏徃uuid - String directory_type = fieldSetEntity.getString(CmnConst.DIRECTORY_TYPE); - //鍏徃鏂囦欢澶� - DataTableEntity data; - SystemUser user = SpringMVCContextHolder.getCurrentUser(); - StringBuffer sql = new StringBuffer(); - sql.append("SELECT a.*,ifnull(b.number,0) number FROM product_oa_directory a LEFT JOIN "); - sql.append("(SELECT COUNT(*) number,directory_uuid FROM product_oa_document GROUP BY directory_uuid) b on a.uuid=b.directory_uuid "); + if ("1".equals(directory_type)) { + String org_level_uuid = user.getOrg_level_uuid(); + sql.append("where directory_type = 1 AND org_level_uuid = ? "); + data = baseDao.listTable(sql.toString(), new Object[] { org_level_uuid }); +// data = baseDao.listTable(CmnConst.PRODUCT_OA_DIRECTORY, " directory_type = 1 AND org_level_uuid = ?", new String[]{org_level_uuid}, "tricode"); + // 涓汉鏂囦欢澶� + } else { + Integer userId = user.getUser_id(); + sql.append("where directory_type = 2 AND created_by = ? "); + data = baseDao.listTable(sql.toString(), new Object[] { userId }); - if("1".equals(directory_type)){ - String org_level_uuid = user.getOrg_level_uuid(); - sql.append("where directory_type = 1 AND org_level_uuid = ? "); - data = baseDao.listTable(sql.toString(), new Object[]{org_level_uuid}); -// data = baseDao.listTable(CmnConst.product_oa_DIRECTORY, " directory_type = 1 AND org_level_uuid = ?", new String[]{org_level_uuid}, "tricode"); - //涓汉鏂囦欢澶� - }else { - Integer userId = user.getUser_id(); - sql.append("where directory_type = 2 AND created_by = ? "); - data = baseDao.listTable(sql.toString(), new Object[]{userId}); +// data = baseDao.listTable(CmnConst.PRODUCT_OA_DIRECTORY, " directory_type = 2 AND created_by = ?", new Object[]{userId}, "tricode"); + } + baseDao.listInternationDataTable(data, null); + JSONArray menus = this.encapsulationTree(data); + // 鑾峰彇褰撳墠鍏徃 + JSONObject orgLevelInfo = new JSONObject(); + orgLevelInfo.put("directory_name", user.getOrg_level_name()); + orgLevelInfo.put("tricode", ""); + orgLevelInfo.put("org_level_uuid", user.getOrg_level_uuid()); + orgLevelInfo.put("children", menus); + JSONArray array = new JSONArray(); + array.add(orgLevelInfo); + return array; + } -// data = baseDao.listTable(CmnConst.product_oa_DIRECTORY, " directory_type = 2 AND created_by = ?", new Object[]{userId}, "tricode"); - } - baseDao.listInternationDataTable(data, null); - JSONArray menus = this.encapsulationTree(data); - //鑾峰彇褰撳墠鍏徃 - JSONObject orgLevelInfo = new JSONObject(); - orgLevelInfo.put("directory_name", user.getOrg_level_name()); - orgLevelInfo.put("tricode", ""); - orgLevelInfo.put("org_level_uuid", user.getOrg_level_uuid()); - orgLevelInfo.put("children",menus); - JSONArray array = new JSONArray(); - array.add(orgLevelInfo); - return array; - } - /** - * 灏佽鏍戞柟娉� - * @param - * @return - * @throws BaseException - */ - @Override - public JSONArray encapsulationTree(DataTableEntity data) throws BaseException { - JSONArray menus = new JSONArray(); - JSONObject parent_menu = new JSONObject(); - if (!BaseUtil.dataTableIsEmpty(data)) { - for (int i = 0; i < data.getRows(); i++) { - FieldSetEntity fs = data.getFieldSetEntity(i); - JSONObject menu = BaseUtil.fieldSetEntityToJson(fs); - String tricode = fs.getString(CmnConst.TRICODE_PARENT); - if (StringUtils.isEmpty(tricode) || parent_menu.getString(tricode) == null) { - menus.add(menu); - } else {// 涓婄骇鐩綍 - JSONObject pm = parent_menu.getJSONObject(tricode); - JSONArray subs = pm.getJSONArray(CmnConst.CHILDREN); - JSONArray submenus = null; - if (subs == null) { - submenus = new JSONArray(); - pm.put(CmnConst.CHILDREN, submenus); - } else { - submenus = subs; - } - submenus.add(menu); - } - parent_menu.put(menu.getString(CmnConst.TRICODE), menu); - } - } - return menus; - } + /** + * 灏佽鏍戞柟娉� + * + * @param + * @return + * @throws BaseException + */ + @Override + public JSONArray encapsulationTree(DataTableEntity data) throws BaseException { + JSONArray menus = new JSONArray(); + JSONObject parent_menu = new JSONObject(); + if (!BaseUtil.dataTableIsEmpty(data)) { + for (int i = 0; i < data.getRows(); i++) { + FieldSetEntity fs = data.getFieldSetEntity(i); + JSONObject menu = BaseUtil.fieldSetEntityToJson(fs); + String tricode = fs.getString(CmnConst.TRICODE_PARENT); + if (StringUtils.isEmpty(tricode) || parent_menu.getString(tricode) == null) { + menus.add(menu); + } else {// 涓婄骇鐩綍 + JSONObject pm = parent_menu.getJSONObject(tricode); + JSONArray subs = pm.getJSONArray(CmnConst.CHILDREN); + JSONArray submenus = null; + if (subs == null) { + submenus = new JSONArray(); + pm.put(CmnConst.CHILDREN, submenus); + } else { + submenus = subs; + } + submenus.add(menu); + } + parent_menu.put(menu.getString(CmnConst.TRICODE), menu); + } + } + return menus; + } - @Override - public FieldSetEntity documentDirectoryInfo(FieldSetEntity fieldSetEntity) throws BaseException { - String uuid = fieldSetEntity.getString(CmnConst.UUID); - return baseDao.getFieldSetEntity(CmnConst.product_oa_DIRECTORY, uuid, true); - } + @Override + public FieldSetEntity documentDirectoryInfo(FieldSetEntity fieldSetEntity) throws BaseException { + String uuid = fieldSetEntity.getString(CmnConst.UUID); + return baseDao.getFieldSetEntity(CmnConst.PRODUCT_OA_DIRECTORY, uuid, true); + } - /** - * 绉诲姩鍒扮洰褰曞垪琛紙鏍规嵁褰撳墠鐢ㄦ埛杩囨护灞曠ず鐩綍鍒楄〃锛� - * 鑾峰彇鐢ㄦ埛鏈夋柊澧烇紙涓婁紶锛夋潈闄愮殑鍒楄〃 - * @param - * @return - * @throws BaseException - */ - @Override - public DataTableEntity moveToList(FieldSetEntity fse) throws BaseException { - String type = fse.getString(CmnConst.DIRECTORY_TYPE); - StringBuffer sql = new StringBuffer(); - Integer userId = SpringMVCContextHolder.getCurrentUser().getUser_id(); - StringBuffer param = new StringBuffer(); - //1涓哄崟浣嶆枃浠跺す - if("1".equals(type)) { - param.append("%").append(userId).append("%"); - sql.append("SELECT a.* FROM "+CmnConst.product_oa_DIRECTORY+" a LEFT JOIN ") - .append(" product_oa_directory_rights b ON a.uuid = b.directory_uuid ") - .append(" LEFT JOIN product_sys_organizational_structure_storage c on b.storage_uuid = c.uuid ") - .append(" WHERE a.directory_type = 1 AND b.rigths like '%3%' AND c.staff_ids like ? GROUP BY a.tricode "); - }else { - param.append(userId); - sql.append("SELECT * FROM product_oa_directory ") - .append(" WHERE directory_type = 2 AND created_by = ? "); - } - DataTableEntity dataTableEntity = baseDao.listTable(sql.toString(), new String[]{param.toString()}); - baseDao.listInternationDataTable(dataTableEntity, null); - return dataTableEntity; - } + /** + * 绉诲姩鍒扮洰褰曞垪琛紙鏍规嵁褰撳墠鐢ㄦ埛杩囨护灞曠ず鐩綍鍒楄〃锛� 鑾峰彇鐢ㄦ埛鏈夋柊澧烇紙涓婁紶锛夋潈闄愮殑鍒楄〃 + * + * @param + * @return + * @throws BaseException + */ + @Override + public DataTableEntity moveToList(FieldSetEntity fse) throws BaseException { + String type = fse.getString(CmnConst.DIRECTORY_TYPE); + StringBuffer sql = new StringBuffer(); + Integer userId = SpringMVCContextHolder.getCurrentUser().getUser_id(); + StringBuffer param = new StringBuffer(); + // 1涓哄崟浣嶆枃浠跺す + if ("1".equals(type)) { + param.append("%").append(userId).append("%"); + sql.append("SELECT a.* FROM " + CmnConst.PRODUCT_OA_DIRECTORY + " a LEFT JOIN ") + .append(" PRODUCT_OA_directory_rights b ON a.uuid = b.directory_uuid ") + .append(" LEFT JOIN product_sys_organizational_structure_storage c on b.storage_uuid = c.uuid ") + .append(" WHERE a.directory_type = 1 AND b.rigths like '%3%' AND c.staff_ids like ? GROUP BY a.tricode "); + } else { + param.append(userId); + sql.append("SELECT * FROM PRODUCT_OA_directory ").append(" WHERE directory_type = 2 AND created_by = ? "); + } + DataTableEntity dataTableEntity = baseDao.listTable(sql.toString(), new String[] { param.toString() }); + baseDao.listInternationDataTable(dataTableEntity, null); + return dataTableEntity; + } - @Override - @Transactional - public boolean upDocumentDirectoryName(FieldSetEntity fse) throws BaseException { - String uuid = fse.getString(CmnConst.UUID); - String directoryName = fse.getString(CmnConst.DIRECTORY_NAME); - FieldSetEntity docField = baseDao.getFieldSetEntity(CmnConst.product_oa_DIRECTORY, uuid, false); - docField.setValue(CmnConst.DIRECTORY_NAME, directoryName); - return baseDao.update(docField); - } + @Override + @Transactional + public boolean upDocumentDirectoryName(FieldSetEntity fse) throws BaseException { + String uuid = fse.getString(CmnConst.UUID); + String directoryName = fse.getString(CmnConst.DIRECTORY_NAME); + FieldSetEntity docField = baseDao.getFieldSetEntity(CmnConst.PRODUCT_OA_DIRECTORY, uuid, false); + docField.setValue(CmnConst.DIRECTORY_NAME, directoryName); + return baseDao.update(docField); + } } -- Gitblit v1.9.2