123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215 |
- var app = getApp()
- var that;
- var chart1;
- var chart2;
- Page({
- data: {
- date: app.globalData.month,
- employee_id: 0,
- isDb: false,
- showtu: false,
- chartData: []
- },
- onLoad(e) {
- that = this;
- dd.setNavigationBar({ title: "奖扣统计" });
- chart1, chart2 = '';
- if (e.id && e.month) {
- that.setData({
- date: e.month,
- employee_id: e.id
- })
- }
- console.log(e)
- },
- onShow() {
- if (app.globalData.userData) {
- that.setData({
- showtu: true
- })
- // that.getUserData();
- } else {
- app.login(app.globalData.corpId, function (is) {
- if (is) {
- that.setData({
- showtu: true
- })
- that.getUserData();
- } else {
- dd.reLaunch({
- url: '../../noJurisdiction/noJurisdiction'
- })
- }
- },function(){})
- }
- },
- open2(){
- dd.navigateTo({
- url: '../../statistics/integralEventTwo/integralEventTwo?month='+that.data.date+'&id='+that.data.userData.id
- })
- },
- onInitChart(F2, config) {
- chart1 = new F2.Chart(config);
- chart1.source(that.data.chartData, {
- time: {
- // type: 'timeCat',
- tickCount: 5,
- range: [0, 1]
- }
- });
- chart1.legend(false);
- chart1.axis('time', {
- label: function label(text, index, total) {
- const textCfg = {};
- if (index === 0) {
- textCfg.textAlign = 'left';
- } else if (index === total - 1) {
- textCfg.textAlign = 'right';
- }
- return textCfg;
- },
- });
- chart1.line().position('time*value').color('type', ['#F56C6C', '#67C23A']);
- chart1.render();
- return chart1;
- },
- onInitChart2(F2, config) {
- chart2 = new F2.Chart(config);
- chart2.source(that.data.chartData, {
- time: {
- // type: 'timeCat',
- tickCount: 5,
- range: [0, 1]
- }
- });
- chart2.legend(false);
- chart2.axis('time', {
- label: function label(text, index, total) {
- const textCfg = {};
- if (index === 0) {
- textCfg.textAlign = 'left';
- } else if (index === total - 1) {
- textCfg.textAlign = 'right';
- }
- return textCfg;
- },
- });
- chart2.line().position('time*value').color('type', ['#F56C6C', '#67C23A']);
- chart2.render();
- that.getUserData();
- return chart2;
- },
- getIncidentLsit() {
- app.$get("api/integral/statistics/prize", { employee_id: that.data.employee_id, month: that.data.date }).then((res) => {
- const { chart } = res.data.data;
- const { reward, deduct } = chart;
- var rewardArr = reward.map((item) => {
- return { time: item.date, value: item.point, type: '奖分' };
- })
- var deductArr = deduct.map((item) => {
- return { time: item.date, value: item.point, type: '扣分' };
- })
- var rewardArrCount = reward.map((item) => {
- return { time: item.date, value: item.count, type: '奖分人次' };
- })
- var deductArrCount = deduct.map((item) => {
- return { time: item.date, value: item.count, type: '扣分人次' };
- })
- var charData = rewardArr.concat(deductArr);
- var charData2 = rewardArrCount.concat(deductArrCount);
- chart1.changeData(charData);
- chart2.changeData(charData2);
- })
- },
- //时间选择
- openDate() {
- that.setData({ showDate: true });
- dd.datePicker({
- format: 'yyyy-MM',
- currentDate: that.data.date,
- success: (res) => {
- if (res.date) {
- that.setData({
- date: res.date,
- isDb: false
- })
- that.getUserData();
- // that.getIncidentLsit();
- }
- },
- complete: (res) => {
- that.setData({
- showDate: false
- })
- }
- });
- },
- opneWebSocket() {
- let data={type:"es_info",recorder_id:that.data.employee_id||app.globalData.userData.id,month: that.data.date};
- app.globalData.socketApi.sendData(data, (res) => {
- if (res.code == 1&&res.type=='es_info') {
- let data = res.result;
- var task = data.task;
- var ratio = task.ratio.enable== 0 ? '-' : `${task.ratio.reward_ratio}:1`
- var target_ratio = task.ratio.target <= 0 ? '0:0' : `${task.ratio.target}:1`
- dd.setNavigationBar({ title: data.name });
- data.ratio = {
- ratio: ratio,
- target_ratio: target_ratio
- }
- that.setData({
- userData: data
- })
- const { chart } = res.result;
- const { reward, deduct } = chart;
- var rewardArr = reward.map((item) => {
- return { time: item.date, value: item.point, type: '奖分' };
- })
- var deductArr = deduct.map((item) => {
- return { time: item.date, value: item.point, type: '扣分' };
- })
- var rewardArrCount = reward.map((item) => {
- return { time: item.date, value: item.count, type: '奖分人次' };
- })
- var deductArrCount = deduct.map((item) => {
- return { time: item.date, value: item.count, type: '扣分人次' };
- })
- var charData = rewardArr.concat(deductArr);
- var charData2 = rewardArrCount.concat(deductArrCount);
- chart1.changeData(charData);
- chart2.changeData(charData2);
- app.globalData.socketApi.closewebsocket();
- }
- }, true);
- },
- //获取个人统计
- getUserData() {
- this.opneWebSocket();
- return false
- app.$get("api/integral/statistics", { employee_id: that.data.employee_id, month: that.data.date }).then((res) => {
- var data = res.data.data;
- var task = data.task;
- dd.setNavigationBar({ title: data.name });
- var ratio = task.reward.point === 0 || task.deduction.point === 0 ? '-' : `${task.ratio.ratio}:1`
- var target_ratio = task.ratio.target_ratio <= 0 ? '0:0' : `${task.ratio.target_ratio}:1`
- if (data.task.reward.point >= data.task.reward.target_point && data.task.deduction.point >= data.task.deduction.target_point && data.task.exec.count >= data.task.exec.target_count) {
- if (task.ratio.ratio >= task.ratio.target_ratio) {
- this.setData({
- isDb: true
- })
- }
- }
- data.ratio = {
- ratio: ratio,
- target_ratio: target_ratio
- }
- this.setData({
- userData: data
- })
- })
- },
- });
|