update
This commit is contained in:
parent
364c491a98
commit
09df951406
@ -16,10 +16,10 @@ namespace app\adminapi\lists\project;
|
||||
|
||||
|
||||
use app\adminapi\lists\BaseAdminDataLists;
|
||||
use app\common\lists\ListsSearchInterface;
|
||||
use app\common\model\project\Project;
|
||||
use app\common\model\project\ProjectAttendanceDetail;
|
||||
use app\common\model\project\ProjectAttendanceRecord;
|
||||
use app\common\lists\ListsSearchInterface;
|
||||
|
||||
|
||||
/**
|
||||
@ -57,7 +57,7 @@ class ProjectAttendanceRecordLists extends BaseAdminDataLists implements ListsSe
|
||||
public function lists(): array
|
||||
{
|
||||
return ProjectAttendanceRecord::where($this->searchWhere)
|
||||
->field(['id','attendance_code','project_id', 'attendance_date','remark', 'file'])
|
||||
->field(['id', 'attendance_code', 'project_id', 'attendance_date', 'remark'])
|
||||
->limit($this->limitOffset, $this->limitLength)
|
||||
->order(['id' => 'desc'])
|
||||
->select()->each(function ($item) {
|
||||
|
@ -14,10 +14,10 @@
|
||||
|
||||
namespace app\adminapi\logic\project;
|
||||
|
||||
use app\common\logic\BaseLogic;
|
||||
use app\common\model\project\Project;
|
||||
use app\common\model\project\ProjectAttendanceDetail;
|
||||
use app\common\model\project\ProjectAttendanceRecord;
|
||||
use app\common\logic\BaseLogic;
|
||||
use app\common\model\project\ProjectPersonnel;
|
||||
use think\facade\Db;
|
||||
|
||||
@ -42,16 +42,15 @@ class ProjectAttendanceRecordLogic extends BaseLogic
|
||||
{
|
||||
Db::startTrans();
|
||||
try {
|
||||
$attendance_detail = $params['attendance_detail'];//json_decode($params['attendance_detail'],true);
|
||||
$attendance_code = data_unique_code('项目考勤记录');
|
||||
$ProjectAttendanceRecordRes = ProjectAttendanceRecord::create([
|
||||
'project_id' => $params['project_id'],
|
||||
'attendance_code' => $attendance_code,
|
||||
'attendance_date' => strtotime($params['attendance_date']),
|
||||
'remark' => $params['remark'],
|
||||
'file' => $params['file']? json_encode($params['file']) : null,
|
||||
'annex' => $params['annex'] ? json_encode($params['annex']) : null,
|
||||
]);
|
||||
foreach($attendance_detail as $v){
|
||||
foreach ($params['attendance_detail'] as $v) {
|
||||
ProjectAttendanceDetail::create([
|
||||
'attendance_code' => $attendance_code,
|
||||
'attendance_id' => $ProjectAttendanceRecordRes->id,
|
||||
@ -91,8 +90,10 @@ class ProjectAttendanceRecordLogic extends BaseLogic
|
||||
Db::startTrans();
|
||||
try {
|
||||
ProjectAttendanceRecord::where('id', $params['id'])->update([
|
||||
'project_id' => $params['project_id'],
|
||||
'attendance_date' => strtotime($params['attendance_date']),
|
||||
'remark' => $params['remark'],
|
||||
'annex' => $params['annex'] ? json_encode($params['annex']) : null,
|
||||
]);
|
||||
Db::commit();
|
||||
return true;
|
||||
@ -137,7 +138,7 @@ class ProjectAttendanceRecordLogic extends BaseLogic
|
||||
*/
|
||||
public static function detail($params): array
|
||||
{
|
||||
$data = ProjectAttendanceRecord::field(['id','attendance_code','project_id', 'attendance_date','remark', 'file'])->findOrEmpty($params['id'])->toArray();
|
||||
$data = ProjectAttendanceRecord::field(['id', 'attendance_code', 'project_id', 'attendance_date', 'remark', 'annex'])->findOrEmpty($params['id'])->toArray();
|
||||
$project = Project::field('name,project_code')->where('id', $data['project_id'])->findOrEmpty();
|
||||
$data['project_name'] = $project['name'];
|
||||
$data['project_code'] = $project['project_code'];
|
||||
|
@ -132,6 +132,7 @@
|
||||
$project = Project::field('name,project_code')->where('id', $data['project_id'])->findOrEmpty();
|
||||
$data['project_name'] = $project['name'];
|
||||
$data['project_code'] = $project['project_code'];
|
||||
$data['payment_type_text'] = $data->payment_type_text;
|
||||
//总工资付款
|
||||
$data['total_amount'] = ProjectSalaryDetail::where('salary_payment_id', $data['id'])->sum('apply_amount');
|
||||
return $data->toArray();
|
||||
|
@ -37,7 +37,7 @@
|
||||
'project_id' => 'require|checkProject',
|
||||
'attendance_date' => 'require|dateFormat:Y-m-d',
|
||||
'attendance_detail' => 'require|checkAttendanceDetail',
|
||||
'file' => 'checkFile',
|
||||
'annex' => 'checkAnnex',
|
||||
];
|
||||
|
||||
protected $message = [
|
||||
@ -105,16 +105,6 @@
|
||||
return true;
|
||||
}
|
||||
|
||||
public function checkFile($value): bool|string
|
||||
{
|
||||
if (!empty($value) && $value != '') {
|
||||
if (!is_array($value)) {
|
||||
return '附件必须是json数组';
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
public function checkAttendanceDetail($value, $rule, $data): bool|string
|
||||
{
|
||||
$attendance_detail = $value;//json_decode($value,true);
|
||||
|
@ -27,13 +27,10 @@ use think\model\concern\SoftDelete;
|
||||
class ProjectAttendanceRecord extends BaseModel
|
||||
{
|
||||
use SoftDelete;
|
||||
|
||||
protected $name = 'project_attendance_record';
|
||||
protected $deleteTime = 'delete_time';
|
||||
|
||||
public function getFileAttr($value)
|
||||
{
|
||||
return !empty($value) ? json_decode($value,true) : '';
|
||||
}
|
||||
public function getAttendanceDateAttr($value): string
|
||||
{
|
||||
return !empty($value) ? date('Y-m-d', $value) : '';
|
||||
|
@ -28,6 +28,7 @@ use think\model\concern\SoftDelete;
|
||||
class ProjectSalaryPayment extends BaseModel
|
||||
{
|
||||
use SoftDelete;
|
||||
|
||||
protected $name = 'project_salary_payment';
|
||||
protected $deleteTime = 'delete_time';
|
||||
|
||||
@ -41,7 +42,7 @@ class ProjectSalaryPayment extends BaseModel
|
||||
return !empty($value) ? date('Y-m-d', $value) : '';
|
||||
}
|
||||
|
||||
public function getPaymentTypeAttr($value,$data): string
|
||||
public function getPaymentTypeTextAttr($value, $data): string
|
||||
{
|
||||
$dictData = DictData::where('type_value', 'salary_payment_type')->column('name', 'value');
|
||||
return !empty($data['payment_type']) ? $dictData[$data['payment_type']] : '';
|
||||
|
Loading…
x
Reference in New Issue
Block a user