update 流转日志, 选择全部

This commit is contained in:
2021-07-08 10:55:59 +08:00
parent 37aa61855d
commit 598de7c026
6 changed files with 84 additions and 16 deletions

View File

@@ -489,6 +489,11 @@
最后提交时间
</summary>
</member>
<member name="P:Ewide.Application.BsHouseTask.IsEnabled">
<summary>
是否有效
</summary>
</member>
<member name="P:Ewide.Application.BsHouseTaskCheckRecord.TaskId">
<summary>
任务Id
@@ -1451,6 +1456,21 @@
上报备注
</summary>
</member>
<member name="P:Ewide.Application.HouseTaskOutput.SubmitTime">
<summary>
提交时间
</summary>
</member>
<member name="P:Ewide.Application.HouseTaskOutput.LastSubmitTime">
<summary>
最后提交时间
</summary>
</member>
<member name="P:Ewide.Application.HouseTaskOutput.IsEnabled">
<summary>
是否有效
</summary>
</member>
<member name="P:Ewide.Application.AddHouseZoneInput.Pid">
<summary>
所属街道

View File

@@ -28,17 +28,24 @@ namespace Ewide.Application.Service.HouseSafety.HouseInfo
private readonly IRepository<BsHouseCode> _houseCodeRep;
private readonly IRepository<BsHouseInfo> _houseInfoRep;
private readonly IRepository<BsHouseTask> _houseTaskRep;
private readonly IRepository<SysUser> _sysUserRep;
private readonly IUserManager _userManager;
private readonly IDapperRepository _dapperRepository;
private readonly IHouseLogService _houseLogService;
public HouseInfoService(IRepository<BsHouseCode> HouseCodeRep,IRepository<BsHouseInfo> HouseInfoRep, IRepository<BsHouseTask> HouseTaskRep, IUserManager userManager, IDapperRepository dapperRepository, IHouseLogService houseLogService)
public HouseInfoService(
IRepository<BsHouseCode> HouseCodeRep,
IRepository<BsHouseInfo> HouseInfoRep,
IRepository<BsHouseTask> HouseTaskRep,
IRepository<SysUser> 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<BsHouseTask>();
if (houseEntity == null || houseEntity.State != 6)
{
var houseTask = input.PatrolInfo.Adapt<BsHouseTask>();
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<SysUser>();
var _sysEmpRep = Db.GetRepository<SysEmp>();
var _sysUserRoleRep = Db.GetRepository<SysUserRole>();
var _sysRoleRep = Db.GetRepository<SysRole>();
@@ -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<BsHouseTaskCheckRecord>();
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);
}
}
}
}

View File

@@ -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);
}

View File

@@ -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'

View File

@@ -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={
<Auth auth={{ [authName]: 'page' }}>
@@ -286,14 +297,14 @@ export default class index extends Component {
<Input autoComplete="off" placeholder="请输入房屋唯一编码" />
</Form.Item>
<Form.Item label="建档状态" name="state">
<Select allowClear className="w-150" placeholder="建档状态">
<Select.Option value="">全部</Select.Option>
<Checkbox.Group>
<Checkbox value="">全部</Checkbox>
{codes.houseStatus.map(item => (
<Select.Option key={item.code} value={+item.code}>
<Checkbox key={item.code} value={+item.code}>
{item.value}
</Select.Option>
</Checkbox>
))}
</Select>
</Checkbox.Group>
</Form.Item>
</Auth>
}

View File

@@ -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
}