public function actionBalance()
 {
     $cache = Yii::$app->cache;
     $date = isset($_REQUEST['date']) ? $_REQUEST['date'] : date('Y-m', time());
     $Balance = new Balance();
     $balance = $Balance->getMonth($date);
     $Profit = new Profit();
     $profit = $Profit->getMonth($date);
     if (!$profit || !$balance) {
         Yii::$app->getSession()->setFlash('error', '请先导入该月基础报表数据');
     }
     $Measure = new Measure();
     $measure = $Measure->getMonth($date);
     for ($i = 1; $i < 6; $i++) {
         $measure[0][$i] = isset($measure[0][$i]) ? $measure[0][$i] : 0;
     }
     return $this->render('balance', ['balance' => $balance, 'profit' => $profit, 'date' => $date, 'measure' => $measure]);
 }
Beispiel #2
0
 /**
  * Creates data provider instance with search query applied
  *
  * @param array $params
  *
  * @return ActiveDataProvider
  */
 public function search($params)
 {
     $query = Balance::find()->select(['GAID', 'FDATE' => 'max(FDATE)', 'BAL'])->groupBy('GAID');
     $dataProvider = new ActiveDataProvider(['query' => $query, 'sort' => ['defaultOrder' => ['FDATE' => SORT_DESC]]]);
     $this->load($params);
     if (!$this->validate()) {
         return $dataProvider;
     }
     $query->andFilterWhere(['GAID' => $this->GAID]);
     return $dataProvider;
 }
Beispiel #3
0
$dateColumn = ['attribute' => 'FDATE', 'value' => 'FDATE', 'filterType' => GridView::FILTER_DATE, 'filterWidgetOptions' => ['type' => DatePicker::TYPE_INPUT, 'pluginOptions' => ['autoclose' => true, 'format' => 'yyyy-mm-dd', 'endDate' => "+0D"]], 'format' => 'html'];
$dateColumnDisabled = ['attribute' => 'FDATE', 'value' => 'FDATE', 'format' => 'html', 'filterInputOptions' => ['disabled' => true, 'class' => 'form-control']];
/* @var $this yii\web\View */
/* @var $balanceSearchModel app\models\search\BalanceSearch */
/* @var $balanceDataProvider yii\data\ActiveDataProvider */
/* @var $coordinatesSearchModel app\models\search\CoordinatesSearch */
/* @var $coordinatesDataProvider yii\data\ActiveDataProvider */
/* @var $gadataextSearchModel app\models\search\GadataextSearch */
/* @var $gadataextDataProvider yii\data\ActiveDataProvider */
?>
<div class="device-parameters-index grid-margin">
    
    <?php 
echo GridView::widget(['dataProvider' => $gadataextDataProvider, 'filterModel' => $gadataextSearchModel, 'columns' => [['attribute' => 'GAID', 'filter' => Gadataext::getGaids(), 'width' => '120px', 'filterInputOptions' => ['disabled' => true, 'class' => 'form-control']], $dateColumn, 'KO2', 'KCO', 'KNO', 'K11', 'KCO2', 'KCH4', 'KSO2'], 'resizableColumns' => false, 'pjax' => true, 'pjaxSettings' => ['options' => ['id' => 'gadataext-pjax-container']], 'panel' => ['type' => GridView::TYPE_PRIMARY, 'heading' => '<h3 class="panel-title"><i class="fa fa-table fa-fw"></i> Коэффициенты</h3>', 'footer' => false], 'beforeHeader' => ['{pager}'], 'panelBeforeTemplate' => '<div>{pager}</div>']);
?>

    <div class="row">
        <div class="col-md-6">
            <?php 
echo GridView::widget(['dataProvider' => $balanceDataProvider, 'filterModel' => $balanceSearchModel, 'columns' => [['attribute' => 'GAID', 'filter' => Balance::getGaids(), 'width' => '120px', 'filterInputOptions' => ['disabled' => true, 'class' => 'form-control']], $dateColumnDisabled, ['attribute' => 'BAL', 'filterInputOptions' => ['disabled' => true, 'class' => 'form-control']]], 'resizableColumns' => false, 'pjax' => true, 'pjaxSettings' => ['options' => ['id' => 'balance-pjax-container']], 'panel' => ['type' => GridView::TYPE_PRIMARY, 'heading' => '<h3 class="panel-title"><i class="fa fa-table fa-fw"></i> Баланс</h3>', 'footer' => false], 'beforeHeader' => ['{pager}'], 'panelBeforeTemplate' => '<div>{pager}</div>']);
?>
        </div>
        <div class="col-md-6">
            <?php 
echo GridView::widget(['dataProvider' => $coordinatesDataProvider, 'filterModel' => $coordinatesSearchModel, 'columns' => [['attribute' => 'GAID', 'filter' => Coordinates::getGaids(), 'width' => '120px', 'filterInputOptions' => ['disabled' => true, 'class' => 'form-control']], $dateColumnDisabled, ['attribute' => 'longitude', 'filterInputOptions' => ['disabled' => true, 'class' => 'form-control']], ['attribute' => 'latitude', 'filterInputOptions' => ['disabled' => true, 'class' => 'form-control']]], 'resizableColumns' => false, 'pjax' => true, 'pjaxSettings' => ['options' => ['id' => 'coordinates-pjax-container']], 'panel' => ['type' => GridView::TYPE_PRIMARY, 'heading' => '<h3 class="panel-title"><i class="fa fa-table fa-fw"></i> Координаты</h3>', 'footer' => false], 'beforeHeader' => ['{pager}'], 'panelBeforeTemplate' => '<div>{pager}</div>']);
?>
        </div>
    </div>

</div>
Beispiel #4
0
 public static function getGaidTables()
 {
     return [Balance::tableName(), Coordinates::tableName(), Gadata::tableName(), Gadataext::tableName()];
 }
Beispiel #5
0
 /**
  * @return \yii\db\ActiveQuery
  */
 public function getBalances()
 {
     return $this->hasMany(Balance::className(), ['member_id' => 'member_id']);
 }
 public function actionDelete()
 {
     $date = Yii::$app->request->get('date');
     if ($date) {
         $date = date('Y-m', strtotime($date));
         $cnum = YII::$app->user->identity->cnum;
         Balance::deleteAll('date = :date AND cnum = :cnum', [':date' => $date, ':cnum' => $cnum]);
         Yii::$app->cache->delete('balance_' . $date);
     }
     return $this->redirect('index?date=' . $date);
 }