mirror of
https://git.imnavajas.es/jjimenez/erp-imprimelibros.git
synced 2026-01-24 09:40:21 +00:00
primer commit. añadido tema Velzon
This commit is contained in:
233
src/main/resources/static/assets/js/pages/dashboard-crm.init.js
Normal file
233
src/main/resources/static/assets/js/pages/dashboard-crm.init.js
Normal file
@ -0,0 +1,233 @@
|
||||
/*
|
||||
Template Name: Velzon - Admin & Dashboard Template
|
||||
Author: Themesbrand
|
||||
Website: https://Themesbrand.com/
|
||||
Contact: Themesbrand@gmail.com
|
||||
File: CRM Dashboard init js
|
||||
*/
|
||||
|
||||
// get colors array from the string
|
||||
function getChartColorsArray(chartId) {
|
||||
if (document.getElementById(chartId) !== null) {
|
||||
var colors = document.getElementById(chartId).getAttribute("data-colors");
|
||||
if (colors) {
|
||||
colors = JSON.parse(colors);
|
||||
return colors.map(function (value) {
|
||||
var newValue = value.replace(" ", "");
|
||||
if (newValue.indexOf(",") === -1) {
|
||||
var color = getComputedStyle(document.documentElement).getPropertyValue(newValue);
|
||||
if (color) return color;
|
||||
else return newValue;;
|
||||
} else {
|
||||
var val = value.split(',');
|
||||
if (val.length == 2) {
|
||||
var rgbaColor = getComputedStyle(document.documentElement).getPropertyValue(val[0]);
|
||||
rgbaColor = "rgba(" + rgbaColor + "," + val[1] + ")";
|
||||
return rgbaColor;
|
||||
} else {
|
||||
return newValue;
|
||||
}
|
||||
}
|
||||
});
|
||||
} else {
|
||||
console.warn('data-colors Attribute not found on:', chartId);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Sales forecast charts
|
||||
var areachartSalesColors = getChartColorsArray("sales-forecast-chart");
|
||||
if (areachartSalesColors) {
|
||||
var options = {
|
||||
series: [{
|
||||
name: 'Goal',
|
||||
data: [37]
|
||||
}, {
|
||||
name: 'Pending Forcast',
|
||||
data: [12]
|
||||
}, {
|
||||
name: 'Revenue',
|
||||
data: [18]
|
||||
}],
|
||||
chart: {
|
||||
type: 'bar',
|
||||
height: 341,
|
||||
toolbar: {
|
||||
show: false,
|
||||
},
|
||||
},
|
||||
plotOptions: {
|
||||
bar: {
|
||||
horizontal: false,
|
||||
columnWidth: '65%',
|
||||
},
|
||||
},
|
||||
stroke: {
|
||||
show: true,
|
||||
width: 5,
|
||||
colors: ['transparent']
|
||||
},
|
||||
xaxis: {
|
||||
categories: [''],
|
||||
axisTicks: {
|
||||
show: false,
|
||||
borderType: 'solid',
|
||||
color: '#78909C',
|
||||
height: 6,
|
||||
offsetX: 0,
|
||||
offsetY: 0
|
||||
},
|
||||
title: {
|
||||
text: 'Total Forecasted Value',
|
||||
offsetX: 0,
|
||||
offsetY: -30,
|
||||
style: {
|
||||
color: '#78909C',
|
||||
fontSize: '12px',
|
||||
fontWeight: 400,
|
||||
},
|
||||
},
|
||||
},
|
||||
yaxis: {
|
||||
labels: {
|
||||
formatter: function (value) {
|
||||
return "$" + value + "k";
|
||||
}
|
||||
},
|
||||
tickAmount: 4,
|
||||
min: 0
|
||||
},
|
||||
fill: {
|
||||
opacity: 1
|
||||
},
|
||||
legend: {
|
||||
show: true,
|
||||
position: 'bottom',
|
||||
horizontalAlign: 'center',
|
||||
fontWeight: 500,
|
||||
offsetX: 0,
|
||||
offsetY: -14,
|
||||
itemMargin: {
|
||||
horizontal: 8,
|
||||
vertical: 0
|
||||
},
|
||||
markers: {
|
||||
width: 10,
|
||||
height: 10,
|
||||
}
|
||||
},
|
||||
colors: areachartSalesColors
|
||||
};
|
||||
var chart = new ApexCharts(document.querySelector("#sales-forecast-chart"), options);
|
||||
chart.render();
|
||||
}
|
||||
|
||||
// Deal Type Charts
|
||||
var dealTypeChartsColors = getChartColorsArray("deal-type-charts");
|
||||
if (dealTypeChartsColors) {
|
||||
var options = {
|
||||
series: [{
|
||||
name: 'Pending',
|
||||
data: [80, 50, 30, 40, 100, 20],
|
||||
},
|
||||
{
|
||||
name: 'Loss',
|
||||
data: [20, 30, 40, 80, 20, 80],
|
||||
},
|
||||
{
|
||||
name: 'Won',
|
||||
data: [44, 76, 78, 13, 43, 10],
|
||||
}
|
||||
],
|
||||
chart: {
|
||||
height: 341,
|
||||
type: 'radar',
|
||||
dropShadow: {
|
||||
enabled: true,
|
||||
blur: 1,
|
||||
left: 1,
|
||||
top: 1
|
||||
},
|
||||
toolbar: {
|
||||
show: false
|
||||
},
|
||||
},
|
||||
stroke: {
|
||||
width: 2
|
||||
},
|
||||
fill: {
|
||||
opacity: 0.2
|
||||
},
|
||||
legend: {
|
||||
show: true,
|
||||
fontWeight: 500,
|
||||
offsetX: 0,
|
||||
offsetY: -8,
|
||||
markers: {
|
||||
width: 8,
|
||||
height: 8,
|
||||
radius: 6,
|
||||
},
|
||||
itemMargin: {
|
||||
horizontal: 10,
|
||||
vertical: 0
|
||||
}
|
||||
},
|
||||
markers: {
|
||||
size: 0
|
||||
},
|
||||
colors: dealTypeChartsColors,
|
||||
xaxis: {
|
||||
categories: ['2016', '2017', '2018', '2019', '2020', '2021']
|
||||
}
|
||||
};
|
||||
var chart = new ApexCharts(document.querySelector("#deal-type-charts"), options);
|
||||
chart.render();
|
||||
}
|
||||
|
||||
// Balance Overview charts
|
||||
var revenueExpensesChartsColors = getChartColorsArray("revenue-expenses-charts");
|
||||
if (revenueExpensesChartsColors) {
|
||||
var options = {
|
||||
series: [{
|
||||
name: 'Revenue',
|
||||
data: [20, 25, 30, 35, 40, 55, 70, 110, 150, 180, 210, 250]
|
||||
}, {
|
||||
name: 'Expenses',
|
||||
data: [12, 17, 45, 42, 24, 35, 42, 75, 102, 108, 156, 199]
|
||||
}],
|
||||
chart: {
|
||||
height: 290,
|
||||
type: 'area',
|
||||
toolbar: 'false',
|
||||
},
|
||||
dataLabels: {
|
||||
enabled: false
|
||||
},
|
||||
stroke: {
|
||||
curve: 'smooth',
|
||||
width: 2,
|
||||
},
|
||||
xaxis: {
|
||||
categories: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']
|
||||
},
|
||||
yaxis: {
|
||||
labels: {
|
||||
formatter: function (value) {
|
||||
return "$" + value + "k";
|
||||
}
|
||||
},
|
||||
tickAmount: 5,
|
||||
min: 0,
|
||||
max: 260
|
||||
},
|
||||
colors: revenueExpensesChartsColors,
|
||||
fill: {
|
||||
opacity: 0.06,
|
||||
colors: revenueExpensesChartsColors,
|
||||
type: 'solid'
|
||||
}
|
||||
};
|
||||
var chart = new ApexCharts(document.querySelector("#revenue-expenses-charts"), options);
|
||||
chart.render();
|
||||
}
|
||||
Reference in New Issue
Block a user