diff --git a/apps/OpenSign/src/json/ReportJson.js b/apps/OpenSign/src/json/ReportJson.js
index d3d6148ba..c65926b05 100644
--- a/apps/OpenSign/src/json/ReportJson.js
+++ b/apps/OpenSign/src/json/ReportJson.js
@@ -164,16 +164,26 @@ export default function reportJson(id) {
]
};
// template report
- case "23jk45slhj":
+ case "6TeaPr321t":
return {
reportName: "Templates",
- heading: contactbook,
+ heading: head,
actions: [
{
- btnLabel: "",
- btnColor: "#f55a42",
+ btnLabel: "Use",
+ btnColor: "#4bd396",
textColor: "white",
- btnIcon: "fa-solid fa-trash"
+ btnIcon: "fa fa-plus",
+ redirectUrl:
+ "remoteUrl=aHR0cHM6Ly9xaWstYWktb3JnLmdpdGh1Yi5pby9TaWduLU1pY3JvYXBwVjIvcmVtb3RlRW50cnkuanM=&moduleToLoad=AppRoutes&remoteName=signmicroapp/placeHolderSign"
+ },
+ {
+ btnLabel: "Edit",
+ btnColor: "#00c9d5",
+ textColor: "white",
+ btnIcon: "fa fa-plus",
+ redirectUrl:
+ "remoteUrl=aHR0cHM6Ly9xaWstYWktb3JnLmdpdGh1Yi5pby9TaWduLU1pY3JvYXBwVjIvcmVtb3RlRW50cnkuanM=&moduleToLoad=AppRoutes&remoteName=signmicroapp/template"
}
]
};
diff --git a/apps/OpenSign/src/primitives/GetReportDisplay.js b/apps/OpenSign/src/primitives/GetReportDisplay.js
index 6c603d76d..f54f719aa 100644
--- a/apps/OpenSign/src/primitives/GetReportDisplay.js
+++ b/apps/OpenSign/src/primitives/GetReportDisplay.js
@@ -55,10 +55,109 @@ const ReportTable = ({
}, [isMoreDocs, pageNumbers, currentPage, setIsNextRecord]);
// `handlemicroapp` is used to open microapp
- const handlemicroapp = (item, url) => {
- localStorage.removeItem("rowlevel");
- navigate("/rpmf/" + url);
- localStorage.setItem("rowlevel", JSON.stringify(item));
+ const handlemicroapp = async (item, url, btnLabel) => {
+ if (ReportName === "Templates") {
+ if(btnLabel === "Edit"){
+ navigate(`/asmf/${url}/${item.objectId}`);
+ }else{
+ setActLoader({ [item.objectId]: true });
+ try {
+ const params = {
+ templateId: item.objectId
+ };
+ const templateDeatils = await axios.post(
+ `${localStorage.getItem("baseUrl")}functions/getTemplate`,
+ params,
+ {
+ headers: {
+ "Content-Type": "application/json",
+ "X-Parse-Application-Id": localStorage.getItem("parseAppId"),
+ sessionToken: localStorage.getItem("accesstoken")
+ }
+ }
+ );
+
+ console.log("templateDeatils.data ", templateDeatils.data);
+ const templateData =
+ templateDeatils.data && templateDeatils.data.result;
+ if (!templateData.error) {
+ const Doc = templateData;
+
+ let placeholdersArr = [];
+ if (Doc.Placeholders?.length > 0) {
+ placeholdersArr = Doc.Placeholders;
+ }
+ let signers = [];
+ if (Doc.Signers?.length > 0) {
+ Doc.Signers?.forEach((x) => {
+ if (x.objectId) {
+ const obj = {
+ __type: "Pointer",
+ className: "contracts_Contactbook",
+ objectId: x.objectId
+ };
+ signers.push(obj);
+ }
+ });
+ }
+ const data = {
+ Name: Doc.Name,
+ URL: Doc.URL,
+ SignedUrl: Doc.SignedUrl,
+ Description: Doc.Description,
+ Note: Doc.Note,
+ Placeholders: placeholdersArr,
+ ExtUserPtr: {
+ __type: "Pointer",
+ className: "contracts_Users",
+ objectId: Doc.ExtUserPtr.objectId
+ },
+ CreatedBy: {
+ __type: "Pointer",
+ className: "_User",
+ objectId: Doc.CreatedBy.objectId
+ },
+ Signers: signers
+ };
+
+ const res = await axios.post(
+ `${localStorage.getItem("baseUrl")}classes/${localStorage.getItem(
+ "_appName"
+ )}_Document`,
+ data,
+ {
+ headers: {
+ "Content-Type": "application/json",
+ "X-Parse-Application-Id": localStorage.getItem("parseAppId"),
+ "X-Parse-Session-Token": localStorage.getItem("accesstoken")
+ }
+ }
+ );
+
+ // console.log("Res ", res.data);
+ if (res.data && res.data.objectId) {
+ setActLoader({});
+ setIsAlert(true);
+ navigate(`/asmf/${url}/${res.data.objectId}`);
+ }
+ } else {
+ setIsAlert(true);
+ setIsErr(true);
+ setActLoader({});
+ }
+ } catch (err) {
+ console.log("err", err);
+ setIsAlert(true);
+ setIsErr(true);
+ setActLoader({});
+ }
+ }
+ } else {
+ localStorage.removeItem("rowlevel");
+ navigate("/rpmf/" + url);
+ localStorage.setItem("rowlevel", JSON.stringify(item));
+ }
+
// localStorage.setItem("rowlevelMicro");
};
const handlebtn = async (item) => {
@@ -217,7 +316,7 @@ const ReportTable = ({
key={index}
onClick={() =>
act?.redirectUrl
- ? handlemicroapp(item, act.redirectUrl)
+ ? handlemicroapp(item, act.redirectUrl, act.btnLabel)
: handlebtn(item)
}
className={`flex justify-center items-center w-full gap-1 px-2 py-1 rounded shadow`}
diff --git a/apps/OpenSign/src/primitives/TemplateForm.js b/apps/OpenSign/src/primitives/TemplateForm.js
index d478f670b..05f8d7d6f 100644
--- a/apps/OpenSign/src/primitives/TemplateForm.js
+++ b/apps/OpenSign/src/primitives/TemplateForm.js
@@ -7,16 +7,16 @@ import SelectFolder from "../components/fields/SelectFolder";
// import SignersInput from "../components/fields/SignersInput";
import Title from "../components/Title";
import { useNavigate } from "react-router-dom";
-import { templateCls } from '../constant/const'
-
+import { templateCls } from "../constant/const";
+
const TemplateForm = () => {
- const navigate = useNavigate()
+ const navigate = useNavigate();
const [signers, setSigners] = useState([]);
const [folder, setFolder] = useState({ ObjectId: "", Name: "" });
const [formData, setFormData] = useState({
- Name: "Please review and sign this document",
+ Name: "",
Description: "",
- Note: ""
+ Note: "Please review and sign this document"
});
const [fileupload, setFileUpload] = useState([]);
const [fileload, setfileload] = useState(false);
@@ -168,7 +168,10 @@ const TemplateForm = () => {
});
setFileUpload([]);
setpercentage(0);
- navigate('/asmf/remoteUrl=aHR0cHM6Ly9xaWstYWktb3JnLmdpdGh1Yi5pby9TaWduLU1pY3JvYXBwVjIvcmVtb3RlRW50cnkuanM=&moduleToLoad=AppRoutes&remoteName=signmicroapp/template/' +res.id)
+ navigate(
+ "/asmf/remoteUrl=aHR0cHM6Ly9xaWstYWktb3JnLmdpdGh1Yi5pby9TaWduLU1pY3JvYXBwVjIvcmVtb3RlRW50cnkuanM=&moduleToLoad=AppRoutes&remoteName=signmicroapp/template/" +
+ res.id
+ );
}
} catch (err) {
console.log("err ", err);
@@ -275,7 +278,9 @@ const TemplateForm = () => {
/>
-
+
{
/>
{/* */}
-
+