From 598de7c026202963e72f013d97dcd3db141044b3 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=87=AA=E5=B8=A6=E5=A4=A7=E4=BD=AC=E6=B0=94=E5=9C=BA?=
<188633308@qq.com>
Date: Thu, 8 Jul 2021 10:55:59 +0800
Subject: [PATCH] =?UTF-8?q?update=20=E6=B5=81=E8=BD=AC=E6=97=A5=E5=BF=97,?=
=?UTF-8?q?=20=E9=80=89=E6=8B=A9=E5=85=A8=E9=83=A8?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Api/Ewide.Application/Ewide.Application.xml | 20 +++++++++++++++
.../HouseSafety/HouseInfo/HouseInfoService.cs | 20 ++++++++++++---
.../HouseSafety/HouseTask/HouseTaskService.cs | 10 ++++----
web-react/src/components/index.js | 2 ++
.../src/pages/business/house/task/index.jsx | 25 +++++++++++++------
web-react/src/util/tool/index.js | 23 +++++++++++++++++
6 files changed, 84 insertions(+), 16 deletions(-)
create mode 100644 web-react/src/util/tool/index.js
diff --git a/Api/Ewide.Application/Ewide.Application.xml b/Api/Ewide.Application/Ewide.Application.xml
index 0519e69..53d4ca2 100644
--- a/Api/Ewide.Application/Ewide.Application.xml
+++ b/Api/Ewide.Application/Ewide.Application.xml
@@ -489,6 +489,11 @@
最后提交时间
+
+
+ 是否有效
+
+
任务Id
@@ -1451,6 +1456,21 @@
上报备注
+
+
+ 提交时间
+
+
+
+
+ 最后提交时间
+
+
+
+
+ 是否有效
+
+
所属街道
diff --git a/Api/Ewide.Application/Service/HouseSafety/HouseInfo/HouseInfoService.cs b/Api/Ewide.Application/Service/HouseSafety/HouseInfo/HouseInfoService.cs
index 2a42a56..ee92918 100644
--- a/Api/Ewide.Application/Service/HouseSafety/HouseInfo/HouseInfoService.cs
+++ b/Api/Ewide.Application/Service/HouseSafety/HouseInfo/HouseInfoService.cs
@@ -28,17 +28,24 @@ namespace Ewide.Application.Service.HouseSafety.HouseInfo
private readonly IRepository _houseCodeRep;
private readonly IRepository _houseInfoRep;
private readonly IRepository _houseTaskRep;
+ private readonly IRepository _sysUserRep;
private readonly IUserManager _userManager;
private readonly IDapperRepository _dapperRepository;
private readonly IHouseLogService _houseLogService;
- public HouseInfoService(IRepository HouseCodeRep,IRepository HouseInfoRep, IRepository HouseTaskRep, IUserManager userManager, IDapperRepository dapperRepository, IHouseLogService houseLogService)
+ public HouseInfoService(
+ IRepository HouseCodeRep,
+ IRepository HouseInfoRep,
+ IRepository HouseTaskRep,
+ IRepository sysUserRep,
+ IUserManager userManager, IDapperRepository dapperRepository, IHouseLogService houseLogService)
{
_houseCodeRep = HouseCodeRep;
_houseInfoRep = HouseInfoRep;
_houseTaskRep = HouseTaskRep;
+ _sysUserRep = sysUserRep;
_userManager = userManager;
_dapperRepository = dapperRepository;
@@ -135,9 +142,9 @@ WHERE HC.Id=@HouseCodeId", new { houseTask.HouseCodeId }
var houseEntity = await _houseInfoRep.DetachedEntities.FirstOrDefaultAsync(h => h.HouseCodeId == input.houseCode.Id);
//建档审核通过的房屋数据修改时,对应的建档任务Task不处理
+ var houseTask = input.PatrolInfo.Adapt();
if (houseEntity == null || houseEntity.State != 6)
{
- var houseTask = input.PatrolInfo.Adapt();
houseTask.HouseCodeId = input.houseCode.Id;
//任务没有暂存状态,其他状态与HouseInfo的State一致
houseTask.Status = dataStatus == DataStatus.TempSaved ? (int)DataStatus.Saved : (int)dataStatus;
@@ -167,7 +174,6 @@ WHERE HC.Id=@HouseCodeId", new { houseTask.HouseCodeId }
var org = await _userManager.GetUserOrgInfo();
- var _sysUserRep = Db.GetRepository();
var _sysEmpRep = Db.GetRepository();
var _sysUserRoleRep = Db.GetRepository();
var _sysRoleRep = Db.GetRepository();
@@ -178,14 +184,20 @@ WHERE HC.Id=@HouseCodeId", new { houseTask.HouseCodeId }
where e.OrgId == org.Id && r.Code == Enum.GetName(HouseManagerRole.ZoneManager).ToUnderScoreCase()
select u).ToListAsync();
- await _houseLogService.AddThenDone(input.houseCode.Id, zoneManagerList, HouseLogType.Check);
+ await _houseLogService.Add(input.houseCode.Id, zoneManagerList, HouseLogType.Check);
}
//审核操作则新增一条审核记录
if (dataStatus == DataStatus.Back || dataStatus == DataStatus.Passed)
{
var checkRecord = input.TaskCheckRecord.Adapt();
await checkRecord.InsertAsync();
+ await _houseLogService.Done(input.houseCode.Id);
await _houseLogService.AddThenDone(input.houseCode.Id, _userManager.User, dataStatus == DataStatus.Passed ? HouseLogType.Agree : HouseLogType.Disagree);
+ if (dataStatus == DataStatus.Back)
+ {
+ var user = await _sysUserRep.DetachedEntities.FirstOrDefaultAsync(p => p.Id.Equals(houseTask.UserID));
+ await _houseLogService.Add(input.houseCode.Id, user, HouseLogType.CreateInfo);
+ }
}
}
}
diff --git a/Api/Ewide.Application/Service/HouseSafety/HouseTask/HouseTaskService.cs b/Api/Ewide.Application/Service/HouseSafety/HouseTask/HouseTaskService.cs
index 2399842..6337437 100644
--- a/Api/Ewide.Application/Service/HouseSafety/HouseTask/HouseTaskService.cs
+++ b/Api/Ewide.Application/Service/HouseSafety/HouseTask/HouseTaskService.cs
@@ -51,22 +51,22 @@ LEFT JOIN bs_house_projectinfo Proj ON Proj.Id=HC.ProjectId
LEFT JOIN sys_area_code CA ON CA.Code = Proj.AreaCode
LEFT JOIN sys_area_code RA ON RA.AdCode = SUBSTR(CA.AdCode,1,9)
LEFT JOIN sys_area_code AA ON AA.AdCode = SUBSTR(CA.AdCode,1,6)
-WHERE {0}";
+WHERE T.IsEnabled = 1 {0}";
var user = await _userManager.CheckUserAsync();
if (user == null) throw Oops.Oh("登录信息丢失");
var userRoles = await _userManager.GetUserRoleList();
var userOrg = await _userManager.GetUserOrgInfo();
var param = new DynamicParameters();
- if (userRoles.Where(r => r.Code == Enum.GetName(HouseManagerRole.HouseSecurityManager).ToUnderScoreCase()).Count() > 0)
+ if (userRoles.Where(r => r.Code == Enum.GetName(HouseManagerRole.HouseSecurityManager).ToUnderScoreCase()).Any())
{
- sql = String.Format(sql, " T.UserID=@UserID ");
+ sql = String.Format(sql, " AND T.UserID=@UserID ");
param.Add("UserID", user.Id);
}
- if (userRoles.Where(r => r.Code == Enum.GetName(HouseManagerRole.ZoneManager).ToUnderScoreCase()).Count() > 0)
+ if (userRoles.Where(r => r.Code == Enum.GetName(HouseManagerRole.ZoneManager).ToUnderScoreCase()).Any())
{
- sql = String.Format(sql, " (T.Status=3 OR T.Status=6) AND HC.ZoneId = @ZoneId ");
+ sql = String.Format(sql, " AND (T.Status=3 OR T.Status=6) AND HC.ZoneId = @ZoneId ");
param.Add("ZoneId", userOrg.Id);
}
diff --git a/web-react/src/components/index.js b/web-react/src/components/index.js
index a729563..43eca8f 100644
--- a/web-react/src/components/index.js
+++ b/web-react/src/components/index.js
@@ -14,3 +14,5 @@ export { default as QueryList } from './query-list'
export { default as QueryTable } from './query-table'
export { default as QueryTableActions } from './query-table-actions'
export { default as QueryTreeLayout } from './query-tree-layout'
+
+export { default as HouseLog } from './business/house-log'
\ No newline at end of file
diff --git a/web-react/src/pages/business/house/task/index.jsx b/web-react/src/pages/business/house/task/index.jsx
index 1beecdd..ed5dea0 100644
--- a/web-react/src/pages/business/house/task/index.jsx
+++ b/web-react/src/pages/business/house/task/index.jsx
@@ -1,5 +1,5 @@
import React, { Component } from 'react'
-import { Card, Form, Input, message as Message, Radio, Select, Tag } from 'antd'
+import { Card, Checkbox, Form, Input, message as Message, Radio, Select, Tag } from 'antd'
import { Auth, Container, QueryTable, QueryTableActions } from 'components'
import { api } from 'common/api'
import auth from 'components/authorized/handler'
@@ -7,6 +7,7 @@ import { isEqual } from 'lodash'
import getDictData from 'util/dic'
import { toCamelCase } from 'util/format'
import { getSearchInfo } from 'util/query'
+import { checkboxCheckedNone } from 'util/tool'
/**
* 注释段[\/**\/]为必须要改
@@ -245,12 +246,22 @@ export default class index extends Component {
columns={this.columns}
queryInitialValues={{
type: '',
- state: 0,
+ state: [-1, 0, 1, 2],
}}
onQueryChange={values => {
if (values.hasOwnProperty('type')) {
this.setState({ type: values.type })
}
+ if (values.hasOwnProperty('state')) {
+ const value = checkboxCheckedNone({
+ value: values.state,
+ length: codes.houseStatus.length,
+ required: true,
+ })
+ return {
+ state: value,
+ }
+ }
}}
query={
@@ -286,14 +297,14 @@ export default class index extends Component {
-
+
}
diff --git a/web-react/src/util/tool/index.js b/web-react/src/util/tool/index.js
new file mode 100644
index 0000000..239faaf
--- /dev/null
+++ b/web-react/src/util/tool/index.js
@@ -0,0 +1,23 @@
+import { first, last } from "lodash"
+
+export const checkboxCheckedNone = (arg) => {
+ let { value, length, noneValue, required } = arg
+ if (length === undefined) length = 2
+ if (noneValue === undefined) noneValue = ''
+ if (required === undefined) required = false
+
+ if (first(value) === noneValue && value.length > 1) {
+ // 在'无'之后选中其他值
+ value.shift()
+ } else if (
+ value.length >= length
+ ||
+ (last(value) === noneValue && value.length > 1)
+ ||
+ (!value.length && required)
+ ) {
+ // 在其他值之后选中'无'
+ value = [noneValue]
+ }
+ return value
+}
\ No newline at end of file