update module cetak label

This commit is contained in:
daeng.deni@dharma.or.id 2023-05-15 10:13:09 +07:00
parent cb0793fde0
commit 6f91525f6e
29 changed files with 249 additions and 94 deletions

View File

@ -1,6 +1,5 @@
<?php
return [
'name' => 'CetakLabel',
'domain' => 'cetaklabel.io'
'name' => 'CetakLabel'
];

View File

@ -0,0 +1,34 @@
<?php
namespace Modules\CetakLabel\Entities;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\SoftDeletes;
use Spatie\Activitylog\LogOptions;
use Spatie\Activitylog\Traits\LogsActivity;
use Wildside\Userstamps\Userstamps;
class BaseModel extends Model
{
use LogsActivity, HasFactory, SoftDeletes, Userstamps;
protected $connection;
public function __construct(array $attributes = [])
{
parent::__construct($attributes);
$module = file_get_contents(dirname(__FILE__, 2) . '/module.json');
$module = json_decode($module);
$this->connection = $module->database;
}
public function getActivitylogOptions()
: LogOptions
{
return LogOptions::defaults()->logAll()
->useLogName('Cetak Label : ');
}
}

View File

@ -1,32 +1,19 @@
<?php
namespace Modules\CetakLabel\Entities;
namespace Modules\CetakLabel\Entities;
use App\Models\SubDirectorat;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\SoftDeletes;
use Spatie\Activitylog\LogOptions;
use Spatie\Activitylog\Traits\LogsActivity;
use Wildside\Userstamps\Userstamps;
use App\Models\SubDirectorat;
class Directorat extends Model
{
use LogsActivity, HasFactory, SoftDeletes, Userstamps;
class Directorat extends BaseModel
{
protected $fillable = [
'kode',
'name'
];
public function getActivitylogOptions(): LogOptions
{
return LogOptions::defaults()->logAll()
->useLogName('master data');
}
public function subDirectorat()
{
return $this->hasMany(SubDirectorat::class);
}
}
}

View File

@ -0,0 +1,178 @@
<?php
namespace Modules\CetakLabel\Http\Controllers;
use App\DataTables\SubDirectoratDataTable;
use App\Http\Controllers\Auth;
use App\Http\Controllers\Controller;
use App\Http\Requests\StoreSubDirectoratRequest;
use App\Http\Requests\UpdateSubDirectoratRequest;
use App\Models\SubDirectorat;
use Exception;
use Illuminate\Http\Request;
use Modules\CetakLabel\Entities\Directorat;
use function App\Http\Controllers\show_404;
class SubDirectoratController extends Controller
{
public $user;
public function __construct()
{
$this->middleware(function ($request, $next) {
$this->user = Auth::guard('web')->user();
return $next($request);
});
}
/**
* Display a listing of the Sub Directorats.
*
* @param \App\DataTables\SubDirectoratDataTable $dataTable
* @param \Illuminate\Http\Request $request
*
* @return mixed|void
*/
public function index(SubDirectoratDataTable $dataTable, Request $request)
{
if (is_null($this->user) || !$this->user->can('masters.read')) {
abort(403, 'Sorry !! You are Unauthorized to view any master data !');
}
if (isset($request->directorat_id) && !empty($request->directorat_id)) {
$this->show($request);
return;
}
$directorat = Directorat::all();
return $dataTable->render('pages.masters.sub-directorat.index', compact('directorat'));
}
/**
* Lists the specified Sub Directorat by Directorat ID.
*
* @param \Illuminate\Http\Request $request
*
* @return void
*/
public function show(Request $request)
{
$subdirectorats = SubDirectorat::where('directorat_id', $request->directorat_id)->get();
$data = [];
foreach ($subdirectorats as $row) {
$result = [
$row->id => $row->name,
];
$data[] = $result;
}
echo json_encode($data);
}
/**
* Store a newly created Sub Directorat in storage.
*
* @param \App\Http\Requests\StoreSubDirectoratRequest $request
*
* @return void
*/
public function store(StoreSubDirectoratRequest $request)
{
if (is_null($this->user) || !$this->user->can('masters.create')) {
abort(403, 'Sorry !! You are Unauthorized to create any master data !');
}
// Validate the request...
$validated = $request->validated();
// Store the SubDirectorat...
if ($validated) {
try {
SubDirectorat::create($validated);
echo json_encode(['status' => 'success', 'message' => 'Sub Directorat created successfully.']);
} catch (Exception $e) {
echo json_encode(['status' => 'error', 'message' => 'Sub Directorat created failed.']);
}
}
echo json_encode(['status' => 'error', 'message' => 'Sub Directorat created failed.']);
}
/**
* Show the form for creating a new Sub Directorat.
*/
public function create()
{
if (is_null($this->user) || !$this->user->can('masters.create')) {
abort(403, 'Sorry !! You are Unauthorized to create any master data !');
}
show_404();
}
/**
* Show the form for editing the specified Sub Directorat.
*
* @param $id
*
* @return void
*/
public function edit($id)
{
if (is_null($this->user) || !$this->user->can('masters.update')) {
abort(403, 'Sorry !! You are Unauthorized to update any master data !');
}
$subDirectorat = SubDirectorat::find($id);
echo json_encode($subDirectorat);
}
/**
* Update the specified Sub Directorat in storage.
*
* @param \App\Http\Requests\UpdateSubDirectoratRequest $request
* @param \App\Models\SubDirectorat $subDirectorat
*
* @return void
*/
public function update(UpdateSubDirectoratRequest $request, SubDirectorat $subDirectorat)
{
if (is_null($this->user) || !$this->user->can('masters.update')) {
abort(403, 'Sorry !! You are Unauthorized to update any master data !');
}
// Validate the request...
$validated = $request->validated();
// Update the SubDirectorat...
if ($validated) {
try {
$subDirectorat->update($validated);
echo json_encode(['status' => 'success', 'message' => 'Sub Directorat updated successfully.']);
} catch (Exception $e) {
echo json_encode(['status' => 'error', 'message' => 'Sub Directorat updated failed.']);
}
}
echo json_encode(['status' => 'error', 'message' => 'Sub Directorat updated failed.']);
}
/**
* Remove the specified Sub Directorat from storage.
*
* @param \App\Models\SubDirectorat $subDirectorat
*
* @return void
*/
public function destroy(SubDirectorat $subDirectorat)
{
if (is_null($this->user) || !$this->user->can('masters.delete')) {
abort(403, 'Sorry !! You are Unauthorized to delete any master data !');
}
$subDirectorat->delete();
echo json_encode(['status' => 'success', 'message' => 'Sub Directorat deleted successfully.']);
}
}

