16 changed files with 995 additions and 26 deletions
@ -0,0 +1,325 @@ |
|||||
|
@charset "UTF-8"; |
||||
|
#pricereviewCreate input[type=text], #pricereviewCreate input[type=number], #pricereviewCreate select { |
||||
|
margin: 1px; |
||||
|
} |
||||
|
#pricereviewCreate textarea { |
||||
|
resize: vertical; |
||||
|
} |
||||
|
#pricereviewCreate select { |
||||
|
-webkit-appearance: none; /* 針對 Chrome, Safari, Opera */ |
||||
|
-moz-appearance: none; /* 針對 Firefox */ |
||||
|
appearance: none; /* 標準語法 */ |
||||
|
} |
||||
|
#pricereviewCreate > .modal { |
||||
|
padding: 20px; |
||||
|
} |
||||
|
#pricereviewCreate > .modal table, #pricereviewCreate > .modal th, #pricereviewCreate > .modal td { |
||||
|
border: 1px #ccc solid; |
||||
|
} |
||||
|
#pricereviewCreate > .modal table > thead tr th { |
||||
|
color: #A52A2A; |
||||
|
} |
||||
|
#pricereviewCreate > .modal table > tbody .selected { |
||||
|
background-color: #E7FEFB; |
||||
|
} |
||||
|
#pricereviewCreate .container table, #pricereviewCreate .container th, #pricereviewCreate .container td { |
||||
|
border: 1px #ccc solid; |
||||
|
padding: 9px; |
||||
|
} |
||||
|
#pricereviewCreate .container table.noborder, #pricereviewCreate .container table .noborder th, #pricereviewCreate .container table .noborder td, #pricereviewCreate .container th.noborder, #pricereviewCreate .container th .noborder th, #pricereviewCreate .container th .noborder td, #pricereviewCreate .container td.noborder, #pricereviewCreate .container td .noborder th, #pricereviewCreate .container td .noborder td { |
||||
|
border: none; |
||||
|
} |
||||
|
#pricereviewCreate .container table thead th { |
||||
|
background-color: #6D9EEB; |
||||
|
} |
||||
|
#pricereviewCreate .container table tbody td input { |
||||
|
font-size: 14px; |
||||
|
} |
||||
|
#pricereviewCreate .container table tbody th { |
||||
|
background-color: #CCE4F8; |
||||
|
font-size: 14px; |
||||
|
padding: 15px 2px; |
||||
|
min-width: 100px; |
||||
|
text-align: center; |
||||
|
} |
||||
|
#pricereviewCreate .container table input { |
||||
|
font-size: 13px; |
||||
|
} |
||||
|
#pricereviewCreate .container .pricreviewmain { |
||||
|
background-color: #F2F2F2; |
||||
|
padding: 20px; |
||||
|
border-radius: 6px; |
||||
|
margin: 30px 0; |
||||
|
} |
||||
|
#pricereviewCreate .container .pricreviewmain button { |
||||
|
color: #fff; |
||||
|
width: 55px; |
||||
|
height: 30px; |
||||
|
padding: 0; |
||||
|
margin-left: 6px; |
||||
|
margin-bottom: 2px; |
||||
|
font-size: 13px; |
||||
|
} |
||||
|
#pricereviewCreate .container .pricreviewmain button.addbtn { |
||||
|
background-color: #337AB7; |
||||
|
width: 30px; |
||||
|
} |
||||
|
#pricereviewCreate .container .pricreviewmain button.deleteBtn { |
||||
|
background-color: #D9534F; |
||||
|
color: #fff; |
||||
|
font-size: 12px; |
||||
|
width: 30px; |
||||
|
} |
||||
|
#pricereviewCreate .container .pricreviewmain button.selectElevator { |
||||
|
background-color: #D9534F; |
||||
|
color: #fff; |
||||
|
} |
||||
|
#pricereviewCreate .container .pricreviewmain > .divitem { |
||||
|
border: 1px #ccc solid; |
||||
|
padding: 10px; |
||||
|
border-radius: 4px; |
||||
|
} |
||||
|
#pricereviewCreate .container .pricreviewmain > .divitem .title { |
||||
|
display: flex; |
||||
|
align-items: center; |
||||
|
border-bottom: 1px #ccc solid; |
||||
|
padding: 10px 0; |
||||
|
margin-bottom: 10px; |
||||
|
} |
||||
|
#pricereviewCreate .container .pricreviewmain > .divitem .title h6 { |
||||
|
font-weight: 600; |
||||
|
} |
||||
|
#pricereviewCreate .container .pricreviewmain > .divitem table, #pricereviewCreate .container .pricreviewmain > .divitem th, #pricereviewCreate .container .pricreviewmain > .divitem td { |
||||
|
font-size: 14px; |
||||
|
background-color: transparent; |
||||
|
} |
||||
|
#pricereviewCreate .container .pricreviewmain > .divitem table input, #pricereviewCreate .container .pricreviewmain > .divitem table select, #pricereviewCreate .container .pricreviewmain > .divitem th input, #pricereviewCreate .container .pricreviewmain > .divitem th select, #pricereviewCreate .container .pricreviewmain > .divitem td input, #pricereviewCreate .container .pricreviewmain > .divitem td select { |
||||
|
font-size: 13px; |
||||
|
padding: 0 13px; |
||||
|
} |
||||
|
#pricereviewCreate .container .pricreviewmain > .divitem table textarea, #pricereviewCreate .container .pricreviewmain > .divitem th textarea, #pricereviewCreate .container .pricreviewmain > .divitem td textarea { |
||||
|
font-size: 13px; |
||||
|
} |
||||
|
#pricereviewCreate .container .pricreviewmain > .divitem table input[type=number]::-webkit-outer-spin-button, |
||||
|
#pricereviewCreate .container .pricreviewmain > .divitem table input[type=number]::-webkit-inner-spin-button, #pricereviewCreate .container .pricreviewmain > .divitem th input[type=number]::-webkit-outer-spin-button, |
||||
|
#pricereviewCreate .container .pricreviewmain > .divitem th input[type=number]::-webkit-inner-spin-button, #pricereviewCreate .container .pricreviewmain > .divitem td input[type=number]::-webkit-outer-spin-button, |
||||
|
#pricereviewCreate .container .pricreviewmain > .divitem td input[type=number]::-webkit-inner-spin-button { |
||||
|
-webkit-appearance: none; |
||||
|
margin: 0; |
||||
|
} |
||||
|
#pricereviewCreate .container .pricreviewmain > .divitem table tr:hover .deleteBtn, #pricereviewCreate .container .pricreviewmain > .divitem table tr:hover .copyBtn { |
||||
|
opacity: 1; |
||||
|
} |
||||
|
#pricereviewCreate .container .pricreviewmain > .divitem table .copyBtn { |
||||
|
width: 30px; |
||||
|
height: 30px; |
||||
|
} |
||||
|
#pricereviewCreate .container .pricreviewmain > .divitem table .saletd { |
||||
|
position: relative; |
||||
|
} |
||||
|
#pricereviewCreate .container .pricreviewmain > .divitem table .saletd > .deleteBtn { |
||||
|
position: absolute; |
||||
|
top: 50%; |
||||
|
transform: translateY(-50%); |
||||
|
right: 2px; |
||||
|
opacity: 0; |
||||
|
transition: 0.3s; |
||||
|
} |
||||
|
#pricereviewCreate .container .pricreviewmain > .divitem table .saletd > .copyBtn { |
||||
|
position: absolute; |
||||
|
top: 50%; |
||||
|
transform: translateY(-50%); |
||||
|
right: 38px; |
||||
|
opacity: 0; |
||||
|
transition: 0.3s; |
||||
|
width: 30px; |
||||
|
height: 30px; |
||||
|
} |
||||
|
#pricereviewCreate .container .pricreviewmain > .divitem table textarea { |
||||
|
height: auto; |
||||
|
min-height: 50px; |
||||
|
} |
||||
|
#pricereviewCreate .container .pricreviewmain > .filediv { |
||||
|
display: flex; |
||||
|
flex-direction: column; |
||||
|
margin-top: 20px; |
||||
|
} |
||||
|
#pricereviewCreate .container .pricreviewmain > .filediv label { |
||||
|
display: flex; |
||||
|
align-items: center; |
||||
|
margin: 10px 0; |
||||
|
} |
||||
|
#pricereviewCreate .container .pricreviewmain > .filediv label p { |
||||
|
width: 100px; |
||||
|
font-size: 15px; |
||||
|
font-weight: 600; |
||||
|
} |
||||
|
#pricereviewCreate .container .pricreviewmain > .filediv label input[type=file] { |
||||
|
width: 400px; |
||||
|
} |
||||
|
#pricereviewCreate .container .pricreviewmain > .filediv label a, #pricereviewCreate .container .pricreviewmain > .filediv label button { |
||||
|
width: 100px; |
||||
|
height: 35px; |
||||
|
margin: 0; |
||||
|
margin-right: 15px; |
||||
|
margin-top: 20px; |
||||
|
} |
||||
|
|
||||
|
.container-fluid, .container { |
||||
|
max-width: 1400px !important; |
||||
|
width: 100%; |
||||
|
} |
||||
|
.container-fluid h4, .container h4 { |
||||
|
font-weight: 600; |
||||
|
} |
||||
|
.container-fluid .btn-secondary, .container .btn-secondary { |
||||
|
background-color: #6C757D; |
||||
|
} |
||||
|
|
||||
|
[x-cloak][data-type=window-modal], |
||||
|
[x-cloak][data-type=errortext] { |
||||
|
display: none !important; |
||||
|
} |
||||
|
|
||||
|
.errortext { |
||||
|
font-size: 12px !important; |
||||
|
color: red !important; |
||||
|
font-weight: 600 !important; |
||||
|
} |
||||
|
|
||||
|
.window-modal { |
||||
|
position: fixed; |
||||
|
top: 0; |
||||
|
left: 0; |
||||
|
width: 100%; |
||||
|
height: 100vh; |
||||
|
background-color: rgba(0, 0, 0, 0.5); |
||||
|
z-index: 9; |
||||
|
padding: 20px; |
||||
|
} |
||||
|
@keyframes fade-in { |
||||
|
0% { |
||||
|
transform: translate(-50%, -60%); |
||||
|
opacity: 0; |
||||
|
} |
||||
|
100% { |
||||
|
transform: translate(-50%, -55%); |
||||
|
opacity: 1; |
||||
|
} |
||||
|
} |
||||
|
.window-modal table, .window-modal th, .window-modal td { |
||||
|
border: 1px #ccc solid; |
||||
|
} |
||||
|
.window-modal table > thead tr th { |
||||
|
color: #A52A2A; |
||||
|
} |
||||
|
.window-modal table > tbody .selected { |
||||
|
background-color: #E7FEFB; |
||||
|
} |
||||
|
.window-modal#optionModal .window-modal-content { |
||||
|
max-height: 80vh; |
||||
|
} |
||||
|
.window-modal#optionModal .window-modal-content .window-modal-body { |
||||
|
height: 400px; |
||||
|
overflow-y: scroll; |
||||
|
} |
||||
|
.window-modal#toElevatorModal .window-modal-content { |
||||
|
min-height: 270px; |
||||
|
height: auto; |
||||
|
} |
||||
|
.window-modal#toElevatorModal .window-modal-content .window-modal-body { |
||||
|
height: auto; |
||||
|
} |
||||
|
.window-modal .window-modal-content { |
||||
|
z-index: 9; |
||||
|
background-color: #fff; |
||||
|
border-radius: 10px; |
||||
|
position: absolute; |
||||
|
width: 90%; |
||||
|
padding: 30px; |
||||
|
top: 50%; |
||||
|
left: 50%; |
||||
|
transform: translate(-50%, -55%); |
||||
|
box-shadow: 0 5px 5px #222; |
||||
|
animation: fade-in 0.2s linear; |
||||
|
} |
||||
|
.window-modal .window-modal-content.modal-xl { |
||||
|
max-width: 1200px; |
||||
|
} |
||||
|
.window-modal .window-modal-content.modal-lg { |
||||
|
max-width: 800px; |
||||
|
} |
||||
|
.window-modal .window-modal-content.modal-m { |
||||
|
max-width: 450px; |
||||
|
} |
||||
|
.window-modal .window-modal-content .window-modal-header { |
||||
|
display: flex; |
||||
|
flex-direction: column; |
||||
|
} |
||||
|
.window-modal .window-modal-content .window-modal-header button.btn-close { |
||||
|
position: absolute; |
||||
|
top: 10px; |
||||
|
right: 10px; |
||||
|
background-color: transparent; |
||||
|
border: none; |
||||
|
outline: none; |
||||
|
border-radius: 50%; |
||||
|
} |
||||
|
.window-modal .window-modal-content .window-modal-header > div > input { |
||||
|
width: 250px; |
||||
|
} |
||||
|
.window-modal .window-back { |
||||
|
position: absolute; |
||||
|
top: 0; |
||||
|
left: 0; |
||||
|
width: 100%; |
||||
|
height: 100%; |
||||
|
background-color: transparent; |
||||
|
} |
||||
|
|
||||
|
#pricereviewCheck > .container { |
||||
|
background-color: #F2F2F2; |
||||
|
border-radius: 15px; |
||||
|
padding: 20px; |
||||
|
} |
||||
|
#pricereviewCheck > .container .historytable { |
||||
|
max-height: 0; |
||||
|
overflow: hidden; |
||||
|
} |
||||
|
#pricereviewCheck > .container textarea { |
||||
|
resize: vertical; |
||||
|
} |
||||
|
#pricereviewCheck > .container table, #pricereviewCheck > .container th, #pricereviewCheck > .container td { |
||||
|
border: 1px #ccc solid; |
||||
|
} |
||||
|
#pricereviewCheck > .container table.noborder { |
||||
|
border: none !important; |
||||
|
} |
||||
|
#pricereviewCheck > .container table.noborder th, #pricereviewCheck > .container table.noborder td { |
||||
|
border: none !important; |
||||
|
} |
||||
|
#pricereviewCheck > .container .customerinfo-table input { |
||||
|
background-color: #EEE5E5; |
||||
|
} |
||||
|
#pricereviewCheck > .container .mi-table th { |
||||
|
font-weight: 600; |
||||
|
} |
||||
|
#pricereviewCheck > .container .mi-table input[type=text] { |
||||
|
background-color: #EEEEEE; |
||||
|
cursor: not-allowed; |
||||
|
padding: 6px 12px; |
||||
|
font-size: 14px; |
||||
|
} |
||||
|
#pricereviewCheck > .container .mi-table .mi-info { |
||||
|
font-size: 14px; |
||||
|
} |
||||
|
#pricereviewCheck > .container .mi-table .mi-info span { |
||||
|
font-size: 15px; |
||||
|
font-weight: 600; |
||||
|
} |
||||
|
#pricereviewCheck > .container .mi-table .mi-info .line { |
||||
|
width: 100%; |
||||
|
height: 0.5px; |
||||
|
margin: 30px 0; |
||||
|
background-color: #ccc; |
||||
|
}/*# sourceMappingURL=pricereview.css.map */ |
@ -0,0 +1 @@ |
|||||
|
{"version":3,"sources":["pricereview.css","pricereview.scss"],"names":[],"mappings":"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","file":"pricereview.css"} |
@ -0,0 +1,343 @@ |
|||||
|
#pricereviewCreate{ |
||||
|
input[type='text'], input[type='number'], select{ |
||||
|
margin: 1px; |
||||
|
} |
||||
|
textarea{ |
||||
|
resize: vertical; |
||||
|
} |
||||
|
select{ |
||||
|
-webkit-appearance: none; /* 針對 Chrome, Safari, Opera */ |
||||
|
-moz-appearance: none; /* 針對 Firefox */ |
||||
|
appearance: none; /* 標準語法 */ |
||||
|
} |
||||
|
>.modal{ |
||||
|
padding: 20px; |
||||
|
table, th, td{ |
||||
|
border:1px #ccc solid; |
||||
|
} |
||||
|
table > thead tr th{ |
||||
|
color:#A52A2A; |
||||
|
} |
||||
|
table > tbody .selected{ |
||||
|
background-color: #E7FEFB; |
||||
|
} |
||||
|
table > tbody .selected td{ |
||||
|
} |
||||
|
} |
||||
|
.container{ |
||||
|
table, th, td{ |
||||
|
border:1px #ccc solid; |
||||
|
padding: 9px; |
||||
|
&.noborder, .noborder th, .noborder td{ |
||||
|
border:none; |
||||
|
} |
||||
|
} |
||||
|
table{ |
||||
|
|
||||
|
thead th{ |
||||
|
background-color: #6D9EEB; |
||||
|
} |
||||
|
tbody { |
||||
|
td input{ |
||||
|
font-size: 14px; |
||||
|
} |
||||
|
th{ |
||||
|
background-color: #CCE4F8; |
||||
|
font-size: 14px; |
||||
|
padding: 15px 2px; |
||||
|
min-width: 100px; |
||||
|
text-align: center; |
||||
|
} |
||||
|
} |
||||
|
input{ |
||||
|
font-size: 13px; |
||||
|
} |
||||
|
} |
||||
|
.pricreviewmain{ |
||||
|
background-color: #F2F2F2; |
||||
|
padding: 20px; |
||||
|
border-radius: 6px ; |
||||
|
margin:30px 0; |
||||
|
button{ |
||||
|
color:#fff; |
||||
|
width: 55px; |
||||
|
height: 30px; |
||||
|
padding: 0; |
||||
|
margin-left: 6px; |
||||
|
margin-bottom: 2px; |
||||
|
font-size: 13px; |
||||
|
&.addbtn{ |
||||
|
background-color: #337AB7; |
||||
|
width: 30px; |
||||
|
} |
||||
|
&.deleteBtn{ |
||||
|
background-color: #D9534F; |
||||
|
color:#fff; |
||||
|
font-size: 12px; |
||||
|
width: 30px; |
||||
|
} |
||||
|
&.selectElevator{ |
||||
|
background-color: #D9534F; |
||||
|
color:#fff; |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
>.divitem{ |
||||
|
border:1px #ccc solid; |
||||
|
padding: 10px; |
||||
|
border-radius: 4px ; |
||||
|
.title{ |
||||
|
display: flex; |
||||
|
align-items: center; |
||||
|
border-bottom: 1px #ccc solid; |
||||
|
padding: 10px 0; |
||||
|
margin-bottom: 10px; |
||||
|
h6{ |
||||
|
font-weight: 600; |
||||
|
} |
||||
|
|
||||
|
} |
||||
|
table, th, td{ |
||||
|
font-size: 14px; |
||||
|
background-color: transparent; |
||||
|
input, select{ |
||||
|
font-size: 13px; |
||||
|
padding: 0 13px; |
||||
|
} |
||||
|
textarea{ |
||||
|
font-size: 13px; |
||||
|
} |
||||
|
input[type=number]::-webkit-outer-spin-button, |
||||
|
input[type=number]::-webkit-inner-spin-button { |
||||
|
-webkit-appearance: none; |
||||
|
margin: 0; |
||||
|
} |
||||
|
} |
||||
|
table { |
||||
|
tr:hover .deleteBtn ,tr:hover .copyBtn{ |
||||
|
opacity: 1; |
||||
|
} |
||||
|
.copyBtn{ |
||||
|
width: 30px; |
||||
|
height: 30px; |
||||
|
} |
||||
|
.saletd{ |
||||
|
position: relative; |
||||
|
>.deleteBtn{ |
||||
|
position: absolute; |
||||
|
top: 50%; |
||||
|
transform: translateY(-50%); |
||||
|
right:2px; |
||||
|
opacity: 0; |
||||
|
transition: .3s; |
||||
|
} |
||||
|
>.copyBtn{ |
||||
|
position: absolute; |
||||
|
top: 50%; |
||||
|
transform: translateY(-50%); |
||||
|
right:38px; |
||||
|
opacity: 0; |
||||
|
transition: .3s; |
||||
|
width: 30px; |
||||
|
height: 30px; |
||||
|
} |
||||
|
} |
||||
|
textarea{ |
||||
|
height: auto; |
||||
|
min-height: 50px; |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
>.filediv{ |
||||
|
display: flex; |
||||
|
flex-direction: column; |
||||
|
margin-top: 20px; |
||||
|
label{ |
||||
|
display: flex; |
||||
|
align-items: center; |
||||
|
margin:10px 0; |
||||
|
p{ |
||||
|
width:100px; |
||||
|
font-size: 15px; |
||||
|
font-weight: 600; |
||||
|
} |
||||
|
input[type="file"]{ |
||||
|
width:400px |
||||
|
} |
||||
|
a, button{ |
||||
|
width:100px; |
||||
|
height: 35px; |
||||
|
margin:0; |
||||
|
margin-right: 15px; |
||||
|
margin-top: 20px; |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
.container-fluid, .container{ |
||||
|
max-width:1400px !important; |
||||
|
width: 100%; |
||||
|
h4{ |
||||
|
font-weight: 600; |
||||
|
} |
||||
|
.btn-secondary{ |
||||
|
background-color: #6C757D; |
||||
|
} |
||||
|
} |
||||
|
[x-cloak][data-type="window-modal"], |
||||
|
[x-cloak][data-type="errortext"] |
||||
|
{ |
||||
|
display: none !important; |
||||
|
} |
||||
|
.errortext{ |
||||
|
font-size:12px !important; |
||||
|
color:red !important; |
||||
|
font-weight:600 !important; |
||||
|
} |
||||
|
.window-modal{ |
||||
|
position: fixed; |
||||
|
top: 0; |
||||
|
left:0; |
||||
|
width: 100%; |
||||
|
height: 100vh; |
||||
|
background-color: rgba(0, 0, 0, 0.5); |
||||
|
z-index: 9; |
||||
|
padding: 20px; |
||||
|
// display: none; |
||||
|
@keyframes fade-in { |
||||
|
0%{ |
||||
|
transform: translate(-50%, -60%); |
||||
|
opacity: 0; |
||||
|
} |
||||
|
100%{ |
||||
|
transform: translate(-50%, -55%); |
||||
|
opacity: 1; |
||||
|
} |
||||
|
} |
||||
|
table, th, td{ |
||||
|
border:1px #ccc solid; |
||||
|
} |
||||
|
table > thead tr th{ |
||||
|
color:#A52A2A; |
||||
|
} |
||||
|
table > tbody .selected{ |
||||
|
background-color: #E7FEFB; |
||||
|
} |
||||
|
&#optionModal .window-modal-content{ |
||||
|
max-height: 80vh; |
||||
|
.window-modal-body{ |
||||
|
height: 400px; |
||||
|
overflow-y: scroll; |
||||
|
} |
||||
|
} |
||||
|
&#toElevatorModal .window-modal-content{ |
||||
|
min-height: 270px; |
||||
|
height: auto; |
||||
|
.window-modal-body{ |
||||
|
height: auto; |
||||
|
} |
||||
|
} |
||||
|
.window-modal-content{ |
||||
|
z-index: 9; |
||||
|
background-color: #fff; |
||||
|
border-radius: 10px; |
||||
|
position: absolute; |
||||
|
width:90%; |
||||
|
padding: 30px; |
||||
|
top: 50%; |
||||
|
left:50%; |
||||
|
transform: translate(-50%, -55%); |
||||
|
box-shadow: 0 5px 5px #222; |
||||
|
animation: fade-in .2s linear; |
||||
|
&.modal-xl{ |
||||
|
max-width:1200px; |
||||
|
} |
||||
|
&.modal-lg{ |
||||
|
max-width:800px; |
||||
|
} |
||||
|
&.modal-m{ |
||||
|
max-width:450px; |
||||
|
} |
||||
|
.window-modal-header{ |
||||
|
display: flex; |
||||
|
flex-direction: column; |
||||
|
button.btn-close{ |
||||
|
position: absolute; |
||||
|
top: 10px; |
||||
|
right:10px; |
||||
|
background-color: transparent; |
||||
|
border:none; |
||||
|
outline: none; |
||||
|
border-radius: 50%; |
||||
|
} |
||||
|
>div > input{ |
||||
|
width: 250px; |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
.window-back{ |
||||
|
position: absolute; |
||||
|
top: 0; |
||||
|
left:0; |
||||
|
width: 100%; |
||||
|
height: 100%; |
||||
|
background-color: transparent; |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
#pricereviewCheck{ |
||||
|
>.container{ |
||||
|
background-color: #F2F2F2; |
||||
|
border-radius: 15px; |
||||
|
padding: 20px; |
||||
|
.historytable{ |
||||
|
max-height: 0; |
||||
|
overflow: hidden; |
||||
|
} |
||||
|
textarea{ |
||||
|
resize: vertical; |
||||
|
} |
||||
|
table, th, td{ |
||||
|
border:1px #ccc solid; |
||||
|
} |
||||
|
table.noborder{ |
||||
|
border:none !important; |
||||
|
th ,td{ |
||||
|
border:none !important; |
||||
|
} |
||||
|
} |
||||
|
.customerinfo-table{ |
||||
|
input{ |
||||
|
background-color: #EEE5E5; |
||||
|
} |
||||
|
} |
||||
|
.mi-table{ |
||||
|
th{ |
||||
|
font-weight: 600; |
||||
|
} |
||||
|
input[type=text]{ |
||||
|
background-color: #EEEEEE; |
||||
|
cursor: not-allowed; |
||||
|
padding: 6px 12px; |
||||
|
font-size: 14px; |
||||
|
} |
||||
|
.mi-info{ |
||||
|
font-size: 14px; |
||||
|
span{ |
||||
|
font-size: 15px; |
||||
|
font-weight: 600; |
||||
|
} |
||||
|
.line{ |
||||
|
width: 100%; |
||||
|
height: .5px; |
||||
|
margin:30px 0; |
||||
|
background-color: #ccc; |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
} |
File diff suppressed because one or more lines are too long
@ -0,0 +1,7 @@ |
|||||
|
const pricereviewCreate = ()=>{ |
||||
|
return { |
||||
|
init(){ |
||||
|
console.log(123); |
||||
|
}, |
||||
|
} |
||||
|
} |
@ -0,0 +1,4 @@ |
|||||
|
<?php |
||||
|
|
||||
|
include_once "../header.php"; |
||||
|
require_once('../mkt/conn.php'); |
@ -0,0 +1,143 @@ |
|||||
|
<?php |
||||
|
|
||||
|
include_once "../header.php"; |
||||
|
require_once "../mkt/conn.php"; |
||||
|
|
||||
|
?> |
||||
|
<link rel="stylesheet" href="./css/pricereview.css"> |
||||
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/axios/1.5.0/axios.min.js" integrity="sha512-aoTNnqZcT8B4AmeCFmiSnDlc4Nj/KPaZyB5G7JnOnUEkdNpCZs1LCankiYi01sLTyWy+m2P+W4XM+BuQ3Q4/Dg==" crossorigin="anonymous" referrerpolicy="no-referrer"></script> |
||||
|
<script defer src="./js/alpinejs/cdn.min.js"></script> |
||||
|
<script src="./js/pricereviewAlpine.js"></script> |
||||
|
<div id="pricereviewCreate" x-data=pricereviewCreate()> |
||||
|
<div class="container"> |
||||
|
<table class="table" border="1"> |
||||
|
<thead > |
||||
|
<tr class="" > |
||||
|
<th scope="col" class="text-center " colspan="8">有望客戶(契約)基本資料</th> |
||||
|
</tr> |
||||
|
</thead> |
||||
|
<tbody> |
||||
|
<tr> |
||||
|
<th>評審單號</th> |
||||
|
<td><input class="form-control" type="text" disabled value="" /></td> |
||||
|
<th>卷號</th> |
||||
|
<td><input class="form-control" type="text" disabled value="" /></td> |
||||
|
<th>現場地址</th> |
||||
|
<td><input class="form-control" type="text" disabled value="" /></td> |
||||
|
<th>現場名稱</th> |
||||
|
<td><input class="form-control" type="text" disabled value="" /></td> |
||||
|
</tr> |
||||
|
<tr> |
||||
|
<th>電梯品牌</th> |
||||
|
<td><input class="form-control" type="text" disabled value="" /></td> |
||||
|
<th>數量</th> |
||||
|
<td><input class="form-control" type="number" disabled value="" /></td> |
||||
|
<th>營業員</th> |
||||
|
<td><input class="form-control" type="text" disabled value="" /></td> |
||||
|
<th>保養方式</th> |
||||
|
<td> |
||||
|
<select class="form-control" disabled> |
||||
|
<option value=""></option> |
||||
|
</select> |
||||
|
</td> |
||||
|
</tr> |
||||
|
<tr> |
||||
|
<th>契約期限開始</th> |
||||
|
<td><input class="form-control" type="date" disabled value="" /></td> |
||||
|
<th>契約期限結束</th> |
||||
|
<td><input class="form-control" type="date" disabled value="" /></td> |
||||
|
<th>契約性質</th> |
||||
|
<td> |
||||
|
<select class="form-control" disabled> |
||||
|
<option value=""></option> |
||||
|
<option value="">新簽約</option> |
||||
|
<option value="">免保轉有費</option> |
||||
|
<option value="">續約</option> |
||||
|
</select> |
||||
|
</td> |
||||
|
<th>介紹人</th> |
||||
|
<td><input class="form-control" type="text" disabled value="" /></td> |
||||
|
</tr> |
||||
|
<tr> |
||||
|
<th>付款方式</th> |
||||
|
<td> |
||||
|
<select class="form-control" disabled> |
||||
|
<option value=""></option> |
||||
|
<option value="">月付</option> |
||||
|
<option value="">季付</option> |
||||
|
<option value="">半年付</option> |
||||
|
<option value="">年付</option> |
||||
|
</select> |
||||
|
</td> |
||||
|
<th></th> |
||||
|
<td></td> |
||||
|
<th></th> |
||||
|
<td></td> |
||||
|
<th></th> |
||||
|
<td></td> |
||||
|
</tr> |
||||
|
</tbody> |
||||
|
</table> |
||||
|
<table class="table" border="1"> |
||||
|
<thead > |
||||
|
<tr class="" > |
||||
|
<th scope="col" class="text-center " colspan="8">洽商進度</th> |
||||
|
</tr> |
||||
|
</thead> |
||||
|
<tbody> |
||||
|
<tr> |
||||
|
<td colspan=8> |
||||
|
<textarea class="form-control" name="progress" id="progress" cols="20" rows="5" disabled ></textarea> |
||||
|
</td> |
||||
|
</tr> |
||||
|
</tbody> |
||||
|
</table> |
||||
|
<table class="table" border="1"> |
||||
|
<thead > |
||||
|
<tr class="" > |
||||
|
<th scope="col" class="text-center " colspan="8">電梯詳細資料</th> |
||||
|
</tr> |
||||
|
</thead> |
||||
|
<tbody> |
||||
|
<tr> |
||||
|
<td colspan=8> |
||||
|
<textarea class="form-control" name="progress" id="progress" cols="20" rows="6" disabled>註意事項: |
||||
|
1.速度單位是 米/分. |
||||
|
2.選擇贈送M1,保養月數需填寫60. |
||||
|
3.標準價格未帶出,請聯係業務部建立該規格報價. |
||||
|
4.無機房速度20~60米 以60米為標準. |
||||
|
</textarea> |
||||
|
</td> |
||||
|
</tr> |
||||
|
</tbody> |
||||
|
</table> |
||||
|
<div class="pricreviewmain container"> |
||||
|
<div class="divitem"> |
||||
|
<div class="title"> |
||||
|
<h4>整機單價</h4> |
||||
|
<button class="addbtn btn" x-ref="addElevatorBtn" @click="openCreateElevatorModal()" >+</button> |
||||
|
</div> |
||||
|
<table class="table" border=1> |
||||
|
<thead> |
||||
|
<tr> |
||||
|
<th>項次</th> |
||||
|
<th>電梯</th> |
||||
|
<th>人乘</th> |
||||
|
<th>載重(KG)</th> |
||||
|
<th>停數</th> |
||||
|
<th>速度(m/min)</th> |
||||
|
<th>開門方式</th> |
||||
|
<th>規格</th> |
||||
|
<th>公司發布價(台)</th> |
||||
|
<th>數量</th> |
||||
|
<th>公司發布價(總價)</th> |
||||
|
<th>售價(台)</th> |
||||
|
<th>售價(總價) </th> |
||||
|
</tr> |
||||
|
</thead> |
||||
|
|
||||
|
</table> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
@ -0,0 +1,58 @@ |
|||||
|
<?php |
||||
|
require_once("../conn.php"); |
||||
|
function createFlow($mid, $current_assigner, $flow_code, $ekind, $form_key=null){ |
||||
|
global $conn; |
||||
|
$form_id = $mid; |
||||
|
$seq = 0; |
||||
|
$system_id = "cta"; |
||||
|
if($ekind == "新梯") $flow_id = "cta01"; |
||||
|
if($ekind == "汰改") $flow_id = "cta02"; |
||||
|
if($ekind == "保養") $flow_id = "cta03"; |
||||
|
|
||||
|
if($form_key == null){ |
||||
|
$sql_str = "SELECT appwms.nextval('form_key') form_key"; |
||||
|
$stmt = $conn->prepare($sql_str); |
||||
|
$stmt->execute(); |
||||
|
$result = $stmt->fetch(PDO::FETCH_ASSOC); |
||||
|
$form_key = $result['form_key']; |
||||
|
$seq = 0; |
||||
|
|
||||
|
$sql_str = "INSERT INTO flow (system_id, flow_id, form_id, form_key, flow_code) |
||||
|
VALUES (:system_id, :flow_id, :form_id, :form_key, :flow_code)"; |
||||
|
$stmt = $conn->prepare($sql_str); |
||||
|
$stmt->bindParam(':system_id', $system_id); |
||||
|
$stmt->bindParam(':flow_id', $flow_id); |
||||
|
$stmt->bindParam(':form_id', $form_id); |
||||
|
$stmt->bindParam(':form_key', $form_key); |
||||
|
$stmt->bindParam(':flow_code', $flow_code); |
||||
|
$stmt->execute(); |
||||
|
}else{ |
||||
|
$sql_str = "UPDATE flow SET flow_code = :flow_code WHERE form_key = :form_key"; |
||||
|
$stmt = $conn->prepare($sql_str); |
||||
|
$stmt->bindParam(':form_key', $form_key); |
||||
|
$stmt->bindParam(':flow_code', $flow_code); |
||||
|
$stmt->execute(); |
||||
|
|
||||
|
$sql_str = "SELECT MAX(seq) AS max_seq FROM subflow WHERE form_key = :form_key"; |
||||
|
$stmt = $conn->prepare($sql_str); |
||||
|
$stmt->bindParam(':form_key', $form_key); |
||||
|
$stmt->execute(); |
||||
|
$result = $stmt->fetch(PDO::FETCH_ASSOC); |
||||
|
$seq = $result['max_seq']; |
||||
|
$seq ++; |
||||
|
} |
||||
|
|
||||
|
$created_at = date("Y-m-d H:i:s"); |
||||
|
$sql_str = "INSERT INTO subflow (form_key, seq, current_assigner, update_date,create_date) |
||||
|
VALUES (:form_key, :seq, :current_assigner, :update_date,:create_date)"; |
||||
|
$stmt = $conn->prepare($sql_str); |
||||
|
$stmt->bindParam(':form_key', $form_key); |
||||
|
$stmt->bindParam(':seq', $seq); |
||||
|
$stmt->bindParam(':current_assigner', $current_assigner); |
||||
|
$stmt->bindParam(':update_date', $created_at); |
||||
|
$stmt->bindParam(':create_date', $created_at); |
||||
|
$stmt->execute(); |
||||
|
|
||||
|
|
||||
|
return $form_key; |
||||
|
} |
Loading…
Reference in new issue