show detail

conv_bal
watcha.h@almacom.co.th 2015-04-28 15:23:44 +07:00
parent b1b71ff805
commit 37b9ce4315
7 changed files with 32 additions and 4 deletions

View File

@ -11,6 +11,7 @@
<field name="rate" onchange="onchange_vals"/>
<field name="amount"/>
<field name="pay_amount"/>
<field name="cycle_item_id"/>
</tab>
<tab string="Computation">
<field name="labor_cost_id"/>

View File

@ -1,6 +1,7 @@
<list model="clinic.labor.cost.line">
<field name="date"/>
<field name="cycle_id"/>
<field name="department_id"/>
<field name="staff_id"/>
<field name="type"/>
<field name="amount"/>

View File

@ -25,6 +25,7 @@ class LaborCostLine(Model):
for obj in self.browse(ids):
res[obj.id]={
'pay_amount': round(obj.amount,0),
'cycle_item_id': obj.labor_cost_id.cycle_item_id.id,
}
return res
@ -38,6 +39,7 @@ class LaborCostLine(Model):
'rate': fields.Float("Rate",scale=2),
'amount': fields.Float("Amount",scale=2),
'pay_amount': fields.Float("Pay Amount",function="_get_all",function_multi=True),
'cycle_item_id': fields.Many2One("clinic.cycle.item","Cycle Item",function="_get_all",function_multi=True),
'date': fields.Date("Date",search=True),
'description': fields.Char("Description"),
'company_id': fields.Many2One('company','Company'),
@ -49,7 +51,7 @@ class LaborCostLine(Model):
_defaults={
"company_id": lambda *a: get_active_company(),
}
_order="cycle_id,level_id"
_order="date,cycle_id,department_id"
def create(self,vals,**kw):
new_id=super().create(vals,**kw)

View File

@ -100,6 +100,10 @@ class ReportLaborCostOverTime(Model):
}
staffs[staff.name]['amount']+=amt # amount from formular
staffs[staff.name]['cycle_qty']+=1 # number of cycle
def replace_quote(dom=""):
dom=dom.replace("False","false")
dom=dom.replace("True","true")
return dom.replace("'","\"")
lines=[]
snames=sorted(staffs.keys()) #sort by staff name
no=1
@ -115,12 +119,18 @@ class ReportLaborCostOverTime(Model):
ot_amount=ot_per_cycle*ot_qty
net_pay=(vals['staff_wage'] or 0)+ot_amount
net_diff=(vals['amount'] or 0)-net_pay
dom=[
['date', '>=', date_from],
['date', '<=', date_to],
['staff_id','=', vals['staff_id']],
]
vals.update({
'no': no,
'ot_qty': ot_qty,
'ot_amount': ot_amount,
'net_pay': net_pay,
'net_diff': net_diff,
'action_options': 'mode=list&search_domain=%s&tab_no=0'%replace_quote('%s'%(dom)),
})
lines.append(vals)
no+=1

View File

@ -161,8 +161,12 @@ class ClinicSetting(Model):
if user_id !=1:
print("Only admin!!")
return
obj=self.browse(ids)[0]
obj.del_duplicate_staff()
for cost_line in get_model("clinic.labor.cost.line").search_browse([]):
cost_line.write({
'note': ' ',
})
#obj=self.browse(ids)[0]
#obj.del_duplicate_staff()
print("Done!")
def del_duplicate_staff(self,ids,context={}):

View File

@ -29,8 +29,13 @@
<td style="text-align:right;">
<a href="#name=clinic_report_labor_cost_summary&defaults.date_from={{../date_from}}&defaults.date_to={{../date_to}}&defaults.staff_type={{staff_type}}&defaults.staff_id={{staff_id}}">{{currency amount zero=""}}</a>
</td>
<td style="text-align:right;">{{max_cycle}}</th>
<td style="text-align:right;">{{max_cycle}}</td>
<td style="text-align:right;">
{{view "link" string=cycle_qty action="clinic_labor_cost_item" action_options=action_options}}
</td>
<!--
<td style="text-align:right;">{{cycle_qty}}</th>
-->
<td style="text-align:right;">{{ot_qty}}</th>
<td style="text-align:right;">{{currency ot_per_cycle zero=""}}</th>
<td style="text-align:right;color:orange">{{currency ot_amount zero=""}}</th>

View File

@ -3,3 +3,8 @@
- staff -> ok
- patient
> explain nurse
กรณีแก้ไขรายชื่อหมอให้ดูรายชื่อแพทย์ให้ดี
> note:
แก้ไขยาก หากมาเจอข้อผิดพลาดบางครั้ง