Beispiel #1
0
 public function saveDataDenpyo($denpyoNo, &$denpyoDataPost)
 {
     $login_info = Yii::$app->session->get('login_info');
     $uDenpyo = new Udenpyo();
     $denpyo = new Sdptd03denpyo();
     $denpyoSagyo = new \app\models\Sdptd04denpyosagyo();
     $denpyoCom = new \app\models\Sdptd05denpyocom();
     $dataTemp = Yii::$app->request->post();
     foreach ($dataTemp as $key => $val) {
         if (substr($key, 0, 3) == 'D03') {
             $dataDenpyo[$key] = $val;
         }
     }
     $dataDenpyo['D03_SS_CD'] = $dataTemp['D01_SS_CD'];
     if ($dataTemp['D03_TANTO_MEI_D03_TANTO_SEI'] != '') {
         $temTantoMeiSei = explode('[]', $dataTemp['D03_TANTO_MEI_D03_TANTO_SEI']);
         $dataDenpyo['D03_TANTO_SEI'] = $temTantoMeiSei['0'];
         $dataDenpyo['D03_TANTO_MEI'] = $temTantoMeiSei['1'];
     } else {
         $dataDenpyo['D03_TANTO_MEI'] = '';
         $dataDenpyo['D03_TANTO_SEI'] = '';
     }
     if ($dataTemp['D03_KAKUNIN_MEI_D03_KAKUNIN_SEI'] != '') {
         $temKakuninMeiSei = explode('[]', $dataTemp['D03_KAKUNIN_MEI_D03_KAKUNIN_SEI']);
         $dataDenpyo['D03_KAKUNIN_SEI'] = $temKakuninMeiSei['0'];
         $dataDenpyo['D03_KAKUNIN_MEI'] = $temKakuninMeiSei['1'];
     } else {
         $dataDenpyo['D03_KAKUNIN_MEI'] = '';
         $dataDenpyo['D03_KAKUNIN_SEI'] = '';
     }
     unset($dataDenpyo['D03_TANTO_MEI_D03_TANTO_SEI']);
     unset($dataDenpyo['D03_KAKUNIN_MEI_D03_KAKUNIN_SEI']);
     $dataDenpyo['D03_CUST_NO'] = isset($dataTemp['D01_CUST_NO']) ? $dataTemp['D01_CUST_NO'] : 0;
     if ($denpyoNo) {
         $dataDenpyo['D03_CUST_NO'] = $dataTemp['D03_CUST_NO'];
     } else {
         $dataDenpyo['D03_DEN_NO'] = $denpyo->getSeq();
     }
     $dataDenpyo['D03_KAKUNIN'] = (int) Yii::$app->request->post('D03_KAKUNIN');
     $seqCar = Yii::$app->request->post('D02_CAR_SEQ_SELECT');
     if ($seqCar) {
         $dataDenpyo['D03_CAR_SEQ'] = $seqCar;
         $dataDenpyo['D03_CAR_NO'] = $dataTemp['D02_CAR_NO_' . $seqCar];
         $dataDenpyo['D03_CAR_ID'] = $dataTemp['D02_CAR_ID_' . $seqCar];
         $dataDenpyo['D03_METER_KM'] = $dataTemp['D02_METER_KM_' . $seqCar];
         $dataDenpyo['D03_CAR_NAMEN'] = $dataTemp['D02_CAR_NAMEN_' . $seqCar];
         $dataDenpyo['D03_HIRA'] = $dataTemp['D02_HIRA_' . $seqCar];
         $dataDenpyo['D03_RIKUUN_NAMEN'] = $dataTemp['D02_RIKUUN_NAMEN_' . $seqCar];
         $dataDenpyo['D03_JIKAI_SHAKEN_YM'] = $dataTemp['D02_JIKAI_SHAKEN_YM_' . $seqCar];
     }
     $dataDenpyoCom = [];
     $k = 1;
     for ($i = 1; $i < 11; ++$i) {
         if (isset($dataTemp['code_search' . $i]) && $dataTemp['code_search' . $i] != '') {
             $dataDenpyoCom[$k]['D05_DEN_NO'] = $dataDenpyo['D03_DEN_NO'];
             //$dataDenpyoCom[$k]['D05_COM_CD'] = $dataTemp['D05_COM_CD' . $i];
             //$dataDenpyoCom[$k]['D05_NST_CD'] = $dataTemp['D05_NST_CD' . $i];
             $dataDenpyoCom[$k]['D05_COM_CD'] = str_pad(substr($dataTemp['code_search' . $i], 0, 6), 6, '0', STR_PAD_LEFT);
             $dataDenpyoCom[$k]['D05_NST_CD'] = str_pad(substr($dataTemp['code_search' . $i], 6, 3), 3, '0', STR_PAD_LEFT);
             $dataDenpyoCom[$k]['D05_COM_SEQ'] = $k;
             $dataDenpyoCom[$k]['D05_SURYO'] = $dataTemp['D05_SURYO' . $i];
             $dataDenpyoCom[$k]['D05_TANKA'] = $dataTemp['D05_TANKA' . $i];
             $dataDenpyoCom[$k]['D05_KINGAKU'] = $dataTemp['D05_KINGAKU' . $i];
             $dataDenpyoCom[$k]['D05_INP_DATE'] = new Expression("CURRENT_DATE");
             $dataDenpyoCom[$k]['D05_INP_USER_ID'] = $login_info['M50_USER_ID'];
             $dataDenpyoCom[$k]['D05_UPD_DATE'] = new Expression("CURRENT_DATE");
             $dataDenpyoCom[$k]['D05_UPD_USER_ID'] = $login_info['M50_USER_ID'];
             ++$k;
         }
     }
     $m01SagyoNo = Yii::$app->request->post('M01_SAGYO_NO');
     $dataDenpySagyo = [];
     if (count($m01SagyoNo)) {
         for ($i = 0; $i < count($m01SagyoNo); ++$i) {
             $dataDenpySagyo[] = ['D04_DEN_NO' => $dataDenpyo['D03_DEN_NO'], 'D04_SAGYO_NO' => $m01SagyoNo[$i], 'D04_UPD_DATE' => new Expression("CURRENT_DATE"), 'D04_UPD_USER_ID' => $login_info['M50_USER_ID'], 'D04_INP_DATE' => new Expression("CURRENT_DATE"), 'D04_INP_USER_ID' => $login_info['M50_USER_ID']];
         }
         if ($denpyoNo) {
             $listDenpyoSagyo = $denpyoSagyo->getData(['D04_DEN_NO' => $denpyoNo]);
             /* Get input date,input user id of denpyosagyo */
             if (count($listDenpyoSagyo)) {
                 foreach ($dataDenpySagyo as $index => $temp) {
                     foreach ($listDenpyoSagyo as $index1 => $temp1) {
                         if ($temp['D04_SAGYO_NO'] == $temp1['D04_SAGYO_NO']) {
                             $dataDenpySagyo[$index]['D04_INP_DATE'] = $temp1['D04_INP_DATE'];
                             $dataDenpySagyo[$index]['D04_INP_USER_ID'] = $temp1['D04_INP_USER_ID'];
                         }
                     }
                 }
             }
             /* Get input date, input user id of denpyo com */
             $listDenpyoCom = $denpyoCom->getData(['D05_DEN_NO' => $denpyoNo]);
             if (count($listDenpyoCom) && count($dataDenpyoCom)) {
                 foreach ($dataDenpyoCom as $index => $temp) {
                     foreach ($listDenpyoCom as $index1 => $temp1) {
                         if ($temp['D05_COM_CD'] == $temp1['D05_COM_CD'] && $temp['D05_NST_CD'] == $temp1['D05_NST_CD'] && $temp['D05_COM_SEQ'] == $temp1['D05_COM_SEQ']) {
                             $dataDenpyoCom[$index]['D05_INP_DATE'] = $temp1['D05_INP_DATE'];
                             $dataDenpyoCom[$index]['D05_INP_USER_ID'] = $temp1['D05_INP_USER_ID'];
                         }
                     }
                 }
             }
         }
     }
     if ($seqCar == 0 || $dataDenpyo['D03_CUST_NO'] == 0) {
         \Yii::info('Error: ' . $seqCar . $dataDenpyo['D03_CUST_NO']);
         return 0;
     }
     $dataCus['D01_SS_CD'] = $dataTemp['D01_SS_CD'];
     $dataCus['D01_UKE_JYUG_CD'] = $dataTemp['M08_NAME_MEI_M08_NAME_SEI'];
     $tm08Sagyosya = current($uDenpyo->getTm08Sagyosya(['M08_JYUG_CD' => $dataTemp['M08_NAME_MEI_M08_NAME_SEI']]));
     $dataCus['D01_UKE_TAN_NAMEN'] = $tm08Sagyosya['M08_NAME_SEI'] . $tm08Sagyosya['M08_NAME_MEI'];
     $dataCus['D01_CUST_NO'] = $dataDenpyo['D03_CUST_NO'];
     $res = $uDenpyo->saveDenpyo($dataDenpyo, $dataDenpySagyo, $dataCus, $dataDenpyoCom, $denpyoNo);
     if ($res) {
         $denpyoDataPost = array_merge($dataTemp, $dataDenpyo);
         return $dataDenpyo['D03_DEN_NO'];
     }
     return false;
 }