File manager - Edit - /home/autoph/.trash/assets/process-e173143d.js
Back
import{B as J}from"./index-2520d048.js";import{_ as K,r as g,o as i,d as c,e as m,g as x,c as _,b as u,f as e,w as Z,I as n,h as v,J as f,G as C,H as R,K as ee,L as te}from"./index-8e9322aa.js";import{C as se}from"./CloseButton-19e5dd8c.js";import{S as oe,U as ae}from"./UpdateButton-e3d02fc4.js";import{V as re}from"./ViewButton-753e84bf.js";/* empty css */import{F as ie}from"./index-f9b0c988.js";import{F as ne}from"./lodash-5af90829.js";import{I as le,T as de,s as ce,A as pe}from"./index-de8a0845.js";import{T as ue}from"./index-6cd34b81.js";import{I as he}from"./index-66c6643f.js";import{L as me}from"./Loading-21e5100a.js";import{A as fe}from"./ApprovalMatrixService-68ee9774.js";import{A as T}from"./ApprovalService-4ae293e7.js";import{C as U}from"./CanvassService-4ccaf407.js";import{P as _e}from"./PurchaseRequestItemService-07ab8155.js";import{C as ve}from"./canvassForm-74e8f03b.js";import ye from"./index-ae8a442e.js";import{P as ge}from"./index-bf19b75a.js";import{F as xe}from"./vue-flatpickr.min-c49dd309.js";import{h as P}from"./moment-a9aaa855.js";import{V as F,c as Q,a as Y,d as be}from"./array-0fe74ce4.js";import{B as Ce}from"./index-2f75fcba.js";import{E as Ae}from"./ExecomOfficerSetupService-4da99508.js";const we={components:{FormModal:ie,FormGroup:ne,InputGroup:le,TextInput:de,TextArea:ue,SubmitButton:oe,UpdateButton:ae,CloseButton:se,ViewButton:re,Button:J,Multiselect:ce,Loading:me,FlatPickr:xe,Avatar:pe,ProposalMapping:ge,CanvassForm:ve,CanvassSheet:ye,Icon:he,Badge:Ce},data(){return{badgeClass:"bg-pink-400 text-white",data:{company_id:this.$store.userSettings.getActiveCompany??null,dealership_id:this.$store.userSettings.getActiveDealership??null,needed_at:null,approving_head:null,items:[]},form:{remarks:null,approvedCanvass:null,approvedQuantity:null},approvalMatrix:null,totalMancomApproved:null,no_of_required_approver:0,ExecomMembersApprover:[],status_id:{},errors:{approvedQuantity:"",remarks:""},state:{isEdit:!1,isSaving:!1,isDeleting:!1,isLoading:!1,showModal:!1,process:!1,fetchingCanvass:!1,fetchApprovalMatrix:!1,showModalFromCanvass:!1},searchType:null,searchItem:null,maxTotalCost:0,requiredApprovers:[],requiredExecomApprover:null,requiredExecomApproverName:[],completeRequiredApproval:!1}},watch:{"state.showModal":function(t){console.log("Process modal state changed:",t)},"state.showCanvassModal":function(t){console.log("Canvass modal state changed:",t)}},computed:{activeUser:function(){return console.log("this.$store.userSettings.getActiveUser"),console.log(this.$store.userSettings.getActiveUser),this.$store.userSettings.getActiveUser??null},activeCompany:function(){return this.$store.userSettings.getActiveCompany??null},activeDealership:function(){return this.$store.userSettings.getActiveDealership??null},activeDepartment:function(){return this.$store.userSettings.getActiveDepartment??null},companies:function(){return this.$store.userSettings.getCompanyAccess??null},dealerships:function(){return this.$store.userSettings.getDealershipAccess??null},company:function(){return this.companies.filter(t=>t.id==this.activeCompany).map(t=>t.name).toString()},dealership:function(){return this.dealerships.filter(t=>t.id==this.activeDealership).map(t=>t.name).toString()},roleGroups:function(){return this.activeUser?this.activeUser.roles.flatMap(t=>t.group_id):null},mancomApproval(){return this.data&&this.data.next_statuses&&this.data.next_statuses.find(t=>t.sub_process_code=="mancomApproval")},completeMancomApproval(){return this.totalMancomApproved>0&&this.totalMancomApproved>=this.no_of_required_approver},mostSelectedItemId(){if(this.completeMancomApproval&&this.completeRequiredApproval){const t={};this.data.mancom_approval.forEach(s=>{const d=s.selected_item_id;t[d]||(t[d]=0),t[d]++});let o=0,r=null,l=!1;for(const s in t)t[s]>o?(o=t[s],r=s,l=!1):t[s]===o&&(l=!0);return l?null:r}return null},hasWinner(){return this.mostSelectedItemId!==null},recommendedByUserId(){let t=0;if(this.data.user_ratings&&this.data.user_ratings!==null){let o=this.data.user_ratings.find(r=>r.rating==1);o&&(t=o.canvass_id)}return t},filterAlreadyApprovedExecom(){return this.requiredApprovers.filter(t=>!this.data.canvasses.some(o=>o.approved_officers&&o.approved_officers.some(r=>r.fullname===t.fullname)))},FilteredRequiredApprover(){return[...new Map(this.requiredExecomApproverName.map(t=>[t.employee_id,t])).values()]}},methods:{loadRecord(t){console.log("load record",t);let o=Object.assign({},t);this.resetData(),this.state.isEdit=!0,this.data=o,console.log("this.data",this.data),this.data.items=[],console.log("data...."),console.log(t),this.data.remarks_history=o.remarks_history.map(r=>({...r,created_at:P(r.created_at).format("MMM D, YYYY h:mm a")})),this.fetchApprovalMatrix(),this.fetchCanvassRecord(),this.totalMancomApproved=this.data&&this.data.mancom_approval.length,this.form.remarks=""},resetData(){this.state.isEdit=!1,this.data={company_id:this.activeCompany??null,dealership_id:this.activeDealership??null,department_id:this.activeDepartment??null,needed_at:null,approving_head:null,items:[]}},async fetchCanvassRecord(){if(!this.state.fetchingCanvass){this.state.fetchingCanvass=!0;try{let o=(await U.fetchRecord(this.data.id)).data.data;console.log("DATA CANVASS",o),this.data.canvasses=o.map(r=>({...r,approved_quantity:r.approved_quantity>0?r.approved_quantity:r.quantity})),console.log("what is this data",this.data),this.suppliersInCanvass=this.data.canvasses.map(r=>r.supplier.id),this.setMaxTotalCost(),await this.getExecomMembersApprover(),this.setRequiredApprover(),this.setCompleteRequiredApproval(),await this.loadApprovedOfficers(),this.isExecomApprover()}catch(t){console.error("Error fetching canvass record:",t)}finally{this.state.fetchingCanvass=!1}}},setRequiredApprover(){let t=[],o=null,r=0;if(this.approvalMatrix){let l=this.approvalMatrix.find(s=>this.maxTotalCost>=parseFloat(s.min_amount)&&this.maxTotalCost<=parseFloat(s.max_amount));console.log("ROW"),console.log(l),l&&(this.requiredExecomApprover=l.required_approver_id,r=l.no_required_execom,l&&(o={employee_id:l.required_approver_id,fullname:l.fullname},this.requiredExecomApproverName.push(o)),this.ExecomMembersApprover&&this.ExecomMembersApprover.length>0&&this.ExecomMembersApprover.forEach(s=>{s.employee&&t.push({employee_id:s.employee.employee_id,fullname:`${s.employee.firstname} ${s.employee.lastname}`||"N/A"})}))}this.no_of_required_approver=r,this.requiredApprovers=t,console.log("FINALE APPROVER LIST..."),console.log(this.requiredApprovers)},async getExecomMembersApprover(){console.log("ANO this data",this.data);const{matrix_id:t,company_id:o,dealership_id:r,division_id:l}=this.data;try{const s=await Ae.fetchExecomMembersApprover({matrix_level_id:t??null,company_id:o??null,dealership_id:r??null,division_id:l??null});this.ExecomMembersApprover=s.data,console.log("LIST APPROVER EXECOM MEMBERS"),console.log(this.ExecomMembersApprover)}catch(s){console.error("Error fetching execom members:",s)}},isExecomApprover(){if(!this.state.fetchingCanvass)return this.state.fetchCanvassRecord=!0,!this.requiredApprovers||this.requiredApprovers.length===0?(console.log("No required approvers found."),!1):(console.log("Required approver list:",this.requiredApprovers),this.requiredApprovers.some(t=>t.employee_id===this.activeUser.employee_id))},isUserApproved(){if(this.data.canvasses){const t=this.data.canvasses.find(o=>o.id===this.data.id);return!t||!t.approved_officers?!1:t.approved_officers.some(o=>o.employee_id===this.activeUser.employee_id)}},async fetchApprovalMatrix(){console.log("fetching approval matrisssssx"),!this.state.fetchApprovalMatrix&&(this.state.fetchApprovalMatrix=!0,await fe.fetchRecords().then(t=>{t.status==200&&(this.approvalMatrix=t.data.data,console.log("approval matrixx"),console.log(this.approvalMatrix))}).catch(t=>{console.error(t)}))},async submitForm(t,o){console.log("form"),console.log(this.form),this.errors=[];try{this.$swal.fire({title:`Are you sure you want to ${o} this record?`,text:"",icon:"question",showCancelButton:!0,confirmButtonColor:"#34c38f",cancelButtonColor:"#f46a6a",confirmButtonText:"Yes",cancelButtonText:"No"}).then(r=>{r.value?this.updateRecord(t):this.state.showModal=!1})}catch(r){if(r instanceof F){const l={};r.inner.forEach(s=>{l[s.path]=s.message}),this.errors=l}this.state.isSaving=!1}},handleAssetValidation(t,o){this.$swal.fire({title:`Are you sure you want to tag this record as ${o}?`,text:"",icon:"question",showCancelButton:!0,confirmButtonColor:"#34c38f",cancelButtonColor:"#f46a6a",confirmButtonText:"Yes",cancelButtonText:"No"}).then(r=>{r.value?this.submitAssetValidation(t):this.$refs.proposal.state.showModal=!1})},async submitAssetValidation(t){let o={record_id:this.data.id,transaction_type:"purchase-request",approver_role:"asset-validator",approved_by:this.activeUser.employee_id??null};await T.create(o).then(r=>{r.status==201?(this.updateRecord(t),this.$swal.fire({title:"Great!",text:"Record successfully updated.",type:"success",icon:"success",timer:2e3}),this.state.showModal=!1):this.$swal.fire({title:"Ooops! something is wrong.",text:"Please contact system administrator",type:"error",icon:"error",timer:2e3})}).catch(r=>{console.log(r),r.response.status==422?this.$swal.fire({title:"Ooops! something is wrong.",text:r.response.data.message,type:"error",icon:"error"}):this.$swal.fire({title:"Ooops! something is wrong.",text:"Please contact system administrator",type:"error",icon:"error",timer:2e3})}).finally(()=>{this.state.isSaving=!1,this.reload()})},handleAdminValidation(t,o){this.$swal.fire({title:`Are you sure you want to tag this record as ${o}?`,text:"",icon:"question",showCancelButton:!0,confirmButtonColor:"#34c38f",cancelButtonColor:"#f46a6a",confirmButtonText:"Yes",cancelButtonText:"No"}).then(r=>{r.value?this.submitAdminValidation(t):this.$refs.proposal.state.showModal=!1})},async submitAdminValidation(t){let o={record_id:this.data.id,transaction_type:"purchase-request",approver_role:"admin-validator",approved_by:this.activeUser.employee_id??null};await T.create(o).then(r=>{r.status==201?(this.updateRecord(t),this.$swal.fire({title:"Great!",text:"Record successfully updated.",type:"success",icon:"success",timer:2e3}),this.state.showModal=!1):this.$swal.fire({title:"Ooops! something is wrong.",text:"Please contact system administrator",type:"error",icon:"error",timer:2e3})}).catch(r=>{console.log(r),r.response.status==422?this.$swal.fire({title:"Ooops! something is wrong.",text:r.response.data.message,type:"error",icon:"error"}):this.$swal.fire({title:"Ooops! something is wrong.",text:"Please contact system administrator",type:"error",icon:"error",timer:2e3})}).finally(()=>{this.state.isSaving=!1,this.reload()})},async submitMapProposal(){console.log("form"),console.log("submitting proposal");const t=this.$refs.proposal.form.status_id,o=this.$refs.proposal.form.action,r=this.$refs.proposal.form.id;console.log(this.$refs.proposal.form),this.errors=[];try{await Q().shape({remarks:Y().nullable().required("Remarks is required").min(10,"Remarks must be at least ten (10) characters")}).validate(this.$refs.proposal.form,{abortEarly:!1}),this.form.proposal_id=r,this.form.remarks=this.$refs.proposal.form.remarks,this.$swal.fire({title:`Are you sure you want to ${o} this record?`,text:"",icon:"question",showCancelButton:!0,confirmButtonColor:"#34c38f",cancelButtonColor:"#f46a6a",confirmButtonText:"Yes",cancelButtonText:"No"}).then(s=>{s.value?this.updateRecord(t):this.$refs.proposal.state.showModal=!1})}catch(l){if(l instanceof F){const s={};l.inner.forEach(d=>{s[d.path]=d.message}),this.errors=s}this.state.isSaving=!1}},async updateRecord(t){let o={remarks:this.form.remarks,status:t,updated_by:this.activeUser.id,proposal_id:this.form.proposal_id??null,approved_quantity:this.form.approvedQuantity??null};const r=this.data.id;await _e.updateStatus(r,o).then(l=>{l.status==201?(this.$swal.fire({title:"Great!",text:"Record successfully updated.",type:"success",icon:"success",timer:2e3}),this.state.showModal=!1):this.$swal.fire({title:"Ooops! something is wrong.",text:"Please contact system administrator",type:"error",icon:"error",timer:2e3})}).catch(l=>{console.log(l),l.response.status==422?this.$swal.fire({title:"Ooops! something is wrong.",text:l.response.data.message,type:"error",icon:"error"}):this.$swal.fire({title:"Ooops! something is wrong.",text:"Please contact system administrator",type:"error",icon:"error",timer:2e3})}).finally(()=>{this.state.isSaving=!1,this.reload()})},async setWinner(){let t=this.mostSelectedItemId;await U.winner(t).then(o=>{o.status=="201"&&console.log("Canvass winner has been awarded ")}).catch(o=>{console.error(o)})},async submitMancomApproval(t){console.log(this.item_details);let o="execom";this.activeUser.employee_id==this.requiredExecomApprover&&(o="required-approver"),console.log(`req: ${this.activeUser.employee_id} | ${this.requiredExecomApprover}`),console.log(`total Approved: ${this.totalMancomApproved}`),console.log("approved quantity...."),console.log(this.form.approvedQuantity);let r={prf_id:this.data.request_header_id,record_id:this.data.id,transaction_type:"purchase-request-item",selected_item_id:this.form.approvedCanvass,approver_role:o,approved_by:this.activeUser.employee_id??null,approved_quantity:this.form.approvedQuantity??null,remarks:this.form.remarks??""};await T.create(r).then(l=>{l.status==201?(this.totalMancomApproved++,this.data.mancom_approval.push(r),this.totalMancomApproved===this.no_of_required_approver&&(this.completeRequiredApproval=!0),this.completeMancomApproval&&this.completeRequiredApproval&&this.hasWinner?(this.setWinner(),this.updateRecord(t)):(this.$swal.fire({title:"Great!",text:"Record successfully updated.",type:"success",icon:"success",timer:2e3}),this.state.showModal=!1,this.state.isLoading=!0)):this.$swal.fire({title:"Ooops! something is wrong.",text:"Please contact system administrator",type:"error",icon:"error",timer:2e3})}).catch(l=>{console.log(l),l.response.status==422?this.$swal.fire({title:"Ooops! something is wrong.",text:l.response.data.message,type:"error",icon:"error"}):this.$swal.fire({title:"Ooops! something is wrong.",text:"Please contact system administrator",type:"error",icon:"error",timer:2e3})}).finally(()=>{this.state.isSaving=!1,this.state.isLoading=!1,this.reload()})},closeModal(){this.state.showModal=!1},reload(){this.$emit("reload")},computeElapsed(t,o){const r=P(t),l=P(o),s=l.diff(r,"days"),A=P.duration(l.diff(r)).asHours()-s*24,B=Math.floor(A),w=Math.floor((A-B)*60);return`${s} days, ${B} hours, and ${w} minutes`},showProposals(t,o,r){this.$refs.proposal.fetchRecords(),this.$refs.proposal.form.PrInfo=t.header,this.$refs.proposal.form.status_id=o,this.$refs.proposal.form.action=r,this.$refs.proposal.state.showModal=!0},closeProposal(){this.$refs.proposal.state.showModal=!1},mapProposals(){},showCanvass(t,o){this.status_id=o;const r=Object.assign({},t);console.log("$data"),console.log(r),t={reference_no:r.reference_no,prf_dtl_id:r.id,uom:r.uom,description:r.description,prf_id:r.request_header_id,item_id:r.asset_item_id,quantity:r.quantity},this.$refs.canvass.loadRecord(t),this.$refs.canvass.state.showModalFromCanvass=!0},showCanvassSheet(t=null){this.status_id=t,console.log("this.data..."),console.log(this.data);const o={prf_id:this.data.request_header_id,reference_no:this.data.reference_no,item_details:{prf_dtl_id:this.data.id,company:this.data.company_name,dealer:this.data.dealership_name||"",dealer_address:this.data.dealer_address||"",date_request:this.data.created_at,purpose:this.data.purpose,asset_item_id:this.data.asset_item_id,asset_item_name:this.data.description,uom:this.data.uom,quantity:this.data.quantity,status_process_id:this.data.status_process_id,updated_at:this.data.updated_at}};this.$refs.canvassSheet.loadRecord(o),this.$refs.canvassSheet.state.showModal=!0,this.$refs.canvassSheet.init()},createCanvassSheet(t=null){this.$refs.canvassSheet.state.saveCanvass=!0,this.showCanvassSheet(t)},rateCanvass(t=null){this.$refs.canvassSheet.state.rateCanvass=!0,this.showCanvassSheet(t)},handleMancomApproval(t=null){Q().shape({approvedQuantity:be().required("Approved quantity field is required.").integer("Approved quantity must be a whole number.").min(1,"Approved quantity must be at least 1."),remarks:Y().required("remarks quantity field is required.")}).validate(this.form,{abortEarly:!1}),this.$swal.fire({title:"Are you sure you want to proceed with the approval?",text:"",icon:"question",showCancelButton:!0,confirmButtonColor:"#34c38f",cancelButtonColor:"#f46a6a",confirmButtonText:"Yes",cancelButtonText:"No"}).then(r=>{r.value&&this.submitMancomApproval(t)})},setApprovedCanvass(t,o){this.form.approvedCanvass=t,this.form.approvedQuantity=o,console.log("form.approvedQuantity..."),console.log(this.form.approvedQuantity)},checkDisclaimer(t){this.$swal.fire({title:"Are you sure you want to proceed with the approval?",text:"",icon:"question",showCancelButton:!0,confirmButtonColor:"#34c38f",cancelButtonColor:"#f46a6a",confirmButtonText:"Yes",cancelButtonText:"No"}).then(o=>{if(o.value){const r=this.data.header.disclaimer,l=!!(Array.isArray(this.data.proposal)&&this.data.proposal.length>0);let s=t;if(r==0||l==1){const d=this.data.next_statuses.find(A=>A.sub_process_code=="skipUserRating");s=d?d.id:null}console.log("preApproved",l),console.log("checking disclaimer"),console.log(this.data),console.log("disclaimer",this.data.header.disclaimer),console.log("next_Status",t),console.log("final next status",s),s&&this.updateRecord(s)}})},checkPreApproved(t){this.$swal.fire({title:"Are you sure you want to proceed with the approval?",text:"",icon:"question",showCancelButton:!0,confirmButtonColor:"#34c38f",cancelButtonColor:"#f46a6a",confirmButtonText:"Yes",cancelButtonText:"No"}).then(o=>{if(o.value){const r=!!(this.data.proposal&&this.data.proposal.length>0);let l=t;if(r==1){const s=this.data.next_statuses.find(d=>d.sub_process_code=="skipMancomApproval");l=s?s.id:null}console.log("next_status"),console.log(t),console.log(l),l&&this.updateRecord(l)}})},setMaxTotalCost(){console.log("this.datadfdsfd"),console.log(this.datax);let t=0;this.data&&this.data.canvasses&&this.data.canvasses.length>0&&(t=Math.max(...this.data.canvasses.map(o=>o.total_cost))),console.log("maxTotal"),console.log(t),this.maxTotalCost=t},setCompleteRequiredApproval(){let t=this.data&&this.data.mancom_approval&&this.data.mancom_approval.filter(o=>o.approver_role=="required-approver").length>0;this.completeRequiredApproval=t},async deleteCanvass(t){this.$swal.fire({title:"Are you sure?",text:"You want to delete this record?",icon:"warning",showCancelButton:!0,confirmButtonColor:"#34c38f",cancelButtonColor:"#f46a6a",confirmButtonText:"Yes, delete it!",background:this.$store.themeSettingsStore.isDark?"#1e293b":"#fff"}).then(o=>{console.log(o.value),o.value&&(this.state.isDeleting=!0,console.log("id...."),console.log(t),U.remove(t).then(r=>{r.status==200&&(this.$swal.fire({title:"Yaaay!",text:"Record has been deleted successfully.",type:"success",icon:"success",timer:2e3}),this.data.canvasses=this.data.canvasses.filter(l=>l.id!==t))}))}).catch(o=>{(o.response||o.response.status==401)&&this.$swal.fire({title:"Ooops! something is wrong.",text:"Error deleting record. Please contact system administrator",type:"error",icon:"error",timer:2e3})}).finally(()=>{this.state.isDeleting=!1})},async loadApprovedOfficers(){if(!this.data.canvasses||this.data.canvasses.length===0){console.warn("No canvasses available to load officers");return}const t=this.data.canvasses.map(async o=>{o.approved_officers=[],o.approved_officers=await this.getOfficersApproved(o.prf_dtl_id,o.id)});await Promise.all(t)},async getOfficersApproved(t,o){try{const r=await T.officerApproved(t,o);if(r.status===200){const l=r.data.approved_officers;return this.no_of_approved=l.length,l}}catch(r){return console.error("Error fetching officers:",r),[]}}},mounted(){this.loadApprovedOfficers()}},h=t=>(ee("data-v-d88f8a69"),t=t(),te(),t),ke={class:"lg:p-2"},qe={class:"space-y-2"},Me={class:"grid lg:grid-cols-2"},Se={class:"flex gap-2 border-b border-slate-300 border-dashed py-1"},Be=h(()=>e("div",{class:"label"},"Company:",-1)),Ee={class:"value"},Re={class:"flex gap-2 border-b border-slate-300 border-dashed py-1"},Te=h(()=>e("div",{class:"label"},"Dealership:",-1)),Pe={class:"value"},Ve={class:"grid lg:grid-cols-2"},Ue={class:"flex gap-2 border-b border-slate-300 border-dashed py-1"},Ie=h(()=>e("div",{class:"label"},"Date Needed:",-1)),Oe={class:"value"},De={class:"flex gap-1 border-b border-slate-300 border-dashed py-1"},Ne=h(()=>e("div",{class:"label"},"Approving Head:",-1)),Fe={class:"value"},Qe={class:"flex gap-1 border-b border-slate-300 border-dashed py-1"},Ye=h(()=>e("div",{class:"label"},"Requested By:",-1)),Le={class:"value"},Ge={class:"flex gap-1 border-b border-slate-300 border-dashed py-1"},$e=h(()=>e("div",{class:"label"},"Purpose:",-1)),je={class:"value"},We={class:"bg-primary-50 mt-8 border border-primary-300 p-4 mb-8 drop-shadow-md"},He={class:"grid lg:grid-cols-2 gap-3 py-2"},Xe={class:"flex gap-4"},ze=h(()=>e("span",{class:"label"},"EXPENSE CATEGORY:",-1)),Je={class:"value"},Ke={class:"flex gap-4"},Ze=h(()=>e("span",{class:"label"},"EXPENSE TYPE",-1)),et={class:"value"},tt={class:"mb-4"},st={class:"max-h-[350px] overflow-auto"},ot={class:"table"},at=h(()=>e("thead",null,[e("tr",null,[e("th",null,"ITEM TYPE"),e("th",null,"ITEM DESCRIPTION"),e("th",null,"UOM"),e("th",null,"QUANTITY"),e("th",null,"STATUS")])],-1)),rt=["title"],it={key:0},nt=h(()=>e("span",{class:"font-bold bg-green-100 rounded-md text-green-600 p-1"},"YOU",-1)),lt={class:"text-gray-700 font-medium"},dt={key:1,class:"font-medium"},ct={key:0,class:"bg-primary-50 mt-8 border border-primary-300 mb-8 drop-shadow-md"},pt=h(()=>e("div",{class:"border-b border-primary-300 py-2 p-4"},[e("div",{class:"text-2xl"},"Pre Approved Proposals")],-1)),ut={class:"mb-4 p-4"},ht={class:""},mt={class:"table"},ft=h(()=>e("thead",null,[e("tr",null,[e("th",null,"Ref Code"),e("th",null,"Supplier"),e("th",null,"Validity")])],-1)),_t={key:1,class:"mb-4 p-4 bg-blue-100 border border-blue-300 rounded-md flex items-center space-x-2"},vt=h(()=>e("svg",{xmlns:"http://www.w3.org/2000/svg",class:"h-6 w-6 text-pink-400",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor","stroke-width":"2"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M13 16h-1v-4h-1m0-4h.01M12 12h.01M12 8v.01M13 12h-1m-2 4h2v-4m1 0V8.01m1 12h1m0-8h-.01M16 16h1v-4h1m0-4h-.01M16 8V7m0 12v-1m-8 1v-1m0-12V7m-4 12v-1M4 8V7m0 12v-1M4 8V7m12 5h-1m0 0h1"})],-1)),yt=h(()=>e("p",{class:"text-pink-400 text-sm"},[v(" Please "),e("strong",null,"click on any row"),v(" to approve the item and "),e("strong",null,"modify the quantity"),v(" if needed. ")],-1)),gt=[vt,yt],xt={key:2,class:"bg-primary-50 mt-8 border border-primary-300 mb-8 drop-shadow-md"},bt=h(()=>e("div",{class:"border-b border-primary-300 py-2 p-4"},[e("div",{class:"text-2xl semi-bold"},"Canvass Proposals")],-1)),Ct={class:"mb-4 p-4"},At={class:"max-h-[350px] overflow-auto"},wt={class:"table"},kt=h(()=>e("th",null,"Vendor/Supplier",-1)),qt=h(()=>e("th",null,"Unit Cost",-1)),Mt=h(()=>e("th",null,"Qty",-1)),St=h(()=>e("th",null,"Approved Qty.",-1)),Bt=h(()=>e("th",null,"Total Cost",-1)),Et=h(()=>e("th",null,"Terms",-1)),Rt=h(()=>e("th",null,"Required approver",-1)),Tt=h(()=>e("th",null,"Allow approver's",-1)),Pt=h(()=>e("th",{class:"text-center"},"No. of Required Officers",-1)),Vt=h(()=>e("th",{class:"text-center"},"No. of Approved",-1)),Ut={key:0},It=["onClick"],Ot={class:"flex gap-1"},Dt={key:0},Nt={key:0,class:"text-error"},Ft=["title"],Qt={class:"space-y-1"},Yt={class:"text-sm font-medium text-gray-600"},Lt={class:"space-y-1"},Gt={class:"text-sm font-medium text-gray-800"},$t={class:"space-y-1"},jt={class:"text-sm font-medium text-gray-800"},Wt={class:"flex flex-col space-y-2"},Ht={class:"font-bold text-sm"},Xt={class:"text-xs text-gray-700 bg-green-100 text-green-800 font-medium px-2.5 py-0.5 rounded dark:bg-gray-700 dark:text-green-400"},zt={class:"flex gap-1"},Jt={key:0},Kt={key:0,class:"text-error"},Zt=["title"],es={class:"space-y-1"},ts={class:"text-sm font-medium text-gray-600"},ss={class:"space-y-1"},os={class:"text-sm font-medium text-gray-600"},as={class:"text-center"},rs={class:"flex flex-col space-y-2"},is={class:"font-bold text-sm"},ns={class:"text-xs text-gray-700 bg-green-100 text-green-800 font-medium px-2.5 py-0.5 rounded dark:bg-gray-700 dark:text-green-400"},ls={class:"py-4"},ds={key:0,class:"flex text-slate-400 text-sm"},cs=h(()=>e("span",null," - Recommended by Requestor ",-1)),ps={class:"mt-8"},us={key:0,class:"text-danger-500"},hs={class:"flex gap-1 justify-end mt-4"};function ms(t,o,r,l,s,d){const A=g("Loading"),B=g("Badge"),w=g("Icon"),I=g("TextInput"),b=g("Button"),L=g("TextArea"),G=g("FormGroup"),$=g("ViewButton"),j=g("CloseButton"),W=g("FormModal"),H=g("ProposalMapping"),X=g("CanvassForm"),z=g("CanvassSheet");return i(),c(f,null,[m(W,{title:`Purchase Request Reference No: ${s.data.reference_no}`,active:s.state.showModal,onSubmit:t.confirmSubmit,onClose:d.closeModal,themeClass:s.state.isEdit?"bg-primary-600":"bg-primary-800",sizeClass:"w-full h-full"},{default:x(()=>{var E,O,D,N;return[s.state.isLoading?(i(),_(A,{key:0,text:"Fetching resource data"})):u("",!0),s.state.isSaving?(i(),_(A,{key:1,text:"Saving record"})):u("",!0),s.state.fetchingCanvass?(i(),_(A,{key:2,text:"Fetching Canvass data"})):u("",!0),e("div",ke,[e("form",{onSubmit:o[1]||(o[1]=Z((...a)=>t.confirmSubmit&&t.confirmSubmit(...a),["prevent"]))},[e("div",qe,[e("div",Me,[e("div",Se,[Be,e("div",Ee,n(s.data.company_name),1)]),e("div",Re,[Te,e("div",Pe,n(s.data.dealership_name),1)])]),e("div",Ve,[e("div",Ue,[Ie,e("div",Oe,n(s.data.needed_at),1)]),e("div",De,[Ne,e("div",Fe,n(s.data.approving_head_name),1)])]),e("div",Qe,[Ye,e("div",Le,n(s.data.requested_by_name),1)]),e("div",Ge,[$e,e("div",je,n(s.data.purpose),1)])]),e("div",We,[e("div",He,[e("div",Xe,[ze,e("span",Je,n(s.data.expense_category_name),1)]),e("div",Ke,[Ze,e("span",et,n(s.data.item_classification_name),1)])]),e("div",tt,[e("div",st,[e("table",ot,[at,e("tbody",null,[e("tr",null,[e("td",null,n(s.data.type),1),e("td",null,n(s.data.description),1),e("td",null,n(s.data.uom),1),e("td",null,n(s.data.quantity),1),e("td",null,[m(B,{badgeClass:s.badgeClass},{default:x(()=>[v(n(s.data.status_name),1)]),_:1},8,["badgeClass"]),(E=s.data.approver)!=null&&E.length?(i(),c("div",{key:0,title:`Processing Officer : ${s.data.approver.map(a=>a.name).join(", ")}`,class:"bg-orange-100 px-2 py-1 rounded mt-1 w-fit flex flex-col gap-1"},[(i(!0),c(f,null,C(s.data.approver,(a,y)=>(i(),c("span",{key:a.id,class:"flex items-center gap-2"},[m(w,{icon:"heroicons-solid:chevron-right",class:"text-primary-600 text-xl w-5 h-5 text-gray-600"}),d.activeUser.employee_id==a.employee_id?(i(),c("span",it,[nt,e("span",lt," - "+n(a.name),1)])):(i(),c("span",dt,n(a.name),1))]))),128))],8,rt)):u("",!0)])])])])])])]),s.data.proposal.length>0?(i(),c("div",ct,[pt,e("div",ut,[e("div",ht,[e("table",mt,[ft,e("tbody",null,[e("tr",null,[e("td",null,n(((O=s.data.proposal[0])==null?void 0:O.ref_code)||""),1),e("td",null,n(((D=s.data.proposal[0])==null?void 0:D.supplier.name)||""),1),e("td",null,n(((N=s.data.proposal[0])==null?void 0:N.validity_date)||""),1)])])])])])])):u("",!0),s.data.status===36?(i(),c("div",_t,gt)):u("",!0),s.data.canvasses&&s.data.canvasses.length>0?(i(),c("div",xt,[bt,e("div",Ct,[e("div",At,[e("table",wt,[e("thead",null,[e("tr",null,[kt,qt,Mt,St,Bt,Et,Rt,Tt,Pt,Vt,[35,36].includes(s.data.status)?u("",!0):(i(),c("th",Ut,"Action"))])]),e("tbody",null,[d.mancomApproval&&!s.data.approved_by_you?(i(!0),c(f,{key:0},C(s.data.canvasses,(a,y)=>{var k,q,M,S;return i(),c("tr",{key:y,class:R(["hover:bg-primary-100",this.form.approvedCanvass==a.id?"bg-primary-700 text-primary-800 bg-opacity-[0.2]":null]),onClick:p=>d.setApprovedCanvass(a.id,a.approved_quantity)},[e("td",null,[e("div",Ot,[a.id==d.recommendedByUserId?(i(),c("span",Dt,[m(w,{icon:"ph:star-duotone",class:"text-amber-400 text-base"})])):u("",!0),e("span",null,n(a.supplier.name),1)])]),e("td",null,n(t.$ability.can("view",this.$formatNumber(a.unit_cost))),1),e("td",null,n(a.quantity),1),e("td",null,[m(I,{type:"text",modelValue:a.approved_quantity,"onUpdate:modelValue":p=>a.approved_quantity=p,id:"approvedQuantity",name:"approvedQuantity",class:"w-16 rounded border border-green-400",disabled:s.data.status!==36},null,8,["modelValue","onUpdate:modelValue","disabled"]),s.errors.approvedQuantity?(i(),c("span",Nt,n(s.errors.approvedQuantity),1)):u("",!0)]),e("td",null,n(t.$ability.can("view","TotalCost")?this.$formatNumber(a.total_cost,2):"*******"),1),e("td",{title:(q=(k=a.supplier)==null?void 0:k.vendor_term)==null?void 0:q.description},n((S=(M=a.supplier)==null?void 0:M.vendor_term)==null?void 0:S.code),9,Ft),e("td",null,[e("ul",Qt,[(i(!0),c(f,null,C(d.FilteredRequiredApprover,p=>(i(),c("li",{key:p.employee_id,class:"flex items-center space-x-2"},[e("span",Yt,n(p.fullname),1)]))),128))])]),e("td",null,[e("ul",Lt,[(i(!0),c(f,null,C(s.requiredApprovers,p=>(i(),c("li",{key:p.employee_id,class:"flex items-center space-x-2"},[e("span",Gt,n(p.fullname),1)]))),128))])]),e("td",null,[e("ul",$t,[(i(!0),c(f,null,C(s.requiredApprovers,p=>(i(),c("li",{key:p.employee_id,class:"flex items-center space-x-2"},[e("span",jt,n(p.fullname),1)]))),128))])]),e("td",null,n(s.no_of_required_approver),1),e("td",null,[e("div",Wt,[e("span",Ht,n(a.approved_officers.filter(p=>p.selected_item_id===a.id).length)+" / "+n(s.no_of_required_approver),1),(i(!0),c(f,null,C(a.approved_officers,(p,V)=>(i(),c("div",{key:V,class:"flex items-center space-x-2"},[m(w,{icon:"mdi:check-circle",class:"text-green-500 text-lg"}),e("span",Xt,n(p.fullname),1)]))),128))])])],10,It)}),128)):(i(!0),c(f,{key:1},C(s.data.canvasses,(a,y)=>{var k,q,M,S;return i(),c("tr",{key:y,class:R(a.mancom_approved&&a.mancom_approved.find(p=>p.approved_by==this.activeUser.employee_id)?"bg-primary-700 text-primary-800 bg-opacity-[0.2]":null)},[e("td",null,[e("div",zt,[a.id==d.recommendedByUserId?(i(),c("span",Jt,[m(w,{icon:"ph:star-duotone",class:"text-amber-400 text-base"})])):u("",!0),e("span",null,n(a.supplier.name),1)])]),e("td",null,n(t.$ability.can("view","UnitCost")?this.$formatNumber(a.unit_cost):"********"),1),e("td",null,n(a.quantity),1),e("td",null,[m(I,{type:"text",modelValue:a.approved_quantity,"onUpdate:modelValue":p=>a.approved_quantity=p,id:"approvedQuantity",name:"approvedQuantity",class:"w-16 rounded border border-green-400",disabled:s.data.status!==36},null,8,["modelValue","onUpdate:modelValue","disabled"]),v(),s.errors.approvedQuantity?(i(),c("span",Kt,n(s.errors.approvedQuantity),1)):u("",!0)]),e("td",null,n(t.$ability.can("view","TotalCost")?this.$formatNumber(a.total_cost,2):"*******"),1),e("td",{title:(q=(k=a.supplier)==null?void 0:k.vendor_term)==null?void 0:q.description},n((S=(M=a.supplier)==null?void 0:M.vendor_term)==null?void 0:S.code),9,Zt),e("td",null,[e("ul",es,[(i(!0),c(f,null,C(d.FilteredRequiredApprover,p=>(i(),c("li",{key:p.employee_id,class:"flex items-center space-x-2"},[e("span",ts,n(p.fullname),1)]))),128))])]),e("td",null,[e("ul",ss,[(i(!0),c(f,null,C(s.requiredApprovers,p=>(i(),c("li",{key:p.employee_id,class:"flex items-center space-x-2"},[e("span",os,n(p.fullname),1)]))),128))])]),e("td",as,n(s.no_of_required_approver),1),e("td",null,[e("div",rs,[e("span",is,n(a.approved_officers.filter(p=>p.selected_item_id===a.id).length)+" / "+n(s.no_of_required_approver),1),(i(!0),c(f,null,C(a.approved_officers,(p,V)=>(i(),c("div",{key:V,class:"flex items-center space-x-2"},[m(w,{icon:"mdi:check-circle",class:"text-green-500 text-lg"}),e("span",ns,n(p.fullname),1)]))),128))])]),e("td",null,[[28,31,,38,41].includes(s.data.status)?(i(),_(b,{key:0,btnClass:"text-red-600 hover:text-red-900 py-2 px-1",icon:"carbon:trash-can",iconClass:"text-xl",text:t.text??null,link:t.link,title:"Delete Canvass",titleTheme:t.titleTheme,onClick:p=>d.deleteCanvass(a.id)},null,8,["text","link","titleTheme","onClick"])):u("",!0)])],2)}),128))])]),e("div",ls,[d.recommendedByUserId?(i(),c("div",ds,[e("span",null,[m(w,{icon:"ph:star-duotone",class:"text-amber-400 text-lg"})]),cs])):u("",!0)])])])])):u("",!0),e("div",ps,[m(G,{label:"Remarks",isRequired:""},{default:x(()=>[e("div",{class:R({"border border-danger-500 rounded":s.errors.remarks,"":!s.errors.remarks&&s.form.remarks})},[m(L,{modelValue:s.form.remarks,"onUpdate:modelValue":o[0]||(o[0]=a=>s.form.remarks=a),class:"p-2 w-full",placeholder:""},null,8,["modelValue"])],2)]),_:1}),s.errors.remarks?(i(),c("span",us,n(s.errors.remarks),1)):u("",!0)]),e("div",hs,[s.state.process?(i(),c(f,{key:0},[(i(!0),c(f,null,C(s.data.next_statuses,a=>(i(),c(f,{key:a.id},[a.sub_process_code?(i(),c(f,{key:0},[a.sub_process_code=="assetValidation"?(i(),_(b,{key:0,class:"bg-primary-500 rounded py-1",onClick:y=>d.handleAssetValidation(a.id,a.action)},{default:x(()=>[v(n(a.action),1)]),_:2},1032,["onClick"])):u("",!0),a.sub_process_code=="adminValidation"?(i(),_(b,{key:1,class:"bg-primary-500 rounded py-1",onClick:y=>d.handleAdminValidation(a.id,a.action)},{default:x(()=>[v(n(a.action),1)]),_:2},1032,["onClick"])):u("",!0),a.sub_process_code=="mapProposal"?(i(),_(b,{key:2,class:"bg-primary-500 rounded py-1",onClick:y=>d.showProposals(s.data,a.id,a.action)},{default:x(()=>[v(n(a.action),1)]),_:2},1032,["onClick"])):u("",!0),a.sub_process_code=="createCanvass"?(i(),_(b,{key:3,class:"bg-primary-500 rounded py-1",onClick:y=>d.showCanvass(s.data,a.id)},{default:x(()=>[v(n(a.action),1)]),_:2},1032,["onClick"])):u("",!0),a.sub_process_code=="createCanvassSheet"&&s.data.canvasses&&s.data.canvasses.length>0?(i(),_(b,{key:4,class:"bg-primary-500 rounded py-1",onClick:y=>d.createCanvassSheet(a.id)},{default:x(()=>[v(n(a.action),1)]),_:2},1032,["onClick"])):u("",!0),a.sub_process_code=="canvassRating"?(i(),_(b,{key:5,class:"bg-primary-500 rounded py-1",onClick:y=>d.rateCanvass(a.id)},{default:x(()=>[v(n(a.action),1)]),_:2},1032,["onClick"])):u("",!0),a.sub_process_code=="mancomApproval"&&(!d.isUserApproved()||d.isExecomApprover())?(i(),_(b,{key:6,class:R(`${this.form.approvedCanvass?"bg-primary-500":"bg-slate-300"} rounded py-1`),disabled:!this.form.approvedCanvass,title:this.form.approvedCanvass?"Approve the selected canvass":"Select from above the canvass that you want to approve",onClick:y=>d.handleMancomApproval(a.id)},{default:x(()=>[v(n(a.action),1)]),_:2},1032,["class","disabled","title","onClick"])):u("",!0),a.sub_process_code=="userDisclaimer"?(i(),_(b,{key:7,class:"bg-primary-500 rounded py-1",onClick:y=>d.checkDisclaimer(a.id)},{default:x(()=>[v(n(a.action),1)]),_:2},1032,["onClick"])):u("",!0),a.sub_process_code=="checkPreApproved"?(i(),_(b,{key:8,class:"bg-primary-500 rounded py-1",onClick:y=>d.checkPreApproved(a.id)},{default:x(()=>[v(n(a.action),1)]),_:2},1032,["onClick"])):u("",!0)],64)):(i(),c(f,{key:1},[!d.isUserApproved()||d.isExecomApprover()?(i(),_(b,{key:0,class:"bg-primary-500 rounded py-1",onClick:y=>d.submitForm(a.id,a.action)},{default:x(()=>[v(n(a.action),1)]),_:2},1032,["onClick"])):u("",!0)],64))],64))),128)),s.data.canvasses&&s.data.canvasses.length>0?(i(),_($,{key:0,btnClass:"py-2 px-4 bg-purple-500 text-white",text:"View Canvass",titleTheme:"bg-dark",onClick:d.showCanvassSheet},null,8,["onClick"])):u("",!0)],64)):u("",!0),m(j,{onClick:d.closeModal},null,8,["onClick"])])],32)])]}),_:1},8,["title","active","onSubmit","onClose","themeClass"]),m(H,{ref:"proposal",onSubmit:d.submitMapProposal},null,8,["onSubmit"]),m(X,{ref:"canvass",onSubmit:t.submitCanvass,onReload:o[2]||(o[2]=E=>d.updateRecord(s.status_id))},null,8,["onSubmit"]),m(z,{ref:"canvassSheet",onReload:o[3]||(o[3]=E=>d.updateRecord(s.status_id))},null,512)],64)}const Ns=K(we,[["render",ms],["__scopeId","data-v-d88f8a69"]]);export{Ns as P};
| ver. 1.4 |
.
| PHP 7.3.33 | Generation time: 0.22 |
proxy
|
phpinfo
|
Settings