Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in / Register
Toggle navigation
C
CO-OP Search
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Packages
Packages
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Kittisak Maneewong
CO-OP Search
Commits
5f9bb170
Commit
5f9bb170
authored
Apr 23, 2019
by
Kittisak Maneewong
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
update
parent
9417a9fc
Hide whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
91 additions
and
36 deletions
+91
-36
AppController.php
app/Http/Controllers/AppController.php
+9
-0
app.js
public/js/app.js
+0
-0
Company1556021615.png
public/uploads/Company1556021615.png
+0
-0
route.js
resources/js/route.js
+6
-0
CreateJob.vue
resources/js/views/CreateJob.vue
+3
-1
DetailJob.vue
resources/js/views/DetailJob.vue
+4
-0
EditJob.vue
resources/js/views/EditJob.vue
+4
-2
Managejob.vue
resources/js/views/Managejob.vue
+2
-2
ShowJob.vue
resources/js/views/ShowJob.vue
+61
-31
api.php
routes/api.php
+2
-0
No files found.
app/Http/Controllers/AppController.php
View file @
5f9bb170
...
@@ -2,6 +2,7 @@
...
@@ -2,6 +2,7 @@
namespace
App\Http\Controllers
;
namespace
App\Http\Controllers
;
use
App\Job
;
use
Illuminate\Http\Request
;
use
Illuminate\Http\Request
;
class
AppController
extends
Controller
class
AppController
extends
Controller
...
@@ -9,4 +10,12 @@ class AppController extends Controller
...
@@ -9,4 +10,12 @@ class AppController extends Controller
public
function
index
()
{
public
function
index
()
{
return
view
(
'app'
);
return
view
(
'app'
);
}
}
public
function
show
()
{
$jobs
=
Job
::
select
(
'jobs.id'
,
'jobs.job_title'
,
'companies.imageCompany'
,
'companies.company_name'
,
'companies.amphoe'
,
'companies.province'
,
'jobs.created_at'
)
->
join
(
'companies'
,
'jobs.user_id'
,
'companies.user_id'
)
->
orderBy
(
'jobs.created_at'
,
'desc'
)
->
get
();
return
response
()
->
json
([
'jobs'
=>
$jobs
]);
}
}
}
public/js/app.js
View file @
5f9bb170
This source diff could not be displayed because it is too large. You can
view the blob
instead.
public/uploads/Company1556021615.png
0 → 100644
View file @
5f9bb170
18.9 KB
resources/js/route.js
View file @
5f9bb170
...
@@ -18,6 +18,7 @@ import ManagejobEmployer from './views/managejob.vue';
...
@@ -18,6 +18,7 @@ import ManagejobEmployer from './views/managejob.vue';
import
ConfigCompany
from
'./views/ConfigCompany.vue'
;
import
ConfigCompany
from
'./views/ConfigCompany.vue'
;
import
CreateJob
from
'./views/CreateJob.vue'
;
import
CreateJob
from
'./views/CreateJob.vue'
;
import
EditJob
from
'./views/EditJob.vue'
;
import
EditJob
from
'./views/EditJob.vue'
;
import
DetailJob
from
'./views/DetailJob.vue'
;
import
ShowJob
from
'./views/ShowJob.vue'
;
import
ShowJob
from
'./views/ShowJob.vue'
;
const
router
=
new
VueRouter
({
const
router
=
new
VueRouter
({
...
@@ -109,6 +110,11 @@ const router = new VueRouter({
...
@@ -109,6 +110,11 @@ const router = new VueRouter({
name
:
'showjob'
,
name
:
'showjob'
,
component
:
ShowJob
component
:
ShowJob
},
},
{
path
:
'detailjob/:id'
,
name
:
'detailJob'
,
component
:
DetailJob
},
{
{
path
:
'account'
,
path
:
'account'
,
name
:
'account'
,
name
:
'account'
,
...
...
resources/js/views/CreateJob.vue
View file @
5f9bb170
...
@@ -186,7 +186,9 @@
...
@@ -186,7 +186,9 @@
data
()
{
data
()
{
return
{
return
{
degree
:
[
degree
:
[
'ระดับ'
'ระดับปวช.'
,
'ระดับปวส.'
,
'ระดับปริญญา'
],
],
gender
:
[],
gender
:
[],
items
:
[
items
:
[
...
...
resources/js/views/DetailJob.vue
0 → 100644
View file @
5f9bb170
<
template
>
<div>
</div>
</
template
>
resources/js/views/EditJob.vue
View file @
5f9bb170
...
@@ -175,7 +175,7 @@
...
@@ -175,7 +175,7 @@
</v-layout>
</v-layout>
</v-flex>
</v-flex>
</v-flex>
</v-flex>
<v-flex
xs12
sm10
offset-sm-1
class=
"my-1 text-xs-center text-sm-center."
><v-btn
type=
"submit"
round
dark
color=
"blue accent-3"
class=
"px-3 white--text"
>
เพิ่ม
ข้อมูลงาน
</v-btn></v-flex>
<v-flex
xs12
sm10
offset-sm-1
class=
"my-1 text-xs-center text-sm-center."
><v-btn
type=
"submit"
round
dark
color=
"blue accent-3"
class=
"px-3 white--text"
>
บันทึก
ข้อมูลงาน
</v-btn></v-flex>
</v-layout>
</v-layout>
</v-form>
</v-form>
</div>
</div>
...
@@ -186,7 +186,9 @@
...
@@ -186,7 +186,9 @@
data
()
{
data
()
{
return
{
return
{
degree
:
[
degree
:
[
'ระดับ'
'ระดับปวช.'
,
'ระดับปวส.'
,
'ระดับปริญญา'
],
],
gender
:
[],
gender
:
[],
items
:
[
items
:
[
...
...
resources/js/views/Managejob.vue
View file @
5f9bb170
...
@@ -25,8 +25,8 @@
...
@@ -25,8 +25,8 @@
<td
width=
"10%"
class=
"text-sm-center"
>
{{
props
.
item
.
id
}}
</td>
<td
width=
"10%"
class=
"text-sm-center"
>
{{
props
.
item
.
id
}}
</td>
<td
width=
"30%"
class=
"text-sm-left"
>
{{
props
.
item
.
topic
}}
</td>
<td
width=
"30%"
class=
"text-sm-left"
>
{{
props
.
item
.
topic
}}
</td>
<td
width=
"15%"
class=
"text-sm-center"
>
{{
props
.
item
.
typejob
}}
</td>
<td
width=
"15%"
class=
"text-sm-center"
>
{{
props
.
item
.
typejob
}}
</td>
<td
width=
"
15
%"
class=
"text-sm-center"
>
{{
props
.
item
.
position
}}
</td>
<td
width=
"
20
%"
class=
"text-sm-center"
>
{{
props
.
item
.
position
}}
</td>
<td
width=
"
10
%"
class=
"text-sm-center"
>
{{
props
.
item
.
salary
}}
</td>
<td
width=
"
5
%"
class=
"text-sm-center"
>
{{
props
.
item
.
salary
}}
</td>
<td
width=
"20%"
class=
"text-sm-center"
>
<td
width=
"20%"
class=
"text-sm-center"
>
<v-layout
row
wrap
justify-center
>
<v-layout
row
wrap
justify-center
>
<v-btn
depressed
class=
"mx-1"
fab
outline
small
color=
"cyan"
@
click=
"$router.push(`/employer/editjob/$
{props.item.job_id}`)">
<v-btn
depressed
class=
"mx-1"
fab
outline
small
color=
"cyan"
@
click=
"$router.push(`/employer/editjob/$
{props.item.job_id}`)">
...
...
resources/js/views/ShowJob.vue
View file @
5f9bb170
...
@@ -78,44 +78,46 @@
...
@@ -78,44 +78,46 @@
<v-flex
xs12
sm12
class=
""
>
<v-flex
xs12
sm12
class=
""
>
<span
class=
"caption grey--text"
>
แสดงผล 1 - 20 ตำแหน่งงาน จากทั้งหมด 89 งาน
</span>
<span
class=
"caption grey--text"
>
แสดงผล 1 - 20 ตำแหน่งงาน จากทั้งหมด 89 งาน
</span>
</v-flex>
</v-flex>
<v-flex
xs12
sm12
class=
"white div-card"
>
<div
v-for=
"job in jobs"
:key=
"job.id"
class=
"mb-3"
>
<v-layout
row
wrap
class=
"pa-2"
>
<v-flex
xs12
sm12
class=
"white div-card"
>
<v-flex
xs2
sm2
>
<v-layout
row
wrap
class=
"pa-2"
>
<img
class=
""
width=
"90"
height=
"90"
src=
"https://www.jobbkk.com/upload/employer/04/914/02B914/images/1784522.png"
alt=
""
>
<v-flex
xs2
sm2
>
</v-flex>
<img
class=
""
width=
"90"
height=
"90"
:src=
"job.imageCompany"
alt=
""
>
<v-flex
xs10
sm7
class=
"pa-2"
>
<v-flex
xs12
sm12
>
<label
class=
"subheading font-weight-bold indigo--text "
>
Graphic
&
Web Designer
</label>
</v-flex>
<v-flex
xs12
sm12
class=
"mb-1"
>
<label
class=
"subheading font-weight-medium black--text "
>
วินวิน อินเตอร์แอคทีฟ จำกัด
</label>
</v-flex>
</v-flex>
<v-flex
xs12
sm12
>
<v-flex
xs10
sm7
class=
"pa-2"
>
<label
class=
"body-2 grey--text "
>
สาทร, กรุงเทพมหานคร
</label>
<v-flex
xs12
sm12
>
</v-flex>
<label
class=
"subheading font-weight-bold indigo--text "
>
{{
job
.
job_title
}}
</label>
</v-flex>
</v-flex>
<v-flex
xs12
sm3
>
<v-flex
xs12
sm12
class=
"mb-1"
>
<v-layout
row
wrap
justify-end
>
<label
class=
"subheading font-weight-medium black--text "
>
{{
job
.
company_name
}}
</label>
<v-btn
color=
"deep-orange "
dark
small
depressed
class=
"body-2"
>
สมัครงานนี้
</v-btn>
</v-flex>
</v-layout>
<v-flex
xs12
sm12
>
</v-flex>
<label
class=
"body-2 grey--text "
>
{{
job
.
amphoe
}}
,
{{
job
.
province
}}
</label>
</v-layout>
</v-flex>
<v-flex
xs12
sm12
class=
"detail-bottom"
>
<v-layout
row
wrap
>
<v-flex
xs6
sm6
class=
"px-3 py-1"
>
<span
class=
"caption"
>
23 เม.ย. 2562
</span>
</v-flex>
<v-flex
xs6
sm6
class=
"px-3 py-1 text-sm-right text-xs-right"
>
<a
class=
"caption"
>
ดูเพิ่มเติม
<v-icon
small
color=
"indigo "
>
fas fa-angle-right
</v-icon></a>
</v-flex>
</v-flex>
<v-flex
xs12
sm3
>
<v-layout
row
wrap
justify-end
>
<v-btn
color=
"deep-orange "
dark
small
depressed
class=
"body-2"
>
สมัครงานนี้
</v-btn>
</v-layout>
</v-flex>
</v-layout>
</v-layout>
<v-flex
xs12
sm12
class=
"detail-bottom"
>
<v-layout
row
wrap
>
<v-flex
xs6
sm6
class=
"px-3 py-1"
>
<span
class=
"caption"
>
{{
job
.
created_at
}}
</span>
</v-flex>
<v-flex
xs6
sm6
class=
"px-3 py-1 text-sm-right text-xs-right"
>
<router-link
:to=
"'/detailjob/'+job.id"
class=
"caption"
>
ดูเพิ่มเติม
<v-icon
small
color=
"indigo "
>
fas fa-angle-right
</v-icon></router-link>
</v-flex>
</v-layout>
</v-flex>
</v-flex>
</v-flex>
</
v-flex
>
</
div
>
<v-flex
xs12
sm12
class=
"mt-3 text-sm-center text-xs-center"
>
<v-flex
xs12
sm12
class=
"mt-3 text-sm-center text-xs-center"
>
<v-pagination
<v-pagination
circle
circle
v-model=
"page"
v-model=
"pag
ination.pag
e"
:length=
"
1
"
:length=
"
pages
"
></v-pagination>
></v-pagination>
</v-flex>
</v-flex>
</v-flex>
</v-flex>
...
@@ -126,6 +128,34 @@
...
@@ -126,6 +128,34 @@
</div>
</div>
</
template
>
</
template
>
<
script
>
export
default
{
data
()
{
return
{
jobs
:
[],
pagination
:
{
page
:
0
,
rowsPerPage
:
10
}
}
},
computed
:
{
pages
()
{
return
this
.
pagination
.
rowsPerPage
?
Math
.
ceil
(
this
.
jobs
.
length
/
this
.
pagination
.
rowsPerPage
)
:
0
}
},
beforeMount
()
{
axios
.
get
(
'/api/show'
)
.
then
(
res
=>
{
console
.
log
(
res
.
data
.
jobs
)
this
.
jobs
=
res
.
data
.
jobs
})
.
catch
(
err
=>
{
console
.
log
(
err
.
response
)})
}
}
</
script
>
<
style
lang=
"scss"
scoped
>
<
style
lang=
"scss"
scoped
>
.height-chkbox
{
.height-chkbox
{
...
...
routes/api.php
View file @
5f9bb170
...
@@ -23,6 +23,8 @@ Route::resource('/companys', 'CompanyController');
...
@@ -23,6 +23,8 @@ Route::resource('/companys', 'CompanyController');
Route
::
resource
(
'/jobs'
,
'JobController'
);
Route
::
resource
(
'/jobs'
,
'JobController'
);
Route
::
get
(
'/show'
,
'AppController@show'
);
Route
::
get
(
'/province'
,
'DistrictController@provinces'
);
Route
::
get
(
'/province'
,
'DistrictController@provinces'
);
Route
::
get
(
'/province/{province_code}/amphoe'
,
'DistrictController@amphoes'
);
Route
::
get
(
'/province/{province_code}/amphoe'
,
'DistrictController@amphoes'
);
Route
::
get
(
'/province/{province_code}/amphoe/{amphoe_code}/district'
,
'DistrictController@districts'
);
Route
::
get
(
'/province/{province_code}/amphoe/{amphoe_code}/district'
,
'DistrictController@districts'
);
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment