{"version":3,"sources":["webpack:///./themeConfig.js","webpack:///./src/store/app/index.js","webpack:///./src/store/vertical-menu/index.js","webpack:///./src/store/app/companiesStoreModule.js","webpack:///./src/store/app/usersStoreModule.js","webpack:///./src/store/app/modulesStoreModule.js","webpack:///./src/store/app/visitsStoreModule.js","webpack:///./src/store/app/ordersStoreModule.js","webpack:///./src/store/app/plantsStoreModule.js","webpack:///./src/store/app/print.js","webpack:///./src/store/app/rationsStoreModule.js","webpack:///./src/store/app/companyProductStoreModule.js","webpack:///./src/store/app/purchaseStoreModule.js","webpack:///./src/store/index.js"],"names":["$themeColors","$themeBreakpoints","$themeConfig","app","appName","appLogoImage","layout","isRTL","skin","routerTransition","type","contentWidth","menu","hidden","isCollapsed","navbar","backgroundColor","footer","customizer","enableScrollToTop","namespaced","state","windowWidth","shallShowOverlay","pictureUrl","selectedPlantId","selectedPlantName","selectedModelId","companyPictureUrl","companyCredits","errCount","firstRequest","getters","currentBreakPoint","xl","lg","md","sm","mutations","UPDATE_WINDOW_WIDTH","val","TOGGLE_OVERLAY","undefined","UPDATE_COMPANY_PICTURE_URL","UPDATE_PICTURE_URL","UPDATE_MODEL","UPDATE_PLANT","store","plantsModule","plantData","length","find","x","id","modelid","commit","dispatch","then","plant","UPDATE_COMPANY_CREDITS","SET_ERROR","SET_FIRST_REQUEST","actions","fetchCompanyCredits","ctx","companyId","axios","get","data","resultdata","setError","setFirstRequest","isVerticalMenuCollapsed","UPDATE_VERTICAL_MENU_COLLAPSED","stateFactory","fetchCompanies","queryParams","Promise","resolve","reject","response","res","filter","companyName","toString","includes","q","catch","error","deleteCompany","_vm","$swal","title","VueI18n","t","text","icon","showCancelButton","confirmButtonText","cancelButtonText","customClass","confirmButton","cancelButton","buttonsStyling","result","value","delete","status","this","fetchCompany","fetchCompanyModules","fetchCompanyAnimalCount","addCompany","companyData","post","getModules","userData","selectedUser","SET_USERS","payload","SET_USER","fetchUsers","page","perPage","count","offSet","headers","culinfo","getUserData","isOk","fullname","name","surname","toLowerCase","list","deleteUser","currentUser","companyid","useridtoselect","Error","fetchUser","user","idsarray","map","ids","selected","addUserAsync","updateUser","tinyUser","picturechanged","join","put","addUser","fetchModules","sort","a","b","expired","updateModuleUser","userid","moduleid","JSON","stringify","statusCode","fetchVisits","statusMessage","fetchVisitsByPlantId","plantid","plantId","deleteVisit","visitid","addVisit","visit","fetchOrders","fetchOrderItems","orderid","culture","deleteOrder","selectedPlant","SET_PLANTS","SET_PLANT","fetchPlants","fetchPlant","deletePlant","cultureinfo","deleteIngredient","ingredientid","addPlant","sourceId","sourceplantid","updatePlant","getPlantUser","updatePlantUser","fetchPlantVisits","fetchPlantOrders","fetchIngredients","fetchNutrients","addNutrient","newNutrient","updateNutrient","nutrient","values","deleteNutrient","nutrientid","printActions","selectedPlantTonaj","selectedId","tonaj","printFormulaService","url","formula","formulaid","ext","rasyon","raporcikti","print","downloadedFile","downloadLink","document","createElement","target","download","rasyonname","blob","Blob","URL","window","webkitURL","downloadUrl","createObjectURL","href","body","appendChild","click","removeChild","revokeObjectURL","responseType","printProdFormula","hammaddeler","besinmaddeleri","_newformula","plantTonaj","ikey","code","kod","ingredientname","karisim","fiyat","nkey","nutrientname","birimadi","deger","isSuccess","msg","tur","printProdArchiveFormula","besinmaddesi","printIngredientNeedReport","formuller","amount","Aciklama","Deger","rationname","raporbilgileri","printRation","parseFloat","min","toFixed","max","yemfiyati","price","standart","mevcut","aktif","stok","hammaddeadi","birim","rationData","selectedRation","allIngredients","allNutrients","selectedRationIngredients","selectedRationNutrients","ingredientLoading","nutrientLoading","rationLoading","cozdu","rationSaved","selectedRationModel","model","SET_RATIONS","SET_RATION","SET_RATION_SAVED","fetchRations","totalCount","fetchRation","deleteRation","rationid","$toast","component","ToastificationContent","position","props","variant","postDairyNASEM","ration","postBeefNASEM","postDairyNRCME","postDryNRCME","postHeiferNRCME","postDairyNRCNE","postDryNRCNE","postHeiferNRCNE","postDairyINRA","postBeefNRCME","postBeefINRA","postBeefNRCNE","updateIngredients","selectedIngredients","ingredient","some","element","alreadyIngredients","e","Object","keys","flat","updateNutrients","selectedNutrients","alreadyNutrients","i","getRationIngredients","getRationNutrients","getRationNutrientsAll","getRationIngredientsAll","solveRationService","lastRationBesinMaddeleri","lastRationHammaddeler","responseRation","saveRationService","saveRation","_newration","minkaba","maxkaba","yemtoplami","product","kodandingredientname","itembgcolor","itemtextcolor","orjnkey","tip","kodandnutrientnameandbirim","solveRation","tollerance","isValueValid","resultIngredient","names","push","resultNutrient","productexists","forceProduct","forceproduct","tinyRation","kabayemorani","kabayemoranimax","parseFloatFixed","replace","ingredientdecimal","iskaba","fetchCompanyProducts","deleteCompanyProduct","ingredientId","addCompanyProduct","newIngredient","updateCompanyProduct","saleItems","userSaleItems","basket","renewBasket","iFrameToken","SET_SALE_ITEMS","SET_USER_SALE_ITEMS","SET_BASKET","SET_RENEW_BASKET","SET_TOKEN","token","getSaleItems","baseItems","item","isbase","iswindows","totalPrice","extraPackages","index","quantity","items","parse","addBasketItem","saleitemid","getUserSaleItems","saleitemname","saveUserBasket","postData","pricetype","orjprice","locale","localStorage","setItem","getUserBasket","userId","getItem","getUserRenewBasket","getIframeToken","statusdata","getNewPaymentIframeToken","Vue","use","Vuex","Store","modules","appConfig","verticalMenu","companiesModule","animalsModule","usersModule","modulesModule","visitsModule","ordersModule","companyProductsModule","rationsModule","purchaseModule","asIfModule","strict","process","DEV"],"mappings":"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","file":"js/app~30ccc425.3ac88d65.js","sourcesContent":["// Theme Colors\n// Initially this will be blank. Later on when app is initialized we will assign bootstrap colors to this from CSS variables.\nexport const $themeColors = {};\n\n// App Breakpoints\n// Initially this will be blank. Later on when app is initialized we will assign bootstrap breakpoints to this object from CSS variables.\nexport const $themeBreakpoints = {};\n\n// APP CONFIG\nexport const $themeConfig = {\n app: {\n appName: \"OptiTMR\", // Will update name in navigation menu (Branding)\n // eslint-disable-next-line global-require\n appLogoImage: \"@/assets/images/logo/logo.png\", // Will update logo in navigation menu (Branding)\n },\n layout: {\n isRTL: false,\n skin: \"light\", // light, dark, bordered, semi-dark\n routerTransition: \"zoom-fade\", // zoom-fade, slide-fade, fade-bottom, fade, zoom-out, none\n type: \"vertical\", // vertical, horizontal\n contentWidth: \"full\", // full, boxed\n menu: {\n hidden: false,\n isCollapsed: false,\n },\n navbar: {\n // ? For horizontal menu, navbar type will work for navMenu type\n type: \"floating\", // static , sticky , floating, hidden\n backgroundColor: \"\", // BS color options [primary, success, etc]\n },\n footer: {\n type: \"static\", // static, sticky, hidden\n },\n customizer: true,\n enableScrollToTop: true,\n },\n};\n","import { $themeBreakpoints } from \"@themeConfig\";\nimport axios from \"@axios\";\n\nimport store from \"@/store\";\nexport default {\n namespaced: true,\n state: {\n windowWidth: 0,\n shallShowOverlay: false,\n pictureUrl: \"\",\n selectedPlantId: 0,\n selectedPlantName: \"\",\n selectedModelId: 1,\n companyPictureUrl: \"\",\n companyCredits: 0,\n errCount: 0,\n firstRequest: true,\n },\n getters: {\n currentBreakPoint: (state) => {\n const { windowWidth } = state;\n if (windowWidth >= $themeBreakpoints.xl) return \"xl\";\n if (windowWidth >= $themeBreakpoints.lg) return \"lg\";\n if (windowWidth >= $themeBreakpoints.md) return \"md\";\n if (windowWidth >= $themeBreakpoints.sm) return \"sm\";\n return \"xs\";\n },\n },\n mutations: {\n UPDATE_WINDOW_WIDTH(state, val) {\n state.windowWidth = val;\n },\n TOGGLE_OVERLAY(state, val) {\n state.shallShowOverlay =\n val !== undefined ? val : !state.shallShowOverlay;\n },\n UPDATE_COMPANY_PICTURE_URL(state, val) {\n state.companyPictureUrl = val;\n },\n UPDATE_PICTURE_URL(state, val) {\n state.pictureUrl = val;\n },\n UPDATE_MODEL(state, val) {\n state.selectedModelId = val;\n },\n UPDATE_PLANT(state, val) {\n state.selectedPlantId = val;\n if (!store.state.plantsModule.plantData.length) {\n store.dispatch(\"plantsModule/fetchPlants\").then((plantData) => {\n var plant = plantData.find((x) => x.id == val);\n if (plant) {\n store.commit(\"app/UPDATE_MODEL\", plant.modelid);\n }\n });\n } else {\n var { modelid } = store.state.plantsModule.plantData.find(\n (x) => x.id == val\n );\n store.commit(\"app/UPDATE_MODEL\", modelid);\n }\n },\n UPDATE_COMPANY_CREDITS(state, val) {\n state.companyCredits = val;\n },\n SET_ERROR(state, val) {\n state.errCount = val;\n },\n SET_FIRST_REQUEST(state, val) {\n state.firstRequest = val;\n },\n },\n actions: {\n async fetchCompanyCredits(ctx, companyId) {\n const { data } = await axios.get(\"/Companies/GetCompanyCurrentCredits/\");\n ctx.commit(\"UPDATE_COMPANY_CREDITS\", data.resultdata);\n return data.resultdata;\n },\n setError(ctx, errCount) {\n ctx.commit(\"SET_ERROR\", errCount);\n },\n setFirstRequest(ctx, firstRequest) {\n ctx.commit(\"SET_FIRST_REQUEST\", firstRequest);\n },\n },\n};\n","import { $themeConfig } from \"@themeConfig\";\n\nexport default {\n namespaced: true,\n state: {\n isVerticalMenuCollapsed: $themeConfig.layout.menu.isCollapsed,\n },\n getters: {},\n mutations: {\n UPDATE_VERTICAL_MENU_COLLAPSED(state, val) {\n state.isVerticalMenuCollapsed = val;\n },\n },\n actions: {},\n};\n","import axios from \"@axios\";\nimport VueI18n from \"@/libs/i18n\";\n\nexport default {\n namespaced: true,\n stateFactory: true,\n state: {},\n getters: {},\n mutations: {},\n actions: {\n fetchCompanies(ctx, queryParams) {\n return new Promise((resolve, reject) => {\n axios\n .get(\"/Companies/GetCompanies\")\n .then((response) => {\n var res = response.data.filter((x) =>\n x.companyName.toString().includes(queryParams.q)\n );\n response.data = res;\n return resolve(response);\n })\n .catch((error) => reject(error));\n });\n },\n deleteCompany(ctx, queryParams) {\n return new Promise(async (resolve, reject) => {\n var response = {};\n return await this._vm\n .$swal({\n title: VueI18n.t(\"areYouSure\"),\n text: VueI18n.t(\"notRevert\"),\n icon: \"warning\",\n showCancelButton: true,\n confirmButtonText: VueI18n.t(\"yes\"),\n cancelButtonText: VueI18n.t(\"no\"),\n customClass: {\n confirmButton: \"btn btn-primary\",\n cancelButton: \"btn btn-outline-danger ml-1\",\n },\n buttonsStyling: false,\n })\n .then(async (result) => {\n if (result.value) {\n response = await axios\n .delete(\"/Companies/Delete/\" + queryParams.id)\n .catch((error) => reject(error));\n return response.data.status != \"OK\";\n } else return false;\n });\n });\n },\n fetchCompany(ctx, { id }) {\n return new Promise((resolve, reject) => {\n axios\n .get(`/Companies/GetCompanyByid/${id}`)\n .then((response) => {\n return resolve(response);\n })\n .catch((error) => reject(error));\n });\n },\n fetchCompanyModules(ctx, { id }) {\n return new Promise((resolve, reject) => {\n axios\n .get(`/Companies/GetCompanyModules/${id}`)\n .then((response) => {\n return resolve(response);\n })\n .catch((error) => reject(error));\n });\n },\n fetchCompanyAnimalCount(ctx) {\n return new Promise((resolve, reject) => {\n axios\n .get(`/Companies/CompanyAnimalCounts/`)\n .then((response) => {\n return resolve(response);\n })\n .catch((error) => reject(error));\n });\n },\n addCompany(ctx, companyData) {\n return new Promise((resolve, reject) => {\n axios\n .post(\"/Companies/AddCompany/\", companyData)\n .then((response) => resolve(response))\n .catch((error) => reject(error));\n });\n },\n getModules(ctx) {\n return new Promise((resolve, reject) => {\n axios\n .get(\"/Modules/GetModules\")\n .then((response) => resolve(response))\n .catch((error) => reject(error));\n });\n },\n },\n};\n","import { getUserData } from \"@/auth/utils\";\nimport axios from \"@axios\";\nimport VueI18n from \"@/libs/i18n\";\n\nfunction beetween(a, b) {\n var min = Math.min.apply(Math, [a, b]),\n max = Math.max.apply(Math, [a, b]);\n return this > min && this < max;\n}\nexport default {\n namespaced: true,\n stateFactory: true,\n state: {\n userData: [],\n selectedUser: {},\n },\n getters: {},\n mutations: {\n SET_USERS(state, payload) {\n state.userData = payload;\n },\n SET_USER(state, payload) {\n state.selectedUser = payload;\n },\n },\n actions: {\n fetchUsers(ctx, queryParams) {\n var page = queryParams.perPage * queryParams.page;\n var count = 1;\n var totalCount = 0;\n var offSet = queryParams.perPage * (queryParams.page - 1);\n return new Promise((resolve, reject) => {\n axios\n .get(\"/Users/GetTinyUsers/\", {\n headers: {\n culinfo: getUserData().culinfo,\n },\n })\n .then((response) => {\n ctx.commit(\"SET_USERS\", response.data.resultdata);\n if (response.data.status != \"NULL\") {\n var res = response.data.resultdata.filter((x) => {\n var isOk = true;\n x.fullname = x.fullname ? x.fullname : \"Yeni Kullanıcı\";\n x.name = x.name ? x.name : \"Yeni Kullanıcı\";\n x.surname = x.surname ? x.surname : \"Yeni Kullanıcı\";\n\n var fullname = x.fullname\n .toString()\n .toLowerCase()\n .includes(queryParams.q.toLowerCase());\n if (count > offSet && count < page && fullname) {\n isOk = true;\n } else isOk = false;\n count++;\n\n return isOk;\n });\n\n response.data = res;\n response.data.list = count;\n }\n\n return resolve(response);\n })\n .catch((error) => reject(error));\n });\n },\n async deleteUser(ctx, queryParams) {\n var currentUser = getUserData();\n\n var response = {};\n var response = await this._vm\n .$swal({\n title: VueI18n.t(\"areYouSure\"),\n text: VueI18n.t(\"notRevert\"),\n icon: \"warning\",\n showCancelButton: true,\n confirmButtonText: VueI18n.t(\"yes\"),\n cancelButtonText: VueI18n.t(\"no\"),\n customClass: {\n confirmButton: \"btn btn-primary\",\n cancelButton: \"btn btn-outline-danger ml-1\",\n },\n buttonsStyling: false,\n })\n .then(async (result) => {\n if (result.value) {\n response = await axios.delete(\n \"/Users/DeleteUser/\" + queryParams.id,\n {\n headers: {\n companyid: currentUser.companyid,\n useridtoselect: queryParams.id,\n },\n }\n );\n return response;\n } else throw Error(\"iptal\");\n });\n return response;\n },\n async fetchUser(ctx, { id, dispatch }) {\n let user = ctx.state.userData.filter((x) => x.id == id);\n const companyid = getUserData().companyid;\n if (user.length == 0) {\n await ctx.dispatch(\"fetchUsers\", {\n id: companyid,\n q: \"\",\n perPage: 100,\n page: 100,\n });\n user = ctx.state.userData.filter((x) => x.id == id);\n }\n await axios\n .get(\"/Plants/GetUsersPlantsWithAll\", {\n headers: {\n companyid: companyid,\n useridtoselect: id,\n },\n })\n .then((res) => {\n user[0].idsarray = res.data.resultdata.map((ids) => {\n ids.selected = ids.selected == 1 ? true : false;\n return ids;\n });\n });\n ctx.commit(\"SET_USER\", user[0]);\n\n return user[0];\n },\n async addUserAsync(ctx, { companyid }) {\n var response = axios.post(\"Companies/AddUserstoCompany/\" + companyid);\n },\n async updateUser(ctx, tinyUser) {\n tinyUser.picturechanged = false;\n tinyUser.ids = \"\";\n tinyUser.idsarray\n .map((id) => {\n id.selected == 1\n ? (tinyUser.ids = tinyUser.ids + id.id + \",\")\n : (tinyUser.ids += \"\");\n })\n .join();\n var result = await axios.put(\n `/Users/UpdateUser/${tinyUser.id}`,\n tinyUser,\n {\n headers: {\n companyid: getUserData().id,\n useridtoselect: tinyUser.id,\n },\n }\n );\n return result.data.status;\n },\n addUser(ctx, { companyid }) {\n return new Promise((resolve, reject) => {\n var data = 1;\n axios\n .put(\"Companies/AddUserstoCompany/\" + companyid, data)\n .then((response) => resolve(response))\n .catch((error) => reject(error));\n });\n },\n },\n};\n","import { getUserData } from \"@/auth/utils\";\nimport axios from \"@axios\";\nimport VueI18n from \"@/libs/i18n\";\n\nexport default {\n namespaced: true,\n stateFactory: true,\n state: {},\n getters: {},\n mutations: {},\n actions: {\n async fetchModules(ctx) {\n var companyid = getUserData() == null ? 1 : getUserData().companyid;\n var response = await axios.get(\n `/Companies/GetCompanyModules/${companyid}`\n );\n return response.data.resultdata.sort((a, b) =>\n a.expired < b.expired ? -1 : 1\n );\n },\n async updateModuleUser(ctx, { userid, moduleid }) {\n var result = await axios.put(\n `/Companies/UpdateModuleUser/${moduleid}`,\n JSON.stringify(userid)\n );\n return result.statusCode;\n },\n },\n};\n","import { getUserData } from \"@/auth/utils\";\nimport axios from \"@axios\";\nimport VueI18n from \"@/libs/i18n\";\n\nexport default {\n namespaced: true,\n stateFactory: true,\n state: {},\n getters: {},\n mutations: {},\n actions: {\n async fetchVisits(ctx) {\n var response = await axios.get(\n `/PlantVisits/GetVisitsByCompanyid/${getUserData().companyid}`\n );\n if (response.data.statusMessage == \"OK\") return null;\n\n return response.data.resultdata;\n },\n async fetchVisitsByPlantId(ctx, plantid) {\n var response = await axios.get(\n `/PlantVisits/GetVisitsByPlantid//${plantId}`\n );\n if (response.data.statusMessage == \"OK\") return null;\n\n return response.data.resultdata;\n },\n async deleteVisit(ctx, visitid) {\n var response = {};\n return await this._vm\n .$swal({\n title: VueI18n.t(\"areYouSure\"),\n text: VueI18n.t(\"notRevert\"),\n icon: \"warning\",\n showCancelButton: true,\n confirmButtonText: VueI18n.t(\"yes\"),\n cancelButtonText: VueI18n.t(\"no\"),\n customClass: {\n confirmButton: \"btn btn-primary\",\n cancelButton: \"btn btn-outline-danger ml-1\",\n },\n buttonsStyling: false,\n })\n .then(async (result) => {\n if (result.value) {\n response = await axios.delete(\n `/Plantvisits/DeletePlantVisit/${visitid}`\n );\n return response.data.status != \"OK\";\n } else return false;\n });\n },\n async addVisit(ctx, visit) {\n visit.id = 0;\n var response = await axios.post(\n `/PlantVisits/AddPlantVisit/`,\n JSON.stringify(visit)\n );\n return response.data.statusCode == 200;\n },\n },\n};\n","import { getUserData } from \"@/auth/utils\";\nimport axios from \"@axios\";\nimport VueI18n from \"@/libs/i18n\";\n\nexport default {\n namespaced: true,\n state: {},\n getters: {},\n mutations: {},\n actions: {\n fetchOrders(ctx, queryParams) {\n const { companyid } = getUserData();\n\n return new Promise((resolve, reject) => {\n axios\n .get(\"/Orders/GetOrdersByCompanyid/\" + companyid)\n .then((response) => {\n return resolve(response.data.resultdata);\n })\n .catch((error) => reject(error));\n });\n },\n async fetchOrderItems(ctx, orderid) {\n var response = await axios.get(`/Orders/GetOrderItems/${orderid}`, {\n headers: { culture: \"tr\" },\n });\n if (response.data.status != \"OK\") return null;\n\n return response.data.resultdata;\n },\n async deleteOrder(ctx, visitid) {\n var response = {};\n return await this._vm\n .$swal({\n title: VueI18n.t(\"areYouSure\"),\n text: VueI18n.t(\"notRevert\"),\n icon: \"warning\",\n showCancelButton: true,\n confirmButtonText: VueI18n.t(\"yes\"),\n cancelButtonText: VueI18n.t(\"no\"),\n customClass: {\n confirmButton: \"btn btn-primary\",\n cancelButton: \"btn btn-outline-danger ml-1\",\n },\n buttonsStyling: false,\n })\n .then(async (result) => {\n if (result.value) {\n var response = await axios.delete(`/Orders/DeleteOrder/${visitid}`);\n return response.data.status == \"OK\";\n } else return false;\n });\n },\n // addUser(ctx, userData) {\n // return new Promise((resolve, reject) => {\n // axios\n // .post('/apps/user/users', { user: userData })\n // .then(response => resolve(response))\n // .catch(error => reject(error))\n // })\n // },\n },\n};\n","import { getUserData } from \"@/auth/utils\";\nimport axios from \"@axios\";\nimport VueI18n from \"@/libs/i18n\";\n\nexport default {\n namespaced: true,\n state: {\n plantData: [],\n selectedPlant: {},\n },\n getters: {},\n mutations: {\n SET_PLANTS(state, payload) {\n state.plantData = payload;\n },\n SET_PLANT(state, payload) {\n state.selectedPlant = payload;\n },\n },\n actions: {\n async fetchPlants(ctx) {\n var response = await axios.get(\"/Plants/GetUsersPlants\");\n if (response.data.status != \"OK\") return null;\n ctx.commit(\"SET_PLANTS\", response.data.resultdata);\n return response.data.resultdata;\n },\n\n async fetchPlant(ctx, { id, dispatch }) {\n let plant = ctx.state.plantData.filter((x) => x.id == id);\n if (plant.length == 0) {\n await ctx.dispatch(\"fetchPlants\");\n plant = ctx.state.plantData.filter((x) => x.id == id);\n }\n ctx.commit(\"SET_PLANT\", plant[0]);\n return plant[0];\n },\n async deletePlant(ctx, plantid) {\n var response = {};\n return await this._vm\n .$swal({\n title: VueI18n.t(\"areYouSure\"),\n text: VueI18n.t(\"notRevert\"),\n icon: \"warning\",\n showCancelButton: true,\n confirmButtonText: VueI18n.t(\"yes\"),\n cancelButtonText: VueI18n.t(\"no\"),\n customClass: {\n confirmButton: \"btn btn-primary\",\n cancelButton: \"btn btn-outline-danger ml-1\",\n },\n buttonsStyling: false,\n })\n .then(async (result) => {\n if (result.value) {\n response = await axios.delete(`/Plants/DeletePlant/${plantid}`, {\n headers: { culture: getUserData().cultureinfo },\n });\n return response.data.status == \"OK\";\n } else throw Error(\"iptal\");\n });\n },\n async deleteIngredient(ctx, { plantid, ingredientid }) {\n var response = {};\n return await this._vm\n .$swal({\n title: VueI18n.t(\"areYouSure\"),\n text: VueI18n.t(\"notRevert\"),\n icon: \"warning\",\n showCancelButton: true,\n confirmButtonText: VueI18n.t(\"yes\"),\n cancelButtonText: VueI18n.t(\"no\"),\n customClass: {\n confirmButton: \"btn btn-primary\",\n cancelButton: \"btn btn-outline-danger ml-1\",\n },\n buttonsStyling: false,\n })\n .then(async (result) => {\n if (result.value) {\n response = await axios.delete(\n `/Ingredients/DeleteIngredient/${ingredientid}`,\n {\n headers: {\n plantid: plantid,\n },\n }\n );\n return response.data.status == \"OK\";\n } else throw Error(\"iptal\");\n });\n },\n\n async addPlant(ctx, { plant, sourceId }) {\n var response = await axios.post(\"/Plants/AddPlant/\", plant, {\n headers: {\n sourceplantid: sourceId,\n },\n });\n return response.data.status == \"OK\";\n },\n async updatePlant(ctx, plant) {\n var response = await axios.put(`/Plants/UpdatePlant/${plant.id}`, plant);\n\n return response.data.status == \"OK\";\n },\n async getPlantUser(ctx, plantId) {\n var response = await axios.get(\"/Plants/GetPlantUsers\", {\n headers: {\n plantid: plantId,\n },\n });\n if (response.data.status != \"OK\") return null;\n return response.data.resultdata;\n },\n async updatePlantUser(ctx, { plantid, ids }) {\n var response = await axios.put(\n `/Plants/UpdatePlantUsers/${plantid}`,\n JSON.stringify(ids),\n {\n headers: {\n plantid: plantid,\n },\n }\n );\n return response.data.status == \"OK\";\n },\n async fetchPlantVisits(ctx, plantid) {\n var response = await axios.get(\n `/PlantVisits/GetVisitsByPlantid/${plantid}`\n );\n if (response.data.status != \"OK\") return null;\n return response.data.resultdata;\n },\n async fetchPlantOrders(ctx, plantid) {\n var response = await axios.get(`/Orders/GetOrdersByPlantid/${plantid}`);\n if (response.data.status != \"OK\") return null;\n return response.data.resultdata;\n },\n async fetchIngredients(ctx, plantid) {\n var response = await axios.get(\"/Ingredients/GetIngredients/\", {\n headers: {\n plantid: plantid,\n culture: getUserData().cultureinfo,\n },\n });\n if (response.data.status != \"OK\") return null;\n return response.data.resultdata;\n },\n async fetchNutrients(ctx, plantid) {\n var response = await axios.get(\"/Nutrients/GetNutrients/\", {\n headers: {\n plantid: plantid,\n culture: getUserData().cultureinfo,\n },\n });\n if (response.data.status != \"OK\") return null;\n return response.data.resultdata;\n },\n async addNutrient(ctx, newNutrient) {\n var response = await axios.post(\"/Nutrients/AddNutrient/\", newNutrient, {\n headers: {\n culture: \"en\",\n },\n });\n return response.data.status == \"OK\";\n },\n async updateNutrient(ctx, { nutrient, values, plantid }) {\n var response = await axios.put(\n `/Nutrients/UpdateNutrient/${nutrient.id}`,\n nutrient,\n {\n headers: {\n culture: getUserData().cultureinfo,\n plantid: plantid,\n },\n }\n );\n if (response.data.status == \"OK\") {\n var result = await axios.put(\n `/Nutrients/UpdateDegerler/${nutrient.id}`,\n values,\n {\n headers: {\n culture: getUserData().cultureinfo,\n plantid: plantid,\n },\n }\n );\n }\n return result.data.status == \"OK\";\n },\n\n async deleteNutrient(ctx, { nutrientid, plantid }) {\n var response = {};\n return await this._vm\n .$swal({\n title: VueI18n.t(\"areYouSure\"),\n text: VueI18n.t(\"notRevert\"),\n icon: \"warning\",\n showCancelButton: true,\n confirmButtonText: VueI18n.t(\"yes\"),\n cancelButtonText: VueI18n.t(\"no\"),\n customClass: {\n confirmButton: \"btn btn-primary\",\n cancelButton: \"btn btn-outline-danger ml-1\",\n },\n buttonsStyling: false,\n })\n .then(async (result) => {\n if (result.value) {\n response = await axios.delete(\n `/Nutrients/DeleteNutrient/${nutrientid}`,\n {\n headers: {\n culture: getUserData().cultureinfo,\n plantid: plantid,\n },\n }\n );\n return response.data.status == \"OK\";\n } else throw Error(\"iptal\");\n });\n },\n },\n};\n","import { getUserData } from \"@/auth/utils\";\nimport axios from \"@axios\";\nimport VueI18n from \"@/libs/i18n\";\nimport store from \"@/store\";\n\nexport const printActions = {\n async selectedPlantTonaj() {\n const selectedId = store.state.app.selectedPlantId;\n if (store.state.plantsModule.plantData.length > 0) {\n return (\n store.state.plantsModule.plantData.filter((x) => x.id == selectedId)[0]\n ?.tonaj ?? store.state.plantsModule.plantData[0]?.tonaj\n );\n } else return 1000;\n },\n async printFormulaService(ctx, { url, formula, formulaid }) {\n var ext = \"pdf\";\n switch (formula.rasyon[0].raporcikti) {\n case \"PDF\":\n ext = \"pdf\";\n break;\n case \"EXCEL\":\n ext = \"xlsx\";\n break;\n case \"WORD\":\n ext = \"docx\";\n break;\n default:\n ext = \"pdf\";\n break;\n }\n const print = (downloadedFile) => {\n var downloadLink = document.createElement(\"a\");\n downloadLink.target = \"_blank\";\n downloadLink.download = formula.rasyon[0].rasyonname + \".\" + ext;\n var blob = new Blob([downloadedFile.data], {\n type: \"application/\" + ext,\n });\n var URL = window.URL || window.webkitURL;\n var downloadUrl = URL.createObjectURL(blob);\n\n downloadLink.href = downloadUrl;\n\n document.body.appendChild(downloadLink);\n\n downloadLink.click();\n\n document.body.removeChild(downloadLink);\n URL.revokeObjectURL(downloadUrl);\n return blob;\n };\n return await axios\n .post(url, formula, {\n headers: {\n id: formulaid,\n plantid: formula.plantid,\n \"response-type\": \"arraybuffer\",\n },\n responseType: \"blob\",\n })\n .then((response) => print(response));\n },\n\n async printProdFormula(ctx, formula) {\n let hammaddeler = formula.hammaddeler;\n let besinmaddeleri = formula.besinmaddeleri;\n let _newformula = {};\n const plantTonaj = await ctx.dispatch(\"selectedPlantTonaj\");\n _newformula = { ...formula };\n _newformula.hammaddeler = hammaddeler.map((x) => {\n delete x.id;\n return {\n id: x.id,\n ikey: x.ikey,\n code: x.kod,\n ingredientname: x.ingredientname,\n karisim: (x.karisim * plantTonaj) / 1000,\n fiyat: x.fiyat,\n };\n });\n var b = {};\n _newformula.besinmaddeleri = besinmaddeleri.map((x) => {\n return {\n id: x.id,\n code: x.kod,\n nkey: x.nkey,\n nutrientname: x.nutrientname,\n birimadi: x.birimadi,\n deger: x.deger,\n };\n });\n var isSuccess = await ctx.dispatch(\"printFormulaService\", {\n url: \"/Printing/PrintProductionRation\",\n formula: _newformula,\n formulaid: formula.rasyon[0].id,\n });\n if (typeof isSuccess == \"object\") {\n ctx.dispatch(\"toast\", {\n msg: \"successful\",\n type: \"saved\",\n tur: \"formula\",\n });\n return isSuccess;\n } else {\n ctx.dispatch(\"toast\", {\n msg: \"unsuccessful\",\n type: \"notSaved\",\n tur: \"formula\",\n });\n }\n },\n\n async printProdArchiveFormula(ctx, formula) {\n let hammaddeler = formula.hammaddeler;\n let besinmaddeleri = formula.besinmaddeleri;\n let _newformula = {};\n const plantTonaj = await ctx.dispatch(\"selectedPlantTonaj\");\n _newformula = { ...formula };\n _newformula.hammaddeler = hammaddeler.map((x) => {\n delete x.id;\n return {\n id: x.id,\n ikey: x.ikey,\n code: x.kod,\n ingredientname: x.ingredientname,\n karisim: (x.karisim * plantTonaj) / 1000,\n fiyat: x.fiyat,\n };\n });\n _newformula.besinmaddeleri = besinmaddeleri.map((x) => {\n return {\n id: x.id,\n code: x.kod,\n nkey: x.nkey,\n nutrientname: x.besinmaddesi,\n birimadi: x.birimadi,\n deger: x.deger,\n };\n });\n var isSuccess = await ctx.dispatch(\"printFormulaService\", {\n url: \"/Printing/PrintProductionArsivRation\",\n formula: _newformula,\n formulaid: formula.rasyon[0].id,\n });\n if (typeof isSuccess == \"object\") {\n ctx.dispatch(\"toast\", {\n msg: \"successful\",\n type: \"saved\",\n tur: \"formula\",\n });\n return isSuccess;\n } else {\n ctx.dispatch(\"toast\", {\n msg: \"unsuccessful\",\n type: \"notSaved\",\n tur: \"formula\",\n });\n }\n },\n\n async printIngredientNeedReport(ctx, formula) {\n let hammaddeler = formula.hammaddeler;\n let formuller = formula.formuller;\n let _newformula = {};\n const plantTonaj = await ctx.dispatch(\"selectedPlantTonaj\");\n _newformula = { ...formula };\n\n _newformula.hammaddeler = hammaddeler\n .filter((x) => x.amount != 0)\n .map((x) => {\n delete x.id;\n return {\n Aciklama: x.ingredientname,\n Deger: x.amount?.toString() ?? \"\",\n };\n });\n _newformula.formuller = formuller\n .filter((x) => x.amount != 0)\n .map((x) => {\n return {\n Aciklama: x.rationname,\n Deger: x.amount?.toString() ?? \"\",\n };\n });\n _newformula.rasyon = formula.raporbilgileri;\n var isSuccess = await ctx.dispatch(\"printFormulaService\", {\n url: \"/Printing/PrintIngredientNeedReport\",\n formula: _newformula,\n formulaid: formula.raporbilgileri[0].id,\n });\n if (typeof isSuccess == \"object\") {\n ctx.dispatch(\"toast\", {\n msg: \"successful\",\n type: \"saved\",\n tur: \"formula\",\n });\n return isSuccess;\n } else {\n ctx.dispatch(\"toast\", {\n msg: \"unsuccessful\",\n type: \"notSaved\",\n tur: \"formula\",\n });\n }\n },\n\n async printRation(ctx, formula) {\n let hammaddeler = formula.hammaddeler;\n let besinmaddeleri = formula.besinmaddeleri;\n let _newformula = {};\n const plantTonaj = await ctx.dispatch(\"selectedPlantTonaj\");\n _newformula = { ...formula };\n\n _newformula.hammaddeler = hammaddeler.map((x) => {\n delete x.id;\n return {\n ikey: x.ikey,\n karisim: parseFloat((x.karisim * 1000) / 1000) + 0.0000000000001,\n min: +parseFloat(x.min.toFixed(100)) + 0.0000000000001,\n max: +parseFloat(x.max.toFixed(100)) + 0.0000000000001,\n yemfiyati: (\n +parseFloat(x.price.toFixed(100)) + 0.0000000000001\n ).toString(),\n standart: 0.0000000000001,\n mevcut: 0.0000000000001,\n aktif: x.aktif,\n stok: x.stok,\n hammaddeadi: x.ingredientname,\n code: x.kod,\n };\n });\n _newformula.besinmaddeleri = besinmaddeleri.map((x) => {\n return {\n nkey: x.nkey,\n deger: (+parseFloat(x.deger.toFixed(100)) + 0.0000000000001).toString(),\n min: (+parseFloat(x.min.toFixed(100)) + 0.0000000000001).toString(),\n max: (+parseFloat(x.max.toFixed(100)) + 0.0000000000001).toString(),\n aktif: x.aktif,\n code: x.kod,\n nutrientname: x.nutrientname,\n birim: x.birim,\n };\n });\n var isSuccess = await ctx.dispatch(\"printFormulaService\", {\n url: \"/Printing/PrintTmr\",\n formula: _newformula,\n formulaid: formula.rasyon[0].id,\n });\n if (typeof isSuccess == \"object\") {\n ctx.dispatch(\"toast\", {\n msg: \"successful\",\n type: \"saved\",\n tur: \"formula\",\n });\n return isSuccess;\n } else {\n ctx.dispatch(\"toast\", {\n msg: \"unsuccessful\",\n type: \"notSaved\",\n tur: \"formula\",\n });\n }\n },\n};\n","import { getUserData } from \"@/auth/utils\";\nimport axios from \"@axios\";\nimport store from \"@/store\";\nimport VueI18n from \"@/libs/i18n\";\nimport { printActions } from \"./print\";\n\n// Notification\nimport ToastificationContent from \"@core/components/toastification/ToastificationContent.vue\";\n\nexport default {\n namespaced: true,\n state: {\n rationData: [],\n selectedRation: {},\n allIngredients: [],\n allNutrients: [],\n selectedRationIngredients: [],\n selectedRationNutrients: [],\n ingredientLoading: true,\n nutrientLoading: true,\n rationLoading: true,\n cozdu: null,\n rationSaved: false,\n },\n getters: {\n selectedRationModel(state) {\n return state.selectedRation.rasyon[0].model;\n },\n },\n mutations: {\n SET_RATIONS(state, payload) {\n state.rationData = payload;\n },\n SET_RATION(state, payload) {\n state.selectedRation = payload;\n },\n SET_RATION_SAVED(state) {\n state.rationSaved = true;\n },\n },\n actions: {\n //Print Actions\n ...printActions,\n async fetchRations(ctx, { queryParams, tur, plantid }) {\n var page = queryParams.perPage * queryParams.page;\n var count = 1;\n var totalCount = 0;\n var offSet = queryParams.perPage * (queryParams.page - 1);\n let response = await axios.get(\"/Rations/GetRations/\", {\n headers: {\n plantid: plantid,\n tur: tur,\n },\n });\n if (response.data.status != \"OK\") return null;\n ctx.commit(\"SET_RATIONS\", response.data.resultdata);\n totalCount = response.data.resultdata.length;\n\n var res = response.data.resultdata.filter((x) => {\n var isOk = true;\n var rationname = x.rationname\n .toString()\n .toLowerCase()\n .includes(queryParams.q.toLowerCase());\n if (count > offSet && count <= page && rationname) {\n isOk = true;\n } else isOk = false;\n count++;\n\n return isOk;\n });\n response.data = res;\n response.data.list = response.data.length;\n response.data.totalCount = totalCount;\n return response;\n },\n\n async fetchRation(ctx, { id, tur, plantid }) {\n ctx.state.rationLoading = true;\n ctx.state.nutrientLoading = true;\n ctx.state.ingredientLoading = true;\n let response = await axios.get(\"/Rations/GetRation/\" + id, {\n headers: {\n plantid: plantid,\n tur: tur,\n },\n });\n ctx.state.rationLoading = false;\n\n if (response.data.status != \"OK\") return null;\n ctx.commit(\"SET_RATION\", response.data.resultdata[0]);\n return response.data.resultdata[0];\n },\n async deleteRation(ctx, { rationid, plantid, tur }) {\n var response = {};\n var response = await this._vm\n .$swal({\n title: VueI18n.t(\"areYouSure\"),\n text: VueI18n.t(\"notRevert\"),\n icon: \"warning\",\n showCancelButton: true,\n confirmButtonText: VueI18n.t(\"yes\"),\n cancelButtonText: VueI18n.t(\"no\"),\n customClass: {\n confirmButton: \"btn btn-primary\",\n cancelButton: \"btn btn-outline-danger ml-1\",\n },\n buttonsStyling: false,\n })\n .then(async (result) => {\n if (result.value) {\n response = await axios.delete(`/Rations/DeleteRation/${rationid}`, {\n headers: { plantid, tur },\n });\n return response.data.status != \"OK\";\n } else return false;\n });\n if (response) {\n this._vm.$toast({\n component: ToastificationContent,\n position: \"top-right\",\n props: {\n title: VueI18n.t(\"successful\"),\n icon: \"AlertCircleIcon\",\n variant: \"success\",\n text: VueI18n.t(\"deleted\", { type: VueI18n.t(\"ration\") }),\n },\n });\n } else {\n this._vm.$toast({\n component: ToastificationContent,\n position: \"top-right\",\n props: {\n title: VueI18n.t(\"unsuccessful\"),\n icon: \"AlertCircleIcon\",\n variant: \"danger\",\n text: VueI18n.t(\"notDeleted\", { type: VueI18n.t(\"ration\") }),\n },\n });\n }\n return response;\n },\n async postDairyNASEM(ctx, { ration, plantid }) {\n let response = await axios.post(\"/Rations/AddDairyRationNASEM/\", ration, {\n headers: {\n plantid: plantid,\n },\n });\n return response.data.status == \"OK\";\n },\n async postBeefNASEM(ctx, { ration, plantid }) {\n let response = await axios.post(\"/Rations/AddBeefRationNASEM/\", ration, {\n headers: {\n plantid: plantid,\n },\n });\n return response.data.status == \"OK\";\n },\n async postDairyNRCME(ctx, { ration, plantid }) {\n let response = await axios.post(\"/Rations/AddDairyRationNRCME/\", ration, {\n headers: {\n plantid: plantid,\n },\n });\n return response.data.status == \"OK\";\n },\n async postDryNRCME(ctx, { ration, plantid }) {\n let response = await axios.post(\"/Rations/AddDryRationNRCME/\", ration, {\n headers: {\n plantid: plantid,\n },\n });\n return response.data.status == \"OK\";\n },\n async postHeiferNRCME(ctx, { ration, plantid }) {\n let response = await axios.post(\n \"/Rations/AddHeiferRationNRCME/\",\n ration,\n {\n headers: {\n plantid: plantid,\n },\n }\n );\n return response.data.status == \"OK\";\n },\n async postDairyNRCNE(ctx, { ration, plantid }) {\n let response = await axios.post(\"/Rations/AddDairyRationNRCNE/\", ration, {\n headers: {\n plantid: plantid,\n },\n });\n return response.data.status == \"OK\";\n },\n async postDryNRCNE(ctx, { ration, plantid }) {\n let response = await axios.post(\"/Rations/AddDryRationNRCNE/\", ration, {\n headers: {\n plantid: plantid,\n },\n });\n return response.data.status == \"OK\";\n },\n async postHeiferNRCNE(ctx, { ration, plantid }) {\n let response = await axios.post(\n \"/Rations/AddHeiferRationNRCNE/\",\n ration,\n {\n headers: {\n plantid: plantid,\n },\n }\n );\n return response.data.status == \"OK\";\n },\n async postDairyINRA(ctx, { ration, plantid }) {\n let response = await axios.post(\"/Rations/AddDairyRationINRA/\", ration, {\n headers: {\n plantid: plantid,\n },\n });\n return response.data.status == \"OK\";\n },\n async postBeefNRCME(ctx, { ration, plantid }) {\n let response = await axios.post(\"/Rations/AddBeefRationNRCME/\", ration, {\n headers: {\n plantid: plantid,\n },\n });\n return response.data.status == \"OK\";\n },\n async postBeefINRA(ctx, { ration, plantid }) {\n let response = await axios.post(\"/Rations/AddBeefRationINRA/\", ration, {\n headers: {\n plantid: plantid,\n },\n });\n return response.data.status == \"OK\";\n },\n async postBeefNRCNE(ctx, { ration, plantid }) {\n let response = await axios.post(\"/Rations/AddBeefRationNRCNE/\", ration, {\n headers: {\n plantid: plantid,\n },\n });\n return response.data.status == \"OK\";\n },\n async updateIngredients(ctx) {\n let selectedIngredients = ctx.state.allIngredients.filter(\n (ingredient) =>\n ingredient.selected == 1 &&\n !ctx.state.selectedRation.hammaddeler.some(\n (element) => element.ikey == ingredient.ikey\n )\n );\n let alreadyIngredients = ctx.state.allIngredients\n .map((ingredient) => {\n if (ingredient.selected == 1)\n return ctx.state.selectedRation.hammaddeler.filter(\n (element) => element.ikey == ingredient.ikey\n );\n })\n .filter((e) => e && Object.keys(e).length)\n .flat();\n ctx.state.selectedRation.hammaddeler = [];\n let hammaddeler = [...alreadyIngredients, ...selectedIngredients];\n ctx.state.selectedRation.hammaddeler = hammaddeler;\n },\n async updateNutrients(ctx) {\n let selectedNutrients = ctx.state.allNutrients.filter(\n (ingredient) =>\n ingredient.selected == 1 &&\n !ctx.state.selectedRation.besinmaddeleri.some(\n (element) => element.nkey == ingredient.nkey\n )\n );\n let alreadyNutrients = ctx.state.allNutrients\n .map((ingredient) => {\n if (ingredient.selected == 1)\n return ctx.state.selectedRation.besinmaddeleri.filter(\n (element) => element.nkey == ingredient.nkey\n );\n })\n .filter((e) => e && Object.keys(e).length)\n .flat();\n ctx.state.selectedRation.besinmaddeleri = [];\n let besinmaddeleri = [...alreadyNutrients, ...selectedNutrients];\n ctx.state.selectedRation.besinmaddeleri = besinmaddeleri;\n\n for (let i = 0; i < ctx.state.selectedRation.besinmaddeleri.length; i++) {\n ctx.state.selectedRation.besinmaddeleri[i].deger =\n ctx.state.selectedRation.besinmaddeleri[i].deger ?? 0;\n ctx.state.selectedRation.besinmaddeleri[i].min =\n ctx.state.selectedRation.besinmaddeleri[i].min ?? 0;\n ctx.state.selectedRation.besinmaddeleri[i].max =\n ctx.state.selectedRation.besinmaddeleri[i].max ?? 0;\n }\n },\n async getRationIngredients(ctx) {\n ctx.state.selectedRationIngredients = [];\n const ids = ctx.state.selectedRation.hammaddeler.map((e) => e.ikey);\n ctx.state.selectedRationIngredients = await ctx.dispatch(\n \"getRationIngredientsAll\",\n { plantid: store.state.app.selectedPlantId, ids }\n );\n\n ctx.state.allIngredients = ctx.state.selectedRationIngredients;\n },\n async getRationNutrients(ctx) {\n ctx.state.selectedRationNutrients = [];\n\n const ids = ctx.state.selectedRation.besinmaddeleri.map((e) => e.nkey);\n\n ctx.state.selectedRationNutrients = await ctx.dispatch(\n \"getRationNutrientsAll\",\n { plantid: store.state.app.selectedPlantId, ids }\n );\n ctx.state.allNutrients = ctx.state.selectedRationNutrients;\n },\n async getRationNutrientsAll(ctx, { plantid, ids }) {\n let response = await axios.get(\"/Nutrients/GetNutrientsforRation\", {\n headers: {\n model: ctx.getters.selectedRationModel,\n culture: getUserData().cultureinfo,\n plantid: plantid,\n ids: ids.join(\",\"),\n },\n });\n ctx.state.nutrientLoading = false;\n if (response.data.status != \"OK\") return null;\n return response.data.resultdata;\n },\n async getRationIngredientsAll(ctx, { plantid, ids }) {\n let response = await axios.get(\"/Ingredients/GetIngredientsforRation\", {\n headers: {\n model: ctx.getters.selectedRationModel,\n culture: getUserData().cultureinfo,\n plantid: plantid,\n ids: ids.join(\",\"),\n },\n });\n ctx.state.ingredientLoading = false;\n if (response.data.status != \"OK\") return null;\n return response.data.resultdata;\n },\n async solveRationService(ctx, ration) {\n var lastRationBesinMaddeleri = ration.besinmaddeleri.map((e) => {\n return {\n ...e,\n deger: parseFloat(e.deger) == 0 ? 0 : parseFloat(e.deger),\n min: parseFloat(e.min) == 0 ? 0 : parseFloat(e.min),\n max: parseFloat(e.max) == 0 ? 0 : parseFloat(e.max),\n };\n });\n var lastRationHammaddeler = ration.hammaddeler.map((e) => {\n return {\n ...e,\n karisim: parseFloat(e.karisim),\n min: parseFloat(e.min) == 0 ? 0 : parseFloat(e.min),\n max: parseFloat(e.max) == 0 ? 0 : parseFloat(e.max),\n };\n });\n ration.besinmaddeleri = lastRationBesinMaddeleri;\n ration.hammaddeler = lastRationHammaddeler;\n let result = await axios.post(\n \"/Rations/SolveRation/\",\n JSON.stringify(ration),\n {\n headers: {\n plantid: ration.plantid,\n tur: ration.tur,\n },\n }\n );\n\n var status = result.data[\"status\"];\n if (status == \"OK\") {\n return result.data[\"resultdata\"][0];\n } else if (status == \"ERROR\") {\n var responseRation = result.data[\"resultdata\"][0];\n responseRation.cozdu = false;\n return responseRation;\n } else if (status == \"NOFEASIBLE\") return result.data[\"resultdata\"][0];\n\n var responseRation = {};\n responseRation.hammaddeler = ration.hammaddeler;\n responseRation.besinmaddeleri = ration.besinmaddeleri;\n responseRation.cozdu = false;\n return responseRation;\n },\n async saveRationService(ctx, { ration, rationid }) {\n let result = await axios.put(`/Rations/SaveRation/${rationid}`, ration, {\n headers: {\n plantid: ration.plantid,\n tur: ration.tur,\n },\n });\n const status = result.data[\"status\"];\n if (status == \"OK\") {\n return true;\n } else {\n return false;\n }\n },\n async saveRation(ctx) {\n let _newration = {};\n _newration.plantid = store.state.app.selectedPlantId;\n _newration.price = ctx.state.selectedRation.rasyon[0].fiyat;\n _newration.cozdu = false;\n _newration.minkaba = 0;\n _newration.maxkaba = 0;\n _newration.tur = ctx.state.selectedRation.rasyon[0].tur;\n _newration.yemtoplami = 0;\n _newration.hammaddeler = ctx.state.selectedRation.hammaddeler.map((x) => {\n delete x.id;\n return {\n ikey: x.ikey,\n kod: x.kod,\n ingredientname: x.ingredientname,\n karisim: parseFloat(x.karisim) == 0 ? 0 : parseFloat(x.karisim),\n min: parseFloat(x.min) == 0 ? 0 : parseFloat(x.min),\n max: parseFloat(x.max) == 0 ? 0 : parseFloat(x.max),\n price: parseFloat(x.price) == 0 ? 0 : parseFloat(x.price),\n selected: x.selected,\n product: x.product,\n kodandingredientname: `${x.kod} ${x.ingredientname}`,\n itembgcolor: \"green\",\n itemtextcolor: \"white\",\n };\n });\n _newration.besinmaddeleri = ctx.state.selectedRation.besinmaddeleri.map(\n (x) => {\n return {\n id: x.id,\n kod: x.kod,\n nkey: x.nkey,\n orjnkey: x.nkey,\n nutrientname: x.nutrientname,\n birim: x.birim,\n deger: parseFloat(x.deger) == 0 ? 0 : parseFloat(x.deger),\n min: parseFloat(x.min) == 0 ? 0 : parseFloat(x.min),\n max: parseFloat(x.max) == 0 ? 0 : parseFloat(x.max),\n tip: x.tip,\n selected: x.selected,\n kodandnutrientnameandbirim: `${x.kod} ${x.nutrientname} (${x.birim})`,\n itembgcolor: \"green\",\n itemtextcolor: \"white\",\n };\n }\n );\n var isSuccess = await ctx.dispatch(\"saveRationService\", {\n ration: _newration,\n rationid: ctx.state.selectedRation.rasyon[0].id,\n });\n if (isSuccess) {\n ctx.commit(\"SET_RATION_SAVED\");\n\n this._vm.$toast({\n component: ToastificationContent,\n position: \"top-right\",\n props: {\n title: VueI18n.t(\"successful\"),\n icon: \"AlertCircleIcon\",\n variant: \"success\",\n text: VueI18n.t(\"saved\", { type: VueI18n.t(\"ration\") }),\n },\n });\n } else {\n this._vm.$toast({\n component: ToastificationContent,\n position: \"top-right\",\n props: {\n title: VueI18n.t(\"unsuccessful\"),\n icon: \"AlertCircleIcon\",\n variant: \"danger\",\n text: VueI18n.t(\"notSaved\", { type: VueI18n.t(\"ration\") }),\n },\n });\n }\n },\n async solveRation(ctx) {\n let tur = ctx.state.selectedRation.rasyon[0].tip;\n\n const tollerance = 0.00001;\n\n const isValueValid = (min, max, deger) => {\n if (max === 0) {\n // Eğer max 0 ise, deger herhangi bir degerden büyük olmalı.\n return deger + tollerance > min;\n } else {\n // Max 0 değilse, deger max'dan küçük veya eşit olmalı, min'den büyük olmalı.\n return deger + tollerance > min && deger - tollerance <= max;\n }\n };\n if (\n ctx.state.selectedRation.hammaddeler == null ||\n !ctx.state.selectedRation.hammaddeler.length\n ) {\n this._vm.$toast({\n component: ToastificationContent,\n position: \"top-right\",\n props: {\n title: VueI18n.t(\"warning\"),\n icon: \"AlertCircleIcon\",\n variant: \"error\",\n text: VueI18n.t(\"oneIngredientNeeded\"),\n },\n });\n } else {\n if (\n ctx.state.selectedRation.besinmaddeleri == null ||\n !ctx.state.selectedRation.besinmaddeleri.length\n ) {\n this._vm.$toast({\n component: ToastificationContent,\n position: \"top-right\",\n props: {\n title: VueI18n.t(\"warning\"),\n icon: \"AlertCircleIcon\",\n variant: \"error\",\n text: VueI18n.t(\"oneNutrientNeeded\"),\n },\n });\n } else {\n var resultIngredient = false;\n var names = [];\n for (\n var i = 0;\n i < ctx.state.selectedRation.hammaddeler.length;\n i++\n ) {\n if (\n ctx.state.selectedRation.hammaddeler[i].max != 0 &&\n ctx.state.selectedRation.hammaddeler[i].min >\n ctx.state.selectedRation.hammaddeler[i].max\n ) {\n resultIngredient = true;\n names.push(\n ctx.state.selectedRation.hammaddeler[i].ingredientname\n );\n }\n }\n if (resultIngredient) {\n this._vm.$toast({\n component: ToastificationContent,\n props: {\n title: VueI18n.t(\"warning\"),\n icon: \"AlertCircleIcon\",\n variant: \"warning\",\n text:\n VueI18n.t(\"minValueBiggerThanMax\") +\n \".\" +\n VueI18n.t(\"ingredients\") +\n \": \" +\n names.join(\", \"),\n },\n });\n return;\n }\n var resultNutrient = false;\n names = [];\n for (\n var i = 0;\n i < ctx.state.selectedRation.besinmaddeleri.length;\n i++\n ) {\n if (\n ctx.state.selectedRation.besinmaddeleri[i].max != 0 &&\n ctx.state.selectedRation.besinmaddeleri[i].min >\n ctx.state.selectedRation.besinmaddeleri[i].max\n ) {\n resultNutrient = true;\n names.push(\n ctx.state.selectedRation.besinmaddeleri[i].nutrientname\n );\n }\n }\n if (resultNutrient) {\n this._vm.$toast({\n component: ToastificationContent,\n props: {\n title: VueI18n.t(\"warning\"),\n icon: \"AlertCircleIcon\",\n variant: \"warning\",\n text:\n VueI18n.t(\"minValueBiggerThanMax\") +\n \".\" +\n VueI18n.t(\"nutrients\") +\n \": \" +\n names.join(\", \"),\n },\n });\n return;\n }\n let productexists = false;\n\n for (\n let i = 0;\n i < ctx.state.selectedRation.hammaddeler.length;\n i++\n ) {\n if (ctx.state.selectedRation.hammaddeler[i].product) {\n productexists = true;\n }\n }\n let forceProduct = getUserData().forceproduct;\n if (tur != \"Mix\" && forceProduct && !productexists) {\n this._vm.$toast({\n component: ToastificationContent,\n position: \"top-right\",\n props: {\n title: VueI18n.t(\"warning\"),\n icon: \"AlertCircleIcon\",\n variant: \"error\",\n text: VueI18n.t(\"oneProductNeeded\"),\n },\n });\n } else {\n var tinyRation = {};\n tinyRation.hammaddeler = [];\n tinyRation.besinmaddeleri = [];\n tinyRation.cozdu = false;\n tinyRation.price = 0;\n tinyRation.plantid = store.state.app.selectedPlantId;\n tinyRation.yemtoplami = 0;\n tinyRation.minkaba =\n ctx.state.selectedRation.rasyon[0].kabayemorani;\n tinyRation.maxkaba =\n ctx.state.selectedRation.rasyon[0].kabayemoranimax;\n\n const parseFloatFixed = (x) => {\n x == \"\"\n ? parseFloat(0)\n : parseFloat(x.toString().replace(\",\", \".\"));\n return x;\n };\n tinyRation.hammaddeler = ctx.state.selectedRation.hammaddeler.map(\n (x) => {\n return {\n ...x,\n karisim: parseFloat(x.karisim)\n .toFixed(getUserData().ingredientdecimal)\n .replace(\".\", \",\"),\n min: parseFloatFixed(x.min),\n max: parseFloatFixed(x.max),\n price: parseFloatFixed(x.price),\n iskaba: x.iskaba ?? false,\n };\n }\n );\n\n tinyRation.besinmaddeleri =\n ctx.state.selectedRation.besinmaddeleri.map((x) => {\n return {\n ...x,\n deger: parseFloatFixed(x.deger),\n\n min: parseFloatFixed(x.min),\n max: parseFloatFixed(x.max),\n };\n });\n tinyRation.tur = tur;\n\n let response = await ctx.dispatch(\"solveRationService\", tinyRation);\n tinyRation = response;\n ctx.state.cozdu = tinyRation.cozdu;\n ctx.state.selectedRation.cozdu = tinyRation.cozdu;\n ctx.state.selectedRation.rasyon[0].fiyat = tinyRation.price;\n ctx.state.selectedRation.hammaddeler = tinyRation.hammaddeler;\n ctx.state.selectedRation.besinmaddeleri = tinyRation.besinmaddeleri;\n\n //Hammaddeler\n for (\n let i = 0;\n i < ctx.state.selectedRation.hammaddeler.length;\n i++\n ) {\n ctx.state.selectedRation.hammaddeler[i].karisim = parseFloat(\n ctx.state.selectedRation.hammaddeler[i].karisim\n );\n ctx.state.selectedRation.hammaddeler[i].min = parseFloat(\n ctx.state.selectedRation.hammaddeler[i].min\n );\n ctx.state.selectedRation.hammaddeler[i].max = parseFloat(\n ctx.state.selectedRation.hammaddeler[i].max\n );\n const min = parseFloat(\n ctx.state.selectedRation.hammaddeler[i].min\n );\n const max = parseFloat(\n ctx.state.selectedRation.hammaddeler[i].max\n );\n\n const deger = ctx.state.selectedRation.hammaddeler[i].karisim;\n\n // deger between min and max with tollerance\n if (isValueValid(min, max, deger)) {\n ctx.state.selectedRation.hammaddeler[i].itemtextcolor = \"Green\";\n ctx.state.selectedRation.hammaddeler[i].itembgcolor = \"White\";\n } else {\n ctx.state.selectedRation.hammaddeler[i].itemtextcolor = \"red\";\n ctx.state.selectedRation.hammaddeler[i].itembgcolor = \"White\";\n }\n }\n\n for (\n let i = 0;\n i < ctx.state.selectedRation.besinmaddeleri.length;\n i++\n ) {\n ctx.state.selectedRation.besinmaddeleri[i].deger = parseFloat(\n ctx.state.selectedRation.besinmaddeleri[i].deger ?? 0\n );\n ctx.state.selectedRation.besinmaddeleri[i].min = parseFloat(\n ctx.state.selectedRation.besinmaddeleri[i].min ?? 0\n );\n ctx.state.selectedRation.besinmaddeleri[i].max = parseFloat(\n ctx.state.selectedRation.besinmaddeleri[i].max ?? 0\n );\n\n const min = parseFloat(\n ctx.state.selectedRation.besinmaddeleri[i].min\n );\n const max = parseFloat(\n ctx.state.selectedRation.besinmaddeleri[i].max\n );\n const deger = parseFloat(\n ctx.state.selectedRation.besinmaddeleri[i].deger ?? 0\n );\n\n if (isValueValid(min, max, deger)) {\n ctx.state.selectedRation.besinmaddeleri[i].itemtextcolor =\n \"Green\";\n ctx.state.selectedRation.besinmaddeleri[i].itembgcolor =\n \"White\";\n } else {\n ctx.state.selectedRation.besinmaddeleri[i].itemtextcolor =\n \"red\";\n ctx.state.selectedRation.besinmaddeleri[i].itembgcolor =\n \"White\";\n }\n\n // if (\n // (ctx.state.selectedRation.besinmaddeleri[i].max != 0 &&\n // (ctx.state.selectedRation.besinmaddeleri[i].deger >\n // ctx.state.selectedRation.besinmaddeleri[i].min ||\n // Math.abs(\n // ctx.state.selectedRation.besinmaddeleri[i].deger -\n // ctx.state.selectedRation.besinmaddeleri[i].min\n // ) < tollerance) &&\n // ctx.state.selectedRation.besinmaddeleri[i].deger <\n // ctx.state.selectedRation.besinmaddeleri[i].max) ||\n // Math.abs(\n // ctx.state.selectedRation.besinmaddeleri[i].deger -\n // ctx.state.selectedRation.besinmaddeleri[i].max\n // ) < tollerance ||\n // (ctx.state.selectedRation.besinmaddeleri[i].max == 0 &&\n // (ctx.state.selectedRation.besinmaddeleri[i].deger >\n // ctx.state.selectedRation.besinmaddeleri[i].min ||\n // Math.abs(\n // ctx.state.selectedRation.besinmaddeleri[i].deger -\n // ctx.state.selectedRation.besinmaddeleri[i].min\n // ) < tollerance))\n // ) {\n // ctx.state.selectedRation.besinmaddeleri[i].itemtextcolor =\n // \"Green\";\n // ctx.state.selectedRation.besinmaddeleri[i].itembgcolor =\n // \"White\";\n // } else {\n // ctx.state.selectedRation.besinmaddeleri[i].itemtextcolor =\n // \"Red\";\n // ctx.state.selectedRation.besinmaddeleri[i].itembgcolor =\n // \"White\";\n // }\n if (\n ctx.state.selectedRation.besinmaddeleri[i].nkey == 19 &&\n store.state.app.selectedModelId == 2\n ) {\n ctx.state.selectedRation.besinmaddeleri[i].itemtextcolor = \"\";\n ctx.state.selectedRation.besinmaddeleri[i].itembgcolor = \"\";\n }\n }\n }\n\n if (ctx.state.selectedRation.cozdu) {\n this._vm.$toast({\n component: ToastificationContent,\n position: \"top-right\",\n props: {\n title: VueI18n.t(\"successful\"),\n icon: \"AlertCircleIcon\",\n variant: \"success\",\n text: VueI18n.t(\"solved\"),\n },\n });\n } else {\n this._vm.$toast({\n component: ToastificationContent,\n position: \"top-right\",\n props: {\n title: VueI18n.t(\"unsuccessful\"),\n icon: \"AlertCircleIcon\",\n variant: \"danger\",\n text: VueI18n.t(\"notSolved\"),\n },\n });\n }\n }\n }\n },\n },\n};\n","import { getUserData } from \"@/auth/utils\";\nimport axios from \"@axios\";\nimport VueI18n from \"@/libs/i18n\";\n\nexport default {\n namespaced: true,\n state: {},\n getters: {},\n mutations: {},\n actions: {\n async fetchCompanyProducts(ctx) {\n var response = await axios.get(`/Ingredients/GetCompanyProducts/`, {});\n if (response.data.status != \"OK\") return null;\n\n return response.data.resultdata;\n },\n\n async deleteCompanyProduct(ctx, ingredientId) {\n var response = {};\n return await this._vm\n .$swal({\n title: VueI18n.t(\"areYouSure\"),\n text: VueI18n.t(\"notRevert\"),\n icon: \"warning\",\n showCancelButton: true,\n confirmButtonText: VueI18n.t(\"yes\"),\n cancelButtonText: VueI18n.t(\"no\"),\n customClass: {\n confirmButton: \"btn btn-primary\",\n cancelButton: \"btn btn-outline-danger ml-1\",\n },\n buttonsStyling: false,\n })\n .then(async (result) => {\n if (result.value) {\n response = await axios.delete(\n `/Ingredients/DeleteIngredient/${ingredientId}`\n );\n return response.data.status == \"OK\";\n } else return false;\n });\n },\n\n async addCompanyProduct(ctx, newIngredient) {\n var response = await axios.post(\n \"/Ingredients/AddIngredient/\",\n newIngredient.newIngredient,\n {\n headers: {\n tip: newIngredient.tip == undefined ? \"Product\" : \"\",\n },\n }\n );\n return response.data.status == \"OK\";\n },\n async updateCompanyProduct(ctx, { ingredient, values }) {\n var response = await axios.put(\n `/Ingredients/UpdateIngredient/${ingredient.id}`,\n ingredient\n );\n if (response.data.status == \"OK\") {\n var result = await axios.put(\n `/Ingredients/UpdateProductDegerler/${ingredient.id}`,\n values\n );\n }\n return result.data.status == \"OK\";\n },\n },\n};\n","import { getUserData } from \"@/auth/utils\";\nimport axios from \"@axios\";\nimport VueI18n from \"@/libs/i18n\";\n\nexport default {\n namespaced: true,\n stateFactory: true,\n state: {\n saleItems: [],\n userSaleItems: [],\n basket: [],\n renewBasket: {},\n iFrameToken: \"\",\n },\n mutations: {\n SET_SALE_ITEMS(state, saleItems) {\n state.saleItems = saleItems;\n },\n SET_USER_SALE_ITEMS(state, userSaleItems) {\n state.userSaleItems = userSaleItems;\n },\n SET_BASKET(state, basket) {\n state.basket = basket;\n },\n SET_RENEW_BASKET(state, renewBasket) {\n state.renewBasket = renewBasket;\n },\n SET_TOKEN(state, token) {\n state.iFrameToken = token;\n },\n },\n actions: {\n async getSaleItems({ commit }) {\n const { data } = await axios.get(\"/Sales/GetSaleItems\");\n\n var baseItems = data.resultdata\n .filter((item) => item.isbase && !item.iswindows)\n .map((item) => ({\n ...item,\n totalPrice: \"0\",\n pictureUrl: \"\",\n }));\n baseItems = [...baseItems];\n\n var extraPackages = [\n ...data.resultdata.filter((item) => !item.isbase).map((x) => x),\n ];\n for (let index = 0; index < baseItems.length; index++) {\n baseItems[index].extraPackages = [\n ...extraPackages.map((x) => ({\n ...x,\n quantity: 0,\n })),\n ];\n (index) => {\n const baseItemPrice =\n baseItems[index][\n \"priceper\" + (index % 2) == 0 ? \"year\" : \"month\"\n ].toString();\n const extraPackagePrice = baseItems[index].extraPackages\n .filter((x) => x.quantity != 0)\n .reduce((total, extraPackage) => {\n return (\n total +\n extraPackage[\"priceper\" + (index % 2) == 0 ? \"year\" : \"month\"] *\n extraPackage.quantity\n );\n }, 0);\n baseItems[index].totalPrice = (\n parseFloat(baseItemPrice) + parseFloat(extraPackagePrice)\n ).toFixed(2);\n };\n }\n\n let items = [\n // JSON.parse(JSON.stringify(baseItems[0])),\n // JSON.parse(JSON.stringify(baseItems[0])),\n ];\n\n for (let i = 0; i < baseItems.length; i++) {\n items.push(JSON.parse(JSON.stringify(baseItems[i])));\n items.push(JSON.parse(JSON.stringify(baseItems[i])));\n }\n\n commit(\"SET_SALE_ITEMS\", items);\n return items;\n },\n async addBasketItem({ commit, state, dispatch }, item) {\n var basket = { ...state.basket };\n if (item.saleitemid == undefined) item.saleitemid = item.id;\n if (\n basket.items &&\n basket.items.length > 0 &&\n basket.items.find((x) => x.saleitemid == item.saleitemid)\n ) {\n if (\n basket.items.find((x) => x.saleitemid == item.saleitemid).quantity ==\n undefined\n )\n basket.items.find(\n (x) => x.saleitemid == item.saleitemid\n ).quantity = 0;\n basket.items.find((x) => x.saleitemid == item.saleitemid).quantity++;\n } else {\n basket.items.push(item);\n }\n commit(\"SET_BASKET\", basket);\n await dispatch(\"saveUserBasket\");\n },\n async getUserSaleItems({ commit }) {\n const { data } = await axios.get(\"/Sales/GetSaleItemsForUser\");\n var baseItems = data.resultdata\n .map((item) => ({\n ...item,\n totalPrice: \"0\",\n pictureUrl: item.saleitemname.toLowerCase().includes(\"multi\")\n ? \"\"\n : \"\",\n }))\n .filter((x) => !x.iswindows);\n commit(\"SET_USER_SALE_ITEMS\", baseItems);\n return baseItems;\n },\n\n async saveUserBasket({ commit, state }, basket) {\n let postData = [\n ...state.basket.items.map((x) => ({\n saleitemid: x.saleitemid,\n quantity: x.quantity ?? 1,\n pricetype: 2,\n orjprice: x.orjprice,\n culinfo: VueI18n.locale ?? \"tr\",\n })),\n ];\n if (basket != undefined) postData = [...basket];\n const { data } = await axios.post(\"/Baskets/SaveUserBasket\", {\n basket: postData,\n });\n\n localStorage.setItem(\"basket\", JSON.stringify(data.resultdata));\n return data.resultdata;\n },\n async getUserBasket({ commit }, userId) {\n const basket = localStorage.getItem(\"basket\");\n const { data } = await axios.get(`/Baskets/GetUserBasket/${userId}`, {\n basket: JSON.parse(basket),\n });\n if (data.status != \"ERROR\") {\n localStorage.setItem(\"basket\", JSON.stringify(data.resultdata[0]));\n commit(\"SET_BASKET\", data.resultdata[0]);\n } else {\n localStorage.setItem(\n \"basket\",\n JSON.stringify({ basket: [], items: [] })\n );\n commit(\"SET_BASKET\", { basket: [], items: [] });\n }\n },\n async getUserRenewBasket({ commit }, pricetype) {\n const {\n data: { resultdata },\n } = await axios.get(\"/Baskets/GetUserRenewBasket\");\n commit(\"SET_RENEW_BASKET\", resultdata);\n return resultdata;\n },\n async getIframeToken({ commit, dispatch }) {\n const {\n data: { resultdata },\n } = await axios.get(\"/Sales/GetIframeToken\");\n commit(\"SET_TOKEN\", statusdata);\n dispatch(\"getUserBasket\");\n return resultdata;\n },\n async getNewPaymentIframeToken({ commit }) {\n const {\n data: { statusdata },\n } = await axios.get(\"/Payment/getrenewiframetoken\", {\n headers: {\n pricetype: pricetype,\n },\n });\n commit(\"SET_TOKEN\", statusdata);\n dispatch(\"getUserBasket\");\n return resultdata;\n },\n },\n};\n","import Vue from \"vue\";\nimport Vuex from \"vuex\";\n\n// Modules\nimport app from \"./app\";\nimport appConfig from \"./app-config\";\nimport verticalMenu from \"./vertical-menu\";\nimport companiesModule from \"./app/companiesStoreModule\";\nimport animalsModule from \"./app/animalsStoreModule\";\nimport usersModule from \"./app/usersStoreModule\";\nimport modulesModule from \"./app/modulesStoreModule\";\nimport visitsModule from \"./app/visitsStoreModule\";\nimport ordersModule from \"./app/ordersStoreModule\";\nimport plantsModule from \"./app/plantsStoreModule\";\nimport rationsModule from \"./app/rationsStoreModule\";\nimport companyProductsModule from \"./app/companyProductStoreModule\";\nimport purchaseModule from \"./app/purchaseStoreModule\";\nimport asIfModule from \"./app/asIf\";\n\nVue.use(Vuex);\n\nexport default new Vuex.Store({\n modules: {\n app,\n appConfig,\n verticalMenu,\n companiesModule,\n animalsModule,\n usersModule,\n modulesModule,\n visitsModule,\n ordersModule,\n companyProductsModule,\n plantsModule,\n rationsModule,\n purchaseModule,\n asIfModule,\n },\n strict: process.env.DEV,\n});\n"],"sourceRoot":""}