Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- var table;
- var modelData = [];
- var machineData = [];
- var _addUppy;
- var statusUploadOrCancel;
- var _uppyEditMachine = null;
- init();
- function init() {
- getOwnerOrManagerDropDown();
- _addUppy = Uppy.Core({
- autoProceed: false,
- restrictions: {
- maxFileSize: 1000000,
- maxNumberOfFiles: 1,
- allowedFileTypes: ['image/*'],
- }
- }).use(Uppy.Dashboard, {
- hideUploadButton: true,
- inline: true,
- target: '#dragDropArea',
- height: 450,
- });
- _uppyEditMachine = Uppy.Core({
- autoProceed: false,
- restrictions: {
- maxFileSize: 1000000,
- maxNumberOfFiles: 1,
- allowedFileTypes: ['image/*'],
- }
- }).use(Uppy.Dashboard, {
- hideUploadButton: true,
- inline: true,
- target: '#uploadMachineImage',
- height: 450,
- });
- }
- function loadModel(brandId) {
- $global.fetch(`api/Master/GetModel?siteId=${_tempSideId}&brandId=${brandId}`, {
- }).then(model=> {
- getBrandOrMachineTypeDropDown();
- modelData = [];
- for (var i = 0; i < model.length; i++) {
- var pushData = {
- modelId: model[i].Id,
- modelName: model[i].Name,
- brandId: model[i].Brand.Id,
- brandName: model[i].Brand.Name,
- machineTypeId: model[i].MachineType.Id,
- machineTypeName: model[i].MachineType.Name
- };
- modelData.push(pushData);
- }
- if ($.fn.DataTable.isDataTable('#modelDataList')) {
- $('#modelDataList').dataTable().fnClearTable();
- $('#modelDataList').dataTable().fnDestroy();
- }
- $('#modelDataList').dataTable({
- data: modelData,
- language: {
- search: "",
- searchPlaceholder: "Filter"
- },
- info: false,
- lengthChange: false,
- cellspacing: true,
- destroy: true,
- order: [[3, "asc"]],
- columnDefs: [
- {
- targets: 0, data: "modelId", className: "text-center", visible: false
- },
- {
- targets: 1, data: "brandId", className: "text-center", visible: false
- },
- {
- targets: 2, data: "machineTypeId", className: "text-center", visible: false
- },
- {
- targets: 3, data: "modelName", className: "text-left"
- },
- {
- targets: 4, className: "text-left",
- render: function (data, type, row) {
- //return `<span class= "badge text-white bg-pink d-inline-block font-bold ml-1 onclick=" " > ${row.brandName}</span >`
- return `${row.brandName}`;
- }
- },
- {
- targets: 5, className: "text-left",
- render: function (data, type, row) {
- //return `<span class= "badge text-white bg-yellow d-inline-block font-bold ml-1 onclick=" " > ${row.machineTypeName}</span >`
- return `${row.machineTypeName}`;
- }
- },
- {
- targets: 6, className: "text-center",
- render: function (data, type, row) {
- return `<button class="btn btn-circle btn-info mr-2" type="button" title="View Machine" onclick="goToMachine(${row.modelId},${row.brandId})"><i class="fa fa-eye"></i></button>` +
- `<button class="btn btn-circle btn-primary mr-2" type="button" title="Edit Model" onclick="editModel(this,${row.modelId},${row.brandId},${row.machineTypeId})"><i class="fa fa-edit"></i></button>` +
- `<button class="btn btn-circle btn-danger mr-2" type="button" title="Delete Model" onclick="deleteModel(${row.modelId},${row.brandId})"><i class="fa fa-trash-o"></i></button>`;
- }
- }
- ]
- });
- $global.hideLoader();
- });
- }
- function goToMachine(modelId, brandId) {
- detailMachine(modelId);
- document.getElementById("inputHiddenBrandIdForAddMachine").value = brandId;
- document.getElementById("inputHiddenModelIdForAddMachine").value = modelId;
- document.querySelector("#brandView").classList.add("d-none");
- document.querySelector("#modelView").classList.add("d-none");
- document.querySelector("#machineView").classList.remove("d-none");
- document.querySelector(".iBack").classList.add("d-none");
- activeBreadcrumb('Machine');
- }
- function detailMachine(modelId) {
- document.getElementById("btnEditMachine").disabled = false;
- $global.fetch(`api/Master/GetMachine?siteid=${_tempSideId}&modelId=${modelId}`,{
- }).then( allMachine => {
- machineData = [];
- for (var i = 0; i < allMachine.length; i++) {
- var userId_Manager = "";
- var userFullName_Manager = "";
- var userId_Owner = "";
- var userFullName_Owner = "";
- for (var j = 0; j < allMachine[i].MachineManagers.length; j++) {
- userId_Manager = allMachine[i].MachineManagers[j].UserId;
- userFullName_Manager = allMachine[i].MachineManagers[j].UserFullName;
- }
- for (var k = 0; k < allMachine[i].MachineOwners.length; k++) {
- userId_Owner = allMachine[i].MachineOwners[k].UserId;
- userFullName_Owner = allMachine[i].MachineOwners[k].UserFullName;
- }
- var pushData = {
- machineId: allMachine[i].Id,
- modelId: allMachine[i].ModelId,
- machineName: allMachine[i].Name,
- machineDescription: allMachine[i].Description,
- machineAsset: allMachine[i].AssetTag,
- userId_Owner: userId_Owner,
- owner: userFullName_Owner,
- userId_Manager: userId_Manager,
- manager: userFullName_Manager,
- serialNo: allMachine[i].SerialNo,
- image: allMachine[i].Image
- };
- machineData.push(pushData);
- }
- if ($.fn.DataTable.isDataTable('#machineDataList')) {
- $('#machineDataList').dataTable().fnClearTable();
- $('#machineDataList').dataTable().fnDestroy();
- }
- $('#machineDataList').DataTable({
- data: machineData,
- destroy: true,
- language: {
- search: "",
- searchPlaceholder: "Filter"
- },
- info: false,
- lengthChange: false,
- rowReorder: {
- selector: 'td:nth-child(3)'
- },
- responsive: true,
- order: [[2, "asc"]],
- columnDefs: [
- { targets: 0, data: "machineId", className: "text-center", visible: false },
- { targets: 1, data: "modelId", className: "text-center", visible: false },
- { responsivePriority: 1,targets: 2, data: "machineName", className: "text-left" },
- { responsivePriority: 1000,targets: 3, data: "machineDescription", className: "text-left" },
- { responsivePriority: 1000,targets: 4, data: "machineAsset", className: "text-left" },
- {
- responsivePriority: 1000,targets: 5, data: "owner", className: "text-left",
- render: function (data, type, row) {
- if (row.owner != "") {
- return `<i class="fa fa-user-circle"></i> <label class="mt-3 control-label">${row.owner}</label>`;
- }
- else { return ""; }
- }
- },
- {
- responsivePriority: 1000,targets: 6, data: "manager", className: "text-left",
- render: function (data, type, row) {
- if (row.manager != "") {
- return `<i class="fa fa-user-circle"></i> <label class="mt-3 control-label">${row.manager}</label>`;
- } else {
- return "";
- }
- }
- },
- { responsivePriority: 2,targets: 7, data: "serialNo", className: "text-center" },
- {
- responsivePriority: 3,targets: 8, data: "image", className: "text-center",
- render: function (data, type, row) {
- if (row.image != "") {
- return `<img src = ${row.image} style="height: 60px">`;
- }
- else {
- return "";
- }
- }
- },
- { targets: 9, data: "userId_Owner", className: "text-center", visible: false },
- { targets: 10, data: "userId_Manager", className: "text-center", visible: false },
- {
- responsivePriority: 4,targets: 11, className: "text-center",
- render: function (data, type, row) {
- return `<button class="btn btn-circle btn-primary mr-2" type="button" title="Edit Machine" onclick="editMachine(this,${row.machineId},'${row.image}',${row.modelId})"><i class="fa fa-edit"></i></button>` +
- `<button class="btn btn-circle btn-danger " type="button" title="Delete Machine" onclick="deleteMachine(${row.machineId},${row.modelId})"><i class="fa fa-trash-o"></i></button>`;
- }
- },
- ]
- });
- $global.hideLoader();
- });
- }
- function editModel(obj, modelId, brandId, machineTypeId) {
- $("#modalEditModel").modal("show");
- var objRowModel = obj.parentElement.parentElement.children;
- document.getElementById("txtNameEdit").value = objRowModel[0].innerText;
- document.getElementById("inputHiddenModelId").value = modelId;
- $("#selectBrandEdit").val(brandId).trigger("change");
- $("#selectTypeEdit").val(machineTypeId).trigger("change");
- }
- function editMachine(obj, machineId, imageUrl, modelId) {
- _uppyEditMachine.cancelAll();
- document.querySelector("#uploadMachineImage").classList.add("d-none");
- document.querySelector("#machineImage").classList.remove("d-none");
- $("#modalEditMachine").modal("show");
- var machine = machineData.find(x => x.machineId == machineId);
- document.getElementById("txtNameMachineEdit").value = machine.machineName;
- document.getElementById("inputEditMachineHiddenMachineId").value = machine.machineId;
- document.getElementById("inputEditMachineHiddenModelId").value = machine.modelId;
- document.getElementById("txtDescriptionMachineEdit").value = machine.machineDescription;
- document.getElementById("txtAssetMachineEdit").value = machine.machineAsset;
- $("#selectOwnerMachineEdit").val(machine.userId_Owner).trigger("change");
- $("#selectManager_machineedit").val(machine.userId_Manager).trigger("change");
- //document.getElementById("txtSnMachineEdit").disabled = true;
- document.getElementById("txtSnMachineEdit").value = machine.serialNo;
- $("#machineImage").empty();
- var link = imageUrl;
- var elem = document.createElement("img");
- elem.setAttribute("src", link);
- elem.setAttribute("width", "200px");
- document.getElementById("machineImage").appendChild(elem);
- }
- function updateModel() {
- document.getElementById("btnEditModel").disabled = true;
- var modelId = document.getElementById("inputHiddenModelId").value.trim();
- var modelName = document.getElementById("txtNameEdit").value.trim();
- var brandId = document.getElementById("selectBrandEdit").value.trim();
- var machineType = document.getElementById("selectTypeEdit").value.trim();
- $global.fetch(`api/Master/AddModel?siteId=${_tempSideId}&model=${modelName}&brand=${brandId}&machineType=${machineType}&modelId=${modelId}&siteId=${_tempSideId}`,{
- method: "POST"
- }).then( result=> {
- if (!!result.Id) {
- Swal.fire("Success", "", "success");
- loadModel(brandId);
- $('#modalEditModel').modal('toggle');
- } else {
- Swal.fire("Error", "", "error");
- }
- document.getElementById("btnEditModel").disabled = false;
- });
- }
- function updateMachine() {
- document.getElementById("btnEditMachine").disabled = true;
- //if (!document.getElementById("txtNameMachineEdit").value.trim()
- // || !document.getElementById("selectOwnerMachineEdit").value.trim() || !document.getElementById("selectManager_machineedit").value.trim()) {
- // Swal.fire("Warning", "Please enter all required fields!", "warning");
- // document.getElementById("btnEditMachine").disabled = false;
- // return;
- //}
- if (!document.getElementById("txtNameMachineEdit").value.trim()) {
- Swal.fire("Warning", "Please enter all required fields!", "warning");
- document.getElementById("btnEditMachine").disabled = false;
- return;
- }
- if (statusUploadOrCancel == "1") {
- if (_uppyEditMachine.getFiles().length == 0) {
- Swal.fire("Warning", "Please upload machine image!", "warning");
- return;
- }
- var fileUpload = new FormData();
- fileUpload.append("FileData", _uppyEditMachine.getFiles()[0].data);
- fileUpload.append("filename", _uppyEditMachine.getFiles()[0].data.name);
- $.ajax({
- type: "POST",
- url: _apiUrl + "api/BlobsUpload/UploadFiles",
- data: fileUpload,
- enctype: 'multipart/form-data',
- processData: false,
- contentType: false,
- success: function (fileName) {
- saveUpdateMachine(fileName);
- },
- error: function (e) {
- console.log("There was error uploading files! " + e);
- }
- });
- }
- else {
- saveUpdateMachine("");
- }
- }
- function addMachine() {
- document.getElementById("btnAddMachine").disabled = true;
- if (_addUppy.getFiles().length != 0) {
- var fileUpload = new FormData();
- fileUpload.append("FileData", _addUppy.getFiles()[0].data);
- fileUpload.append("filename", _addUppy.getFiles()[0].data.name);
- $.ajax({
- type: "POST",
- url: _apiUrl + "api/BlobsUpload/UploadFiles",
- data: fileUpload,
- enctype: 'multipart/form-data',
- processData: false,
- contentType: false,
- success: function (fileName) {
- Swal.fire("Success", "", "success");
- saveMachine(fileName);
- _addUppy.reset();
- },
- error: function (e) {
- Swal.fire("Error", result.msg, "error");
- console.log("There was error uploading files! " + e);
- }
- });
- }
- else {
- saveMachine("");
- }
- }
- function saveMachine(fileName) {
- var active = "True";
- //if (!document.getElementById("txtSNMachine").value.trim() || !document.getElementById("txtNameMachine").value.trim()
- // || !document.getElementById("selectOwner").value.trim() || !document.getElementById("selectManager").value.trim()) {
- // Swal.fire("Warning", "Please enter all required fields!", "warning");
- // document.getElementById("btnAddMachine").disabled = false;
- // return;
- //}
- if (!document.getElementById("txtSNMachine").value.trim() || !document.getElementById("txtNameMachine").value.trim() ) {
- Swal.fire("Warning", "Please enter all required fields!", "warning");
- document.getElementById("btnAddMachine").disabled = false;
- return;
- }
- var owner =
- [{
- UserId: document.getElementById("selectOwner").value.trim()
- }];
- var manager =
- [{
- UserId: document.getElementById("selectManager").value.trim()
- }];
- var machine = {
- ModelId: document.getElementById("inputHiddenModelIdForAddMachine").value.trim(),
- SerialNo: document.getElementById("txtSNMachine").value.trim(),
- Name: document.getElementById("txtNameMachine").value.trim(),
- AssetTag: document.getElementById("txtAssetTagMachine").value.trim(),
- Description: document.getElementById("txtDescriptionMachine").value.trim(),
- //MachineOwners: owner,
- //MachineManagers: manager,
- MachineOwners: "",
- MachineManagers: "",
- Image: fileName,
- Active: active
- };
- $global.fetch(`api/Operation/AddorUpdateMachine?siteid=${_tempSideId}`, {
- method: 'POST',
- data: machine
- }).then(result => {
- if (result.status == true) {
- Swal.fire("Success", "", "success");
- $("#modalAddMachine").modal("toggle");
- detailMachine(machine.ModelId);
- _uppy.reset();
- } else {
- Swal.fire("Error", result.msg, "error");
- }
- document.getElementById("btnAddMachine").disabled = false;
- });
- }
- function saveUpdateMachine(fileName) {
- var modelId = document.getElementById("inputEditMachineHiddenModelId").value;;
- var machineId = document.getElementById("inputEditMachineHiddenMachineId").value;
- var machineName = document.getElementById("txtNameMachineEdit").value;
- var machineDescription = document.getElementById("txtDescriptionMachineEdit").value;
- var assetTag = document.getElementById("txtAssetMachineEdit").value;
- var owner = document.getElementById("selectOwnerMachineEdit").value;
- var manager = document.getElementById("selectManagerMachineEdit").value;
- var serialNo = document.getElementById("txtSnMachineEdit").value;
- $global.fetch(`api/Master/UpdateMachine?siteId=${_tempSideId}&machineId=${machineId}&machineName=${machineName}&machineDescription=${machineDescription}&assetTag=${assetTag}&owner=${owner}&manager=${manager}&image=${fileName}&serialNo=${serialNo}`, {
- method: "POST"
- }).then( result => {
- if (result.status == true) {
- Swal.fire("Success", "", "success");
- detailMachine(modelId);
- $('#modalEditMachine').modal('toggle');
- _uppy.reset();
- cancelUploadImage();
- } else {
- Swal.fire("Error", "", "error");
- }
- });
- }
- function resetData() {
- var branid = $("#txtHiddenBrandId").val();
- //alert(branid);
- $('#selectBrand').prop('disabled', true);
- document.getElementById("txtName").value = "";
- $("#selectBrand").val(branid).trigger("change");
- $("#selectType").val("").trigger("change");
- }
- function resetAddMachine() {
- document.getElementById("txtSNMachine").value = "";
- document.getElementById("txtNameMachine").value = "";
- document.getElementById("txtAssetTagMachine").value = "";
- document.getElementById("txtDescriptionMachine").value = "";
- $("#selectOwner").val("").trigger("change");
- $("#selectManager").val("").trigger("change");
- }
- function addModel() {
- document.getElementById("btnAddModel").disabled = true;
- document.getElementById("inputHiddenModelId").value = "";
- var modelName = document.getElementById("txtName").value;
- var brandId = document.getElementById("selectBrand").value;
- var machineType = document.getElementById("selectType").value;
- if (!document.getElementById("txtName").value.trim() || !document.getElementById("selectBrand").value.trim()
- || !document.getElementById("selectType").value.trim()) {
- Swal.fire("Warning", "Please enter all required fields!", "warning");
- document.getElementById("btnAddModel").disabled = false;
- return;
- }
- $global.fetch(`api/Master/AddModel?model=${modelName}&brand=${brandId}&machinetype=${machineType}&modelid=&siteId=${_tempSideId}`,
- {
- method: "POST"
- }).then( result => {
- if (!!result.Id) {
- $('#modalAddModel').modal('toggle');
- Swal.fire("Success", "Add model completed", "success");
- loadModel(brandId);
- } else {
- Swal.fire("Error", "Can not add model", "error");
- }
- document.getElementById("btnAddModel").disabled = false;
- });
- }
- function deleteModel(modelId, brandId) {
- Swal.fire({ title: 'Are you sure?', text: "You won't be able to revert this!", type: 'warning', showCancelButton: true, confirmButtonColor: '#3085d6', cancelButtonColor: '#d33', confirmButtonText: 'Yes, delete it!' }).then((result) => {
- if (result.value) {
- $global.fetch(`api/Master/DeleteModel?siteid=1&modelId=${modelId}`,
- {
- method: "DELETE"
- }).then(model => {
- if (model.status) {
- Swal.fire("Success", model.msg, "success");
- loadModel(brandId);
- } else {
- Swal.fire("Error", model.msg, "error");
- }
- });
- }
- });
- }
- function deleteMachine(machineId, modelId, status) {
- Swal.fire({ title: 'Are you sure?', text: "You won't be able to revert this!", type: 'warning', showCancelButton: true, confirmButtonColor: '#3085d6', cancelButtonColor: '#d33', confirmButtonText: 'Yes, delete it!' }).then((result) => {
- if (result.value) {
- $global.fetch(`api/Master/DeleteMachine?machineId=${machineId}&status=${status}&siteId=${_tempSideId}`,
- {
- method: "POST"
- }).then(result => {
- if (result.status) {
- Swal.fire("Success", result.msg, "success").then(detailMachine(modelId));
- } else {
- Swal.fire("Error", result.msg, "error");
- }
- });
- }
- })
- }
- function getOwnerOrManagerDropDown() {
- $global.fetch(`api/Master/GetUser`, {
- }).then( obj => {
- var ownerAndManagerData = obj.map(function (i) { return { id: i.Id, text: i.FullName } });
- $("#selectOwner").select2({ data: ownerAndManagerData, width: '100%' });
- $("#selectOwner").select2({ sorter: opt => opt.sort((a, b) => a.text.localeCompare(b.text)) });
- $("#selectManager").select2({ data: ownerAndManagerData, width: '100%' });
- $("#selectManager").select2({ sorter: opt => opt.sort((a, b) => a.text.localeCompare(b.text)) });
- $("#selectOwnerMachineEdit").select2({ data: ownerAndManagerData, width: '100%' });
- $("#selectOwnerMachineEdit").select2({ sorter: opt => opt.sort((a, b) => a.text.localeCompare(b.text)) });
- $("#selectManager_machineedit").select2({ data: ownerAndManagerData, width: '100%' });
- $("#selectManager_machineedit").select2({ sorter: opt => opt.sort((a, b) => a.text.localeCompare(b.text)) });
- });
- }
- function getBrandOrMachineTypeDropDown() {
- getBrandDropDown();
- getMachineTypeDropDown();
- }
- function getBrandDropDown() {
- document.getElementById("txtName").value = "";
- $("#selectBrand").val("").trigger('change');
- $("#selectBrandEdit").val("").trigger('change');
- $global.fetch(`api/Master/GetBrand?siteid=${_tempSideId}`,{
- }).then( brandName => {
- var brandData = brandName.map(function (i) { return { id: i.Id, text: i.Name } });
- $("#selectBrand").select2({ data: brandData, width: '100%' });
- $('#selectBrand').select2({ sorter: opt => opt.sort((a, b) => a.text.localeCompare(b.text)) });
- $("#selectBrandEdit").select2({ data: brandData, width: '100%' });
- $('#selectBrandEdit').select2({ sorter: opt => opt.sort((a, b) => a.text.localeCompare(b.text)) });
- });
- }
- function getMachineTypeDropDown() {
- $("#selectType").val("").trigger('change');
- $("#selectTypeEdit").val("").trigger('change');
- $global.fetch(`api/Master/GetMachineType?siteid=${_tempSideId}`,{
- }).then( machineType => {
- var machineTypeData = machineType.map(function (i) { return { id: i.Id, text: i.Name } });
- $("#selectType").select2({ data: machineTypeData, width: '100%' });
- $('#selectType').select2({ sorter: opt => opt.sort((a, b) => a.text.localeCompare(b.text)) });
- $("#selectTypeEdit").select2({ data: machineTypeData, width: '100%' });
- $('#selectTypeEdit').select2({ sorter: opt => opt.sort((a, b) => a.text.localeCompare(b.text)) });
- });
- }
- function backToModel() {
- document.querySelector("#brandView").classList.add("d-none");
- document.querySelector("#modelView").classList.remove("d-none");
- document.querySelector("#machineView").classList.add("d-none");
- document.querySelector(".iBack").classList.remove("d-none");
- activeBreadcrumb('Model');
- }
- function backToBrand() {
- document.querySelector("#brandView").classList.remove("d-none");
- document.querySelector("#modelView").classList.add("d-none");
- document.querySelector("#machineView").classList.add("d-none");
- activeBreadcrumb('Brand');
- }
- function uploadImage() {
- statusUploadOrCancel = "1";
- _uppyEditMachine.cancelAll();
- document.querySelector("#uploadMachineImage").classList.remove("d-none");
- document.querySelector("#machineImage").classList.add("d-none");
- document.querySelector(".btnEditCancel").classList.remove("d-none");
- }
- function cancelUploadImage() {
- statusUploadOrCancel = "0";
- document.querySelector("#uploadMachineImage").classList.add("d-none");
- document.querySelector("#machineImage").classList.remove("d-none");
- document.querySelector(".btnEditCancel").classList.add("d-none");
- $('#uploadMachineImage').empty();
- }
- $("#txtName").on("input", function () {
- if ($("#txtName").val() !== "" && $("#selectBrand").val() !== "" && $("#selectType").val() !== "") {
- document.getElementById("btnAddModel").disabled = false;
- } else {
- document.getElementById("btnAddModel").disabled = true;
- }
- });
- $("#selectBrand, #selectType").on("change", function () {
- if ($('#txtName').val() !== "" && $("#selectBrand").val() !== "" && $("#selectType").val() !== "") {
- document.getElementById("btnAddModel").disabled = false;
- } else {
- document.getElementById("btnAddModel").disabled = true;
- }
- });
- $("#txtNameEdit").on("input", function () {
- if ($("#txtNameEdit").val() !== "" && $("#selectBrandEdit").val() !== "" && $("#selectTypeEdit").val() !== "") {
- document.getElementById("btnEditModel").disabled = false;
- } else {
- document.getElementById("btnEditModel").disabled = true;
- }
- });
- $("#selectBrandEdit, #selectTypeEdit").on("change", function () {
- if ($("#txtNameEdit").val() !== "" && $("#selectBrandEdit").val() !== "" && $("#selectTypeEdit").val() !== "") {
- document.getElementById("btnEditModel").disabled = false;
- } else {
- document.getElementById("btnEditModel").disabled = true;
- }
- });
- $(document).ready(function () {
- var table = $('#example').DataTable({
- rowReorder: {
- selector: 'td:nth-child(2)'
- },
- responsive: true
- });
- });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement