diff --git a/attendance_iot/controllers/kaoqin_test.py b/attendance_iot/controllers/kaoqin_test.py
index 9d6644c6e..c00f4c766 100644
--- a/attendance_iot/controllers/kaoqin_test.py
+++ b/attendance_iot/controllers/kaoqin_test.py
@@ -16,12 +16,9 @@ class BusController(Controller):
data = request.httprequest.json
user_name = data.get('name')
name = data.get('sn')
- # validity_period = datetime.strptime(data.get('validity_period'), '%Y-%m-%d').date()
- attendance_iot_id = request.env["attendance.iot"].search([('name', '=', name)])
+ attendance_iot_id = request.env(user=SUPERUSER_ID)["attendance.iot"].search([('name', '=', name)])
if not attendance_iot_id:
- request.env["attendance.iot"].create({
- 'name': name,
- })
+ request.env(user=SUPERUSER_ID)["attendance.iot"].create({'name': name,})
employee = request.env(user=SUPERUSER_ID)["hr.employee"].search([('name', '=', user_name)])
# 判断员工是否绑定多台设备
if employee and attendance_iot_id not in employee.attendance_iot_ids.mapped('attendance_iot_id'):
@@ -29,12 +26,10 @@ class BusController(Controller):
'image_1920': data.get('photo'),
'attendance_iot_ids': [(0, 0, {
'employee_id': employee.id,
- 'attendance_address': self.get_equipment_company(data.get('sn')),
+ 'attendance_address': '',
'attendance_iot_id': attendance_iot_id.id
})]
})
-
-
print("---------------------------------------------测试成功---------------------------------------")
return {"Result": 0, "Msg": "添加成功"}
@@ -54,9 +49,8 @@ class BusController(Controller):
request.env(user=SUPERUSER_ID)["hr.attendance.detail"].create({
'employee_id': employee_id.id, # 员工
'checkin_time': checkin_time, # 打卡时间
- 'source': 'iot', # 打卡来源
- 'attendance_iot_id': attendance_iot_id.id, # 打卡设备
- 'location_title': data.get('logs')[0].get("location").get('address'), # 打卡地点
+ 'source': 'iot', # 打卡来源
+ 'attendance_iot_id': attendance_iot_id.id, # 打卡设备
+ 'location_title': data.get('logs')[0].get("location").get('address'), # 打卡地点
})
- print("---------------------------------------------测试成功---------------------------------------")
return {"Result": 0, "Msg": "添加成功"}
diff --git a/soong_workflow/models/soong_workflow_mixin.py b/soong_workflow/models/soong_workflow_mixin.py
index ef3606076..4523674eb 100644
--- a/soong_workflow/models/soong_workflow_mixin.py
+++ b/soong_workflow/models/soong_workflow_mixin.py
@@ -69,18 +69,8 @@ class SoongWorkflowMixin(models.AbstractModel):
string="Status",
default=_compute_default_state,
track_visibility="onchange",
- store = True
+ store=True
)
- # approve_state = fields.Selection(
- # [
- # ("start", "Start"),
- # ("pending", "Pending"),
- # ("end", "End"),
- # ],
- # default="start",
- # string="Approve Status",
- # compute="_compute_node_id",
- # )
workflow_id = fields.Many2one(
comodel_name="soong.workflow",
string="Workflow Ref.",
@@ -159,7 +149,6 @@ class SoongWorkflowMixin(models.AbstractModel):
employee_ids = record.sudo().env['hr.employee'].search([
'|', ('user_role_id', 'in', button_id.users_role_group_ids.user_role_ids.ids), ('user_role_ids', 'in', button_id.users_role_group_ids.user_role_ids.ids),
'|', ('department_id', '=', record.env.user.employee_id.department_id.id), ('department_ids', 'in', record.env.user.employee_id.department_id.id),])
-
if record.env.user.employee_id.id in employee_ids.ids:
record.state = button_id.node_id.node_name
return res
diff --git a/soong_workflow/views/soong_workflow_record.xml b/soong_workflow/views/soong_workflow_record.xml
index a286b5f71..6270080c5 100644
--- a/soong_workflow/views/soong_workflow_record.xml
+++ b/soong_workflow/views/soong_workflow_record.xml
@@ -10,6 +10,7 @@
string="综合搜索"
filter_domain="['|', '|', '|', ('name', 'ilike', self), ('code', 'ilike', self), ('text', 'ilike', self), ('workflow_id.name', 'ilike', self)]"/>
+
diff --git a/yuthon_property/wizard/property_statements_wizard.py b/yuthon_property/wizard/property_statements_wizard.py
index a5aa97c4e..6b53a3a00 100644
--- a/yuthon_property/wizard/property_statements_wizard.py
+++ b/yuthon_property/wizard/property_statements_wizard.py
@@ -39,7 +39,7 @@ class PropertyStatementsWizard(models.Model):
name_account = row[1].value
remake = row[2].value
original_amount = row[3].value
- your_own_account = row[6]
+ your_own_account = row[6].value
cleaned_amount = original_amount.replace(',', '') # 移除逗号
float_amount = float(cleaned_amount)
sequence_number = row[5].value
diff --git a/yuthon_property_approval/controllers/ele_water_reading.py b/yuthon_property_approval/controllers/ele_water_reading.py
index 5c682e4cc..e4d7f5ce6 100644
--- a/yuthon_property_approval/controllers/ele_water_reading.py
+++ b/yuthon_property_approval/controllers/ele_water_reading.py
@@ -1,10 +1,5 @@
from odoo.http import Controller, request, route
-from odoo import models, fields, api, http, SUPERUSER_ID, _
-from datetime import datetime
-import math
import logging
-from geopy.distance import geodesic
-from datetime import timedelta
import json
_logger = logging.getLogger(__name__)
@@ -14,125 +9,6 @@ class EleWaterReading(Controller):
"""
水电抄表接口
"""
- @route('/yuthon/ele/reading', methods=['POST'], type='json', auth='none', csrf=False)
- def yuthon_pro_reading(self, **kw):
- """
- 电表抄表
- :return:
- {
- 'code': 编号,
- 'property_id': '物业地址'
- 'contract_id': '合同'
- 'lessee_id': '承租方'
- 'last_dosage': '上次用量',
- 'current_meter': '本次用量',
- 'dosage': '用量',
- 'employee_list': [抄表人姓名],
- }
- """
- ele_ids = request.env['property.electric.reading'].search([('reading_type', '=', '待抄')])
- employee_list = []
- for ele_id in ele_ids:
- code = ele_id.property_id.code
- property_id = ele_id.property_id.name
- contract_id = ele_id.contract_id.name
- lessee_id = ele_id.contract_id.lessee_id.name
- last_dosage = ele_id.last_dosage
- current_meter = ele_id.current_meter
- dosage = ele_id.dosage
- for employee_id in ele_id.employee_ids:
- employee_list.append(employee_id.name)
- employee_list = ", ".join(employee_list)
-
- return_data = {
- 'data': {
- 'code': code,
- 'property_id': property_id,
- 'contract_id': contract_id,
- 'lessee_id': lessee_id,
- 'last_dosage': last_dosage,
- 'current_meter': current_meter,
- 'dosage': dosage,
- 'employee_list': employee_list,
- },
- 'code': '200',
- 'message': 'OK',
- }
- _logger.info("-----------------测试成功----------------")
- return json.dumps(return_data)
-
- @route('/yuthon/pro/dosage', methods=['POST'], type='json', auth='none', csrf=False)
- def yuthon_pro_dosage(self, **kw):
- """
- :param kw:
- :return:
- """
- code = kw.get('code') # 编号
- dosage = kw.get('dosage') # 用量
- water_reading = request.env['property.water.reading'].search([('code', '=', code)], limit=1)
- electric_reading = request.env['property.electric.reading'].search([('code', '=', code)], limit=1)
- if water_reading:
- water_reading.write({
- 'dosage': dosage
- })
- if electric_reading:
- electric_reading.write({
- 'dosage': dosage
- })
-
- return_data = {
- 'data': {},
- 'code': '200',
- 'message': 'OK',
- }
- _logger.info("-----------------测试成功----------------")
- return json.dumps(return_data)
-
- @route('/yuthon/water/reading', methods=['POST'], type='json', auth='none', csrf=False)
- def yuthon_water_reading(self, **kw):
- """
- 水表抄表
- :return:
- {
- 'code': 编号,
- 'property_id': '物业地址'
- 'contract_id': '合同'
- 'lessee_id': '承租方'
- 'last_dosage': '上次用量',
- 'current_meter': '本次用量',
- 'dosage': '用量',
- 'employee_list': [抄表人姓名],
- }
- """
- ele_ids = self.env['property.water.reading'].search([('reading_type', '=', '待抄')])
- employee_list = []
- for ele_id in ele_ids:
- code = ele_id.property_id.code
- property_id = ele_id.property_id.name
- contract_id = ele_id.contract_id.name
- lessee_id = ele_id.contract_id.lessee_id.name
- last_dosage = ele_id.last_dosage
- current_meter = ele_id.current_meter
- dosage = ele_id.dosage
- for employee_id in ele_id.employee_ids:
- employee_list.append(employee_id.name)
- employee_list = ", ".join(employee_list)
- return_data = {
- 'data': {
- 'code': code,
- 'property_id': property_id,
- 'contract_id': contract_id,
- 'lessee_id': lessee_id,
- 'last_dosage': last_dosage,
- 'current_meter': current_meter,
- 'dosage': dosage,
- 'employee_list': employee_list,
- },
- 'code': '200',
- 'message': 'OK',
- }
- _logger.info("-----------------测试成功----------------")
- return json.dumps(return_data)
@route('/yuthon/meter/reading', methods=['POST'], type='json', auth='none', csrf=False)
def yuthon_meter_reading(self, **kw):
@@ -141,14 +17,11 @@ class EleWaterReading(Controller):
:return:
{
'code': 编号,
- 'property_id': '物业地址'
- 'contract_id': '合同'
- 'lessee_id': '承租方'
'last_dosage': '上次用量',
'current_meter': '本次用量',
'dosage': '用量',
- 'employee_list': [抄表人姓名],
- 'meter_type': '抄表类型(电表或水表)',
+ 'employee_name': 姓名,
+ 'meter_type': '抄表类型 ('electric', '电表'), ('water', '水表'),
}
"""
electric_records = request.env['property.electric.reading'].search([('reading_type', '=', '待抄')])
@@ -156,40 +29,26 @@ class EleWaterReading(Controller):
result_list = []
# 处理电表记录
for record in electric_records:
- employee_names = [emp.name for emp in record.employee_ids]
- employee_list = ", ".join(employee_names)
-
record_data = {
'code': record.property_id.code,
- 'property_id': record.property_id.name,
- 'contract_id': record.contract_id.name,
- 'lessee_id': record.contract_id.lessee_id.name,
'last_dosage': record.last_dosage,
'current_meter': record.current_meter,
'dosage': record.dosage,
- 'employee_list': employee_list,
+ 'employee_name': record.employee_id.name,
'meter_type': 'electric', # 添加仪表类型
}
result_list.append(record_data)
-
# 处理水表记录
for record in water_records:
- employee_names = [emp.name for emp in record.employee_ids]
- employee_list = ", ".join(employee_names)
-
record_data = {
'code': record.property_id.code,
- 'property_id': record.property_id.name,
- 'contract_id': record.contract_id.name,
- 'lessee_id': record.contract_id.lessee_id.name,
'last_dosage': record.last_dosage,
'current_meter': record.current_meter,
'dosage': record.dosage,
- 'employee_list': employee_list,
+ 'employee_list': record.employee_id.name,
'meter_type': 'water',
}
result_list.append(record_data)
-
return_data = {
'data': result_list,
'code': '200',
@@ -226,7 +85,6 @@ class EleWaterReading(Controller):
message = f"成功更新{meter_type_name}用量: {code}"
else:
message = f"未找到{meter_type_name}记录: {code}"
-
return_data = {
'data': {},
'code': '200',