facture number features
This commit is contained in:
parent
b6b2cb1310
commit
87c8797510
@ -1646,6 +1646,22 @@ class PageController extends Controller {
|
|||||||
$this->generer_document_comptable($datecourant);
|
$this->generer_document_comptable($datecourant);
|
||||||
$this->generer_document_comptable($nouveaudate);
|
$this->generer_document_comptable($nouveaudate);
|
||||||
} else {
|
} else {
|
||||||
|
if(strcmp($column, 'date')==0) {
|
||||||
|
if(strcmp($table, 'facture')){
|
||||||
|
$datetime = new Datetime($data);
|
||||||
|
$factureNumber = $this->myDb->getFactureNumberByDate($datetime);
|
||||||
|
$this->myDb->gestion_update($table, "facture_number", $factureNumber, $id, $this->idNextcloud);
|
||||||
|
$factureFullNumber = $this->myDb->getFactureFullNumberByDate($datetime);
|
||||||
|
$this->myDb->gestion_update($table, "num", $factureFullNumber, $id, $this->idNextcloud);
|
||||||
|
}
|
||||||
|
if(strcmp($table, 'devis')){
|
||||||
|
$datetime = new Datetime($data);
|
||||||
|
$devisNumber = $this->myDb->getDevisNumberByDate($datetime);
|
||||||
|
$this->myDb->gestion_update($table, "devis_number", $devisNumber, $id, $this->idNextcloud);
|
||||||
|
$devisFullNumber = $this->myDb->getDevisFullNumberByDate($datetime);
|
||||||
|
$this->myDb->gestion_update($table, "num", $devisFullNumber, $id, $this->idNextcloud);
|
||||||
|
}
|
||||||
|
}
|
||||||
$result = $this->myDb->gestion_update($table, $column, $data, $id, $this->idNextcloud);
|
$result = $this->myDb->gestion_update($table, $column, $data, $id, $this->idNextcloud);
|
||||||
// $this->generer_document_comptable($facturecourant->date_paiement);
|
// $this->generer_document_comptable($facturecourant->date_paiement);
|
||||||
}
|
}
|
||||||
@ -2657,7 +2673,22 @@ class PageController extends Controller {
|
|||||||
|
|
||||||
public function addDevisNumberColumn(){
|
public function addDevisNumberColumn(){
|
||||||
try{
|
try{
|
||||||
$this->myDb->addNumberColumnOnFactureAndDevis();
|
$this->myDb->addNumberColumnOnDevis();
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
catch(\OCP\Files\NotFoundException $e) { }
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @NoAdminRequired
|
||||||
|
* @NoCSRFRequired
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
public function addFactureNumberColumn(){
|
||||||
|
try{
|
||||||
|
$this->myDb->addNumberColumnOnFacture();
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
catch(\OCP\Files\NotFoundException $e) { }
|
catch(\OCP\Files\NotFoundException $e) { }
|
||||||
|
|||||||
@ -961,12 +961,17 @@ class Bdd {
|
|||||||
$last = 0;
|
$last = 0;
|
||||||
$last = $this->lastNumFacture($idNextcloud);
|
$last = $this->lastNumFacture($idNextcloud);
|
||||||
$pref = $this->execSQLNoJsonReturn("SELECT * FROM ".$this->tableprefix."configuration WHERE id_nextcloud LIKE ?",array($idNextcloud));
|
$pref = $this->execSQLNoJsonReturn("SELECT * FROM ".$this->tableprefix."configuration WHERE id_nextcloud LIKE ?",array($idNextcloud));
|
||||||
|
$sql = "INSERT INTO `".$this->tableprefix."facture` (`date`,`id_nextcloud`,`num`,`date_paiement`,`type_paiement`,`id_devis`,`user_id`, `version`,`facture_number`) VALUES (?,?,?,NOW(),?,0,?,?,?);";
|
||||||
$sql = "INSERT INTO `".$this->tableprefix."facture` (`date`,`id_nextcloud`,`num`,`date_paiement`,`type_paiement`,`id_devis`,`user_id`, `version`) VALUES (?,?,?,NOW(),?,0,?,?);";
|
|
||||||
$date_temp = new DateTime();
|
$date_temp = new DateTime();
|
||||||
$date = $date_temp->format('Y-m-d');
|
$date = $date_temp->format('Y-m-d');
|
||||||
|
$dateMonth = $date_temp->format('m');
|
||||||
|
$dateYear = $date_temp->format('Y');
|
||||||
|
$factureLastNumber = $this->getLastFactureNumberByMonthAndYear($dateMonth,$dateYear);
|
||||||
|
$factureNumber = $factureLastNumber + 1;
|
||||||
|
$factureFullNumber = DateHelpers::GetFullFactureOrDevisNumberByDate($date_temp,$factureNumber,'FAC');
|
||||||
|
|
||||||
$datesplit = explode('-', $date);
|
$datesplit = explode('-', $date);
|
||||||
$this->execSQLNoData($sql, array($date , $idNextcloud, "ETS".$datesplit[0]."/".$datesplit[1]."/".$last+1,"Comptant",$last+1,"Ajouter un lieu"));
|
$this->execSQLNoData($sql, array($date , $idNextcloud, $factureFullNumber,"Comptant",$last+1,"Ajouter un lieu",$factureNumber));
|
||||||
|
|
||||||
return $last;
|
return $last;
|
||||||
}
|
}
|
||||||
@ -2237,7 +2242,7 @@ class Bdd {
|
|||||||
return $articleIds;
|
return $articleIds;
|
||||||
}
|
}
|
||||||
|
|
||||||
public function addNumberColumnOnFactureAndDevis(){
|
public function addNumberColumnOnDevis(){
|
||||||
$sql = "ALTER TABLE ". $this->tableprefix."devis
|
$sql = "ALTER TABLE ". $this->tableprefix."devis
|
||||||
ADD devis_number INT DEFAULT 1;" ;
|
ADD devis_number INT DEFAULT 1;" ;
|
||||||
$this->execSQLNoJsonReturn(
|
$this->execSQLNoJsonReturn(
|
||||||
@ -2256,25 +2261,65 @@ class Bdd {
|
|||||||
$sql,
|
$sql,
|
||||||
[]);
|
[]);
|
||||||
|
|
||||||
// $sql = "ALTER TABLE ". $this->tableprefix."facture
|
return true;
|
||||||
// ADD facture_number INT DEFAULT 1;" ;
|
}
|
||||||
// $this->execSQLNoJsonReturn(
|
|
||||||
// $sql,
|
|
||||||
// []);
|
|
||||||
|
|
||||||
// $sql = "ALTER TABLE ". $this->tableprefix."facture
|
public function addNumberColumnOnFacture(){
|
||||||
// ADD facture_full_number VARCHAR(255);" ;
|
$sql = "ALTER TABLE ". $this->tableprefix."facture
|
||||||
// $this->execSQLNoJsonReturn(
|
ADD facture_number INT DEFAULT 1;" ;
|
||||||
// $sql,
|
$this->execSQLNoJsonReturn(
|
||||||
// []);
|
$sql,
|
||||||
|
[]);
|
||||||
|
|
||||||
// $sql = "UPDATE ".$this->tableprefix."facture as facture
|
$sql = "UPDATE ".$this->tableprefix."facture as facture
|
||||||
// SET facture.facture_full_number = CONCAT('FAC', YEAR(facture.date) % 100, LPAD(MONTH(facture.date), 2, '0'), LPAD(facture.facture_number, 2, '0'));";
|
SET facture.num = CONCAT('FAC', YEAR(facture.date) % 100, LPAD(MONTH(facture.date), 2, '0'), LPAD(facture.facture_number, 2, '0'));";
|
||||||
// $this->execSQLNoJsonReturn(
|
$this->execSQLNoJsonReturn(
|
||||||
// $sql,
|
$sql,
|
||||||
// []);
|
[]);
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private function getLastFactureNumberByMonthAndYear($month,$year){
|
||||||
|
$sql = "SELECT
|
||||||
|
max(facture.facture_number) as LAST_FACTURE_NUMBER, facture.date FROM "
|
||||||
|
. $this->tableprefix."facture as facture
|
||||||
|
WHERE YEAR(facture.date) = ? AND
|
||||||
|
MONTH(facture.date) = ?;";
|
||||||
|
$res = $this->execSQLNoJsonReturn($sql,array($year,$month));
|
||||||
|
$lastNumber = 0;
|
||||||
|
if(!empty($res)){
|
||||||
|
$lastNumber = $res[0]['LAST_FACTURE_NUMBER'];
|
||||||
|
}
|
||||||
|
return $lastNumber;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function getFactureNumberByDate($datetime){
|
||||||
|
$month = $datetime->format('m');
|
||||||
|
$year = $datetime->format('Y');
|
||||||
|
$lastFactureNumber = $this->getLastFactureNumberByMonthAndYear($month,$year);
|
||||||
|
$factureNumber = $lastFactureNumber + 1;
|
||||||
|
return $factureNumber;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function getFactureFullNumberByDate($datetime){
|
||||||
|
$factureNumber = $this->getFactureNumberByDate($datetime);
|
||||||
|
$factureFullNumber = DateHelpers::GetFullFactureOrDevisNumberByDate($datetime,$factureNumber,'FAC');
|
||||||
|
return $factureFullNumber;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function getDevisNumberByDate($datetime){
|
||||||
|
$month = $datetime->format('m');
|
||||||
|
$year = $datetime->format('Y');
|
||||||
|
$lastDevisNumber = $this->getLastDevisNumberByMonthAndYear($month,$year);
|
||||||
|
$devisNumber = $lastDevisNumber + 1;
|
||||||
|
return $devisNumber;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function getDevisFullNumberByDate($datetime){
|
||||||
|
$devisNumber = $this->getDevisNumberByDate($datetime);
|
||||||
|
$devisFullNumber = DateHelpers::GetFullFactureOrDevisNumberByDate($datetime,$devisNumber,'DEV');
|
||||||
|
return $devisFullNumber;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
Loading…
x
Reference in New Issue
Block a user