public function payAction()
 {
     $this->checkLevel2();
     $request = $this->getRequest();
     if ($request->isPost()) {
         $pay = new MoneyHistory();
         // validate TODO
         // user info
         $pay->user_id = $this->auth->getIdentity()->id;
         $pay->create_date = date('Y-m-d H:i:s');
         $pay->last_update = $pay->create_date;
         $pay->last_user_id = $this->auth->getIdentity()->id;
         // info pay
         $pay->task_id = $request->getPost('task_id');
         $pay->money = str_replace(',', '', $request->getPost('money', 0));
         $pay->date_pay = Date::changeVNtoDateSQL($request->getPost('date_pay'));
         $pay->money_option = $request->getPost('money_option');
         $pay->note = $request->getPost('note');
         $pay->type = $request->getPost('type');
         $pay->id = $request->getPost('id', 0);
         $task = $this->databaseService->getInfoTask($pay->task_id)->current();
         $email = new MailHelper();
         $pay->custumer = $task['custumer'];
         if ($pay->id != 0) {
             $old_pay = $this->databaseService->getPayById($pay->id);
             if ($old_pay != null) {
                 $this->databaseService->modifyPayLog($this->auth->getIdentity()->id, $old_pay, $pay, $pay->type);
                 $email->notify_edit_pay($task, $this->auth->getIdentity()->username, $old_pay, $pay, $pay->type);
             }
         } else {
             $this->databaseService->payLog($this->auth->getIdentity()->id, $pay, $pay->type);
             $email->notify_add_pay($task, $this->auth->getIdentity()->username, $pay, $pay->type);
         }
         /* viet add */
         /* Get task (get custumer) */
         $id = $this->databaseService->insertMoneyHistory($pay);
     }
     return new JsonModel(array());
 }
示例#2
0
 public function newAction()
 {
     $type = $this->params()->fromRoute('id', 1);
     if ($type == Config::PAY_CUSTUMER) {
         $this->getServiceLocator()->get('ViewHelperManager')->get('HeadTitle')->set("Tạo Phiếu Thu");
     } else {
         $this->getServiceLocator()->get('ViewHelperManager')->get('HeadTitle')->set("Tạo Phiếu Chi");
     }
     $request = $this->getRequest();
     if ($request->isPost()) {
         $date_pay = Date::changeVNtoDateSQL($request->getPost('date_pay'));
         $money_option = $request->getPost('money_option', 1);
         $create_user = $this->auth->getIdentity()->id;
         $create_date = date('Y-m-d H:i:s');
         $pay = new PayAction();
         $pay->title = $request->getPost('title', '');
         $pay->user_id = 0;
         $pay->date_pay = $date_pay;
         $pay->pay_option = $money_option;
         $pay->create_user = $create_user;
         $pay->create_date = $create_date;
         $pay->type = $type;
         $pay->is_task = Config::PAY_ACTION_NOT_TASK;
         $count = $request->getPost('count', 0);
         $datas = array();
         $total = 0;
         for ($i = 1; $i <= $count; $i++) {
             $data = new DataPay();
             $data->code_product = $request->getPost(sprintf('code_product_%d', $i), '');
             $data->name_product = $request->getPost(sprintf('name_product_%d', $i), '');
             $data->name_task = $request->getPost(sprintf('name_task_%d', $i), '');
             $data->cost_1 = str_replace(',', '', $request->getPost(sprintf('cost_1_%d', $i), 0));
             $data->cost_2 = str_replace(',', '', $request->getPost(sprintf('cost_2_%d', $i), 0));
             $data->cost_3 = str_replace(',', '', $request->getPost(sprintf('cost_3_%d', $i), 0));
             $data->cost_4 = str_replace(',', '', $request->getPost(sprintf('cost_4_%d', $i), 0));
             $total += $data->cost_4;
             array_push($datas, $data);
         }
         $pay->cost = $total;
         $pay->data = json_encode($datas);
         $pay_id = $this->databaseService->addPayAction($pay);
         return $this->redirect()->toRoute('pay/detail', array('id' => $pay_id));
     }
     return new ViewModel(array("type" => $type));
 }
示例#3
0
 protected function getSelectListPay($start, $length, $search, $columns, $order, $user_id)
 {
     $sql = new Sql($this->dbAdapter);
     $select = $sql->select('pay_action');
     $select->join('users', 'pay_action.user_id = users.id', array('username' => 'username'), 'left');
     $select->join(array('create' => 'users'), 'pay_action.create_user = create.id', array('user_create' => 'username'), 'left');
     if ($search != '' && $search != null) {
         $select->where->like('pay_action.title', '%' . $search . '%');
     }
     $username = DataTableUtility::getSearchValue($columns, "username");
     if ($username != "" && $username != 0) {
         $select->Where(array('users.id' => $username));
     }
     $type = DataTableUtility::getSearchValue($columns, "type");
     if ($type != "" && $type != 0) {
         $select->Where(array('pay_action.type' => $type));
     }
     $date_open = DataTableUtility::getSearchValue($columns, "date_pay");
     $date_open = explode("-", $date_open);
     $date_open_1 = "";
     $date_open_2 = "";
     if (count($date_open) == 2) {
         $date_open_1 = $date_open[0];
         $date_open_2 = $date_open[1];
     }
     if ($date_open_1 != "" && $date_open_2 != "") {
         $select->where->lessThanOrEqualTo("pay_action.date_pay", Date::changeVNtoDateSQL($date_open_2))->and->greaterThanOrEqualTo("pay_action.date_pay", Date::changeVNtoDateSQL($date_open_1));
     } elseif ($date_open_1 == "" && $date_open_2 != "") {
         $select->where->lessThanOrEqualTo("pay_action.date_pay", Date::changeVNtoDateSQL($date_open_2));
     } else {
         if ($date_open_1 != "" && $date_open_2 == "") {
             $select->where->greaterThanOrEqualTo("pay_action.date_pay", Date::changeVNtoDateSQL($date_open_1));
         }
     }
     return $select;
 }
 public function addCourseAction()
 {
     $this->checkLevel1();
     $id = $this->params()->fromRoute('id', 1);
     $certificate = $this->databaseService->getCertificateByID($id);
     $request = $this->getRequest();
     if ($request->isPost()) {
         $course = new Course();
         $course->create_id = $this->auth->getIdentity()->id;
         $course->create_date = date('Y-m-d H:i:s');
         $course->edit_date = $course->create_date;
         $course->edit_id = $this->auth->getIdentity()->id;
         $course->month = $request->getPost('month', 1);
         $course->year = $request->getPost('year', 2015);
         $course->certificate_id = $request->getPost('certificate_id');
         $start = $request->getPost('start');
         $end = $request->getPost('end');
         $finish = $request->getPost('finish');
         $course->start = Date::changeVNtoDateSQL($start);
         $course->end = Date::changeVNtoDateSQL($end);
         $course->finish = Date::changeVNtoDateSQL($finish);
         $id = $this->databaseService->addCourse($course);
         return $this->redirect()->toRoute('manager-certificates/list-course', array('id' => $course->certificate_id));
     }
     return new ViewModel(array('certificate' => $certificate));
 }