|
- {"ast":null,"code":"import _regeneratorRuntime from \"/Users/michielcarman/Server Code/Repository/clients-rpm-kit-manager/code/RPM.KitManager/RPM.KitManager.Web/ClientApp/node_modules/babel-preset-react-app/node_modules/@babel/runtime/regenerator\";\nimport _asyncToGenerator from \"/Users/michielcarman/Server Code/Repository/clients-rpm-kit-manager/code/RPM.KitManager/RPM.KitManager.Web/ClientApp/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/asyncToGenerator\";\nimport _objectDestructuringEmpty from \"/Users/michielcarman/Server Code/Repository/clients-rpm-kit-manager/code/RPM.KitManager/RPM.KitManager.Web/ClientApp/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/objectDestructuringEmpty\";\nimport _classCallCheck from \"/Users/michielcarman/Server Code/Repository/clients-rpm-kit-manager/code/RPM.KitManager/RPM.KitManager.Web/ClientApp/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"/Users/michielcarman/Server Code/Repository/clients-rpm-kit-manager/code/RPM.KitManager/RPM.KitManager.Web/ClientApp/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/createClass\";\nimport _possibleConstructorReturn from \"/Users/michielcarman/Server Code/Repository/clients-rpm-kit-manager/code/RPM.KitManager/RPM.KitManager.Web/ClientApp/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn\";\nimport _getPrototypeOf from \"/Users/michielcarman/Server Code/Repository/clients-rpm-kit-manager/code/RPM.KitManager/RPM.KitManager.Web/ClientApp/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/getPrototypeOf\";\nimport _inherits from \"/Users/michielcarman/Server Code/Repository/clients-rpm-kit-manager/code/RPM.KitManager/RPM.KitManager.Web/ClientApp/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/inherits\";\nvar _jsxFileName = \"/Users/michielcarman/Server Code/Repository/clients-rpm-kit-manager/code/RPM.KitManager/RPM.KitManager.Web/ClientApp/src/shared/components/PDFGeneratorButtons/PDFButtonPackList.tsx\";\nimport React from 'react';\nimport jsPDF from 'jspdf';\nimport axios from 'axios';\n\nvar PDFButtonPackList = /*#__PURE__*/function (_React$Component) {\n _inherits(PDFButtonPackList, _React$Component);\n\n function PDFButtonPackList(props) {\n var _this;\n\n _classCallCheck(this, PDFButtonPackList);\n\n _this = _possibleConstructorReturn(this, _getPrototypeOf(PDFButtonPackList).call(this, props));\n\n _this.createPDF = function () {\n var _this$props = _this.props,\n dsId = _this$props.dsId,\n pn = _this$props.pn,\n rev = _this$props.rev; // const part: any = prompt('What is the Part Number?', `${this.props.pn}`);\n // const partNumberEntered: number = parseInt(part);\n // if (part === null) {\n // return null;\n // }\n\n var setOfPackListInfo = _this.state.PackLists;\n console.log('PackLists: ', _this.state.PackLists);\n console.log('PackListInfo: ', setOfPackListInfo);\n\n if (setOfPackListInfo == null || setOfPackListInfo == undefined || setOfPackListInfo.length == 0) {\n alert('No Data Found');\n return;\n } // const { Header } = this.props;\n // const {\n // headerPartNumber,\n // headerDescription,\n // headerRevisionLevel,\n // headerCustomerPartNumber,\n // headerApproveDate,\n // headerStatusID,\n // headerFACRequired,\n // headerFACCompleted,\n // bodyPackLocation,\n // bodyPartNumber,\n // bodyQty,\n // bodyPartCode,\n // bodyDescription\n // } = Header;\n\n\n var doc = new jsPDF({\n unit: 'in',\n orientation: 'portrait',\n format: 'letter'\n });\n var margins = {\n left: 1,\n right: 1.25,\n top: 1,\n bottom: 1.25\n };\n var page = {\n height: 11,\n width: 8.5\n }; // Uncomment this line to see the construction lines used to align on this page.\n // PackListCLines.drawConstructions(doc);\n //Title\n\n doc.setFontSize(24);\n doc.setFont(\"times\");\n doc.setTextColor(255, 128, 0); //Set font color to orange\n //doc.text('Pack List', 2 + (15 / 16), 1 + (3 / 4))\n\n doc.text('Pack List', 2 + 15 / 16, 1);\n doc.setTextColor(0, 0, 0); //Set font color to black\n\n var approveDate = setOfPackListInfo[0].headerApproveDate;\n var year = approveDate.substr(0, 4);\n var month = approveDate.substr(5, 2);\n var date = approveDate.substr(8, 2);\n var mon = '';\n\n function monthConversion(_ref) {\n _objectDestructuringEmpty(_ref);\n\n switch (month) {\n case '01':\n return mon = 'JAN';\n\n case '02':\n return mon = 'FEB';\n\n case '03':\n return mon = 'MAR';\n\n case '04':\n return mon = 'APR';\n\n case '05':\n return mon = 'MAY';\n\n case '06':\n return mon = 'JUN';\n\n case '07':\n return mon = 'JUL';\n\n case '08':\n return mon = 'AUG';\n\n case '09':\n return mon = 'SEP';\n\n case '10':\n return mon = 'OCT';\n\n case '11':\n return mon = 'NOV';\n\n case '12':\n return mon = 'DEC';\n\n default:\n return null;\n }\n }\n\n var formattedApprovedDate = date + \"-\" + monthConversion(month) + \"-\" + year; // Sub Heading Section\n\n var subHeading = [//['Part Number 300753', ' Description: Quick Fit Kit for Altorfe', 'ERN: 1'],\n //['Customer Part Number: ', 'Date Approved: ']\n [\"Part Number: \".concat(setOfPackListInfo[0].headerPartNumber)], [\"REV: \".concat(setOfPackListInfo[0].headerRevisionLevel), \"Description: \".concat(setOfPackListInfo[0].headerDescription)], [\"Customer Part Number: \".concat(setOfPackListInfo[0].headerCustomerPartNumber), \"Date Approved:\".concat(formattedApprovedDate)]];\n doc.setFontSize(14);\n doc.setFont(\"times\");\n doc.setFontStyle('bold');\n doc.text(subHeading[0][0], 1, 1 + 1 / 4);\n doc.setFontSize(10);\n doc.setFontStyle('normal');\n doc.setFont(\"times\");\n doc.text(subHeading[1][0], 1, 1.5);\n doc.text(subHeading[1][1], 2, 1.5);\n doc.text(subHeading[2][0], 1, 1.7);\n doc.text(subHeading[2][1], 5 + 5 / 8, 1.7); // Table Header\n\n doc.setFontStyle('bold');\n doc.text(\"Pack Zone\", 1, 2 + 1 / 4);\n doc.text(\"Part Number\", 1 + 15 / 16, 2 + 1 / 4);\n doc.text(\"Qty\", 2 + 7 / 8, 2 + 1 / 4);\n doc.text(\"Packed\", 3 + 5 / 16, 2 + 1 / 4);\n doc.text(\"Part Description\", 3 + 7 / 8, 2 + 1 / 4);\n doc.setFontStyle('normal');\n doc.setFont(\"times\");\n var tableStart = {\n xPos: 1,\n yPos: 2.5\n };\n\n for (var i = 0; i < setOfPackListInfo.length; i++) {\n if (parseInt(\"\".concat(setOfPackListInfo[i].bodyQty)) > 0) {\n if (\"\".concat(setOfPackListInfo[i].bodyPackLocation) == 'null') {\n doc.text(\" \", 1, tableStart.yPos);\n } else {\n doc.text(\"\".concat(setOfPackListInfo[i].bodyPackLocation), 1, tableStart.yPos);\n }\n\n if (setOfPackListInfo[i].bodyPartNumber != null) {\n doc.text(\"\".concat(setOfPackListInfo[i].bodyPartNumber), 1 + 15 / 16, tableStart.yPos);\n }\n\n if (setOfPackListInfo[i].bodyQty != null) {\n doc.text(\"\".concat(setOfPackListInfo[i].bodyQty), 2 + 7 / 8, tableStart.yPos);\n }\n\n doc.text(\"_______\", 3 + 5 / 16, tableStart.yPos);\n\n if (setOfPackListInfo[i].bodyDescription != null) {\n doc.text(\"\".concat(setOfPackListInfo[i].bodyDescription), 3 + 7 / 8, tableStart.yPos);\n } //doc.text(tableHeader[3], 4, 2.25)\n\n\n tableStart.yPos = tableStart.yPos + 0.2;\n }\n } // Summary\n\n\n var summary = ['Total Qty Packed: ____', 'Packed By_______', 'Date:_______'];\n doc.text(summary[0], 1, 6 + 13 / 16);\n doc.text(summary[1], 3 + 1 / 8, 6 + 13 / 16);\n doc.text(summary[2], 5 + 13 / 16, 6 + 13 / 16); //Create Footer(s)\n\n var daysOfWeek = ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday'];\n var monthsOfYear = ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'];\n var printDate = new Date(); //This should always be today's date.\n\n var footer = {\n date: \"\".concat(daysOfWeek[printDate.getDay()], \", \").concat(monthsOfYear[printDate.getMonth()], \" \").concat(printDate.getDate(), \", \").concat(printDate.getFullYear()),\n pageCt: \"Page _____ of _______\"\n }; //Draw Footers : Left (date) + right(pagect)\n\n doc.text(footer.date, 1, page.height - margins.bottom);\n doc.text(footer.pageCt, page.width - margins.right - 1, page.height - margins.bottom);\n var rawDate = new Date();\n var formattedDate = \"\".concat(rawDate.getMonth()).concat(rawDate.getDate()).concat(rawDate.getFullYear());\n doc.save(\"\".concat(setOfPackListInfo[0].headerPartNumber, \"R\").concat(setOfPackListInfo[0].headerRevisionLevel, \"_PackList.pdf\"));\n };\n\n _this.state = {\n PackLists: null\n };\n return _this;\n }\n\n _createClass(PDFButtonPackList, [{\n key: \"componentDidMount\",\n value: function () {\n var _componentDidMount = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {\n var _this2 = this;\n\n var _this$props2, dsId, pn, rev, PackLists;\n\n return _regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n if (!(this.props.dsId === 'new')) {\n _context.next = 2;\n break;\n }\n\n return _context.abrupt(\"return\");\n\n case 2:\n // skip xhr's if we're working on a new spec (they won't exist anyway) \n _this$props2 = this.props, dsId = _this$props2.dsId, pn = _this$props2.pn, rev = _this$props2.rev;\n console.log('Prompt Entered:', this.state.partNumberEntered); // console.log(dsId)\n // console.log(pn)\n // console.log(rev)\n //let PackLists: PackList[] | undefined;\n\n _context.next = 6;\n return axios.get(\"/api/designspec/packlist/\".concat(dsId, \"/\").concat(pn, \"/\").concat(rev)).then(function (res) {\n console.log(res.data.items.records);\n PackLists = res.data.items.records ? res.data.items.records : \"\";\n\n _this2.setState({\n //PackLists: res.data.items.records || ''\n PackLists: res.data.items.records ? res.data.items.records : \"\"\n });\n }).catch(function (err) {\n return console.error(err);\n });\n\n case 6:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, this);\n }));\n\n function componentDidMount() {\n return _componentDidMount.apply(this, arguments);\n }\n\n return componentDidMount;\n }()\n }, {\n key: \"render\",\n value: function render() {\n return /*#__PURE__*/React.createElement(\"div\", {\n onClick: this.createPDF,\n __self: this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 240,\n columnNumber: 16\n }\n }, this.props.text);\n }\n }]);\n\n return PDFButtonPackList;\n}(React.Component);\n\nexport default PDFButtonPackList;","map":{"version":3,"sources":["/Users/michielcarman/Server Code/Repository/clients-rpm-kit-manager/code/RPM.KitManager/RPM.KitManager.Web/ClientApp/src/shared/components/PDFGeneratorButtons/PDFButtonPackList.tsx"],"names":["React","jsPDF","axios","PDFButtonPackList","props","createPDF","dsId","pn","rev","setOfPackListInfo","state","PackLists","console","log","undefined","length","alert","doc","unit","orientation","format","margins","left","right","top","bottom","page","height","width","setFontSize","setFont","setTextColor","text","approveDate","headerApproveDate","year","substr","month","date","mon","monthConversion","formattedApprovedDate","subHeading","headerPartNumber","headerRevisionLevel","headerDescription","headerCustomerPartNumber","setFontStyle","tableStart","xPos","yPos","i","parseInt","bodyQty","bodyPackLocation","bodyPartNumber","bodyDescription","summary","daysOfWeek","monthsOfYear","printDate","Date","footer","getDay","getMonth","getDate","getFullYear","pageCt","rawDate","formattedDate","save","partNumberEntered","get","then","res","data","items","records","setState","catch","err","error","Component"],"mappings":"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","sourcesContent":["import React from 'react';\nimport jsPDF from 'jspdf';\nimport PackListCLines from './Construction/PackListCLines'\nimport axios from 'axios'\n\ninterface PDFBtnProps {\n text: any\n //Header: any\n PackLists: []\n}\n\nexport interface PackList {\n headerPartNumber: number,\n headerDescription: string,\n headerRevisionLevel: number,\n headerCustomerPartNumber: string,\n headerApproveDate: Date,\n headerStatusID: number,\n headerFACRequired: Boolean,\n headerFACCompleted: Boolean,\n bodyPackLocation: string | null,\n bodyPartNumber: number,\n bodyQty: string,\n bodyPartCode: string,\n bodyDescription: string\n}\n\nexport interface PackListReportFormState extends PackList {\n PackLists: PackList[],\n}\n\nclass PDFButtonPackList extends React.Component<any, any> {\n constructor(props: any) {\n super(props)\n this.state = {\n PackLists: null,\n }\n }\n\n async componentDidMount() {\n if (this.props.dsId === 'new') return; // skip xhr's if we're working on a new spec (they won't exist anyway) \n const { dsId, pn, rev } = this.props;\n console.log('Prompt Entered:', this.state.partNumberEntered);\n // console.log(dsId)\n // console.log(pn)\n // console.log(rev)\n //let PackLists: PackList[] | undefined;\n let PackLists: PackList[];\n\n await axios.get(`/api/designspec/packlist/${dsId}/${pn}/${rev}`)\n .then((res: any) => {\n console.log(res.data.items.records)\n PackLists = res.data.items.records ? res.data.items.records : \"\"\n this.setState({\n //PackLists: res.data.items.records || ''\n PackLists: res.data.items.records ? res.data.items.records : \"\"\n })\n })\n .catch((err: any) => console.error(err))\n }\n\n createPDF = () => {\n const { dsId, pn, rev } = this.props;\n\n // const part: any = prompt('What is the Part Number?', `${this.props.pn}`);\n // const partNumberEntered: number = parseInt(part);\n // if (part === null) {\n // return null;\n // }\n\n const setOfPackListInfo = this.state.PackLists;\n console.log('PackLists: ', this.state.PackLists);\n console.log('PackListInfo: ', setOfPackListInfo);\n if ((setOfPackListInfo == null) || (setOfPackListInfo == undefined) || (setOfPackListInfo.length == 0)) {\n alert('No Data Found');\n return;\n }\n\n // const { Header } = this.props;\n // const {\n // headerPartNumber,\n // headerDescription,\n // headerRevisionLevel,\n // headerCustomerPartNumber,\n // headerApproveDate,\n // headerStatusID,\n // headerFACRequired,\n // headerFACCompleted,\n // bodyPackLocation,\n // bodyPartNumber,\n // bodyQty,\n // bodyPartCode,\n // bodyDescription\n // } = Header;\n\n var doc = new jsPDF({\n unit: 'in',\n orientation: 'portrait',\n format: 'letter'\n });\n const margins = {\n left: 1,\n right: 1.25,\n top: 1,\n bottom: 1.25\n }\n const page = {\n height: 11,\n width: 8.5\n }\n // Uncomment this line to see the construction lines used to align on this page.\n // PackListCLines.drawConstructions(doc);\n\n //Title\n doc.setFontSize(24)\n doc.setFont(\"times\")\n doc.setTextColor(255, 128, 0) //Set font color to orange\n //doc.text('Pack List', 2 + (15 / 16), 1 + (3 / 4))\n doc.text('Pack List', 2 + (15 / 16), 1)\n doc.setTextColor(0, 0, 0); //Set font color to black\n\n const approveDate = setOfPackListInfo[0].headerApproveDate\n var year = approveDate.substr(0, 4);\n var month = approveDate.substr(5, 2);\n var date = approveDate.substr(8, 2);\n var mon = '';\n\n function monthConversion({ }) {\n switch (month) {\n case '01': return mon = 'JAN';\n case '02': return mon = 'FEB';\n case '03': return mon = 'MAR';\n case '04': return mon = 'APR';\n case '05': return mon = 'MAY';\n case '06': return mon = 'JUN';\n case '07': return mon = 'JUL';\n case '08': return mon = 'AUG';\n case '09': return mon = 'SEP';\n case '10': return mon = 'OCT';\n case '11': return mon = 'NOV';\n case '12': return mon = 'DEC';\n default: return null;\n }\n }\n\n const formattedApprovedDate = date + `-` + monthConversion(month) + `-` + year;\n\n // Sub Heading Section\n let subHeading = [\n //['Part Number 300753', ' Description: Quick Fit Kit for Altorfe', 'ERN: 1'],\n //['Customer Part Number: ', 'Date Approved: ']\n [`Part Number: ${setOfPackListInfo[0].headerPartNumber}`],\n [`REV: ${setOfPackListInfo[0].headerRevisionLevel}`, `Description: ${setOfPackListInfo[0].headerDescription}`],\n [`Customer Part Number: ${setOfPackListInfo[0].headerCustomerPartNumber}`, `Date Approved:${formattedApprovedDate}`]\n ]\n doc.setFontSize(14)\n doc.setFont(\"times\")\n doc.setFontStyle('bold');\n doc.text(subHeading[0][0], 1, 1 + (1 / 4))\n doc.setFontSize(10)\n doc.setFontStyle('normal');\n doc.setFont(\"times\")\n doc.text(subHeading[1][0], 1, 1.5)\n doc.text(subHeading[1][1], 2, 1.5)\n doc.text(subHeading[2][0], 1, 1.7)\n doc.text(subHeading[2][1], 5 + (5 / 8), 1.7)\n\n // Table Header\n doc.setFontStyle('bold');\n doc.text(\"Pack Zone\", 1, 2 + (1 / 4))\n doc.text(\"Part Number\", 1 + (15 / 16), 2 + (1 / 4))\n doc.text(\"Qty\", 2 + (7 / 8), 2 + (1 / 4))\n doc.text(\"Packed\", 3 + (5 / 16), 2 + (1 / 4))\n doc.text(\"Part Description\", 3 + (7 / 8), 2 + (1 / 4))\n doc.setFontStyle('normal');\n doc.setFont(\"times\")\n\n var tableStart = {\n xPos: 1,\n yPos: 2.5\n }\n\n for (var i = 0; i < setOfPackListInfo.length; i++) {\n if (parseInt(`${setOfPackListInfo[i].bodyQty}`) > 0) {\n if ((`${setOfPackListInfo[i].bodyPackLocation}` == 'null')) {\n doc.text(` `, 1, tableStart.yPos)\n }\n else {\n doc.text(`${setOfPackListInfo[i].bodyPackLocation}`, 1, tableStart.yPos)\n }\n if (setOfPackListInfo[i].bodyPartNumber != null) {\n doc.text(`${setOfPackListInfo[i].bodyPartNumber}`, 1 + (15 / 16), tableStart.yPos)\n }\n if (setOfPackListInfo[i].bodyQty != null) {\n doc.text(`${setOfPackListInfo[i].bodyQty}`, 2 + (7 / 8), tableStart.yPos)\n }\n doc.text(`_______`, 3 + (5 / 16), tableStart.yPos)\n if (setOfPackListInfo[i].bodyDescription != null) {\n doc.text(`${setOfPackListInfo[i].bodyDescription}`, 3 + (7 / 8), tableStart.yPos)\n }\n //doc.text(tableHeader[3], 4, 2.25)\n tableStart.yPos = tableStart.yPos + 0.2;\n }\n }\n\n // Summary\n const summary = [\n 'Total Qty Packed: ____',\n 'Packed By_______',\n 'Date:_______'\n ]\n\n\n doc.text(summary[0], 1, 6 + (13 / 16))\n doc.text(summary[1], 3 + (1 / 8), 6 + (13 / 16))\n doc.text(summary[2], 5 + (13 / 16), 6 + (13 / 16))\n\n\n //Create Footer(s)\n const daysOfWeek = ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday']\n const monthsOfYear = ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December']\n const printDate = new Date() //This should always be today's date.\n let footer = {\n date: `${daysOfWeek[printDate.getDay()]}, ${monthsOfYear[printDate.getMonth()]} ${printDate.getDate()}, ${printDate.getFullYear()}`,\n pageCt: `Page _____ of _______`\n }\n //Draw Footers : Left (date) + right(pagect)\n doc.text(footer.date, 1, page.height - margins.bottom)\n doc.text(footer.pageCt, page.width - margins.right - 1, page.height - margins.bottom)\n\n\n\n\n const rawDate = new Date();\n const formattedDate = `${rawDate.getMonth()}${rawDate.getDate()}${rawDate.getFullYear()}`\n doc.save(`${setOfPackListInfo[0].headerPartNumber}R${setOfPackListInfo[0].headerRevisionLevel}_PackList.pdf`)\n }\n\n render() {\n return <div onClick={this.createPDF}>{this.props.text}</div>;\n }\n}\n\nexport default PDFButtonPackList;"]},"metadata":{},"sourceType":"module"}
|