Run the following command:
restaurentPos>npm install vuex@next --save
create a folder store in the location resources\js\
create index.js in the location resources\js\store\ and add the following code
import Vue from "vue";
import Vuex from "vuex";
import admin from "./modules/admin";
import admin from "./modules/setup";
import notificationMessage from "./modules/notificationMessage";
Vue.use(Vuex);
export default new Vuex.Store({
modules:{
admin,
setup,
notificationMessage
}
});
create a file configManual.js in the location ../../components/config/ and add the following code
const siteBasePath = document.querySelector("meta[name='path']").getAttribute('data-path');
export default{
sitePath:siteBasePath,
basePath:'/posmaster/'
//basePath:'/'
}
create a a file admin.js in the location resources\js\store\modules\ and add the following code
import axios from "axios";
import configManual from "../../components/config/configManual"
const getters = {
allPosCompany:state=>state.posCompany,
editPosCompanyList:state=>state.editPosCompanyList,
allPosRole:state=>state.posRole,
editPosRoleList:state=>state.editPosRoleList,
allPosUser:state=>state.posUser,
editPosUserList:state=>state.editPosUserList,
allPosMenu:state=>state.posMenu,
editPosMenuList:state=>state.editPosMenuList,
allPosRoleMenu:state =>state.posRoleMenu,
authLoginUser:state =>state.authLoginUserInfo,
};
const state = {
posCompany:[],
editPosCompanyList:[],
posRole:[],
editPosRoleList:[],
posUser:[],
editPosUserList:[],
posMenu:[],
editPosMenuList:[],
posRoleMenu:[],
authLoginUserInfo:[],
};
const mutations = {
/* company info */
addComMutation:(state,data)=>(state.posCompany.unshift(data.response)),
getPosCompanyMutation:(state,data)=>(state.posCompany = data),
editPosCompanyMutation:(state,data)=>(state.editPosCompanyList = data),
updateCompanyMutation:(state,data)=>(state.editPosCompanyList = data),
removeCompany:(state,data)=>(state.posCompany.filter(fil => fil.id != data.data.id)),
/* end company info */
/* role info */
addRoleMutation:(state,data)=>(state.posRole.unshift(data.response)),
getPosRoleMutation:(state,data)=>(state.posRole = data),
editPosRoleMutation:(state,data)=>(state.editPosRoleList = data),
updateRoleMutation:(state,data)=>(state.editPosRoleList = data),
removeRole:(state,data)=>(state.posRole.filter(fil => fil.id != data.data.id)),
/* end role info */
/* user info */
addUserMutation:(state,data)=>(state.posUser.unshift(data)),
getPosUserMutation:(state,data)=>(state.posUser = data),
editPosUserMutation:(state,data)=>(state.editPosUserList = data),
updateUserMutation:(state,data)=>(state.editPosUserList = data),
removeUser:(state,data)=>(state.posUser.filter(fil => fil.id != data.id)),
/* end user info */
/* menu info */
addMenuMutation:(state,data)=>(state.posMenu.unshift(data.response)),
getPosMenuMutation:(state,data)=>(state.posMenu = data),
editPosMenuMutation:(state,data)=>(state.editPosMenuList = data),
updateMenuMutation:(state,data)=>(state.editPosMenuList = data),
removeMenu:(state,data)=>(state.posMenu.filter(fil => fil.id != data.data.id)),
instantMenuMutation:(state,data)=>(state.editPosMenuList = data),
/* end menu info */
/* role menu permission */
getPosRoleMenuMutation:(state,data)=>(state.posRoleMenu = data),
/* end role menu permission */
/* userLogin */
loginMutation:(state,data)=>{
state.authLoginUserInfo = data
//localStorage.setItem('userData', JSON.stringify(data))
},
/* end userLogin */
};
const actions = {
/* company api */
async addCompany({commit,dispatch},conpanyData){
const response = await axios.post(configManual.sitePath+"/api/company_insert",conpanyData);
let group ='message1';
let type ='';
let message ='';
if(response.data.status=='no_unique'){
type ='error';
message ='Data not unique';
}else if(response.data.status=='fail'){
type ='error';
message ='Data insert fail';
}else if(response.data.status=='success'){
type ='success';
message ='Data insert successful';
}
const messageData = {
group:group,
type:type,
message:message
};
dispatch('addNotification',messageData,{root:true});
commit("addComMutation",{response:response.data});
},
async getPosCompanyFilterList({commit},filterData){
const response = await axios.post(configManual.sitePath+"/api/company_filter",filterData);
commit("getPosCompanyMutation",response.data);
},
async editPosCompany({commit,dispatch},data){
console.log("checl edit "+data.id);
const response = await axios.get(configManual.sitePath+"/api/company_edit/"+data.id+"");
let group ='message1';
let type ='';
let message ='';
if(response.data.status =='fail'){
type ='error';
message ='Data edit fail';
dispatch('addNotification',{
group:group,
type:type,
message:message
});
}
commit("editPosCompanyMutation",response.data);
},
async updateCompany({commit,dispatch},conpanyData){
const response = await axios.post(configManual.sitePath+"/api/company_update",conpanyData);
let group ='message1';
let type ='';
let message ='';
if(response.data.status=='no_unique'){
type ='error';
message ='Data not unique';
}else if(response.data.status=='fail'){
type ='error';
message ='Data insert fail';
}else if(response.data.status=='success'){
type ='success';
message ='Data update successful';
}
const messageData = {
group:group,
type:type,
message:message
};
dispatch('addNotification',messageData,{root:true});
commit("updateCompanyMutation",{response:response.data});
},
async deleteCom({commit},data){
const response = await axios.post(configManual.sitePath+"/api/company_del",data);
commit("removeCompany",{data:data,response:response.data});
},
/* end company api */
/* role api */
async addRole({commit,dispatch},data){
const response = await axios.post(configManual.sitePath+"/api/role_insert",data);
let group ='message1';
let type ='';
let message ='';
if(response.data.status=='no_unique'){
type ='error';
message ='Data not unique';
}else if(response.data.status=='fail'){
type ='error';
message ='Data insert fail';
}else if(response.data.status=='success'){
type ='success';
message ='Data insert successful';
}
if(type !=''){
dispatch('addNotification',
{
group:group,
type:type,
message:message
},
{root:true}
);
}
commit("addRoleMutation",{response:response.data});
},
async getPosRoleFilterList({commit},filterData){
const response = await axios.post(configManual.sitePath+"/api/role_filter",filterData);
commit("getPosRoleMutation",response.data);
},
async editPosRole({commit,dispatch},data){
const response = await axios.get(configManual.sitePath+"/api/role_edit/"+data.id+"");
let group ='message1';
let type ='';
let message ='';
if(response.data.status =='fail'){
type ='error';
message ='Data edit fail';
}
if(type !=''){
dispatch('addNotification',
{
group:group,
type:type,
message:message
},
{root:true}
);
}
commit("editPosRoleMutation",response.data);
},
async updateRole({commit,dispatch},data){
const response = await axios.post(configManual.sitePath+"/api/role_update",data);
let group ='message1';
let type ='';
let message ='';
if(response.data.status=='no_unique'){
type ='error';
message ='Data not unique';
}else if(response.data.status=='fail'){
type ='error';
message ='Data insert fail';
}else if(response.data.status=='success'){
type ='success';
message ='Data update successful';
}
const messageData = {
group:group,
type:type,
message:message
};
dispatch('addNotification',messageData,{root:true});
commit("updateRoleMutation",{response:response.data});
},
async deleteRole({commit,dispatch},data){
const response = await axios.post(configManual.sitePath+"/api/role_del",data);
let group ='message1';
let type ='';
let message ='';
if(response.data.status =='no_record_found'){
type ='error';
message ='No record found';
}else if(response.data.status =='success'){
type ='success';
message ='deletion successful';
}
if(type){
dispatch('addNotification',
{
group:group,
type:type,
message:message
},
{root:true}
);
}
commit("removeRole",{data:data,response:response.data});
},
/* end role api */
/* user api */
async addUser({commit,dispatch},data){
const config = {
headers: {
'content-type': 'multipart/form-data',
'X-CSRF-TOKEN': document.querySelector('meta[name="csrf-token"]').content
}
};
const response = await axios.post(configManual.sitePath+"/api/user_insert",data,config);
let group ='message1';
let type ='';
let message ='';
if(response.data.status=='no_unique'){
type ='error';
message ='Data not unique';
}else if(response.data.status=='fail'){
type ='error';
message ='Data insert fail';
}else if(response.data.status=='success'){
type ='success';
message ='Data insert successful';
}
if(type){
dispatch('addNotification',
{
group:group,
type:type,
message:message
},
{root:true}
);
}
commit("addItemMutation",response.data);
},
async getPosUserFilterList({commit},filterData){
const response = await axios.post(configManual.sitePath+"/api/user_filter",filterData);
commit("getPosUserMutation",response.data);
},
async editPosUser({commit,dispatch},data){
const response = await axios.get(configManual.sitePath+"/api/user_edit/"+data.id+"");
let group ='message1';
let type ='';
let message ='';
if(response.data.status =='fail'){
type ='error';
message ='Data edit fail';
}
if(type !=''){
dispatch('addNotification',
{
group:group,
type:type,
message:message
},
{root:true}
);
}
commit("editPosUserMutation",response.data);
},
async updateUser({commit,dispatch},data){
const config = {
headers: {
'content-type': 'multipart/form-data',
'X-CSRF-TOKEN': document.querySelector('meta[name="csrf-token"]').content
}
};
const response = await axios.post(configManual.sitePath+"/api/user_update",data,config);
let group ='message1';
let type ='';
let message ='';
if(response.data.status=='no_unique'){
type ='error';
message ='Data not unique';
}else if(response.data.status=='fail'){
type ='error';
message ='Data insert fail';
}else if(response.data.status=='success'){
type ='success';
message ='Data update successful';
}
const messageData = {
group:group,
type:type,
message:message
};
dispatch('addNotification',messageData,{root:true});
commit("updateItemMutation",response.data);
},
async deleteUser({commit,dispatch},data){
const response = await axios.post(configManual.sitePath+"/api/user_del",data);
let group ='message1';
let type ='';
let message ='';
if(response.data.status =='no_record_found'){
type ='error';
message ='No record found';
}else if(response.data.status =='success'){
type ='success';
message ='Deletion successful';
}
if(type){
dispatch('addNotification',
{
group:group,
type:type,
message:message
},
{root:true}
);
}
commit("removeUser",data);
},
/* end user api */
/* menu api */
async addMenu({commit,dispatch},data){
const response = await axios.post(configManual.sitePath+"/api/menu_insert",data);
let group ='message1';
let type ='';
let message ='';
if(response.data.status=='no_unique'){
type ='error';
message ='Data not unique';
}else if(response.data.status=='fail'){
type ='error';
message ='Data insert fail';
}else if(response.data.status=='success'){
type ='success';
message ='Data insert successful';
}
if(type !=''){
dispatch('addNotification',
{
group:group,
type:type,
message:message
},
{root:true}
);
}
commit("addMenuMutation",{response:response.data});
},
async getPosMenuFilterList({commit},filterData){
const response = await axios.post(configManual.sitePath+"/api/menu_filter",filterData);
commit("getPosMenuMutation",response.data);
},
async editPosMenu({commit,dispatch},data){
const response = await axios.get(configManual.sitePath+"/api/menu_edit/"+data.id+"");
let group ='message1';
let type ='';
let message ='';
if(response.data.status =='fail'){
type ='error';
message ='Data edit fail';
}
if(type !=''){
dispatch('addNotification',
{
group:group,
type:type,
message:message
},
{root:true}
);
}
commit("editPosMenuMutation",response.data);
},
async updateMenu({commit,dispatch},data){
const response = await axios.post(configManual.sitePath+"/api/menu_update",data);
let group ='message1';
let type ='';
let message ='';
if(response.data.status=='no_unique'){
type ='error';
message ='Data not unique';
}else if(response.data.status=='fail'){
type ='error';
message ='Data insert fail';
}else if(response.data.status=='success'){
type ='success';
message ='Data update successful';
}
const messageData = {
group:group,
type:type,
message:message
};
dispatch('addNotification',messageData,{root:true});
commit("updateMenuMutation",{response:response.data});
},
async deleteMenu({commit,dispatch},data){
const response = await axios.post(configManual.sitePath+"/api/menu_del",data);
let group ='message1';
let type ='';
let message ='';
if(response.data.status =='no_record_found'){
type ='error';
message ='No record found';
}else if(response.data.status =='success'){
type ='success';
message ='deletion successful';
}
if(type){
dispatch('addNotification',
{
group:group,
type:type,
message:message
},
{root:true}
);
}
commit("removeMenu",{data:data,response:response.data});
},
async instantMenu({commit,dispatch},data){
const response = await axios.post(configManual.sitePath+"/api/menu_instant",data);
//alert(response.data.menu_name);
commit("instantMenuMutation",response.data);
},
/* end menu api */
/* role menu permission */
async getPosRoleMenuFilterList({commit},filterData){
const response = await axios.post(configManual.sitePath+"/api/role_menu_filter",filterData);
commit("getPosRoleMenuMutation",response.data);
},
async updateRoleMenu({commit,dispatch},data){
const response = await axios.post(configManual.sitePath+"/api/role_menu_update",data);
let group ='message1';
let type ='';
let message ='';
if(response.data.status=='fail'){
type ='error';
message ='Data insert fail';
}else if(response.data.status=='success'){
type ='success';
message ='Data update successful';
}
const messageData = {
group:group,
type:type,
message:message
};
dispatch('addNotification',messageData,{root:true});
},
/* role menu permission */
/* login user */
async userLoginCheck({commit,dispatch},data){
const response = await axios.post(configManual.sitePath+"/api/logincheck",data);
let group ='message1';
let type ='';
let message ='';
if(response.data.status=='fail'){
type ='error';
message ='Data insert fail';
}else{
type ='success';
message ='Loin successful';
//alert(response.data.id);
//localStorage.setItem('userData',response.data);
}
const messageData = {
group:group,
type:type,
message:message
};
dispatch('addNotification',messageData,{root:true});
commit("loginMutation",response.data);
},
/* end login user */
};
export default {
state,
getters,
mutations,
actions
}
create a file setup.js in the location resources\js\store\modules\ and add the following code
import axios from "axios";
import configManual from "../../components/config/configManual"
const getters = {
allPosCompany:state=>state.posCompany,
editPosCompanyList:state=>state.editPosCompanyList,
allPosCategory:state=>state.posCategory,
editPosCategoryList:state=>state.editPosCategoryList,
allPosUnit:state=>state.posUnit,
editPosUnitList:state=>state.editPosUnitList,
allPosRole:state=>state.posRole,
editPosRoleList:state=>state.editPosRoleList,
allPosUser:state=>state.posUser,
editPosUserList:state=>state.editPosUserList,
allPosMenu:state=>state.posMenu,
editPosMenuList:state=>state.editPosMenuList,
allPosRoleMenu:state =>state.posRoleMenu,
};
const state = {
posCompany:[],
editPosCompanyList:[],
posCategory:[],
editPosCategoryList:[],
posUnit:[],
editPosUnitList:[],
posRole:[],
editPosRoleList:[],
posUser:[],
editPosUserList:[],
posMenu:[],
editPosMenuList:[],
posRoleMenu:[],
};
const mutations = {
/* company info */
addComMutation:(state,data)=>(state.posCompany.unshift(data.response)),
getPosCompanyMutation:(state,data)=>(state.posCompany = data),
editPosCompanyMutation:(state,data)=>(state.editPosCompanyList = data),
updateCompanyMutation:(state,data)=>(state.editPosCompanyList = data),
removeCompany:(state,data)=>(state.posCompany.filter(fil => fil.id != data.data.id)),
/* end company info */
/* category info */
addCategoryMutation:(state,data)=>(state.posCategory.unshift(data.response)),
getPosCategoryMutation:(state,data)=>(state.posCategory = data),
editPosCategoryMutation:(state,data)=>(state.editPosCategoryList = data),
updateCategoryMutation:(state,data)=>(state.editPosCategoryList = data),
removeCategory:(state,data)=>(state.posCategory.filter(fil => fil.id != data.data.id)),
/* end category info */
/* unit info */
addUnitMutation:(state,data)=>(state.posUnit.unshift(data.response)),
getPosUnitMutation:(state,data)=>(state.posUnit = data),
editPosUnitMutation:(state,data)=>(state.editPosUnitList = data),
updateUnitMutation:(state,data)=>(state.editPosUnitList = data),
removeUnit:(state,data)=>(state.posUnit.filter(fil => fil.id != data.data.id)),
/* end unit info */
/* role info */
addRoleMutation:(state,data)=>(state.posRole.unshift(data.response)),
getPosRoleMutation:(state,data)=>(state.posRole = data),
editPosRoleMutation:(state,data)=>(state.editPosRoleList = data),
updateRoleMutation:(state,data)=>(state.editPosRoleList = data),
removeRole:(state,data)=>(state.posRole.filter(fil => fil.id != data.data.id)),
/* end role info */
/* user info */
addUserMutation:(state,data)=>(state.posUser.unshift(data)),
getPosUserMutation:(state,data)=>(state.posUser = data),
editPosUserMutation:(state,data)=>(state.editPosUserList = data),
updateUserMutation:(state,data)=>(state.editPosUserList = data),
removeUser:(state,data)=>(state.posUser.filter(fil => fil.id != data.id)),
/* end user info */
/* menu info */
addMenuMutation:(state,data)=>(state.posMenu.unshift(data.response)),
getPosMenuMutation:(state,data)=>(state.posMenu = data),
editPosMenuMutation:(state,data)=>(state.editPosMenuList = data),
updateMenuMutation:(state,data)=>(state.editPosMenuList = data),
removeMenu:(state,data)=>(state.posMenu.filter(fil => fil.id != data.data.id)),
instantMenuMutation:(state,data)=>(state.editPosMenuList = data),
/* end menu info */
/* role menu permission */
getPosRoleMenuMutation:(state,data)=>(state.posRoleMenu = data),
/* end role menu permission */
};
const actions = {
/* company api */
async addCompany({commit,dispatch},conpanyData){
const response = await axios.post(configManual.sitePath+"/api/company_insert",conpanyData);
let group ='message1';
let type ='';
let message ='';
if(response.data.status=='no_unique'){
type ='error';
message ='Data not unique';
}else if(response.data.status=='fail'){
type ='error';
message ='Data insert fail';
}else if(response.data.status=='success'){
type ='success';
message ='Data insert successful';
}
const messageData = {
group:group,
type:type,
message:message
};
dispatch('addNotification',messageData,{root:true});
commit("addComMutation",{response:response.data});
},
async getPosCompanyFilterList({commit},filterData){
const response = await axios.post(configManual.sitePath+"/api/company_filter",filterData);
commit("getPosCompanyMutation",response.data);
},
async editPosCompany({commit,dispatch},data){
console.log("checl edit "+data.id);
const response = await axios.get(configManual.sitePath+"/api/company_edit/"+data.id+"");
let group ='message1';
let type ='';
let message ='';
if(response.data.status =='fail'){
type ='error';
message ='Data edit fail';
dispatch('addNotification',{
group:group,
type:type,
message:message
});
}
commit("editPosCompanyMutation",response.data);
},
async updateCompany({commit,dispatch},conpanyData){
const response = await axios.post(configManual.sitePath+"/api/company_update",conpanyData);
let group ='message1';
let type ='';
let message ='';
if(response.data.status=='no_unique'){
type ='error';
message ='Data not unique';
}else if(response.data.status=='fail'){
type ='error';
message ='Data insert fail';
}else if(response.data.status=='success'){
type ='success';
message ='Data update successful';
}
const messageData = {
group:group,
type:type,
message:message
};
dispatch('addNotification',messageData,{root:true});
commit("updateCompanyMutation",{response:response.data});
},
async deleteCom({commit},data){
const response = await axios.post(configManual.sitePath+"/api/company_del",data);
commit("removeCompany",{data:data,response:response.data});
},
/* end company api */
/* category api */
async addCategory({commit,dispatch},conpanyData){
const response = await axios.post(configManual.sitePath+"/api/category_insert",conpanyData);
let group ='message1';
let type ='';
let message ='';
if(response.data.status=='no_unique'){
type ='error';
message ='Data not unique';
}else if(response.data.status=='fail'){
type ='error';
message ='Data insert fail';
}else if(response.data.status=='success'){
type ='success';
message ='Data update successful';
}
if(type !=''){
dispatch('addNotification',
{
group:group,
type:type,
message:message
},
{root:true}
);
}
commit("addCategoryMutation",{response:response.data});
},
async getPosCategoryFilterList({commit},filterData){
const response = await axios.post(configManual.sitePath+"/api/category_filter",filterData);
commit("getPosCategoryMutation",response.data);
},
async editPosCategory({commit,dispatch},data){
const response = await axios.get(configManual.sitePath+"/api/category_edit/"+data.id+"");
let group ='message1';
let type ='';
let message ='';
if(response.data.status =='fail'){
type ='error';
message ='Data edit fail';
}
if(type !=''){
dispatch('addNotification',
{
group:group,
type:type,
message:message
},
{root:true}
);
}
commit("editPosCategoryMutation",response.data);
},
async updateCategory({commit,dispatch},conpanyData){
const response = await axios.post(configManual.sitePath+"/api/category_update",conpanyData);
let group ='message1';
let type ='';
let message ='';
if(response.data.status=='no_unique'){
type ='error';
message ='Data not unique';
}else if(response.data.status=='fail'){
type ='error';
message ='Data insert fail';
}else if(response.data.status=='success'){
type ='success';
message ='Data update successful';
}
const messageData = {
group:group,
type:type,
message:message
};
dispatch('addNotification',messageData,{root:true});
commit("updateCategoryMutation",{response:response.data});
},
async deleteCategory({commit,dispatch},data){
const response = await axios.post(configManual.sitePath+"/api/category_del",data);
let group ='message1';
let type ='';
let message ='';
if(response.data.status =='no_record_found'){
type ='error';
message ='No record found';
}else if(response.data.status =='success'){
type ='success';
message ='deletion successful';
}
if(type !=''){
dispatch('addNotification',
{
group:group,
type:type,
message:message
},
{root:true}
);
}
commit("removeCategory",{data:data,response:response.data});
},
/* end category api */
/* unit api */
async addUnit({commit,dispatch},conpanyData){
const response = await axios.post(configManual.sitePath+"/api/unit_insert",conpanyData);
let group ='message1';
let type ='';
let message ='';
if(response.data.status=='no_unique'){
type ='error';
message ='Data not unique';
}else if(response.data.status=='fail'){
type ='error';
message ='Data insert fail';
}else if(response.data.status=='success'){
type ='success';
message ='Data insert successful';
}
if(type !=''){
dispatch('addNotification',
{
group:group,
type:type,
message:message
},
{root:true}
);
}
commit("addUnitMutation",{response:response.data});
},
async getPosUnitFilterList({commit},filterData){
const response = await axios.post(configManual.sitePath+"/api/unit_filter",filterData);
commit("getPosUnitMutation",response.data);
},
async editPosUnit({commit,dispatch},data){
const response = await axios.get(configManual.sitePath+"/api/unit_edit/"+data.id+"");
let group ='message1';
let type ='';
let message ='';
if(response.data.status =='fail'){
type ='error';
message ='Data edit fail';
}
if(type !=''){
dispatch('addNotification',
{
group:group,
type:type,
message:message
},
{root:true}
);
}
commit("editPosUnitMutation",response.data);
},
async updateUnit({commit,dispatch},conpanyData){
const response = await axios.post(configManual.sitePath+"/api/unit_update",conpanyData);
let group ='message1';
let type ='';
let message ='';
if(response.data.status=='no_unique'){
type ='error';
message ='Data not unique';
}else if(response.data.status=='fail'){
type ='error';
message ='Data insert fail';
}else if(response.data.status=='success'){
type ='success';
message ='Data update successful';
}
const messageData = {
group:group,
type:type,
message:message
};
dispatch('addNotification',messageData,{root:true});
commit("updateUnitMutation",{response:response.data});
},
async deleteUnit({commit,dispatch},data){
const response = await axios.post(configManual.sitePath+"/api/unit_del",data);
let group ='message1';
let type ='';
let message ='';
if(response.data.status =='no_record_found'){
type ='error';
message ='No record found';
}else if(response.data.status =='success'){
type ='success';
message ='deletion successful';
}
if(type){
dispatch('addNotification',
{
group:group,
type:type,
message:message
},
{root:true}
);
}
commit("removeUnit",{data:data,response:response.data});
},
/* end unit api */
/* role api */
async addRole({commit,dispatch},data){
const response = await axios.post(configManual.sitePath+"/api/role_insert",data);
let group ='message1';
let type ='';
let message ='';
if(response.data.status=='no_unique'){
type ='error';
message ='Data not unique';
}else if(response.data.status=='fail'){
type ='error';
message ='Data insert fail';
}else if(response.data.status=='success'){
type ='success';
message ='Data insert successful';
}
if(type !=''){
dispatch('addNotification',
{
group:group,
type:type,
message:message
},
{root:true}
);
}
commit("addRoleMutation",{response:response.data});
},
async getPosRoleFilterList({commit},filterData){
const response = await axios.post(configManual.sitePath+"/api/role_filter",filterData);
commit("getPosRoleMutation",response.data);
},
async editPosRole({commit,dispatch},data){
const response = await axios.get(configManual.sitePath+"/api/role_edit/"+data.id+"");
let group ='message1';
let type ='';
let message ='';
if(response.data.status =='fail'){
type ='error';
message ='Data edit fail';
}
if(type !=''){
dispatch('addNotification',
{
group:group,
type:type,
message:message
},
{root:true}
);
}
commit("editPosRoleMutation",response.data);
},
async updateRole({commit,dispatch},data){
const response = await axios.post(configManual.sitePath+"/api/role_update",data);
let group ='message1';
let type ='';
let message ='';
if(response.data.status=='no_unique'){
type ='error';
message ='Data not unique';
}else if(response.data.status=='fail'){
type ='error';
message ='Data insert fail';
}else if(response.data.status=='success'){
type ='success';
message ='Data update successful';
}
const messageData = {
group:group,
type:type,
message:message
};
dispatch('addNotification',messageData,{root:true});
commit("updateRoleMutation",{response:response.data});
},
async deleteRole({commit,dispatch},data){
const response = await axios.post(configManual.sitePath+"/api/role_del",data);
let group ='message1';
let type ='';
let message ='';
if(response.data.status =='no_record_found'){
type ='error';
message ='No record found';
}else if(response.data.status =='success'){
type ='success';
message ='deletion successful';
}
if(type){
dispatch('addNotification',
{
group:group,
type:type,
message:message
},
{root:true}
);
}
commit("removeRole",{data:data,response:response.data});
},
/* end role api */
/* user api */
async addUser({commit,dispatch},data){
const config = {
headers: {
'content-type': 'multipart/form-data',
'X-CSRF-TOKEN': document.querySelector('meta[name="csrf-token"]').content
}
};
const response = await axios.post(configManual.sitePath+"/api/user_insert",data,config);
let group ='message1';
let type ='';
let message ='';
if(response.data.status=='no_unique'){
type ='error';
message ='Data not unique';
}else if(response.data.status=='fail'){
type ='error';
message ='Data insert fail';
}else if(response.data.status=='success'){
type ='success';
message ='Data insert successful';
}
if(type){
dispatch('addNotification',
{
group:group,
type:type,
message:message
},
{root:true}
);
}
commit("addItemMutation",response.data);
},
async getPosUserFilterList({commit},filterData){
const response = await axios.post(configManual.sitePath+"/api/user_filter",filterData);
commit("getPosUserMutation",response.data);
},
async editPosUser({commit,dispatch},data){
const response = await axios.get(configManual.sitePath+"/api/user_edit/"+data.id+"");
let group ='message1';
let type ='';
let message ='';
if(response.data.status =='fail'){
type ='error';
message ='Data edit fail';
}
if(type !=''){
dispatch('addNotification',
{
group:group,
type:type,
message:message
},
{root:true}
);
}
commit("editPosUserMutation",response.data);
},
async updateUser({commit,dispatch},data){
const config = {
headers: {
'content-type': 'multipart/form-data',
'X-CSRF-TOKEN': document.querySelector('meta[name="csrf-token"]').content
}
};
const response = await axios.post(configManual.sitePath+"/api/user_update",data,config);
let group ='message1';
let type ='';
let message ='';
if(response.data.status=='no_unique'){
type ='error';
message ='Data not unique';
}else if(response.data.status=='fail'){
type ='error';
message ='Data insert fail';
}else if(response.data.status=='success'){
type ='success';
message ='Data update successful';
}
const messageData = {
group:group,
type:type,
message:message
};
dispatch('addNotification',messageData,{root:true});
commit("updateItemMutation",response.data);
},
async deleteUser({commit,dispatch},data){
const response = await axios.post(configManual.sitePath+"/api/user_del",data);
let group ='message1';
let type ='';
let message ='';
if(response.data.status =='no_record_found'){
type ='error';
message ='No record found';
}else if(response.data.status =='success'){
type ='success';
message ='Deletion successful';
}
if(type){
dispatch('addNotification',
{
group:group,
type:type,
message:message
},
{root:true}
);
}
commit("removeUser",data);
},
/* end user api */
/* menu api */
async addMenu({commit,dispatch},data){
const response = await axios.post(configManual.sitePath+"/api/menu_insert",data);
let group ='message1';
let type ='';
let message ='';
if(response.data.status=='no_unique'){
type ='error';
message ='Data not unique';
}else if(response.data.status=='fail'){
type ='error';
message ='Data insert fail';
}else if(response.data.status=='success'){
type ='success';
message ='Data insert successful';
}
if(type !=''){
dispatch('addNotification',
{
group:group,
type:type,
message:message
},
{root:true}
);
}
commit("addMenuMutation",{response:response.data});
},
async getPosMenuFilterList({commit},filterData){
const response = await axios.post(configManual.sitePath+"/api/menu_filter",filterData);
commit("getPosMenuMutation",response.data);
},
async editPosMenu({commit,dispatch},data){
const response = await axios.get(configManual.sitePath+"/api/menu_edit/"+data.id+"");
let group ='message1';
let type ='';
let message ='';
if(response.data.status =='fail'){
type ='error';
message ='Data edit fail';
}
if(type !=''){
dispatch('addNotification',
{
group:group,
type:type,
message:message
},
{root:true}
);
}
commit("editPosMenuMutation",response.data);
},
async updateMenu({commit,dispatch},data){
const response = await axios.post(configManual.sitePath+"/api/menu_update",data);
let group ='message1';
let type ='';
let message ='';
if(response.data.status=='no_unique'){
type ='error';
message ='Data not unique';
}else if(response.data.status=='fail'){
type ='error';
message ='Data insert fail';
}else if(response.data.status=='success'){
type ='success';
message ='Data update successful';
}
const messageData = {
group:group,
type:type,
message:message
};
dispatch('addNotification',messageData,{root:true});
commit("updateMenuMutation",{response:response.data});
},
async deleteMenu({commit,dispatch},data){
const response = await axios.post(configManual.sitePath+"/api/menu_del",data);
let group ='message1';
let type ='';
let message ='';
if(response.data.status =='no_record_found'){
type ='error';
message ='No record found';
}else if(response.data.status =='success'){
type ='success';
message ='deletion successful';
}
if(type){
dispatch('addNotification',
{
group:group,
type:type,
message:message
},
{root:true}
);
}
commit("removeMenu",{data:data,response:response.data});
},
async instantMenu({commit,dispatch},data){
const response = await axios.post(configManual.sitePath+"/api/menu_instant",data);
//alert(response.data.menu_name);
commit("instantMenuMutation",response.data);
},
/* end menu api */
/* role menu permission */
async getPosRoleMenuFilterList({commit},filterData){
const response = await axios.post(configManual.sitePath+"/api/role_menu_filter",filterData);
commit("getPosRoleMenuMutation",response.data);
},
async updateRoleMenu({commit,dispatch},data){
const response = await axios.post(configManual.sitePath+"/api/role_menu_update",data);
let group ='message1';
let type ='';
let message ='';
if(response.data.status=='fail'){
type ='error';
message ='Data insert fail';
}else if(response.data.status=='success'){
type ='success';
message ='Data update successful';
}
const messageData = {
group:group,
type:type,
message:message
};
dispatch('addNotification',messageData,{root:true});
},
/* role menu permission */
};
export default {
state,
getters,
mutations,
actions
}
create a file notificationMessage.js in the location resources\js\store\modules\ and add the following code
import axios from "axios";
const getters = {
getNotifications:state =>state.notifications
};
const state = {
notifications:null,
};
const mutations = {
push_notification:(state,messageData)=>(state.notifications = messageData),
remove_notification:(state)=>(state.notifications = null),
};
const actions = {
async addNotification({commit},message){
commit("push_notification",message);
}
};
export default {
state,
getters,
mutations,
actions
}
Import index.js in the location resources\js\app.js
import store from "../js/store/index";
add the following code in the laravel project location:posmaster\routes\api.php
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Route;
use App\Auth\Role;
/*
|--------------------------------------------------------------------------
| API Routes
|--------------------------------------------------------------------------
|
| Here is where you can register API routes for your application. These
| routes are loaded by the RouteServiceProvider within a group which
| is assigned the "api" middleware group. Enjoy building your API!
|
*/
Route::middleware('auth:api')->get('/user', function (Request $request) {
return $request->user();
});
// api
Route::get('getuser','Json\ApiController@getUser');
//Route::post('vlogin','Json\ApiController@loginUser');
Route::post('logincheck','Json\ApiController@loginUser');
/* company api */
Route::post('company_insert','Json\ApiController@company_insert');
Route::post('company_filter','Json\ApiController@company_filter');
Route::get('company_edit/{id}','Json\ApiController@company_edit');
Route::post('company_update','Json\ApiController@company_update');
Route::post('company_del','Json\ApiController@company_del');
Route::get('company_list','Json\ApiController@company_list');
/* company api */
/* category api */
Route::post('category_insert','Json\ApiController@category_insert');
Route::post('category_filter','Json\ApiController@category_filter');
Route::get('category_edit/{id}','Json\ApiController@category_edit');
Route::post('category_update','Json\ApiController@category_update');
Route::post('category_del','Json\ApiController@category_del');
/* category api */
/* unit api */
Route::post('unit_insert','Json\ApiController@unit_insert');
Route::post('unit_filter','Json\ApiController@unit_filter');
Route::get('unit_edit/{id}','Json\ApiController@unit_edit');
Route::post('unit_update','Json\ApiController@unit_update');
Route::post('unit_del','Json\ApiController@unit_del');
/* unit api */
/* item api */
Route::post('item_insert','Json\ApiController@item_insert');
Route::post('item_filter','Json\ApiController@item_filter');
Route::get('item_edit/{id}','Json\ApiController@item_edit');
Route::post('item_update','Json\ApiController@item_update');
Route::post('item_del','Json\ApiController@item_del');
Route::get('item_last_code','Json\ApiController@item_last_code');
Route::post('productUpload','Json\ApiController@productUpload');
/* unit api */
/* role api */
Route::post('role_insert','Json\ApiController@role_insert');
Route::post('role_filter','Json\ApiController@role_filter');
Route::get('role_edit/{id}','Json\ApiController@role_edit');
Route::post('role_update','Json\ApiController@role_update');
Route::post('role_del','Json\ApiController@role_del');
/* role api */
/* user api */
Route::post('user_insert','Json\ApiController@user_insert');
Route::post('user_filter','Json\ApiController@user_filter');
Route::get('user_edit/{id}','Json\ApiController@user_edit');
Route::post('user_update','Json\ApiController@user_update');
Route::post('user_del','Json\ApiController@user_del');
/* user api */
/* menu api */
Route::post('menu_insert','Json\ApiController@menu_insert');
Route::post('menu_filter','Json\ApiController@menu_filter');
Route::get('menu_edit/{id}','Json\ApiController@menu_edit');
Route::post('menu_update','Json\ApiController@menu_update');
Route::post('menu_del','Json\ApiController@menu_del');
Route::post('menu_instant','Json\ApiController@menu_instant');
/* menu api */
/* role menu api */
Route::post('role_menu_filter','Json\ApiController@role_menu_filter');
Route::post('role_menu_update','Json\ApiController@role_menu_update');
/* role menu api */
/* user menu api */
Route::post('user_menu','Json\ApiController@getUserMenu');
/* end user menu api */
/* inv customer api */
Route::post('customer_insert','Json\ApiController@customer_insert');
Route::post('customer_filter','Json\ApiController@customer_filter');
Route::get('customer_edit/{id}','Json\ApiController@customer_edit');
Route::post('customer_update','Json\ApiController@customer_update');
Route::post('customer_del','Json\ApiController@customer_del');
/* inv customer api */
/* inv supplier api */
Route::post('supplier_insert','Json\ApiController@supplier_insert');
Route::post('supplier_filter','Json\ApiController@supplier_filter');
Route::get('supplier_edit/{id}','Json\ApiController@supplier_edit');
Route::post('supplier_update','Json\ApiController@supplier_update');
Route::post('supplier_del','Json\ApiController@supplier_del');
/* inv supplier api */
Route::get('testapi','Json\ApiController@testapi');
add the following code in the laravel project location:posmaster\app\Http\Controllers\Json\ApiController.php
<?php namespace App\Http\Controllers\Json;
use App\Http\Requests;
use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Validator;
use Carbon\Carbon;
use Session;
use DB;
use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Facades\Hash;
use Illuminate\Support\Facades\Input;
use App\Models\Auth\Role;
use App\Services\Web\WebServices;
use Illuminate\Support\Facades\File;
use App\User;
use App\Models\Admin\AdminCompany;
use App\Models\Admin\AdminMenu;
use App\Models\Admin\AdminRoleMenuPermission;
use App\Models\Admin\AdminRole;
use App\Models\Inventory\InvCategory;
use App\Models\Inventory\InvUnit;
use App\Models\Inventory\InvItem;
use App\Models\Inventory\InvCustomer;
use App\Models\Inventory\InvSupplier;
class ApiController extends Controller {
public static $BAG_ITEMS="";
public function __construct()
{
}
public function getUser(Request $request){
//$userId = $request->user_id;
$userId =35;
$userRoleData = array();
$userIns = User::orderBy('admin_user.id','desc')
->where('admin_user.id',$userId)
->first()->toArray();
if($userIns){
$role = Role::orderBy('roles.role_name','asc')
->select('roles.*')
->join('user_roles','user_roles.role_id','=','roles.id')
->where('user_roles.user_id',$userId)
->get()->toArray();
$userRoleData = array_merge($userIns,['roles'=>$role]);
}
if($userIns){
return response()->json($userRoleData);
}else{
return response()->json([]);
}
}
public function loginUser(Request $request){
$userRoleData = array();
$userInstance = null;
$credentials = null;
if($request->input('email') !=''){
$userInstance = User::where('email',trim($request->input('email')))->first();
if($userInstance){
$credentials = $request->only('email', 'password');
}
}else if($request->input('mobile') !=''){
$userInstance = User::where('mobile',trim($request->input('mobile')))->first();
if($userInstance){
$credentials = $request->only('mobile', 'password');
}
}
if($userInstance ){
if($userInstance && Auth::attempt($credentials)){
$rolemenuPermission = AdminRoleMenuPermission::orderBy('admin_role_menu_permission.id','asc')
->select(
'admin_menu.id as menu_id',
'admin_role_menu_permission.id as role_menu_permission_id',
'admin_menu.menu_name',
'admin_menu.route_path',
'admin_menu.route_name',
'admin_role_menu_permission.is_insert',
'admin_role_menu_permission.is_edit',
'admin_role_menu_permission.is_view',
'admin_role_menu_permission.is_delete'
)
->join('admin_menu','admin_menu.id','=','admin_role_menu_permission.menu_id')
->where('admin_role_menu_permission.role_id',@$userInstance->role_id)
->get()->toArray();
foreach($rolemenuPermission as $rolemenuPermi){
$menuPermissionData[$rolemenuPermi['route_name']] = $rolemenuPermi;
}
$userRoleMenuData = array_merge($userInstance->toArray(),['access_by_company_id'=>$userInstance->company_id],['menu'=>$menuPermissionData]);
return response()->json($userRoleMenuData);
}else{
return response()->json(['status'=>'fail']);
}
}else{
return response()->json(['status'=>'mismatch']);
}
}
/* company api */
public function company_insert(Request $request){
$insert = null;
$checkUnique = null;
$checkUnique = AdminCompany::where('name',$request->input('name'))->orWhere('short_name',$request->input('short_name'))->first();
if($request->input('name') && $request->input('short_name')){
if(! @$checkUnique->id){
$companyIns = new AdminCompany();
$companyIns->name = $request->input('name');
$companyIns->short_name = $request->input('short_name');
$companyIns->is_active = $request->input('is_active');
$companyIns->create_date = Carbon::now();
$companyIns->create_by = $request->input('create_by');
$insert = $companyIns->save();
if($insert){
return response()->json(['status'=>'success']);
}else{
return response()->json(['status'=>'fail']);
}
}else{
return response()->json(['status'=>'no_unique']);
}
}
}
public function company_edit(Request $request){
$update = null;
$id = @$request->route()->parameter('id');
if($id){
$companyIns = AdminCompany::orderBy('admin_company_info.create_date','desc')
->select('admin_company_info.*','admin_user.full_name as create_by_name')
->leftJoin('admin_user','admin_user.id','=','admin_company_info.create_by')
->where('admin_company_info.id',$id)
->first();
if($companyIns){
return response()->json($companyIns);
}else{
return response()->json(['status'=>'fail']);
}
}
}
public function company_update(Request $request){
$update = null;
if($request->input('id')){
$checkUnique = null;
$checkUnique = AdminCompany::where('name',$request->input('name'))->where('short_name',$request->input('short_name'))->where('id','!=',$request->input('id'))->first();
if(! @$checkUnique->id){
$companyIns = AdminCompany::where('id',$request->input('id'))->first();
if($companyIns){
$companyIns->name = $request->input('name');
$companyIns->short_name = $request->input('short_name');
$companyIns->is_active = $request->input('is_active');
$companyIns->update_date = Carbon::now();
$companyIns->update_by = $request->input('update_by');
$update = $companyIns->save();
if($update){
return response()->json(['status'=>'success']);
}else{
return response()->json(['status'=>'fail']);
}
}else{
return response()->json(['status'=>'no_data']);
}
}else{
return response()->json(['status'=>'no_unique']);
}
}
}
public function company_list(Request $request){
$companyList = AdminCompany::orderBy('create_date','desc')->where('is_active',1)->limit(500)->get();
if($companyList){
return response()->json($companyList);
}else{
return response()->json(['status'=>'no table record found']);
}
}
public function company_filter(Request $request){
$name = ($request->input('name'))? trim($request->input('name')):null;
$short_name = ($request->input('short_name'))? trim($request->input('short_name')):null;
$is_active = ($request->input('is_active'))? $request->input('is_active'):null;
if($name || $short_name || $is_active){
$companyList = AdminCompany::orderBy('admin_company_info.create_date','desc')
->select('admin_company_info.*','admin_user.full_name as create_by_name')
->leftJoin('admin_user','admin_user.id','=','admin_company_info.create_by')
->where(function($search) use($name,$short_name,$is_active){
if($name){
$search->where('admin_company_info.name','like', $name.'%');
//$search->where('name','=',$name);
}
if($short_name){
$search->where('admin_company_info.short_name','like', $short_name.'%');
}
if($is_active=='yes'){
$search->where('admin_company_info.is_active','=', 1);
}else if($is_active=='no'){
$search->where('admin_company_info.is_active','=', 0);
}else{
$search->where('admin_company_info.is_active','=', 1);
}
})
->limit(500)
->get();
}else{
$companyList = AdminCompany::orderBy('admin_company_info.create_date','desc')
->select('admin_company_info.*','admin_user.full_name as create_by_name')
->leftJoin('admin_user','admin_user.id','=','admin_company_info.create_by')
->where('admin_company_info.is_active',1)
->limit(500)
->get();
}
if($companyList){
return response()->json($companyList);
}else{
return response()->json(['status'=>'no_data']);
}
}
public function company_del(Request $request){
if($request->input('id')){
$companyList = AdminCompany::where("id",$request->input('id'))->first();
if($companyList){
$companyList->is_active = 0;
$companyList->save();
return response()->json(['status'=>'success']);
}else{
return response()->json(['status'=>'no_record_found']);
}
}
}
/* end company api */
/* category api */
public function category_insert(Request $request){
$insert = null;
$checkUnique = null;
$checkUnique = InvCategory::where('category_name',$request->input('category_name'))->where('short_name',$request->input('short_name'))->where('company_id',$request->input('company_id'))->first();
if($request->input('category_name') && $request->input('short_name')){
if(! @$checkUnique->id){
$categoryIns = new InvCategory();
$categoryIns->category_name = $request->input('category_name');
$categoryIns->short_name = $request->input('short_name');
$categoryIns->is_active = $request->input('is_active');
$categoryIns->create_date = Carbon::now();
$categoryIns->create_by = $request->input('create_by');
$categoryIns->company_id = $request->input('company_id');
$categoryIns->vat_percent = ($request->input('vat_percent'))? $request->input('vat_percent'):0;
$categoryIns->scharge_percent= ($request->input('scharge_percent'))? $request->input('scharge_percent'):0;
$categoryIns->code_ref = $request->input('code_ref');
$insert = $categoryIns->save();
if($insert){
return response()->json(['status'=>'success']);
}else{
return response()->json(['status'=>'fail']);
}
}else{
return response()->json(['status'=>'no_unique']);
}
}
}
public function category_edit(Request $request){
$update = null;
$id = @$request->route()->parameter('id');
if($id){
$categoryIns = InvCategory::orderBy('inv_item_category.create_date','desc')
->select('inv_item_category.*','admin_user.full_name as create_by_name','admin_company_info.name as company_name','admin_company_info.short_name as company_short_name')
->leftJoin('admin_user','admin_user.id','=','inv_item_category.create_by')
->join('admin_company_info','admin_company_info.id','=','inv_item_category.company_id')
->where('inv_item_category.id',$id)
->first();
if($categoryIns){
return response()->json($categoryIns);
}else{
return response()->json(['status'=>'fail']);
}
}
}
public function category_update(Request $request){
$update = null;
if($request->input('id')){
$checkUnique = null;
$checkUnique = InvCategory::where('category_name',$request->input('category_name'))->where('short_name',$request->input('short_name'))->where('company_id',$request->input('company_id'))->where('id','!=',$request->input('id'))->first();
if(! @$checkUnique->id){
$categoryIns = InvCategory::where('id',$request->input('id'))->first();
if($categoryIns){
$categoryIns->category_name = $request->input('category_name');
$categoryIns->short_name = $request->input('short_name');
$categoryIns->is_active = $request->input('is_active');
$categoryIns->update_date = Carbon::now();
$categoryIns->update_by = $request->input('update_by');
$categoryIns->company_id = $request->input('company_id');
$categoryIns->vat_percent = ($request->input('vat_percent'))? $request->input('vat_percent'):0;
$categoryIns->scharge_percent= ($request->input('scharge_percent'))? $request->input('scharge_percent'):0;
$categoryIns->code_ref = $request->input('code_ref');
$update = $categoryIns->save();
if($update){
return response()->json(['status'=>'success']);
}else{
return response()->json(['status'=>'fail']);
}
}else{
return response()->json(['status'=>'no_data']);
}
}else{
return response()->json(['status'=>'no_unique']);
}
}
}
public function category_list(Request $request){
$categoryList = InvCategory::orderBy('create_date','desc')->where('is_active',1)->limit(500)->get();
if($categoryList){
return response()->json($categoryList);
}else{
return response()->json(['status'=>'no table record found']);
}
}
public function category_filter(Request $request){
$category_name = ($request->input('category_name'))? trim($request->input('category_name')):null;
$short_name = ($request->input('short_name'))? trim($request->input('short_name')):null;
$is_active = ($request->input('is_active'))? $request->input('is_active'):null;
$company_id = ($request->input('company_id'))? $request->input('company_id'):null;
if($category_name || $short_name || $is_active || $company_id){
$categoryList = InvCategory::orderBy('inv_item_category.create_date','desc')
->select('inv_item_category.*','admin_user.full_name as create_by_name','admin_company_info.name as company_name','admin_company_info.short_name as company_short_name')
->leftJoin('admin_user','admin_user.id','=','inv_item_category.create_by')
->join('admin_company_info','admin_company_info.id','=','inv_item_category.company_id')
->where(function($search) use($category_name,$short_name,$is_active,$company_id){
if($category_name){
$search->where('inv_item_category.category_name','like', $category_name.'%');
}
if($short_name){
$search->where('inv_item_category.short_name','like', $short_name.'%');
}
if($is_active=='yes'){
$search->where('inv_item_category.is_active','=', 1);
}else if($is_active=='no'){
$search->where('inv_item_category.is_active','=', 0);
}else{
$search->where('inv_item_category.is_active','=', 1);
}
if($company_id){
$search->where('inv_item_category.company_id','=', $company_id);
}
})
->limit(500)
->get();
}else{
$categoryList = InvCategory::orderBy('inv_item_category.create_date','desc')
->select('inv_item_category.*','admin_user.full_name as create_by_name','admin_company_info.name as company_name','admin_company_info.short_name as company_short_name')
->leftJoin('admin_user','admin_user.id','=','inv_item_category.create_by')
->join('admin_company_info','admin_company_info.id','=','inv_item_category.company_id')
->where('inv_item_category.is_active',1)
->limit(500)
->get();
}
if($categoryList){
return response()->json($categoryList);
}else{
return response()->json(['status'=>'no_data']);
}
}
public function category_del(Request $request){
if($request->input('id')){
$categoryList = InvCategory::where("id",$request->input('id'))->first();
if($categoryList){
$categoryList->is_active = 0;
$categoryList->save();
return response()->json(['status'=>'success']);
}else{
return response()->json(['status'=>'no_record_found']);
}
}
}
/* end category api */
/* unit api */
public function unit_insert(Request $request){
$insert = null;
$checkUnique = null;
$checkUnique = InvUnit::where('unit_name',$request->input('unit_name'))->where('short_name',$request->input('short_name'))->where('company_id',$request->input('company_id'))->first();
if($request->input('unit_name') && $request->input('short_name')){
if(! @$checkUnique->id){
$unitIns = new InvUnit();
$unitIns->unit_name = $request->input('unit_name');
$unitIns->short_name = $request->input('short_name');
$unitIns->is_active = $request->input('is_active');
$unitIns->create_date = Carbon::now();
$unitIns->create_by = $request->input('create_by');
$unitIns->company_id = $request->input('company_id');
$insert = $unitIns->save();
if($insert){
return response()->json(['status'=>'success']);
}else{
return response()->json(['status'=>'fail']);
}
}else{
return response()->json(['status'=>'no_unique']);
}
}
}
public function unit_edit(Request $request){
$update = null;
$id = @$request->route()->parameter('id');
if($id){
$unitIns = InvUnit::orderBy('inv_item_unit.create_date','desc')
->select('inv_item_unit.*','admin_user.full_name as create_by_name')
->leftJoin('admin_user','admin_user.id','=','inv_item_unit.create_by')
->where('inv_item_unit.id',$id)
->first();
if($unitIns){
return response()->json($unitIns);
}else{
return response()->json(['status'=>'fail']);
}
}
}
public function unit_update(Request $request){
$update = null;
if($request->input('id')){
$checkUnique = null;
$checkUnique = InvUnit::where('unit_name',$request->input('unit_name'))->where('short_name',$request->input('short_name'))->where('company_id',$request->input('company_id'))->where('id','!=',$request->input('id'))->first();
if(! @$checkUnique->id){
$unitIns = InvUnit::where('id',$request->input('id'))->where('company_id',$request->input('company_id'))->first();
if($unitIns){
$unitIns->unit_name = $request->input('unit_name');
$unitIns->short_name = $request->input('short_name');
$unitIns->is_active = $request->input('is_active');
$unitIns->update_date = Carbon::now();
$unitIns->update_by = $request->input('update_by');
$unitIns->company_id = $request->input('company_id');
$update = $unitIns->save();
if($update){
return response()->json(['status'=>'success']);
}else{
return response()->json(['status'=>'fail']);
}
}else{
return response()->json(['status'=>'no_data']);
}
}else{
return response()->json(['status'=>'no_unique']);
}
}
}
public function unit_list(Request $request){
$unitList = InvUnit::orderBy('create_date','desc')->where('is_active',1)->limit(500)->get();
if($unitList){
return response()->json($unitList);
}else{
return response()->json(['status'=>'no table record found']);
}
}
public function unit_filter(Request $request){
$company_id = ($request->input('company_id'))? $request->input('company_id'):'';
$unit_name = ($request->input('unit_name'))? $request->input('unit_name'):'';
$short_name = ($request->input('short_name'))? $request->input('short_name'):'';
$is_active = ($request->input('is_active'))? $request->input('is_active'):'';
if($unit_name || $short_name || $is_active || $company_id){
$unitList = InvUnit::orderBy('inv_item_unit.create_date','desc')
->select('inv_item_unit.*','admin_user.full_name as create_by_name')
->leftJoin('admin_user','admin_user.id','=','inv_item_unit.create_by')
->where(function($search) use($unit_name,$short_name,$is_active,$company_id){
if($unit_name){
$search->where('inv_item_unit.unit_name','like', $unit_name.'%');
}
if($short_name){
$search->where('inv_item_unit.short_name','like', $short_name.'%');
}
if($is_active=='yes'){
$search->where('inv_item_unit.is_active','=', 1);
}if($is_active=='no'){
$search->where('inv_item_unit.is_active','=', 0);
}else{
$search->where('inv_item_unit.is_active','=', 1);
}
if($company_id){
$search->where('inv_item_unit.company_id','=', $company_id);
}
})
->limit(500)
->get();
}else{
$unitList = InvUnit::orderBy('inv_item_unit.create_date','desc')
->select('inv_item_unit.*','admin_user.full_name as create_by_name')
->leftJoin('admin_user','admin_user.id','=','inv_item_unit.create_by')
->where('inv_item_unit.is_active',1)
->limit(500)
->get();
}
if($unitList){
return response()->json($unitList);
}else{
return response()->json(['status'=>'no_data']);
}
}
public function unit_del(Request $request){
if($request->input('id')){
$unitList = InvUnit::where("id",$request->input('id'))->first();
if($unitList){
$unitList->is_active = 0;
$unitList->save();
return response()->json(['status'=>'success']);
}else{
return response()->json(['status'=>'no_record_found']);
}
}
}
/* end unit api */
/* item */
public function item_insert(Request $request){
$insert = null;
$checkUnique = null;
$location = base_path()."/public/images/upload/inv/";
if(!File::exists($location)) {
File::makeDirectory($location, 0775, true);
}
$checkUnique = InvItem::where('item_code',$request->input('item_code'))->first();
if($request->input('item_code') && $request->input('item_name') && $request->input('category_id') && $request->input('unit_id') && $request->input('company_id')){
if(! @$checkUnique->id){
$unitIns = new InvItem();
$unitIns->item_code = $request->input('item_code');
$unitIns->item_name = $request->input('item_name');
$unitIns->short_name = $request->input('short_name');
$unitIns->category_id = $request->input('category_id');
$unitIns->company_id = $request->input('company_id');
$unitIns->unit_id = $request->input('unit_id');
$unitIns->rate = ($request->input('rate'))? $request->input('rate'):0;
$unitIns->offer_rate =( $request->input('offer_rate'))? $request->input('offer_rate'):0;
$unitIns->offer_rate_from = ($request->input('offer_rate_from'))? $request->input('offer_rate_from'):0;
$unitIns->offer_rate_to = ($request->input('offer_rate_to'))? $request->input('offer_rate_to'):0;
$unitIns->is_trade_offer = ($request->input('is_trade_offer'))? $request->input('is_trade_offer'):0;
$unitIns->trade_offer_from = ($request->input('trade_offer_from'))? $request->input('trade_offer_from'):0;
$unitIns->trade_offer_to = ($request->input('trade_offer_to'))? $request->input('trade_offer_to'):0;
$unitIns->is_active = $request->input('is_active');
$unitIns->create_date = Carbon::now();
$unitIns->create_by = $request->input('create_by');
$unitIns->company_id = $request->input('company_id');
$file_name = $request->file->getClientOriginalName();
$item_image = md5($file_name. microtime()).'.'.$request->file->getClientOriginalExtension();
$upFile = $request->file('file')->move($location ,$item_image);
$unitIns->item_image_path = $item_image;
$insert = $unitIns->save();
if($insert){
return response()->json(['status'=>'success']);
}else{
return response()->json(['status'=>'fail']);
}
}else{
return response()->json(['status'=>'no_unique']);
}
}
}
public function item_edit(Request $request){
$update = null;
$id = @$request->route()->parameter('id');
if($id){
$unitIns = InvItem::orderBy('inv_item.create_date','desc')
->select(
'inv_item.*',
'admin_user.full_name as create_by_name',
'inv_item_unit.unit_name',
'inv_item_unit.short_name as unit_short_name',
'admin_company_info.name as company_name',
'admin_company_info.short_name as company_short_name',
'inv_item_category.category_name',
'inv_item_category.short_name as category_short_name',
'inv_item_category.vat_percent',
'inv_item_category.scharge_percent'
)
->join('inv_item_unit','inv_item_unit.id','=','inv_item.unit_id')
->join('admin_company_info','admin_company_info.id','=','inv_item.company_id')
->join('inv_item_category','inv_item_category.id','=','inv_item.category_id')
->leftJoin('admin_user','admin_user.id','=','inv_item.create_by')
->where('inv_item.id',$id)
->first();
if($unitIns){
return response()->json($unitIns);
}else{
return response()->json(['status'=>'fail']);
}
}
}
public function item_update(Request $request){
$update = null;
$location = base_path()."/public/images/upload/inv/";
if($request->input('id')){
$checkUnique = null;
$checkUnique = InvItem::where('item_code',$request->input('item_code'))->where('id','!=',$request->input('id'))->first();
if(! @$checkUnique->id){
$unitIns = InvItem::where('id',$request->input('id'))->where('item_code',$request->input('item_code'))->first();
if($unitIns){
$unitIns->item_name = $request->input('item_name');
$unitIns->short_name = $request->input('short_name');
$unitIns->category_id = $request->input('category_id');
$unitIns->company_id = $request->input('company_id');
$unitIns->unit_id = $request->input('unit_id');
$unitIns->rate = ($request->input('rate'))? $request->input('rate'):0;
$unitIns->offer_rate =( $request->input('offer_rate'))? $request->input('offer_rate'):0;
$unitIns->offer_rate_from = ($request->input('offer_rate_from'))? $request->input('offer_rate_from'):0;
$unitIns->offer_rate_to = ($request->input('offer_rate_to'))? $request->input('offer_rate_to'):0;
$unitIns->is_trade_offer = ($request->input('is_trade_offer'))? $request->input('is_trade_offer'):0;
$unitIns->trade_offer_from = ($request->input('trade_offer_from'))? $request->input('trade_offer_from'):0;
$unitIns->trade_offer_to = ($request->input('trade_offer_to'))? $request->input('trade_offer_to'):0;
$unitIns->is_active = $request->input('is_active');
$unitIns->update_date = Carbon::now();
$unitIns->update_by = $request->input('update_by');
$unitIns->company_id = $request->input('company_id');
if(@$request->file->getClientOriginalName() && @$unitIns->item_image_path){
$exist_item_image_path = $location.@$unitIns->item_image_path;
if(File::exists($exist_item_image_path)){
File::delete($exist_item_image_path);
}
}
$file_name = $request->file->getClientOriginalName();
$item_image = md5($file_name. microtime()).'.'.$request->file->getClientOriginalExtension();
$upFile = $request->file('file')->move($location ,$item_image);
$unitIns->item_image_path = $item_image;
$update = $unitIns->save();
if($update){
return response()->json(['status'=>'success']);
}else{
return response()->json(['status'=>'fail']);
}
}else{
return response()->json(['status'=>'no_data']);
}
}else{
return response()->json(['status'=>'no_unique']);
}
}
}
public function item_filter(Request $request){
$company_id = ($request->input('company_id'))? $request->input('company_id'):'';
$category_id = ($request->input('category_id'))? $request->input('category_id'):'';
$unit_id = ($request->input('unit_id'))? $request->input('unit_id'):'';
$item_name = ($request->input('item_name'))? trim($request->input('item_name')):'';
$item_code = ($request->input('item_code'))? trim($request->input('item_code')):'';
$is_active = ($request->input('is_active'))? $request->input('is_active'):'';
if($item_name || $item_code || $is_active || $company_id || $category_id || $unit_id){
$unitList = InvItem::orderBy('inv_item.create_date','desc')
->select(
'inv_item.*',
'admin_user.full_name as create_by_name',
'inv_item_unit.unit_name',
'inv_item_unit.short_name as unit_short_name',
'admin_company_info.name as company_name',
'admin_company_info.short_name as company_short_name',
'inv_item_category.category_name',
'inv_item_category.short_name as category_short_name',
'inv_item_category.vat_percent',
'inv_item_category.scharge_percent'
)
->join('inv_item_unit','inv_item_unit.id','=','inv_item.unit_id')
->join('admin_company_info','admin_company_info.id','=','inv_item.company_id')
->join('inv_item_category','inv_item_category.id','=','inv_item.category_id')
->leftJoin('admin_user','admin_user.id','=','inv_item.create_by')
->where(function($search) use($item_name,$item_code,$is_active,$company_id,$category_id,$unit_id){
if($item_name){
$search->where('inv_item.item_name','like', $item_name.'%');
}
if($item_code){
$search->where('inv_item.item_code','=', $item_code);
}
if($is_active=='yes'){
$search->where('inv_item.is_active','=', 1);
}if($is_active=='no'){
$search->where('inv_item.is_active','=', 0);
}else{
$search->where('inv_item.is_active','=', 1);
}
if($company_id){
$search->where('inv_item.company_id','=', $company_id);
}
if($category_id){
$search->where('inv_item.category_id','=', $category_id);
}
if($unit_id){
$search->where('inv_item.unit_id','=', $unit_id);
}
})
->limit(500)
->get();
}else{
$unitList = InvItem::orderBy('inv_item.create_date','desc')
->select(
'inv_item.*',
'admin_user.full_name as create_by_name',
'inv_item_unit.unit_name',
'inv_item_unit.short_name as unit_short_name',
'admin_company_info.name as company_name',
'admin_company_info.short_name as company_short_name',
'inv_item_category.category_name',
'inv_item_category.short_name as category_short_name',
'inv_item_category.vat_percent',
'inv_item_category.scharge_percent'
)
->join('inv_item_unit','inv_item_unit.id','=','inv_item.unit_id')
->join('admin_company_info','admin_company_info.id','=','inv_item.company_id')
->join('inv_item_category','inv_item_category.id','=','inv_item.category_id')
->leftJoin('admin_user','admin_user.id','=','inv_item.create_by')
->where('inv_item.is_active',1)
->limit(500)
->get();
}
if($unitList){
return response()->json($unitList);
}else{
return response()->json(['status'=>'no_data']);
}
}
public function item_del(Request $request){
if($request->input('id')){
$unitList = InvItem::where("id",$request->input('id'))->first();
if($unitList){
$unitList->is_active = 0;
$unitList->save();
return response()->json(['status'=>'success']);
}else{
return response()->json(['status'=>'no_record_found']);
}
}
}
public function item_last_code(Request $request){
$last_item_code = null;
$unitList = InvItem::orderBy('id','desc')->limit(1)->first();
if(@$unitList->item_code){
$increment = (int)explode("-",@$unitList->item_code)[1];
$last_item_code ="item-".($increment+1);
return response()->json(['code'=>$last_item_code]);
}else{
$last_item_code ="item-1";
return response()->json(['code'=>$last_item_code]);
}
}
public function productUpload(Request $request){
$all = $request->all();
$file_name = $request->file->getClientOriginalName();
$original= 'test'.$request->file->getClientOriginalExtension();
$location = base_path()."/public/images/upload/inv/";
//$upFile = WebServices::apiFileUpload($request,true,$location);
$upFile = $request->file('file')->move($location ,$file_name);
$okk = $upFile;
}
/* end item */
/* role api */
public function role_insert(Request $request){
$insert = null;
$checkUnique = null;
$checkUnique = AdminRole::where('role_name',$request->input('role_name'))->first();
if($request->input('role_name')){
if(! @$checkUnique->id){
$unitIns = new AdminRole();
$unitIns->role_name = $request->input('role_name');
$unitIns->is_active = $request->input('is_active');
$unitIns->create_date = Carbon::now();
$unitIns->create_by = $request->input('create_by');
$insert = $unitIns->save();
if($insert){
return response()->json(['status'=>'success']);
}else{
return response()->json(['status'=>'fail']);
}
}else{
return response()->json(['status'=>'no_unique']);
}
}
}
public function role_edit(Request $request){
$update = null;
$id = @$request->route()->parameter('id');
if($id){
$unitIns = AdminRole::orderBy('admin_role.create_date','desc')
->select('admin_role.*','admin_user.full_name as create_by_name')
->leftJoin('admin_user','admin_user.id','=','admin_role.create_by')
->where('admin_role.id',$id)
->first();
if($unitIns){
return response()->json($unitIns);
}else{
return response()->json(['status'=>'fail']);
}
}
}
public function role_update(Request $request){
$update = null;
if($request->input('id')){
$checkUnique = null;
$checkUnique = AdminRole::where('role_name',$request->input('role_name'))->where('id','!=',$request->input('id'))->first();
if(! @$checkUnique->id){
$unitIns = AdminRole::where('id',$request->input('id'))->first();
if($unitIns){
$unitIns->role_name = $request->input('role_name');
$unitIns->is_active = $request->input('is_active');
$unitIns->update_date = Carbon::now();
$unitIns->update_by = $request->input('update_by');
$update = $unitIns->save();
if($update){
return response()->json(['status'=>'success']);
}else{
return response()->json(['status'=>'fail']);
}
}else{
return response()->json(['status'=>'no_data']);
}
}else{
return response()->json(['status'=>'no_unique']);
}
}
}
public function role_list(Request $request){
$unitList = AdminRole::orderBy('create_date','desc')->where('is_active',1)->limit(500)->get();
if($unitList){
return response()->json($unitList);
}else{
return response()->json(['status'=>'no table record found']);
}
}
public function role_filter(Request $request){
$role_name = ($request->input('role_name'))? $request->input('role_name'):'';
$is_active = ($request->input('is_active'))? $request->input('is_active'):'';
if($role_name || $is_active ){
$unitList = AdminRole::orderBy('admin_role.create_date','desc')
->select('admin_role.*','admin_user.full_name as create_by_name')
->leftJoin('admin_user','admin_user.id','=','admin_role.create_by')
->where(function($search) use($role_name,$is_active){
if($role_name){
$search->where('admin_role.role_name','like', $role_name.'%');
}
if($is_active=='yes'){
$search->where('admin_role.is_active','=', 1);
}if($is_active=='no'){
$search->where('admin_role.is_active','=', 0);
}else{
$search->where('admin_role.is_active','=', 1);
}
})
->limit(500)
->get();
}else{
$unitList = AdminRole::orderBy('admin_role.create_date','desc')
->select('admin_role.*','admin_user.full_name as create_by_name')
->leftJoin('admin_user','admin_user.id','=','admin_role.create_by')
->where('admin_role.is_active',1)
->limit(500)
->get();
}
if($unitList){
return response()->json($unitList);
}else{
return response()->json(['status'=>'no_data']);
}
}
public function role_del(Request $request){
if($request->input('id')){
$unitList = AdminRole::where("id",$request->input('id'))->first();
if($unitList){
$unitList->is_active = 0;
$unitList->save();
return response()->json(['status'=>'success']);
}else{
return response()->json(['status'=>'no_record_found']);
}
}
}
/* end role api */
/* user */
public function user_insert(Request $request){
$insert = null;
$checkUnique = null;
$location = base_path()."/public/images/upload/photo/";
if(!File::exists($location)) {
File::makeDirectory($location, 0775, true);
}
$checkUnique = User::where('email',$request->input('email'))->first();
$pass = $request->input('pass');
$bcryptPass = bcrypt($pass);
if($request->input('email') && $request->input('full_name')){
if(! @$checkUnique->id){
$unitIns = new User();
$unitIns->full_name = $request->input('full_name');
$unitIns->email = $request->input('email');
$unitIns->mobile = $request->input('mobile');
$unitIns->password = $bcryptPass;
//$userIns->password = bcrypt($request->input('pass'));
$unitIns->company_id = $request->input('company_id');
$unitIns->role_id = $request->input('role_id');
$unitIns->date_of_birth = (Carbon::createFromFormat('d-m-Y',$request->input('date_of_birth'))? Carbon::createFromFormat('d-m-Y',$request->input('date_of_birth')):null);
$unitIns->gender = $request->input('gender');
$unitIns->user_type = $request->input('user_type');
$unitIns->address = $request->input('address');
$unitIns->is_active = $request->input('is_active');
$unitIns->create_date = Carbon::now();
$unitIns->create_by = $request->input('create_by');
if(@$request->file !='null'){
$file_name = $request->file->getClientOriginalName();
$item_image = md5($file_name. microtime()).'.'.$request->file->getClientOriginalExtension();
$upFile = $request->file('file')->move($location ,$item_image);
$unitIns->photo_path = $item_image;
}
$insert = $unitIns->save();
if($insert){
return response()->json(['status'=>'success']);
}else{
return response()->json(['status'=>'fail']);
}
}else{
return response()->json(['status'=>'no_unique']);
}
}
}
public function user_edit(Request $request){
$update = null;
$id = @$request->route()->parameter('id');
if($id){
$unitIns = User::orderBy('admin_user.create_date','desc')
->select(
'admin_user.*',
'user2.full_name as create_by_name',
'admin_company_info.name as company_name',
'admin_company_info.short_name as company_short_name',
'admin_role.role_name'
)
->join('admin_company_info','admin_company_info.id','=','admin_user.company_id')
->join('admin_role','admin_role.id','=','admin_user.role_id')
->leftJoin('admin_user as user2','user2.id','=','admin_user.create_by')
->where('admin_user.id',$id)
->first();
if($unitIns){
return response()->json($unitIns);
}else{
return response()->json(['status'=>'fail']);
}
}
}
public function user_update(Request $request){
$update = null;
$location = base_path()."/public/images/upload/photo/";
//$ss = $request->all();
$pass = $request->input('pass');
$bcryptPass = bcrypt($pass);
if($request->input('id')){
$checkUnique = null;
$checkUnique = User::where('email',$request->input('email'))->where('id','!=',$request->input('id'))->first();
if(! @$checkUnique->id){
$unitIns = User::where('id',$request->input('id'))->first();
if($unitIns){
$unitIns->full_name = $request->input('full_name');
$unitIns->email = $request->input('email');
$unitIns->mobile = $request->input('mobile');
$unitIns->password = $bcryptPass;
//$userIns->password = bcrypt($request->input('pass'));
//if(Hash::check($pass, Hash::make($pass))){
//$userIns->password = Hash::make($pass);
//}
$unitIns->company_id = $request->input('company_id');
$unitIns->role_id = $request->input('role_id');
$unitIns->date_of_birth = (Carbon::createFromFormat('d-m-Y',$request->input('date_of_birth'))? Carbon::createFromFormat('d-m-Y',$request->input('date_of_birth')):null);
$unitIns->gender = $request->input('gender');
$unitIns->user_type = $request->input('user_type');
$unitIns->address = $request->input('address');
$unitIns->is_active = $request->input('is_active');
$unitIns->update_date = Carbon::now();
$unitIns->update_by = $request->input('update_by');
if(@$request->file !='null'){
if(@$unitIns->photo_path){
$exist_item_image_path = $location.@$unitIns->photo_path;
if(File::exists($exist_item_image_path)){
File::delete($exist_item_image_path);
}
}
$file_name = $request->file->getClientOriginalName();
$item_image = md5($file_name. microtime()).'.'.$request->file->getClientOriginalExtension();
$upFile = $request->file('file')->move($location ,$item_image);
$unitIns->photo_path = $item_image;
}
$update = $unitIns->save();
if($update){
return response()->json(['status'=>'success']);
}else{
return response()->json(['status'=>'fail']);
}
}else{
return response()->json(['status'=>'no_data']);
}
}else{
return response()->json(['status'=>'no_unique']);
}
}
}
public function user_filter(Request $request){
$company_id = ($request->input('company_id'))? $request->input('company_id'):'';
$role_id = ($request->input('role_id'))? $request->input('role_id'):'';
$full_name = ($request->input('full_name'))? trim($request->input('full_name')):'';
$email = ($request->input('email'))? trim($request->input('email')):'';
$mobile = ($request->input('mobile'))? trim($request->input('mobile')):'';
$is_active = ($request->input('is_active'))? $request->input('is_active'):'';
if($email || $mobile || $is_active || $company_id || $role_id || $full_name){
$unitList = User::orderBy('admin_user.create_date','desc')
->select(
'admin_user.*',
'user2.full_name as create_by_name',
'admin_company_info.name as company_name',
'admin_company_info.short_name as company_short_name',
'admin_role.role_name'
)
->join('admin_company_info','admin_company_info.id','=','admin_user.company_id')
->join('admin_role','admin_role.id','=','admin_user.role_id')
->leftJoin('admin_user as user2','user2.id','=','admin_user.create_by')
->where(function($search) use($email,$mobile,$is_active,$company_id,$role_id,$full_name){
if($full_name){
$search->where('admin_user.full_name','like', $full_name.'%');
}
if($email){
$search->where('admin_user.email','=', $email);
}
if($mobile){
$search->where('admin_user.mobile','=', $mobile);
}
if($is_active=='yes'){
$search->where('admin_user.is_active','=', 1);
$search->where('admin_user.is_delete','=', 0);
}if($is_active=='no'){
$search->where('admin_user.is_active','=', 0);
$search->where('admin_user.is_delete','=', 0);
}else{
$search->where('admin_user.is_active','=', 1);
$search->where('admin_user.is_delete','=', 0);
}
if($company_id){
$search->where('admin_user.company_id','=', $company_id);
}
if($role_id){
$search->where('admin_user.role_id','=', $role_id);
}
})
->limit(500)
->get();
}else{
$unitList = User::orderBy('admin_user.create_date','desc')
->select(
'admin_user.*',
'user2.full_name as create_by_name',
'admin_company_info.name as company_name',
'admin_company_info.short_name as company_short_name',
'admin_role.role_name'
)
->join('admin_company_info','admin_company_info.id','=','admin_user.company_id')
->join('admin_role','admin_role.id','=','admin_user.role_id')
->leftJoin('admin_user as user2','user2.id','=','admin_user.create_by')
->where('admin_user.is_active',1)
->where('admin_user.is_delete',0)
->limit(500)
->get();
}
if($unitList){
return response()->json($unitList);
}else{
return response()->json(['status'=>'no_data']);
}
}
public function user_del(Request $request){
if($request->input('id')){
$unitList = User::where("id",$request->input('id'))->first();
if($unitList){
$unitList->is_delete = 1;
$unitList->save();
return response()->json(['status'=>'success']);
}else{
return response()->json(['status'=>'no_record_found']);
}
}
}
/* end user */
/* menu api */
public function menu_insert(Request $request){
$insert = null;
$checkUnique = null;
$checkUnique = AdminMenu::where('menu_name',$request->input('menu_name'))->first();
if($request->input('menu_name')){
if(! @$checkUnique->id){
$unitIns = new AdminMenu();
$unitIns->menu_name = $request->input('menu_name');
$unitIns->type = $request->input('type');
//$unitIns->parent_type = $request->input('parent_type');
$unitIns->parent_id = $request->input('parent_id');
$unitIns->sl_no = $request->input('sl_no');
$unitIns->route_path = $request->input('route_path');
$unitIns->route_name = $request->input('route_name');
$unitIns->is_active = $request->input('is_active');
$unitIns->create_date = Carbon::now();
$unitIns->create_by = $request->input('create_by');
$insert = $unitIns->save();
if($insert){
return response()->json(['status'=>'success']);
}else{
return response()->json(['status'=>'fail']);
}
}else{
return response()->json(['status'=>'no_unique']);
}
}
}
public function menu_edit(Request $request){
$update = null;
$id = @$request->route()->parameter('id');
if($id){
$unitIns = AdminMenu::orderBy('admin_menu.create_date','desc')
->select('admin_menu.*','admin_user.full_name as create_by_name')
->leftJoin('admin_user','admin_user.id','=','admin_menu.create_by')
->where('admin_menu.id',$id)
->first();
if($unitIns){
return response()->json($unitIns);
}else{
return response()->json(['status'=>'fail']);
}
}
}
public function menu_update(Request $request){
$update = null;
if($request->input('id')){
$checkUnique = null;
$checkUnique = AdminMenu::where('menu_name',$request->input('menu_name'))->where('id','!=',$request->input('id'))->first();
if(! @$checkUnique->id){
$unitIns = AdminMenu::where('id',$request->input('id'))->first();
if($unitIns){
$unitIns->menu_name = $request->input('menu_name');
$unitIns->type = $request->input('type');
//$unitIns->parent_type = $request->input('parent_type');
$unitIns->parent_id = ($request->input('parent_id'))? $request->input('parent_id'):null;
$unitIns->sl_no = $request->input('sl_no');
$unitIns->route_path = $request->input('route_path');
$unitIns->route_name = $request->input('route_name');
$unitIns->is_active = $request->input('is_active');
$unitIns->update_date = Carbon::now();
$unitIns->update_by = $request->input('update_by');
$update = $unitIns->save();
if($update){
return response()->json(['status'=>'success']);
}else{
return response()->json(['status'=>'fail']);
}
}else{
return response()->json(['status'=>'no_data']);
}
}else{
return response()->json(['status'=>'no_unique']);
}
}
}
public function menu_filter(Request $request){
$menu_name = ($request->input('menu_name'))? $request->input('menu_name'):'';
$type = ($request->input('type'))? $request->input('type'):'';
$is_active = ($request->input('is_active'))? $request->input('is_active'):'';
if($menu_name || $is_active || $type ){
$unitList = AdminMenu::orderBy('admin_menu.sl_no','asc')
->select(
'admin_menu.*',
'admin_user.full_name as create_by_name',
DB::raw("(SELECT menu_name FROM admin_menu p WHERE p.id = admin_menu.parent_id) as parent_menu_name")
)
->leftJoin('admin_user','admin_user.id','=','admin_menu.create_by')
->where(function($search) use($menu_name,$is_active,$type){
if($menu_name){
$search->where('admin_menu.menu_name','like', $menu_name.'%');
}
if($type){
$search->where('admin_menu.type','=', $type);
}
if($is_active=='yes'){
$search->where('admin_menu.is_active','=', 1);
}if($is_active=='no'){
$search->where('admin_menu.is_active','=', 0);
}else{
$search->where('admin_menu.is_active','=', 1);
}
})
->limit(500)
->get();
}else{
$unitList = AdminMenu::orderBy('admin_menu.sl_no','asc')
->select(
'admin_menu.*',
'admin_user.full_name as create_by_name',
DB::raw("(SELECT menu_name FROM admin_menu p WHERE p.id = admin_menu.parent_id) as parent_menu_name")
)
->leftJoin('admin_user','admin_user.id','=','admin_menu.create_by')
->where('admin_menu.is_active',1)
->limit(500)
->get();
}
if($unitList){
return response()->json($unitList);
}else{
return response()->json(['status'=>'no_data']);
}
}
public function menu_del(Request $request){
if($request->input('id')){
$unitList = AdminMenu::where("id",$request->input('id'))->first();
if($unitList){
$unitList->is_active = 0;
$unitList->save();
return response()->json(['status'=>'success']);
}else{
return response()->json(['status'=>'no_record_found']);
}
}
}
public function menu_instant(Request $request){
if($request->input('id')){
$unitIns = AdminMenu::orderBy('admin_menu.create_date','desc')
->select('admin_menu.*','admin_user.full_name as create_by_name')
->leftJoin('admin_user','admin_user.id','=','admin_menu.create_by')
->where('admin_menu.id',$request->input('id'))
->first();
if($unitIns){
return response()->json($unitIns);
}else{
return response()->json();
}
}
}
/* end menu api */
/* role menu permission */
public function role_menu_update(Request $request){
$update = null;
$roleId =$request->input('role_id');
$deleteObject = $request->input('deleteObject');
$editObject = $request->input('editObject');
$insertObject = $request->input('insertObject');
$viewObject = $request->input('viewObject');
$create_by = $request->input('create_by');
if($roleId){
for($i = 0; $i< count((array)$insertObject); $i++){
$checkUniquePosRoleMenuIns = AdminRoleMenuPermission::
where('role_id','=',$roleId)
->where('menu_id','=',$insertObject[$i]['id'])
->first();
if(@$checkUniquePosRoleMenuIns->id){
if($viewObject[$i]['val'] == "view" || $insertObject[$i]['val'] == "insert" || $editObject[$i]['val'] == "edit" || $deleteObject[$i]['val']=="delete"){
if($viewObject[$i]['val'] == "view"){
@$checkUniquePosRoleMenuIns->is_view="yes";
}else{
@$checkUniquePosRoleMenuIns->is_view="no";
}
if($insertObject[$i]['val'] == "insert"){
@$checkUniquePosRoleMenuIns->is_insert ="yes";
}else{
@$checkUniquePosRoleMenuIns->is_insert ="no";
}
if($editObject[$i]['val'] == "edit"){
@$checkUniquePosRoleMenuIns->is_edit ="yes";
}else{
@$checkUniquePosRoleMenuIns->is_edit ="no";
}
if($deleteObject[$i]['val']=="delete"){
@$checkUniquePosRoleMenuIns->is_delete ="yes";
}else{
@$checkUniquePosRoleMenuIns->is_delete ="no";
}
@$checkUniquePosRoleMenuIns->update_date = Carbon::now();
@$checkUniquePosRoleMenuIns->update_by = $create_by;
$update = $checkUniquePosRoleMenuIns->save();
}else{
@$checkUniquePosRoleMenuIns->delete();
}
}elseif($viewObject[$i]['val'] == "view" || $insertObject[$i]['val'] == "insert" || $editObject[$i]['val'] == "edit" || $deleteObject[$i]['val']=="delete"){
$newPosRoleMenuIns = new AdminRoleMenuPermission();
$newPosRoleMenuIns->role_id = $roleId;
$newPosRoleMenuIns->menu_id = $viewObject[$i]['id'];
if($viewObject[$i]['val'] == "view"){
$newPosRoleMenuIns->is_view="yes";
}else{
$newPosRoleMenuIns->is_view="no";
}
if($insertObject[$i]['val'] == "insert"){
$newPosRoleMenuIns->is_insert ="yes";
}else{
$newPosRoleMenuIns->is_insert ="no";
}
if($editObject[$i]['val'] == "edit"){
$newPosRoleMenuIns->is_edit ="yes";
}else{
$newPosRoleMenuIns->is_edit ="no";
}
if($deleteObject[$i]['val']=="delete"){
$newPosRoleMenuIns->is_delete ="yes";
}else{
$newPosRoleMenuIns->is_delete ="no";
}
$newPosRoleMenuIns->create_date = Carbon::now();
$newPosRoleMenuIns->create_by = $create_by;
$update = $newPosRoleMenuIns->save();
}
}// end foreach
if($update){
return response()->json(['status'=>'success']);
}else{
return response()->json(['status'=>'fail']);
}
}
}
public function role_menu_filter(Request $request){
$role_id = ($request->input('role_id'))? $request->input('role_id'):'';
$status = ($request->input('status'))? $request->input('status'):'';
$isRole = null;
$unitList = null;
if($role_id){
if($status=='permited'){
$unitList = AdminMenu::orderBy('admin_menu.sl_no','asc')
->select(
'admin_menu.id as pos_menu_id',
'admin_menu.menu_name as pos_menu_name',
'admin_menu.type',
'admin_menu.parent_type',
'admin_menu.parent_id',
'admin_role_menu_permission.*',
'admin_user.full_name as create_by_name',
'user2.full_name as update_by_name',
DB::raw("(SELECT menu_name FROM admin_menu p WHERE p.id = admin_menu.parent_id) as parent_menu_name")
)
->join('admin_role_menu_permission','admin_role_menu_permission.menu_id','=','admin_menu.id')
->leftJoin('admin_user','admin_user.id','=','admin_role_menu_permission.create_by')
->leftJoin('admin_user as user2','user2.id','=','admin_role_menu_permission.update_by')
->where('admin_role_menu_permission.role_id','=',$role_id)
->where('admin_menu.is_active','=',1)
->where('admin_menu.type','=','MENU')
->limit(500)
->get();
}else{
$permissionlist = @AdminRoleMenuPermission::select('menu_id')->where('role_id',$role_id)->get()->toArray();
$unitList = AdminMenu::orderBy('admin_menu.sl_no','asc')
->select(
'admin_menu.id as pos_menu_id',
'admin_menu.menu_name as pos_menu_name',
'admin_menu.type',
'admin_menu.parent_type',
'admin_menu.parent_id',
DB::raw("(SELECT menu_name FROM admin_menu p WHERE p.id = admin_menu.parent_id) as parent_menu_name")
)
->where('admin_menu.is_active','=',1)
->where('admin_menu.type','=','MENU')
->whereNotIn('admin_menu.id',@$permissionlist)
->limit(500)
->get();
}
}
if($unitList){
return response()->json($unitList);
}else{
return response()->json([]);
}
}
/* end role menu permission */
/* user menu */
public function getUserMenu(Request $request){
$roleId = $request->role_id;
$rootMenuArray = array();
$treeMenuArray = array();
$menuArray = array();
if($roleId){
$adminMenuList = AdminRoleMenuPermission::orderBy('admin_menu.sl_no','asc')
->select(
'admin_menu.id',
'admin_menu.parent_id',
'admin_menu.menu_name',
'admin_menu.type',
'admin_menu.sl_no',
'admin_menu.route_path',
'admin_menu.route_name'
)
->join('admin_menu','admin_menu.id','=','admin_role_menu_permission.menu_id')
->where('admin_role_menu_permission.role_id','=',$roleId)
->get();
foreach($adminMenuList as $adminMenuL){
if($adminMenuL->type=='MENU'){
$innerOneMenuIns = AdminMenu::where('id',$adminMenuL->parent_id)->first();
if(@$innerOneMenuIns->type=='TREE'){
$innerTwoMenuIns = @AdminMenu::where('id',$innerOneMenuIns->parent_id)->first();
if(@$innerTwoMenuIns->type="ROOT"){
/*if(array_search(@$innerTwoMenuIns->menu_name, array_column($rootMenuArray, 'root')) == false) {
$rootMenuArray[] = array('root'=>@$innerTwoMenuIns->menu_name,'has_tree'=>'yes');
}*/
/*if(! array_column($rootMenuArray, 'root')) {
$rootMenuArray[] = array('root'=>@$innerTwoMenuIns->menu_name,'has_tree'=>'yes');
}*/
if(! in_array(@$innerTwoMenuIns->menu_name, array_column($rootMenuArray,'root'))){
$rootMenuArray[@$innerTwoMenuIns->sl_no] = array('root'=>@$innerTwoMenuIns->menu_name,'has_tree'=>'yes');
}
if(! array_column($treeMenuArray,@$innerTwoMenuIns->menu_name)){
$treeMenuArray []= array(@$innerTwoMenuIns->menu_name=>@$innerOneMenuIns->menu_name);
}
$menuArray[] = array(@$innerOneMenuIns->menu_name => $adminMenuL->menu_name,'sl'=>$adminMenuL->sl_no,'route_path'=>$adminMenuL->route_path,'route_name'=>$adminMenuL->route_name);
}
}else if(@$innerOneMenuIns->type=='ROOT'){
/*if(array_search(@$innerOneMenuIns->menu_name, array_column($rootMenuArray, 'root')) == false) {
$rootMenuArray[] = array('root'=>@$innerOneMenuIns->menu_name,'has_tree'=>'no');
}*/
/*if(! array_column($rootMenuArray,'root')){
$rootMenuArray[] = array('root'=>@$innerOneMenuIns->menu_name,'has_tree'=>'no');
}*/
if(! in_array(@$innerOneMenuIns->menu_name, array_column($rootMenuArray,'root'))){
$rootMenuArray[@$innerOneMenuIns->sl_no] = array('root'=>@$innerOneMenuIns->menu_name,'has_tree'=>'no');
}
$menuArray[] = array(@$innerOneMenuIns->menu_name => $adminMenuL->menu_name,'sl'=>$adminMenuL->sl_no,'route_path'=>$adminMenuL->route_path,'route_name'=>$adminMenuL->route_name);
}
}
}
//$rootMenuArray = array_unique(array_column($rootMenuArray, 'root')); // multidimentional filtering
//$rootMenuArray = array_unique($rootMenuArray);
$rootMenuArray = array_filter($rootMenuArray);
ksort($rootMenuArray);
//$treeMenuArray = array_unique($treeMenuArray);
$treeMenuArray = array_filter($treeMenuArray);
//$menuArray = array_unique($menuArray);
$menuArray = array_filter($menuArray);
$menu = array_merge(['root'=>$rootMenuArray],['tree'=>$treeMenuArray],['menu'=>$menuArray]);
return response()->json($menu);
}
}
/* end user menu */
/* unit inv customer */
public function customer_insert(Request $request){
$insert = null;
//$ss = $request->all();
$checkUnique = null;
$checkUnique = InvCustomer::where('email',$request->input('email'))->where('company_id',$request->input('company_id'))->first();
if($request->input('customer_name') && $request->input('email')){
if(! @$checkUnique->id){
$unitIns = new InvCustomer();
$unitIns->company_id = $request->input('company_id');
$unitIns->customer_name = $request->input('customer_name');
$unitIns->address = $request->input('address');
$unitIns->contact_person = $request->input('contact_person');
$unitIns->email = $request->input('email');
$unitIns->mobile = $request->input('mobile');
$unitIns->website = $request->input('website');
$unitIns->opening_date = (Carbon::createFromFormat('d-m-Y',$request->input('opening_date'))? Carbon::createFromFormat('d-m-Y',$request->input('opening_date')):null);
$unitIns->opening_balance = $request->input('opening_balance');
$unitIns->is_active = $request->input('is_active');
$unitIns->create_date = Carbon::now();
$unitIns->create_by = $request->input('create_by');
$insert = $unitIns->save();
if($insert){
return response()->json(['status'=>'success']);
}else{
return response()->json(['status'=>'fail']);
}
}else{
return response()->json(['status'=>'no_unique']);
}
}
}
public function customer_edit(Request $request){
$update = null;
$id = @$request->route()->parameter('id');
if($id){
$unitIns = InvCustomer::orderBy('inv_customer.create_date','desc')
->select('inv_customer.*','admin_user.full_name as create_by_name','admin_company_info.short_name as company_name')
->join('admin_company_info','admin_company_info.id','=','inv_customer.company_id')
->leftJoin('admin_user','admin_user.id','=','inv_customer.create_by')
->where('inv_customer.id',$id)
->first();
if($unitIns){
return response()->json($unitIns);
}else{
return response()->json(['status'=>'fail']);
}
}
}
public function customer_update(Request $request){
$update = null;
if($request->input('id')){
$checkUnique = null;
$checkUnique = InvCustomer::where('email',$request->input('email'))->where('company_id',$request->input('company_id'))->where('id','!=',$request->input('id'))->first();
if(! @$checkUnique->id){
$unitIns = InvCustomer::where('id',$request->input('id'))->where('company_id',$request->input('company_id'))->first();
if($unitIns){
$unitIns->company_id = $request->input('company_id');
$unitIns->customer_name = $request->input('customer_name');
$unitIns->address = $request->input('address');
$unitIns->contact_person = $request->input('contact_person');
$unitIns->email = $request->input('email');
$unitIns->mobile = $request->input('mobile');
$unitIns->website = $request->input('website');
$unitIns->opening_date = (Carbon::createFromFormat('d-m-Y',$request->input('opening_date'))? Carbon::createFromFormat('d-m-Y',$request->input('opening_date')):null);
$unitIns->opening_balance = $request->input('opening_balance');
$unitIns->is_active = $request->input('is_active');
$unitIns->update_date = Carbon::now();
$unitIns->update_by = $request->input('update_by');
$update = $unitIns->save();
if($update){
return response()->json(['status'=>'success']);
}else{
return response()->json(['status'=>'fail']);
}
}else{
return response()->json(['status'=>'no_data']);
}
}else{
return response()->json(['status'=>'no_unique']);
}
}
}
public function customer_filter(Request $request){
$company_id = ($request->input('company_id'))? $request->input('company_id'):'';
$customer_name = ($request->input('customer_name'))? $request->input('customer_name'):'';
$email = ($request->input('email'))? $request->input('email'):'';
$mobile = ($request->input('mobile'))? $request->input('mobile'):'';
$is_active = ($request->input('is_active'))? $request->input('is_active'):'';
if($customer_name || $email || $mobile || $is_active || $company_id){
$unitList = InvCustomer::orderBy('inv_customer.create_date','desc')
->select('inv_customer.*','admin_user.full_name as create_by_name','admin_company_info.short_name as company_name','admin_company_info.id as company_id')
->join('admin_company_info','admin_company_info.id','=','inv_customer.company_id')
->leftJoin('admin_user','admin_user.id','=','inv_customer.create_by')
->where(function($search) use($customer_name,$email,$mobile,$is_active,$company_id){
if($customer_name){
$search->where('inv_customer.customer_name','like', $customer_name.'%');
}
if($mobile){
$search->where('inv_customer.mobile','=', $mobile);
}
if($email){
$search->where('inv_customer.email','=', $email);
}
if($is_active=='yes'){
$search->where('inv_customer.is_active','=', 1);
}if($is_active=='no'){
$search->where('inv_customer.is_active','=', 0);
}else{
$search->where('inv_customer.is_active','=', 1);
}
if($company_id){
$search->where('inv_customer.company_id','=', $company_id);
}
})
->limit(500)
->get();
}else{
$unitList = InvCustomer::orderBy('inv_customer.create_date','desc')
->select('inv_customer.*','admin_user.full_name as create_by_name','admin_company_info.short_name as company_name','admin_company_info.id as company_id')
->join('admin_company_info','admin_company_info.id','=','inv_customer.company_id')
->leftJoin('admin_user','admin_user.id','=','inv_customer.create_by')
->where('inv_customer.is_active',1)
->limit(500)
->get();
}
if($unitList){
return response()->json($unitList);
}else{
return response()->json(['status'=>'no_data']);
}
}
public function customer_del(Request $request){
if($request->input('id')){
$unitList = InvCustomer::where("id",$request->input('id'))->first();
if($unitList){
$unitList->is_active = 0;
$unitList->save();
return response()->json(['status'=>'success']);
}else{
return response()->json(['status'=>'no_record_found']);
}
}
}
/* end inv customer api */
/* unit inv supplier */
public function supplier_insert(Request $request){
$insert = null;
//$ss = $request->all();
$checkUnique = null;
$checkUnique = InvSupplier::where('email',$request->input('email'))->where('company_id',$request->input('company_id'))->first();
if($request->input('supplier_name') && $request->input('email')){
if(! @$checkUnique->id){
$unitIns = new InvSupplier();
$unitIns->company_id = $request->input('company_id');
$unitIns->supplier_name = $request->input('supplier_name');
$unitIns->address = $request->input('address');
$unitIns->contact_person = $request->input('contact_person');
$unitIns->email = $request->input('email');
$unitIns->mobile = $request->input('mobile');
$unitIns->website = $request->input('website');
$unitIns->opening_date = (Carbon::createFromFormat('d-m-Y',$request->input('opening_date'))? Carbon::createFromFormat('d-m-Y',$request->input('opening_date')):null);
$unitIns->opening_balance = $request->input('opening_balance');
$unitIns->is_active = $request->input('is_active');
$unitIns->create_date = Carbon::now();
$unitIns->create_by = $request->input('create_by');
$insert = $unitIns->save();
if($insert){
return response()->json(['status'=>'success']);
}else{
return response()->json(['status'=>'fail']);
}
}else{
return response()->json(['status'=>'no_unique']);
}
}
}
public function supplier_edit(Request $request){
$update = null;
$id = @$request->route()->parameter('id');
if($id){
$unitIns = InvSupplier::orderBy('inv_supplier.create_date','desc')
->select('inv_supplier.*','admin_user.full_name as create_by_name','admin_company_info.short_name as company_name')
->join('admin_company_info','admin_company_info.id','=','inv_supplier.company_id')
->leftJoin('admin_user','admin_user.id','=','inv_supplier.create_by')
->where('inv_supplier.id',$id)
->first();
if($unitIns){
return response()->json($unitIns);
}else{
return response()->json(['status'=>'fail']);
}
}
}
public function supplier_update(Request $request){
$update = null;
if($request->input('id')){
$checkUnique = null;
$checkUnique = InvSupplier::where('email',$request->input('email'))->where('company_id',$request->input('company_id'))->where('id','!=',$request->input('id'))->first();
if(! @$checkUnique->id){
$unitIns = InvSupplier::where('id',$request->input('id'))->where('company_id',$request->input('company_id'))->first();
if($unitIns){
$unitIns->company_id = $request->input('company_id');
$unitIns->supplier_name = $request->input('supplier_name');
$unitIns->address = $request->input('address');
$unitIns->contact_person = $request->input('contact_person');
$unitIns->email = $request->input('email');
$unitIns->mobile = $request->input('mobile');
$unitIns->website = $request->input('website');
$unitIns->opening_date = (Carbon::createFromFormat('d-m-Y',$request->input('opening_date'))? Carbon::createFromFormat('d-m-Y',$request->input('opening_date')):null);
$unitIns->opening_balance = $request->input('opening_balance');
$unitIns->is_active = $request->input('is_active');
$unitIns->update_date = Carbon::now();
$unitIns->update_by = $request->input('update_by');
$update = $unitIns->save();
if($update){
return response()->json(['status'=>'success']);
}else{
return response()->json(['status'=>'fail']);
}
}else{
return response()->json(['status'=>'no_data']);
}
}else{
return response()->json(['status'=>'no_unique']);
}
}
}
public function supplier_filter(Request $request){
$company_id = ($request->input('company_id'))? $request->input('company_id'):'';
$supplier_name = ($request->input('supplier_name'))? $request->input('supplier_name'):'';
$email = ($request->input('email'))? $request->input('email'):'';
$mobile = ($request->input('mobile'))? $request->input('mobile'):'';
$is_active = ($request->input('is_active'))? $request->input('is_active'):'';
if($supplier_name || $email || $mobile || $is_active || $company_id){
$unitList = InvSupplier::orderBy('inv_supplier.create_date','desc')
->select('inv_supplier.*','admin_user.full_name as create_by_name','admin_company_info.short_name as company_name','admin_company_info.id as company_id')
->join('admin_company_info','admin_company_info.id','=','inv_supplier.company_id')
->leftJoin('admin_user','admin_user.id','=','inv_supplier.create_by')
->where(function($search) use($supplier_name,$email,$mobile,$is_active,$company_id){
if($supplier_name){
$search->where('inv_supplier.supplier_name','like', $supplier_name.'%');
}
if($mobile){
$search->where('inv_supplier.mobile','=', $mobile);
}
if($email){
$search->where('inv_supplier.email','=', $email);
}
if($is_active=='yes'){
$search->where('inv_supplier.is_active','=', 1);
}if($is_active=='no'){
$search->where('inv_supplier.is_active','=', 0);
}else{
$search->where('inv_supplier.is_active','=', 1);
}
if($company_id){
$search->where('inv_supplier.company_id','=', $company_id);
}
})
->limit(500)
->get();
}else{
$unitList = InvSupplier::orderBy('inv_supplier.create_date','desc')
->select('inv_supplier.*','admin_user.full_name as create_by_name','admin_company_info.short_name as company_name','admin_company_info.id as company_id')
->join('admin_company_info','admin_company_info.id','=','inv_supplier.company_id')
->leftJoin('admin_user','admin_user.id','=','inv_supplier.create_by')
->where('inv_supplier.is_active',1)
->limit(500)
->get();
}
if($unitList){
return response()->json($unitList);
}else{
return response()->json(['status'=>'no_data']);
}
}
public function supplier_del(Request $request){
if($request->input('id')){
$unitList = InvSupplier::where("id",$request->input('id'))->first();
if($unitList){
$unitList->is_active = 0;
$unitList->save();
return response()->json(['status'=>'success']);
}else{
return response()->json(['status'=>'no_record_found']);
}
}
}
/* end inv supplier api */
public function testapi(Request $request){
$userId =1;
$roleId =1;
$rootMenuArray = array();
$treeMenuArray = array();
$menuArray = array();
if($roleId){
$adminMenuList = AdminRoleMenuPermission::orderBy('admin_menu.sl_no','asc')
->select(
'admin_menu.id',
'admin_menu.parent_id',
'admin_menu.menu_name',
'admin_menu.type',
'admin_menu.sl_no',
'admin_menu.route_path',
'admin_menu.route_name'
)
->join('admin_menu','admin_menu.id','=','admin_role_menu_permission.menu_id')
->where('admin_role_menu_permission.role_id','=',$roleId)
->get();
foreach($adminMenuList as $adminMenuL){
if($adminMenuL->type=='MENU'){
$innerOneMenuIns = AdminMenu::where('id',$adminMenuL->parent_id)->first();
if(@$innerOneMenuIns->type=='TREE'){
$innerTwoMenuIns = @AdminMenu::where('id',$innerOneMenuIns->parent_id)->first();
if(@$innerTwoMenuIns->type="ROOT"){
/*if(array_search(@$innerTwoMenuIns->menu_name, array_column($rootMenuArray, 'root')) == false) {
$rootMenuArray[] = array('root'=>@$innerTwoMenuIns->menu_name,'has_tree'=>'yes');
}*/
/*if(! array_column($rootMenuArray, 'root')) {
$rootMenuArray[] = array('root'=>@$innerTwoMenuIns->menu_name,'has_tree'=>'yes');
}*/
if(! in_array(@$innerTwoMenuIns->menu_name, array_column($rootMenuArray,'root'))){
$rootMenuArray[@$innerTwoMenuIns->sl_no] = array('root'=>@$innerTwoMenuIns->menu_name,'has_tree'=>'yes');
}
if(! array_column($treeMenuArray,@$innerTwoMenuIns->menu_name)){
$treeMenuArray []= array(@$innerTwoMenuIns->menu_name=>@$innerOneMenuIns->menu_name);
}
$menuArray[] = array(@$innerOneMenuIns->menu_name => $adminMenuL->menu_name,'sl'=>$adminMenuL->sl_no,'route_path'=>$adminMenuL->route_path,'route_name'=>$adminMenuL->route_name);
}
}else if(@$innerOneMenuIns->type=='ROOT'){
/*if(array_search(@$innerOneMenuIns->menu_name, array_column($rootMenuArray, 'root')) == false) {
$rootMenuArray[] = array('root'=>@$innerOneMenuIns->menu_name,'has_tree'=>'no');
}*/
/*if(! array_column($rootMenuArray,'root')){
$rootMenuArray[] = array('root'=>@$innerOneMenuIns->menu_name,'has_tree'=>'no');
}*/
if(! in_array(@$innerOneMenuIns->menu_name, array_column($rootMenuArray,'root'))){
$rootMenuArray[@$innerOneMenuIns->sl_no] = array('root'=>@$innerOneMenuIns->menu_name,'has_tree'=>'no');
}
$menuArray[] = array(@$innerOneMenuIns->menu_name => $adminMenuL->menu_name,'sl'=>$adminMenuL->sl_no,'route_path'=>$adminMenuL->route_path,'route_name'=>$adminMenuL->route_name);
}
}
}
//$rootMenuArray = array_unique(array_column($rootMenuArray, 'root')); // multidimentional filtering
//$rootMenuArray = array_unique($rootMenuArray);
$rootMenuArray = array_filter($rootMenuArray);
ksort($rootMenuArray);
//$treeMenuArray = array_unique($treeMenuArray);
$treeMenuArray = array_filter($treeMenuArray);
//$menuArray = array_unique($menuArray);
$menuArray = array_filter($menuArray);
$menu = array_merge(['root'=>$rootMenuArray],['tree'=>$treeMenuArray],['menu'=>$menuArray]);
print_r($menu);die;
return response()->json($menu);
}
}
}
?>
Total : 35219
Today :12
Today Visit Country :