TSysFileServiceImpl.java 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113
  1. package cn.com.lzt.common.service.impl;
  2. import cn.com.lzt.common.entity.TSysFileEntity;
  3. import cn.com.lzt.common.service.TSysFileServiceI;
  4. import org.jeecgframework.core.common.service.impl.CommonServiceImpl;
  5. import org.jeecgframework.core.util.ListUtils;
  6. import org.jeecgframework.core.util.ResourceUtil;
  7. import org.jeecgframework.core.util.StringUtil;
  8. import org.springframework.stereotype.Service;
  9. import org.springframework.transaction.annotation.Transactional;
  10. import java.io.File;
  11. import java.io.Serializable;
  12. import java.util.List;
  13. @Service("tSysFileService")
  14. @Transactional
  15. public class TSysFileServiceImpl extends CommonServiceImpl implements TSysFileServiceI {
  16. public void delete(TSysFileEntity entity) throws Exception{
  17. super.delete(entity);
  18. }
  19. public Serializable save(TSysFileEntity entity) throws Exception{
  20. List<TSysFileEntity> entities = getSysFileEntitiesByBusiId(entity.getBusiId(),entity.getTagetType());
  21. entity.setOrderNum((1+entities.size()));
  22. Serializable t = super.save(entity);
  23. return t;
  24. }
  25. public void saveOrUpdate(TSysFileEntity entity) throws Exception{
  26. super.saveOrUpdate(entity);
  27. }
  28. @Override
  29. public List<TSysFileEntity> getSysFileEntitiesByBusiId(String busiId,String tagetType) throws Exception {
  30. String hql = "from TSysFileEntity where 1=1 AND busiId =? AND tagetType =? ORDER BY createDate ";
  31. List<TSysFileEntity> entities = findHql(hql, new Object[] {busiId,tagetType});
  32. return entities;
  33. }
  34. @Override
  35. public void deleteByUrlPath(String urlpath) throws Exception {
  36. String hql = "from TSysFileEntity where 1=1 AND fileUrl =? ";
  37. List<TSysFileEntity> entities = findHql(hql, urlpath);
  38. deleteAllEntitie(entities);
  39. }
  40. @Override
  41. public void deleteByUrlPath(String urlpath, String busiId) throws Exception {
  42. String hql = "from TSysFileEntity where 1=1 AND fileUrl =? and busiId =? ";
  43. List<TSysFileEntity> entities = findHql(hql, urlpath, busiId);
  44. deleteAllEntitie(entities);
  45. }
  46. @Override
  47. public String getFileNameByurlPath(String urlpath) throws Exception {
  48. String hql = "from TSysFileEntity where 1=1 AND fileUrl =? ";
  49. List<TSysFileEntity> entities = findHql(hql, urlpath);
  50. if(ListUtils.isNullOrEmpty(entities))
  51. {
  52. return urlpath.substring(urlpath.lastIndexOf(File.separator)+1);
  53. }else{
  54. return entities.get(0).getFileName();
  55. }
  56. }
  57. @Override
  58. public void updateBusiId(String ids, String busiId) throws Exception {
  59. if (StringUtil.isNotEmpty(ids)&&StringUtil.isNotEmpty(busiId)) {
  60. String[] idlist = ids.split(",");
  61. for (int i = 0; i < idlist.length; i++) {
  62. TSysFileEntity tsysFileEntity = getEntity(TSysFileEntity.class, idlist[i]);
  63. tsysFileEntity.setBusiId(busiId);
  64. saveOrUpdate(tsysFileEntity);
  65. }
  66. }
  67. }
  68. @Override
  69. public void deleteByBusiId(String busiId, String tagetTypes) throws Exception {
  70. String[] tagetType = tagetTypes.split(",");
  71. String ctxPath = ResourceUtil.getConfigByName("webUploadpath");
  72. for (int j = 0; j < tagetType.length; j++) {
  73. List<TSysFileEntity> entities = getSysFileEntitiesByBusiId(busiId, tagetType[j]);
  74. for (int i = 0; i < entities.size(); i++) {
  75. TSysFileEntity entity = entities.get(i);
  76. String path = entity.getFileUrl();
  77. String delpath = ctxPath + File.separator + path;
  78. File fileDelete = new File(delpath);
  79. if (!fileDelete.exists() || !fileDelete.isFile()) {
  80. delete(entity);
  81. } else {
  82. if (fileDelete.delete()) {
  83. delete(entity);
  84. }
  85. }
  86. }
  87. }
  88. }
  89. @Override
  90. public void updateBusiIdWithTempBusiId(String tempBusiId, String busiId) throws Exception {
  91. String hql = "from TSysFileEntity where 1=1 AND busiId =? ";
  92. List<TSysFileEntity> entities = findHql(hql, tempBusiId);
  93. for (int i = 0; i < entities.size(); i++) {
  94. TSysFileEntity entity = entities.get(i);
  95. entity.setBusiId(busiId);
  96. saveOrUpdate(entity);
  97. }
  98. }
  99. }