View File

@ -1,7 +1,6 @@
<?php
use Modules\CetakLabel\Http\Controllers\Api\DirectoratController;
use Nwidart\Modules\Facades\Module;
/*
|--------------------------------------------------------------------------
@ -15,11 +14,15 @@
*/
$module = Module::find('CetakLabel');
$domain = config($module->getLowerName() . '.domain');
$module = file_get_contents(dirname(__FILE__,2).'/module.json');
$module = json_decode($module);
Route::domain($domain)->group(function () {
Route::middleware('auth:sanctum')->group(function () {
Route::domain($module->domain)->group(function (){
Route::middleware('auth:sanctum')->group(function (){
Route::resource('directorats', DirectoratController::class);
Route::get('test-sama', function(){
return 'cetaklabel-api';
});
});
});

View File

@ -1,10 +1,11 @@
{
"name": "nwidart/cetaklabel",
"name": "putrakuningan/cetaklabel",
"type": "laravel-module",
"description": "",
"authors": [
{
"name": "Nicolas Widart",
"email": "n.widart@gmail.com"
"name": "Daeng Deni Mardaeni",
"email": "ddeni05@gmail.com"
}
],
"extra": {

View File

@ -1,9 +1,12 @@
{
"name": "CetakLabel",
"version": "1.0.0",
"alias": "cetaklabel",
"domain": "cetaklabel.io",
"database": "",
"description": "",
"keywords": [],
"priority": 0,
"priority": 1,
"providers": [
"Modules\\CetakLabel\\Providers\\CetakLabelServiceProvider"
],

View File

@ -1,11 +0,0 @@
{
"name": "Hcis",
"alias": "hcis",
"description": "",
"keywords": [],
"priority": 0,
"providers": [
],
"files": []
}

View File

@ -214,10 +214,10 @@ return [
*/
'composer' => [
'vendor' => 'nwidart',
'vendor' => 'putrakuningan',
'author' => [
'name' => 'Nicolas Widart',
'email' => 'n.widart@gmail.com',
'name' => 'Daeng Deni Mardaeni',
'email' => 'ddeni05@gmail.com',
],
'composer-output' => false,
],

View File

@ -1,8 +0,0 @@
begin
sys.dbms_job.submit(job => :job,
what => 'wof_admin.Proses_Hitung_Bunga(2);',
next_date => to_date('11-04-2023', 'dd-mm-yyyy'),
interval => 'trunc(sysdate)+1');
commit;
end;
/

View File

@ -1,34 +0,0 @@
INSERT INTO PRM_REKENING (NOMOR_REKENING, KD_DEBITUR, KD_CABANG, KD_PRODUK, KET_PRODUK, KD_MATA_UANG, TGL_BUKA,
LIMIT_REF, STATUS_REKENING, STATUS_DATA, FLAG_OTO, TGL_UPDATE)
SELECT ACCOUNT_NUMBER,
CASE
WHEN CUSTOMER_CODE IS NULL THEN
0
ELSE CUSTOMER_CODE
END AS KD_DEBITUR,
BRANCH_CODE,
a.PRODUCT_CODE,
PRODUCT_DESCRIPTION,
CURRENCY_CODE,
OPENING_DATE,
CASE
WHEN MINIMUM_BALANCE IS NULL THEN
0
ELSE minimum_balance
END AS LIMIT_REF,
CASE
WHEN INACTIVE_FLAG IS NULL THEN
'N'
ELSE 'Y'
END AS STATUS_REKENING,
CASE
WHEN INACTIVE_FLAG IS NULL THEN
'N'
ELSE 'Y'
END AS STATUS_DATA,
'1' AS FLAG_OTO,
CURRENT_dATE AS TGL_UPDATE
FROM T_aCCOUNT @t24dwh_96 a
INNER JOIN T_PRODUCT @T24DWH_96 b
ON a.product_code = b.product_code;

View File

@ -1,4 +1,3 @@
{
"CetakLabel": true,
"Hcis": true
"CetakLabel": true
}

View File

@ -19,6 +19,10 @@ use Illuminate\Support\Facades\Route;
Route::post('register', [AuthApiControllerAlias::class, 'register']);
Route::post('login', [AuthApiControllerAlias::class, 'login']);
Route::get('test-sama', function(){
return 'api';
});
Route::middleware('auth:sanctum')->get('/user', function (Request $request) {
return $request->user();
});