\n \n \n \n Reporting Quality Control
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n \n \n \n \n \n \n \n \n \n \n \n \n \n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n \n \n \n \n \n
\n \n \n \n \n \n \n \n \n
\n\n\n\n\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./QualityControlReport.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./QualityControlReport.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./QualityControlReport.vue?vue&type=template&id=44914617&scoped=true\"\nimport script from \"./QualityControlReport.vue?vue&type=script&lang=js\"\nexport * from \"./QualityControlReport.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"44914617\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('CCard',{staticClass:\"w-100\"},[_c('CCardHeader',[_c('h2',[_vm._v(\"Report Piutang\")])]),_c('CCardBody',[_c('CRow',[_c('CCol',{staticClass:\"sm-3\"},[_c('CRow',[_c('CCol',{staticClass:\"sm-2\"},[_c('label',{staticClass:\"form-label font-weight-bold\"},[_vm._v(\"Tipe Tanggal\")]),_c('label',{staticClass:\"form-label font-weight-bold\",staticStyle:{\"float\":\"right\"}},[_vm._v(\": \")])]),_c('CCol',{staticClass:\"sm-3\"},[_c('CSelect',{staticClass:\"font-weight-bold\",attrs:{\"id\":\"DateType\",\"options\":_vm.DateTypeData,\"value\":_vm.DateType},on:{\"change\":function($event){return _vm.onChangeDateType()},\"update:value\":function($event){_vm.DateType=$event}}}),_c('label',{staticClass:\"form-error pb-2\",staticStyle:{\"display\":\"none\",\"color\":\"red\"},attrs:{\"id\":\"errorDateType\"}})],1)],1),_c('CRow',[_c('CCol',{staticClass:\"sm-2\"},[_c('label',{staticClass:\"form-label font-weight-bold\"},[_vm._v(\"Customer\")]),_c('label',{staticClass:\"form-label font-weight-bold\",staticStyle:{\"float\":\"right\"}},[_vm._v(\": \")])]),_c('CCol',{staticClass:\"sm-3\"},[_c('v-select',{staticClass:\"pb-3\",attrs:{\"id\":\"Customer\",\"options\":_vm.CustomerData},on:{\"input\":function($event){return _vm.onChangeCustomer()}},model:{value:(_vm.Customer),callback:function ($$v) {_vm.Customer=$$v},expression:\"Customer\"}}),_c('label',{staticClass:\"form-error pb-2\",staticStyle:{\"display\":\"none\",\"color\":\"red\"},attrs:{\"id\":\"errorCustomer\"}})],1)],1)],1),_c('CCol',{staticClass:\"sm-3\"},[_c('CRow',[_c('CCol',{staticClass:\"sm-2\"},[_c('label',{staticClass:\"form-label font-weight-bold\"},[_vm._v(\"Tanggal Mulai\")]),_c('label',{staticClass:\"form-label font-weight-bold\",staticStyle:{\"float\":\"right\"}},[_vm._v(\": \")])]),_c('CCol',{staticClass:\"sm-3\"},[_c('date-picker',{staticStyle:{\"width\":\"100%\"},attrs:{\"format\":\"DD MMM YYYY\",\"type\":\"date\",\"placeholder\":\"Pilih tanggal\",\"value-type\":\"YYYY-MM-DD\"},on:{\"change\":_vm.onChangeDateFrom},model:{value:(_vm.DateFrom),callback:function ($$v) {_vm.DateFrom=$$v},expression:\"DateFrom\"}}),_c('label',{staticClass:\"form-error pb-2\",staticStyle:{\"display\":\"none\",\"color\":\"red\"},attrs:{\"id\":\"errorDateFrom\"}})],1)],1),_c('CRow',{staticClass:\"pt-3\"},[_c('CCol',{staticClass:\"sm-2\"},[_c('label',{staticClass:\"form-label font-weight-bold\"},[_vm._v(\"Status\")]),_c('label',{staticClass:\"form-label font-weight-bold\",staticStyle:{\"float\":\"right\"}},[_vm._v(\": \")])]),_c('CCol',{staticClass:\"sm-3\"},[_c('v-select',{staticClass:\"pb-3\",attrs:{\"id\":\"Status\",\"options\":_vm.StatusData},on:{\"input\":function($event){return _vm.onChangeStatus()}},model:{value:(_vm.Status),callback:function ($$v) {_vm.Status=$$v},expression:\"Status\"}}),_c('label',{staticClass:\"form-error pb-2\",staticStyle:{\"display\":\"none\",\"color\":\"red\"},attrs:{\"id\":\"errorStatus\"}})],1)],1)],1),_c('CCol',{staticClass:\"sm-3\"},[_c('CRow',[_c('CCol',{staticClass:\"sm-2\"},[_c('label',{staticClass:\"form-label font-weight-bold\"},[_vm._v(\"Tanggal Akhir\")]),_c('label',{staticClass:\"form-label font-weight-bold\",staticStyle:{\"float\":\"right\"}},[_vm._v(\": \")])]),_c('CCol',{staticClass:\"sm-3\"},[_c('date-picker',{staticStyle:{\"width\":\"100%\"},attrs:{\"format\":\"DD MMM YYYY\",\"type\":\"date\",\"placeholder\":\"Pilih tanggal\",\"value-type\":\"YYYY-MM-DD\"},on:{\"change\":_vm.onChangeDateTo},model:{value:(_vm.DateTo),callback:function ($$v) {_vm.DateTo=$$v},expression:\"DateTo\"}}),_c('label',{staticClass:\"form-error pb-2\",staticStyle:{\"display\":\"none\",\"color\":\"red\"},attrs:{\"id\":\"errorDateTo\"}})],1)],1),_c('CRow',{staticClass:\"pt-3\"},[_c('CCol',{staticClass:\"sm-2\"},[_c('label',{staticClass:\"form-label font-weight-bold\"},[_vm._v(\"Tanggal Akhir Pembayaran\")]),_c('label',{staticClass:\"form-label font-weight-bold\",staticStyle:{\"float\":\"right\"}},[_vm._v(\": \")])]),_c('CCol',{staticClass:\"sm-3\"},[_c('date-picker',{staticStyle:{\"width\":\"100%\"},attrs:{\"format\":\"DD MMM YYYY\",\"type\":\"date\",\"placeholder\":\"Pilih tanggal\",\"value-type\":\"YYYY-MM-DD\"},on:{\"change\":_vm.onChangeCutOffDate},model:{value:(_vm.CutOffDate),callback:function ($$v) {_vm.CutOffDate=$$v},expression:\"CutOffDate\"}}),_c('label',{staticClass:\"form-error pb-2\",staticStyle:{\"display\":\"none\",\"color\":\"red\"},attrs:{\"id\":\"errorCutOffDate\"}})],1)],1)],1)],1),_c('hr'),_c('CRow',[_c('CCol',[_c('button',{staticClass:\"btn btn-primary\",staticStyle:{\"float\":\"left\"},attrs:{\"id\":\"view\"},on:{\"click\":function($event){return _vm.exportExcel()}}},[_c('i',{staticClass:\"fa fa-file-excel-o\"}),_vm._v(\" Excel \")])])],1),_c('hr'),_c('CRow',[_c('CCol',[_c('receivable-report-grid',{key:_vm.gridReload,ref:\"receivableReportGrid\",attrs:{\"dateTo\":_vm.DateToChangest,\"dateFrom\":_vm.DateFromChangest,\"cutOffDate\":_vm.CutOffDate,\"customer\":_vm.Customer,\"status\":_vm.Status}})],1)],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import gql from 'graphql-tag';\nimport {globalfunc} from '../../../../shared/GlobalFunction.js';\nimport moment from 'moment';\n\nclass ReceivablesReportService {\n readReceivablesReportQuery(){\n var query = `\n query ($startDate: DateTime!, $endDate: DateTime!, $id: Int, $status: String, $cutOff: DateTime) {\n GetReportingReceivables(start_date:$startDate, end_date:$endDate, customer_id:$id, status:$status, cut_off:$cutOff) {\n invoice_id\n customer_name\n customer_id\n due_date\n invoice_date\n due_day\n invoice_number\n total\n paid\n outstanding_amount\n status\n last_payment\n } \n }`;\n return query;\n }\n \n async getReceivablesReportQuery(variables){\n var query = `\n query ($startDate: DateTime!, $endDate: DateTime!, $id: Int, $status: String, $cutOff: DateTime) {\n GetReportingReceivables(start_date:$startDate, end_date:$endDate, customer_id:$id, status:$status, cut_off:$cutOff) {\n invoice_id\n customer_name\n customer_id\n due_date\n invoice_date\n due_day\n invoice_number\n total\n paid\n outstanding_amount\n status\n last_payment\n } \n }\n `;\n var result = await globalfunc.defaultApolloMutationDefault(query, variables);\n return result.data.GetReportingReceivables;\n }\n\n async getCustomerQuery(){\n var query = gql`\n query {\n GetContact (ContactType:\"Distributor\") {\n contact_id\n contact_name\n }\n }\n `;\n var result = await globalfunc.defaultApolloQueryDefault(query);\n var arrayData = [];\n if(result.data.GetContact != null){\n for (let i = 0; i < result.data.GetContact.length; i++) {\n var str = { \n value: result.data.GetContact[i].contact_id, \n label: result.data.GetContact[i].contact_name\n }\n arrayData.push(str);\n }\n }\n return arrayData;\n }\n\n receivableReportExcelHeaderSize(){\n var size = [\n {width: 40}, //colA\n {width: 20}, //colB\n {width: 20}, //colC\n {width: 40}, //colD\n {width: 20}, //colE\n {width: 20}, //colF\n ];\n\n return size;\n }\n\n receivableReportExcel(data, variables){\n const uniques = [];\n data.forEach((t) => !uniques.includes(t.customer_id) && uniques.push(t.customer_id));\n\n var arrayObject = [];\n var date = 'Per ' + moment(variables.endDate).format('DD MMM YYYY');\n var numberFormat = '_(* #,##0_);_(* (#,##0);_(* \"-\"_);_(@_)';\n\n var startIndex = 5;\n var lastIndex = startIndex;\n\n if(data != null){\n lastIndex = lastIndex + data.length - 1;\n }\n\n //Header\n var row1 = {colA : 'PT BOJONG WESTPLAS'};\n arrayObject.push(row1);\n\n var row2 = {colA : 'PIUTANG DAGANG'};\n arrayObject.push(row2);\n\n var row3 = {colA : date};\n arrayObject.push(row3);\n\n var spaceRow = {colA : null};\n arrayObject.push(spaceRow);\n\n if(data != null){\n for (let k= 0; k < uniques.length; k++) { \n var row5 = {\n colA : 'Customer',\n colB : 'Tgl Jatuh Tempo',\n colC : 'Due Day',\n colD : 'No Invoice',\n colE : 'Nilai Invoice',\n colF : 'Outstanding'\n };\n arrayObject.push(row5);\n\n var detail = data.filter(c => c.customer_id == uniques[k])\n var total_outstanding = 0;\n for (let i = 0; i < detail.length; i++){\n var row = {\n colA : detail[i].customer_name,\n colB : detail[i].due_date != '' ? { v: detail[i].due_date, t: 'd', z: 'DD-MMM-YYYY' } : '-',\n colC : { v: detail[i].due_day, t: 'n' , z: numberFormat},\n colD : detail[i].invoice_number,\n colE : { v: detail[i].total, t: 'n' , z: numberFormat},\n colE : { v: detail[i].outstanding_amount, t: 'n' , z: numberFormat},\n };\n arrayObject.push(row);\n\n total_outstanding += detail[i].outstanding_amount;\n }\n\n var customerData = data.find(c => c.customer_id == uniques[k])\n var row = { \n colA : 'Total Per ' + customerData.customer_name,\n colB : '',\n colC : '',\n colD : '',\n colE: '',\n colF : {v: total_outstanding , t: 'n', z: numberFormat},\n };\n arrayObject.push(row);\n \n var spaceRow = {colA : null};\n arrayObject.push(spaceRow);\n }\n }\n\n return arrayObject;\n }\n}\n\n\nexport default new ReceivablesReportService();","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('kendo-grid',{ref:\"grid\",attrs:{\"data-source\":_vm.ReceivableReport,\"filterable\":_vm.filterableConfig,\"sortable\":true,\"pageable\":_vm.pageableConfig,\"columns\":_vm.columns,\"resizable\":true}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","