diff --git a/resources/assets/js/api/CaseNotes.js b/resources/assets/js/api/CaseNotes.js
index 071edc35e..4f463212b 100644
--- a/resources/assets/js/api/CaseNotes.js
+++ b/resources/assets/js/api/CaseNotes.js
@@ -6,8 +6,16 @@ export let caseNotes = {
params.append('appUid', data.APP_UID);
params.append('noteText', data.COMMENT);
params.append('swSendMail', data.SEND_MAIL ? 1 : 0);
+
+ _.each(data.FILES, (f) => {
+ params.append("filesToUpload[]", f);
+ })
return axios.post(window.config.SYS_SERVER +
window.config.SYS_URI +
- `appProxy/postNote`, params);
- }
+ `appProxy/postNote`, params, {
+ headers: {
+ "Content-Type": "multipart/form-data",
+ },
+ });
+ },
};
diff --git a/resources/assets/js/components/home/caseDetail/AttachedDocuments.vue b/resources/assets/js/components/home/caseDetail/AttachedDocuments.vue
index 79f96a037..ec8a5e28a 100644
--- a/resources/assets/js/components/home/caseDetail/AttachedDocuments.vue
+++ b/resources/assets/js/components/home/caseDetail/AttachedDocuments.vue
@@ -51,7 +51,7 @@ export default {
return "btn v-btn-request " + cls;
},
classIcon(icon) {
- return this.icon[icon];
+ return this.icon[icon] ? this.icon[icon] : "fas fa-file-alt";
},
href(item) {
return (
diff --git a/resources/assets/js/components/home/caseDetail/AttachedDocumentsEdit.vue b/resources/assets/js/components/home/caseDetail/AttachedDocumentsEdit.vue
new file mode 100644
index 000000000..473df42e0
--- /dev/null
+++ b/resources/assets/js/components/home/caseDetail/AttachedDocumentsEdit.vue
@@ -0,0 +1,122 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/resources/assets/js/components/home/caseDetail/CaseComment.vue b/resources/assets/js/components/home/caseDetail/CaseComment.vue
index 214101f25..31fe9446a 100644
--- a/resources/assets/js/components/home/caseDetail/CaseComment.vue
+++ b/resources/assets/js/components/home/caseDetail/CaseComment.vue
@@ -11,6 +11,12 @@
-
@@ -68,7 +76,23 @@ export default {
return "btn v-btn-request " + cls;
},
classIcon(icon) {
- return this.icon[icon];
+ return this.icon[icon] ? this.icon[icon] : "fas fa-file-alt";
+ },
+ href(item) {
+ return (
+ window.config.SYS_SERVER +
+ window.config.SYS_URI +
+ `cases/cases_ShowDocument?a=${item.data.APP_DOC_UID}&v=${item.data.DOC_VERSION}`
+ );
+ },
+ hrefOutput(item) {
+ let random = _.random(0, 10000000),
+ cacheTime = Date.now();
+ return (
+ window.config.SYS_SERVER +
+ window.config.SYS_URI +
+ `cases/cases_ShowOutputDocument?a=${item.data.APP_DOC_UID}&v=${item.data.DOC_VERSION}&ext=doc&random=${random}&nocachetime=${cacheTime}`
+ );
},
},
};
diff --git a/resources/assets/js/home/CaseDetail.vue b/resources/assets/js/home/CaseDetail.vue
index 4c5343549..2ce2e9103 100644
--- a/resources/assets/js/home/CaseDetail.vue
+++ b/resources/assets/js/home/CaseDetail.vue
@@ -67,16 +67,23 @@
@@ -86,6 +93,7 @@
import IoDocuments from "../components/home/caseDetail/IoDocuments.vue";
import CaseSummary from "../components/home/caseDetail/CaseSummary.vue";
import AttachedDocuments from "../components/home/caseDetail/AttachedDocuments.vue";
+import AttachedDocumentsEdit from "../components/home/caseDetail/AttachedDocumentsEdit.vue";
import CaseComment from "../components/home/caseDetail/CaseComment";
import CaseComments from "../components/home/caseDetail/CaseComments";
import TabsCaseDetail from "../home/TabsCaseDetail.vue";
@@ -102,12 +110,13 @@ export default {
IoDocuments,
CaseSummary,
AttachedDocuments,
+ AttachedDocumentsEdit,
CaseComment,
CaseComments,
ModalCancelCase,
ButtonFleft,
ModalNewRequest,
- TaskCell
+ TaskCell,
},
props: {},
data() {
@@ -164,6 +173,7 @@ export default {
title: "Attached Documents",
items: [],
},
+ attachDocuments: false,
dataComments: {
title: "Comments",
items: [],
@@ -181,17 +191,20 @@ export default {
this.getCasesNotes();
},
methods: {
- postComment(comment, send) {
+ postComment(comment, send, files) {
let that = this;
Api.caseNotes
.post(
_.extend({}, this.dataCase, {
COMMENT: comment,
SEND_MAIL: send,
+ FILES: files,
})
)
.then((response) => {
if (response.data.success === "success") {
+ that.attachDocuments = false;
+ this.dataAttachedDocuments.items = [];
that.getCasesNotes();
}
});
@@ -263,7 +276,8 @@ export default {
info = {
title: document[i].TITLE,
extension: document[i].TITLE.split(".")[1],
- onClick: document[i].DOWNLOAD_LINK,
+ onClick: () => {},
+ data: document[i],
};
this.dataIoDocuments.inputDocuments.push(info);
}
@@ -288,7 +302,8 @@ export default {
info = {
title: document[i].TITLE,
extension: document[i].TITLE.split(".")[1],
- onClick: document[i].DOWNLOAD_LINK,
+ onClick: () => {},
+ data: document[i],
};
this.dataIoDocuments.outputDocuments.push(info);
}
@@ -298,6 +313,13 @@ export default {
throw new Error(err);
});
},
+ dropFiles(files) {
+ this.attachDocuments = true;
+ this.dataAttachedDocuments.items = files;
+ },
+ onRemoveAttachedDocument(file) {
+ this.$refs["case-comments"].removeFile(file);
+ },
/**
* Get for user format name configured in Processmaker Environment Settings
*
@@ -386,18 +408,18 @@ export default {
dt;
return new Promise((resolutionFunc, rejectionFunc) => {
Api.cases
- .pendingtask(that.$parent.dataCase)
- .then((response) => {
- dt = that.formatDataResponse(response.data);
- resolutionFunc({
- data: dt,
- count: response.data.length
+ .pendingtask(that.$parent.dataCase)
+ .then((response) => {
+ dt = that.formatDataResponse(response.data);
+ resolutionFunc({
+ data: dt,
+ count: response.data.length,
+ });
+ that.showTable = response.data.length > 0 ? true : false;
+ })
+ .catch((err) => {
+ throw new Error(err);
});
- that.showTable = response.data.length > 0 ? true : false;
- })
- .catch((err) => {
- throw new Error(err);
- });
});
},
formatDataResponse(response) {
@@ -407,17 +429,17 @@ export default {
TASK: {
TITLE: v.TAS_TITLE,
CODE_COLOR: v.TAS_COLOR,
- COLOR: v.TAS_COLOR_LABEL
+ COLOR: v.TAS_COLOR_LABEL,
},
CASE_TITLE: v.DEL_TITLE,
ASSIGNEE: v.USR_FIRSTNAME + " " + v.USR_LASTNAME,
STATUS: v.DEL_THREAD_STATUS,
DUE_DATE: v.DEL_TASK_DUE_DATE,
- TASK_COLOR: v.TAS_COLOR_LABEL
- });
+ TASK_COLOR: v.TAS_COLOR_LABEL,
+ });
});
return data;
- }
+ },
},
};
diff --git a/resources/assets/js/home/modal/ModalComments.vue b/resources/assets/js/home/modal/ModalComments.vue
index 88d71808d..4e3356bcb 100644
--- a/resources/assets/js/home/modal/ModalComments.vue
+++ b/resources/assets/js/home/modal/ModalComments.vue
@@ -4,15 +4,23 @@
@@ -23,17 +31,20 @@
import Api from "./../../api/index";
import CaseComments from "../../components/home/caseDetail/CaseComments.vue";
import AttachedDocuments from "../../components/home/caseDetail/AttachedDocuments.vue";
+import AttachedDocumentsEdit from "../../components/home/caseDetail/AttachedDocumentsEdit.vue";
export default {
name: "ModalComments",
components: {
CaseComments,
AttachedDocuments,
+ AttachedDocumentsEdit,
},
props: {},
mounted() {},
data() {
return {
dataCase: null,
+ attachDocuments: false,
dataComments: {
title: this.$i18n.t("ID_COMMENTS"),
items: [],
@@ -55,17 +66,20 @@ export default {
});
this.dataAttachedDocuments.items = att;
},
- postComment: (comment, send) => {
+ postComment: (comment, send, files) => {
let that = this;
Api.caseNotes
.post(
_.extend({}, this.dataCase, {
COMMENT: comment,
SEND_MAIL: send,
+ FILES: files,
})
)
.then((response) => {
if (response.data.success === "success") {
+ that.attachDocuments = false;
+ this.dataAttachedDocuments.items = [];
that.getCasesNotes();
}
});
@@ -94,6 +108,9 @@ export default {
throw new Error(err);
});
},
+ onRemoveAttachedDocument(file) {
+ this.$refs["case-comments"].removeFile(file);
+ },
formatResponseCaseNotes(notes) {
let that = this,
notesArray = [];
@@ -112,6 +129,10 @@ export default {
this.dataComments.items = notesArray;
},
+ dropFiles(files) {
+ this.attachDocuments = true;
+ this.dataAttachedDocuments.items = files;
+ },
/**
* Get for user format name configured in Processmaker Environment Settings
*
{{ data.comment }}
diff --git a/resources/assets/js/components/home/caseDetail/CaseComments.vue b/resources/assets/js/components/home/caseDetail/CaseComments.vue index 343dcc63b..7d55afb13 100644 --- a/resources/assets/js/components/home/caseDetail/CaseComments.vue +++ b/resources/assets/js/components/home/caseDetail/CaseComments.vue @@ -14,7 +14,16 @@ />