Calcolo Hours

This commit is contained in:
Paolo Arena
2021-02-11 02:21:36 +01:00
parent 7d0b3fb26f
commit 5568547784
37 changed files with 1372 additions and 574 deletions

View File

@@ -84,6 +84,8 @@ const state: IGlobalState = {
calzoom: [],
producers: [],
groups: [],
resps: [],
workers: [],
storehouses: [],
departments: [],
sharewithus: []
@@ -208,6 +210,10 @@ namespace Getters {
return GlobalStore.state.storehouses
else if (table === 'groups')
return GlobalStore.state.groups
else if (table === 'resps')
return GlobalStore.state.resps
else if (table === 'workers')
return GlobalStore.state.workers
else if (table === 'departments')
return GlobalStore.state.departments
else if (table === 'sharewithus')
@@ -239,7 +245,7 @@ namespace Getters {
const myrec = getters.getrecSettingsByKey(key, serv)
if (!!myrec) {
if (myrec.type === tools.FieldType.date)
if ((myrec.type === tools.FieldType.date) || (myrec.type === tools.FieldType.onlydate))
return myrec.value_date
else if (myrec.type === tools.FieldType.number)
return myrec.value_num
@@ -431,7 +437,7 @@ namespace Mutations {
myrec = mystate.settings.find((rec) => rec.key === key)
if (!!myrec) {
if (myrec.type === tools.FieldType.date)
if ((myrec.type === tools.FieldType.date) || (myrec.type === tools.FieldType.onlydate))
myrec.value_date = value
else if (myrec.type === tools.FieldType.number)
myrec.value_num = value
@@ -1098,6 +1104,8 @@ namespace Actions {
GlobalStore.state.producers = (res.data.producers) ? [...res.data.producers] : []
GlobalStore.state.storehouses = (res.data.storehouses) ? [...res.data.storehouses] : []
GlobalStore.state.groups = (res.data.groups) ? [...res.data.groups] : []
GlobalStore.state.resps = (res.data.resps) ? [...res.data.resps] : []
GlobalStore.state.workers = (res.data.workers) ? [...res.data.workers] : []
GlobalStore.state.departments = (res.data.departments) ? [...res.data.departments] : []
// console.log('res.data.cart', res.data.cart)
if (res.data.cart)
@@ -1197,7 +1205,7 @@ namespace Actions {
infooter: page.infooter,
onlyif_logged: page.onlyif_logged,
level_child: page.l_child,
level_parent: page.l_par,
level_parent: page.l_par
})
}
}
@@ -1232,9 +1240,16 @@ namespace Actions {
}
// Sort array
static_data.routes = static_data.routes.sort((a, b) => a.order - b.order)
static_data.routes = static_data.routes.sort((a, myb) => a.order - myb.order)
if (tools.sito_online(false)) {
router.addRoutes([...arrpagesroute, last])
} else {
router.addRoutes([sito_offline, last])
this.$router.replace('/sito_offline')
}
/* if (tools.sito_online(false)) {
for (const r of arrpagesroute) {
router.addRoute(r)
}
@@ -1245,7 +1260,8 @@ namespace Actions {
router.addRoute(last)
// router.addRoutes([sito_offline, last])
this.$router.replace('/sito_offline')
}
}*/
}
async function sendFile(context, formdata) {

View File

@@ -331,6 +331,24 @@ namespace Actions {
ApiTables.aftercalling(ris, checkPending, nametable)
}
async function calculateHoursProjects(context, { projId, actualphase }) {
let ris = null
ris = await Api.SendReq('/projects/calc/' + projId + '/' + actualphase, 'GET', null)
.then((res) => {
if (res.data.rec) { // console.log('RISULTANTE CATEGORIES DAL SERVER = ', res.data.categories)
return res.data.rec
}
return null
})
.catch((error) => {
console.log('error calculateHoursProjects', error)
})
return ris
}
async function deleteItem(context, { idobj }) {
console.log('deleteItem: KEY = ', idobj)
@@ -452,6 +470,7 @@ namespace Actions {
export const actions = {
dbLoad: b.dispatch(dbLoad),
calculateHoursProjects: b.dispatch(calculateHoursProjects),
swapElems: b.dispatch(swapElems),
deleteItem: b.dispatch(deleteItem),
dbInsert: b.dispatch(dbInsert),

View File

@@ -304,6 +304,24 @@ namespace Actions {
return ris
}
async function calculateHoursTodo(context, { todoId }) {
let ris = null
ris = await Api.SendReq('/todos/calc/' + todoId, 'GET', null)
.then((res) => {
if (res.data.rec) { // console.log('RISULTANTE CATEGORIES DAL SERVER = ', res.data.categories)
return res.data.rec
}
return null
})
.catch((error) => {
console.log('error calculateHoursTodo', error)
})
return ris
}
async function deleteItemtodo(context, { cat, idobj }) {
console.log('deleteItemtodo: KEY = ', idobj)
@@ -465,6 +483,7 @@ namespace Actions {
export const actions = {
dbLoad: b.dispatch(dbLoad),
calculateHoursTodo: b.dispatch(calculateHoursTodo),
swapElems: b.dispatch(swapElems),
deleteItemtodo: b.dispatch(deleteItemtodo),
dbInsert: b.dispatch(dbInsert),

View File

@@ -49,7 +49,8 @@ function AddCol(params: IColGridTable) {
fieldtype: (params.fieldtype === undefined) ? tools.FieldType.string : params.fieldtype,
visuonlyEditVal: (params.visuonlyEditVal === undefined) ? false : params.visuonlyEditVal,
askaction: (params.askaction === undefined) ? '' : params.askaction,
jointable: (params.jointable === undefined) ? '' : params.jointable
jointable: (params.jointable === undefined) ? '' : params.jointable,
notShowInNewRec: (params.notShowInNewRec === undefined) ? false : params.notShowInNewRec
}
}
@@ -188,6 +189,20 @@ export const colTableShareWithUs = [
AddCol({ name: 'numshared', label_trans: 'share.numshared', fieldtype: tools.FieldType.number }),
AddCol({ name: 'rating', label_trans: 'share.rating', fieldtype: tools.FieldType.number }),
]
export const colTableHours = [
// AddCol({ name: 'userId', label_trans: 'hours.userId' }),
// AddCol({ name: 'todoId', label_trans: 'hours.todoId' }),
AddCol({ name: 'descr', label_trans: 'hours.descr' }),
AddCol({ name: 'username', label_trans: 'reg.username_short', notShowInNewRec: true }),
AddCol({ name: 'date', label_trans: 'hours.date', fieldtype: tools.FieldType.onlydate }),
AddCol({ name: 'time_start', label_trans: 'hours.time_start', fieldtype: tools.FieldType.number }),
AddCol({ name: 'time_end', label_trans: 'hours.time_end', fieldtype: tools.FieldType.number }),
AddCol({ name: 'hours', label_trans: 'hours.hours', fieldtype: tools.FieldType.number }),
AddCol(DeleteRec),
AddCol(DuplicateRec)
]
export const colTablegroups = [
AddCol({ name: 'descr', label_trans: 'share.description' }),
AddCol({ name: 'resp', label_trans: 'reg.resp' }),
@@ -268,6 +283,14 @@ const colpaymenttype = [
AddCol(DeleteRec)
]
const colworkers = [
AddCol({ name: '_id', label_trans: 'others.value' }),
AddCol({ name: 'username', label_trans: 'reg.username' }),
AddCol({ name: 'name', label_trans: 'reg.name' }),
AddCol({ name: 'surname', label_trans: 'reg.surname' }),
AddCol(DeleteRec)
]
const colflotte = [
AddCol({ name: 'index', label_trans: 'others.value' }),
AddCol({ name: 'riga', label_trans: 'reg.riga' }),
@@ -639,6 +662,20 @@ export const fieldsTable = {
AddCol({ name: 'surname', label_trans: 'reg.surname' }),
AddCol({ name: 'email', label_trans: 'reg.email' }),
AddCol({ name: 'verified_email', label_trans: 'reg.verified_email', fieldtype: tools.FieldType.boolean }),
AddCol({
name: 'profile.resplist',
field: 'profile',
subfield: 'resplist',
label_trans: 'reg.resplist',
fieldtype: tools.FieldType.boolean
}),
AddCol({
name: 'profile.workerslist',
field: 'profile',
subfield: 'workerslist',
label_trans: 'reg.workerslist',
fieldtype: tools.FieldType.boolean
}),
AddCol({ name: 'profile.teleg_id', field: 'profile', subfield: 'teleg_id', label_trans: 'reg.teleg_id' }),
AddCol({
name: 'profile.saw_and_accepted',
@@ -793,6 +830,20 @@ export const fieldsTable = {
AddCol({ name: 'note', label_trans: 'reg.note' }),
// AddCol({ name: 'aportador_solidario', label_trans: 'reg.aportador_solidario' }),
AddCol({ name: 'verified_email', label_trans: 'reg.verified_email', fieldtype: tools.FieldType.boolean }),
AddCol({
name: 'profile.resplist',
field: 'profile',
subfield: 'resplist',
label_trans: 'reg.resplist',
fieldtype: tools.FieldType.boolean
}),
AddCol({
name: 'profile.workerslist',
field: 'profile',
subfield: 'workerslist',
label_trans: 'reg.workerslist',
fieldtype: tools.FieldType.boolean
}),
AddCol({
name: 'profile.special_req',
field: 'profile',
@@ -1012,6 +1063,13 @@ export const fieldsTable = {
colkey: 'key',
collabel: 'label'
},
{
value: 'workers',
label: 'Lavoratori Attivi',
columns: colworkers,
colkey: '_id',
collabel: (rec) => rec.name + ' ' + rec.surname
},
{
value: 'navi',
label: 'Navi',

View File

@@ -187,7 +187,8 @@ export const tools = {
image: 2048,
nationality: 4096,
intcode: 5000,
multioption: 6000
multioption: 6000,
onlydate: 7000
},
FieldTypeArr: [
@@ -2148,6 +2149,14 @@ export const tools = {
return UserStore.state.my.profile.socioresidente
},
isResp() {
return UserStore.state.my.profile.resplist
},
isWorkers() {
return UserStore.state.my.profile.workerslist
},
isDepartment() {
return UserStore.state.isDepartment
},
@@ -3478,13 +3487,29 @@ export const tools = {
return splitStr.join(' ')
},
getValDb(keystr, serv, def?, table?, subkey?, id?) {
getValDb(keystr, serv, def?, table?, subkey?, id?, idmain?) {
if (table === 'users') {
if (keystr === 'profile') {
return UserStore.state.my.profile[subkey]
} else {
return UserStore.state.my[keystr]
}
} else if (table === 'todos') {
// console.log('id', id, 'idmain', idmain)
const indcat = Todos.state.categories.indexOf(idmain)
console.log('indcat', indcat)
if (indcat >= 0) {
const myrec = Todos.state.todos[indcat].find((rec) => rec._id === id)
console.log('myrec', myrec)
let ris = null
if (myrec) {
ris = myrec[keystr]
}
console.log('ris', ris)
return ris
}
return ''
} else {
const ris = GlobalStore.getters.getValueSettingsByKey(keystr, serv)
@@ -4029,6 +4054,54 @@ export const tools = {
}
return mylist
},
getRespList() {
// console.log('GlobalStore.state.groups', GlobalStore.state.groups)
const mylist = {
it: [],
es: [],
enUs: []
}
let myrec = {}
for (const myresp of GlobalStore.state.resps) {
myrec = {
id: myresp._id,
label: myresp.name + ' ' + myresp.surname,
value: myresp.username
}
mylist.it.push(myrec)
}
return mylist
},
getWorkersList() {
// console.log('GlobalStore.state.groups', GlobalStore.state.groups)
const mylist = {
it: [],
es: [],
enUs: []
}
let myrec = {}
for (const myresp of GlobalStore.state.workers) {
myrec = {
id: myresp._id,
label: myresp.name + ' ' + myresp.surname,
value: myresp.username
}
mylist.it.push(myrec)
}
return mylist
}