|
@@ -9,6 +9,7 @@ import com.jeeplus.common.oss.OSSClientUtil;
|
|
|
import com.jeeplus.common.persistence.Page;
|
|
|
import com.jeeplus.common.service.CrudService;
|
|
|
import com.jeeplus.common.utils.StringUtils;
|
|
|
+import com.jeeplus.modules.externalUnit.entity.ExternalUnitWorkClientAttachment;
|
|
|
import com.jeeplus.modules.isignature.service.ISignatureDocumentService;
|
|
|
import com.jeeplus.modules.projectAccessory.dao.ProjectAccessoryDao;
|
|
|
import com.jeeplus.modules.projectAccessory.entity.CollectAccessoryInfo;
|
|
@@ -346,6 +347,27 @@ public class WorkattachmentService extends CrudService<WorkattachmentDao, Workat
|
|
|
workClientAttachmentDao.insert(workattachment);
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * 新增附件(外部单位)
|
|
|
+ * @param workattachment
|
|
|
+ */
|
|
|
+ @Transactional(readOnly = false)
|
|
|
+ public void insertOnExterWorkAttachment(ExternalUnitWorkClientAttachment workattachment) {
|
|
|
+ //字符处理
|
|
|
+ workattachment.setUrl(decodeHtmlEntities(workattachment.getUrl()));
|
|
|
+ workattachment.setAttachmentName(decodeHtmlEntities(workattachment.getAttachmentName()));
|
|
|
+ switch (uploadMode){
|
|
|
+ case "1":
|
|
|
+ workattachment.setUrl(workattachment.getUrl().replace(bosUrl,""));
|
|
|
+ break;
|
|
|
+ case "2":
|
|
|
+ workattachment.setUrl(workattachment.getUrl().replace(aliyunUrl,""));
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ workattachment.preInsert();
|
|
|
+ workClientAttachmentDao.insertExterUnit(workattachment);
|
|
|
+ }
|
|
|
+
|
|
|
private String decodeHtmlEntities(String input) {
|
|
|
if (input == null) {
|
|
|
return null;
|
|
@@ -466,6 +488,29 @@ public class WorkattachmentService extends CrudService<WorkattachmentDao, Workat
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
+ * 修改附件
|
|
|
+ * @param workattachment
|
|
|
+ */
|
|
|
+ @Transactional(readOnly = false)
|
|
|
+ public void updateOnExterWorkAttachment(ExternalUnitWorkClientAttachment workattachment) {
|
|
|
+ //字符处理
|
|
|
+ workattachment.setUrl(decodeHtmlEntities(workattachment.getUrl()));
|
|
|
+ workattachment.setAttachmentName(decodeHtmlEntities(workattachment.getAttachmentName()));
|
|
|
+ if(StringUtils.isNotBlank(workattachment.getUrl())){
|
|
|
+ switch (uploadMode){
|
|
|
+ case "1":
|
|
|
+ workattachment.setUrl(workattachment.getUrl().replace(bosUrl,""));
|
|
|
+ break;
|
|
|
+ case "2":
|
|
|
+ workattachment.setUrl(workattachment.getUrl().replace(aliyunUrl,""));
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ workattachment.preUpdate();
|
|
|
+ workClientAttachmentDao.updateExterunit(workattachment);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
* 获取附件信息
|
|
|
* @param workClientAttachment
|
|
|
* @return
|
|
@@ -495,12 +540,41 @@ public class WorkattachmentService extends CrudService<WorkattachmentDao, Workat
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
+ * 获取附件信息(外部单位-意见反馈)
|
|
|
+ * @param workClientAttachment
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ public List<ExternalUnitWorkClientAttachment> getAttachmentListFeedback(ExternalUnitWorkClientAttachment workClientAttachment){
|
|
|
+ List<ExternalUnitWorkClientAttachment> list = workClientAttachmentDao.findListFeedback(workClientAttachment);
|
|
|
+ CollectAccessoryInfo cAInfo = new CollectAccessoryInfo();
|
|
|
+ User loginUser = UserUtils.getUser();
|
|
|
+ if(StringUtils.isNotBlank(loginUser.getId())){
|
|
|
+ cAInfo.setOfficeId(loginUser.getOffice().getId());
|
|
|
+ cAInfo.setCompanyId(loginUser.getCompany().getId());
|
|
|
+ cAInfo.setCreateBy(loginUser);
|
|
|
+ }
|
|
|
+ //遍历附件信息,判定改附件信息是否被收藏
|
|
|
+ for (ExternalUnitWorkClientAttachment info: list) {
|
|
|
+ cAInfo.setUrl(info.getUrl());
|
|
|
+ CollectAccessoryInfo collectAccessoryInfo = projectAccessoryDao.getCollectAccessoryInfo1(cAInfo);
|
|
|
+ if(null != collectAccessoryInfo){
|
|
|
+ info.setCollectFlag("1");
|
|
|
+ }else{
|
|
|
+ info.setCollectFlag("0");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ //数据处理
|
|
|
+ workClientAttachmentExter(list);
|
|
|
+ return list;
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
* 获取附件信息
|
|
|
* @param workClientAttachment
|
|
|
* @return
|
|
|
*/
|
|
|
- public List<WorkClientAttachment> getAttachmentListExter(WorkClientAttachment workClientAttachment){
|
|
|
- List<WorkClientAttachment> list = workClientAttachmentDao.getFileList(workClientAttachment);
|
|
|
+ public List<ExternalUnitWorkClientAttachment> getAttachmentListExter(ExternalUnitWorkClientAttachment workClientAttachment){
|
|
|
+ List<ExternalUnitWorkClientAttachment> list = workClientAttachmentDao.getFileList(workClientAttachment);
|
|
|
CollectAccessoryInfo cAInfo = new CollectAccessoryInfo();
|
|
|
User loginUser = UserUtils.getUser();
|
|
|
if(StringUtils.isNotBlank(loginUser.getId())){
|
|
@@ -509,7 +583,7 @@ public class WorkattachmentService extends CrudService<WorkattachmentDao, Workat
|
|
|
cAInfo.setCreateBy(loginUser);
|
|
|
}
|
|
|
//遍历附件信息,判定改附件信息是否被收藏
|
|
|
- for (WorkClientAttachment info: list) {
|
|
|
+ for (ExternalUnitWorkClientAttachment info: list) {
|
|
|
cAInfo.setUrl(info.getUrl());
|
|
|
CollectAccessoryInfo collectAccessoryInfo = projectAccessoryDao.getCollectAccessoryInfo1(cAInfo);
|
|
|
if(null != collectAccessoryInfo){
|
|
@@ -519,7 +593,7 @@ public class WorkattachmentService extends CrudService<WorkattachmentDao, Workat
|
|
|
}
|
|
|
}
|
|
|
//数据处理
|
|
|
- workClientAttachmentManage(list);
|
|
|
+ workClientAttachmentExter(list);
|
|
|
return list;
|
|
|
}
|
|
|
|
|
@@ -672,16 +746,16 @@ public class WorkattachmentService extends CrudService<WorkattachmentDao, Workat
|
|
|
* 数据处理
|
|
|
* @param list
|
|
|
*/
|
|
|
- public static void workClientAttachmentExter(List<WorkClientAttachment> list){
|
|
|
+ public static void workClientAttachmentExter(List<ExternalUnitWorkClientAttachment> list){
|
|
|
ViewFileUtil viewFileUtil = new ViewFileUtil();
|
|
|
// 判断文件存储方式(0:本地服务器存储。1:云端存储)
|
|
|
- for (WorkClientAttachment info : list) {
|
|
|
+ for (ExternalUnitWorkClientAttachment info : list) {
|
|
|
switch (uploadMode){
|
|
|
case "1":
|
|
|
- info.setTemporaryUrl(bosUrl + info.getUrl());
|
|
|
+ info.setUrl(bosUrl + info.getUrl());
|
|
|
break;
|
|
|
case "2":
|
|
|
- info.setTemporaryUrl(aliyunUrl + info.getUrl());
|
|
|
+ info.setUrl(aliyunUrl + info.getUrl());
|
|
|
break;
|
|
|
default:
|
|
|
//获取本地服务器ip和端口号
|
|
@@ -779,6 +853,55 @@ public class WorkattachmentService extends CrudService<WorkattachmentDao, Workat
|
|
|
* 数据处理(如果为阿里云文件服务器,则对查看的路径进行处理)
|
|
|
* @param list
|
|
|
*/
|
|
|
+ public static void exterunitAttachmentManageOnUrl(List<ExternalUnitWorkClientAttachment> list){
|
|
|
+ // 判断文件存储方式(0:本地服务器存储。1:云端存储)
|
|
|
+ for (ExternalUnitWorkClientAttachment info : list) {
|
|
|
+ switch (uploadMode){
|
|
|
+ case "1":
|
|
|
+
|
|
|
+ break;
|
|
|
+ case "2":
|
|
|
+ if(StringUtils.isBlank(info.getFileSize())){
|
|
|
+ Long fileSizeBytes = null;
|
|
|
+ //从阿里云获取文件大小
|
|
|
+ if(info.getUrl().contains("/xg-qz")){
|
|
|
+ String url = info.getUrl().replace("/xg-qz","");
|
|
|
+ fileSizeBytes = new OSSClientUtil().getQzSimplifiedObjectMeta(url);
|
|
|
+ }else{
|
|
|
+ fileSizeBytes = new OSSClientUtil().getSimplifiedObjectMeta(info.getUrl());
|
|
|
+ }
|
|
|
+ if(null != fileSizeBytes){
|
|
|
+ Double fileSize = (double)fileSizeBytes/1024/1024;
|
|
|
+ info.setFileSize(String.format("%.2f", fileSize));
|
|
|
+ info.setFileSizeFlag("1");
|
|
|
+ }else{
|
|
|
+ info.setFileSize("");
|
|
|
+ }
|
|
|
+ }else{
|
|
|
+ if(StringUtils.isNotBlank(info.getFileSizeFlag()) && "1".equals(info.getFileSizeFlag())){
|
|
|
+
|
|
|
+ }else{
|
|
|
+ Double fileSize = Double.valueOf(info.getFileSize())/1024/1024;
|
|
|
+ info.setFileSize(String.format("%.2f", fileSize));
|
|
|
+ info.setFileSizeFlag("1");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if(info.getUrl().contains("/xg-qz")){
|
|
|
+ String url = info.getUrl().replace("/xg-qz","");
|
|
|
+ info.setTemporaryUrl(new OSSClientUtil().getQzFileTemporaryLookUrl(url));
|
|
|
+ }else{
|
|
|
+ info.setTemporaryUrl(new OSSClientUtil().getFileTemporaryLookUrl(info.getUrl()));
|
|
|
+ }
|
|
|
+ break;
|
|
|
+
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 数据处理(如果为阿里云文件服务器,则对查看的路径进行处理)
|
|
|
+ * @param list
|
|
|
+ */
|
|
|
public static void attachmentManageOnUrl(List<Workattachment> list){
|
|
|
// 判断文件存储方式(0:本地服务器存储。1:云端存储)
|
|
|
for (Workattachment info : list) {
|