|
|
@@ -23,7 +23,6 @@ import com.grkj.data.model.dos.IsJobTicketPoints
|
|
|
import com.grkj.data.model.dos.IsJobTicketStep
|
|
|
import com.grkj.data.model.dos.IsJobTicketUser
|
|
|
import com.grkj.data.model.local.TodoStepJoin
|
|
|
-import com.grkj.data.model.local.isMyTodo
|
|
|
import com.grkj.data.model.local.only
|
|
|
import com.grkj.data.model.req.LockPointUpdateReq
|
|
|
import com.grkj.data.model.res.StepDetailRes
|
|
|
@@ -78,10 +77,10 @@ class JobTicketLogic @Inject constructor(
|
|
|
isJobTicketGroup.ticketId = ticketId
|
|
|
isJobTicketGroup.groupName = it.jobTicketGroupInfo.groupName ?: ""
|
|
|
val groupId = jobTicketDao.saveIsJobTicketGroup(isJobTicketGroup)
|
|
|
- selectedLockerData.find { lockerGroup -> lockerGroup.jobTicketGroupInfo.groupId == it.jobTicketGroupInfo.groupId }?.jobTicketGroupMemberList?.forEach { locker ->
|
|
|
+ selectedLockerData.find { lockerGroup -> lockerGroup.jobTicketGroupInfo.groupId == it.jobTicketGroupInfo.groupId }?.jobTicketGroupDataList?.forEach { locker ->
|
|
|
locker.groupId = groupId
|
|
|
}
|
|
|
- it.jobTicketGroupMemberList.map {
|
|
|
+ it.jobTicketGroupDataList.map {
|
|
|
val isJobTicketPoint = IsJobTicketPoints()
|
|
|
isJobTicketPoint.ticketId = ticketId
|
|
|
isJobTicketPoint.pointId = it.pointId
|
|
|
@@ -92,10 +91,10 @@ class JobTicketLogic @Inject constructor(
|
|
|
isJobTicketPoint
|
|
|
}
|
|
|
}
|
|
|
- val ticketPointIds = jobTicketDao.saveIsJobTicketPoints(ticketPoints.flatten())
|
|
|
+ jobTicketDao.saveIsJobTicketPoints(ticketPoints.flatten())
|
|
|
val ticketPointSaveData = jobTicketDao.getJobTicketPointsDataByTicketId(ticketId)
|
|
|
val ticketLockerUsers = selectedLockerData.map {
|
|
|
- it.jobTicketGroupMemberList.map {
|
|
|
+ it.jobTicketGroupDataList.map {
|
|
|
val isJobticketUser = IsJobTicketUser()
|
|
|
isJobticketUser.userId = it.userId
|
|
|
isJobticketUser.ticketId = ticketId
|
|
|
@@ -116,11 +115,11 @@ class JobTicketLogic @Inject constructor(
|
|
|
jobTicketDao.saveIsJobTicketUser(ticketLockerUsers.flatten())
|
|
|
jobTicketDao.saveIsJobTicketUser(ticketColockerUsers)
|
|
|
val ticketLocks = mutableListOf<IsJobTicketLock>().apply {
|
|
|
- ticketPointIds.forEach { point ->
|
|
|
+ ticketPointSaveData.forEach { point ->
|
|
|
val isJobTicketLock = IsJobTicketLock()
|
|
|
isJobTicketLock.ticketId = ticketId
|
|
|
- isJobTicketLock.isolationPointId = point
|
|
|
- isJobTicketLock.groupId = ticketPointSaveData.find { it.recordId == point }?.groupId
|
|
|
+ isJobTicketLock.isolationPointId = point.pointId
|
|
|
+ isJobTicketLock.groupId = point.groupId
|
|
|
add(isJobTicketLock)
|
|
|
}
|
|
|
}
|
|
|
@@ -186,10 +185,10 @@ class JobTicketLogic @Inject constructor(
|
|
|
isJobTicketGroup.id = it.jobTicketGroupInfo.groupId
|
|
|
isJobTicketGroup.groupName = it.jobTicketGroupInfo.groupName ?: ""
|
|
|
val groupId = jobTicketDao.saveIsJobTicketGroup(isJobTicketGroup)
|
|
|
- selectedLockerData.find { lockerGroup -> it.jobTicketGroupInfo.groupId == lockerGroup.jobTicketGroupInfo.groupId }?.jobTicketGroupMemberList?.forEach {
|
|
|
+ selectedLockerData.find { lockerGroup -> it.jobTicketGroupInfo.groupId == lockerGroup.jobTicketGroupInfo.groupId }?.jobTicketGroupDataList?.forEach {
|
|
|
it.groupId = groupId
|
|
|
}
|
|
|
- it.jobTicketGroupMemberList.map {
|
|
|
+ it.jobTicketGroupDataList.map {
|
|
|
val isJobTicketPoint = IsJobTicketPoints()
|
|
|
isJobTicketPoint.ticketId = ticketId
|
|
|
isJobTicketPoint.pointId = it.pointId
|
|
|
@@ -200,10 +199,10 @@ class JobTicketLogic @Inject constructor(
|
|
|
isJobTicketPoint
|
|
|
}
|
|
|
}
|
|
|
- val ticketPointIds = jobTicketDao.saveIsJobTicketPoints(ticketPoints.flatten())
|
|
|
+ jobTicketDao.saveIsJobTicketPoints(ticketPoints.flatten())
|
|
|
val ticketPointSaveData = jobTicketDao.getJobTicketPointsDataByTicketId(ticketId)
|
|
|
val ticketLockerUsers = selectedLockerData.map {
|
|
|
- it.jobTicketGroupMemberList.map {
|
|
|
+ it.jobTicketGroupDataList.map {
|
|
|
val isJobticketUser = IsJobTicketUser()
|
|
|
isJobticketUser.userId = it.userId
|
|
|
isJobticketUser.ticketId = ticketId
|
|
|
@@ -224,11 +223,9 @@ class JobTicketLogic @Inject constructor(
|
|
|
jobTicketDao.saveIsJobTicketUser(ticketLockerUsers.flatten())
|
|
|
jobTicketDao.saveIsJobTicketUser(ticketColockerUsers)
|
|
|
val ticketLocks = mutableListOf<IsJobTicketLock>().apply {
|
|
|
- ticketPointIds.forEach { point ->
|
|
|
+ ticketPointSaveData.forEach { point ->
|
|
|
val isJobTicketLock = IsJobTicketLock()
|
|
|
isJobTicketLock.ticketId = ticketId
|
|
|
- isJobTicketLock.isolationPointId = point
|
|
|
- isJobTicketLock.groupId = ticketPointSaveData.find { it.recordId == point }?.groupId
|
|
|
add(isJobTicketLock)
|
|
|
}
|
|
|
}
|
|
|
@@ -848,10 +845,10 @@ class JobTicketLogic @Inject constructor(
|
|
|
) {
|
|
|
val existsUsers = jobTicketDao.getJobTicketUserDataByTicketId(ticketId)
|
|
|
jobTicketDao.deleteJobTicketUserByUserIds(existsUsers.filter {
|
|
|
- it.userId !in (selectedLockerData.map { it.jobTicketGroupMemberList }
|
|
|
+ it.userId !in (selectedLockerData.map { it.jobTicketGroupDataList }
|
|
|
.flatten() + selectedColockerData).map { it.userId }
|
|
|
}.map { it.userId })
|
|
|
- val newLockUser = selectedLockerData.map { it.jobTicketGroupMemberList }.flatten()
|
|
|
+ val newLockUser = selectedLockerData.map { it.jobTicketGroupDataList }.flatten()
|
|
|
.filter { it.userId !in existsUsers.map { it.userId } }
|
|
|
val newCoLockUser =
|
|
|
selectedColockerData.filter { it.userId !in existsUsers.map { it.userId } }
|
|
|
@@ -1167,6 +1164,9 @@ class JobTicketLogic @Inject constructor(
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * 创建上锁作业
|
|
|
+ */
|
|
|
override fun createLockJob(
|
|
|
selectedPointsData: List<JobTicketGroupDataVo<JobPointVo>>,
|
|
|
selectedLockerData: List<JobTicketGroupDataVo<JobUserVo>>,
|
|
|
@@ -1175,40 +1175,42 @@ class JobTicketLogic @Inject constructor(
|
|
|
workstationId: Long,
|
|
|
jobName: String
|
|
|
): Long {
|
|
|
- val modeId = workflowStepDao.getWorkflowModes().find { it.modeName == "解锁" }?.modeId!!
|
|
|
+ val modeId = workflowStepDao.getWorkflowModes().find { it.modeName == "上锁" }?.modeId!!
|
|
|
val isJobTicket = IsJobTicket()
|
|
|
- isJobTicket.ticketName = jobName
|
|
|
+ isJobTicket.ticketName = "${jobName}-上锁"
|
|
|
isJobTicket.workstationId = workstationId
|
|
|
isJobTicket.modeId = modeId
|
|
|
isJobTicket.sopId = sopId
|
|
|
val ticketId = jobTicketDao.saveIsJobTicket(isJobTicket)
|
|
|
- val isUnlockFirst = workflowStepDao.isUnlockBeforeLock(modeId)
|
|
|
+ val groupData = mutableMapOf<String, Long>()
|
|
|
val ticketPoints = selectedPointsData.map {
|
|
|
val isJobTicketGroup = IsJobTicketGroup()
|
|
|
isJobTicketGroup.ticketId = ticketId
|
|
|
isJobTicketGroup.groupName = it.jobTicketGroupInfo.groupName ?: ""
|
|
|
- isJobTicketGroup
|
|
|
- jobTicketDao.saveIsJobTicketGroup(isJobTicketGroup)
|
|
|
- it.jobTicketGroupMemberList.map {
|
|
|
+ val groupId = jobTicketDao.saveIsJobTicketGroup(isJobTicketGroup)
|
|
|
+ groupData[it.jobTicketGroupInfo.groupName ?: ""] = groupId
|
|
|
+ it.jobTicketGroupDataList.map {
|
|
|
val isJobTicketPoint = IsJobTicketPoints()
|
|
|
isJobTicketPoint.ticketId = ticketId
|
|
|
isJobTicketPoint.pointId = it.pointId
|
|
|
isJobTicketPoint.workstationId = workstationId
|
|
|
- isJobTicketPoint.pointStatus = if (isUnlockFirst) "1" else "0"
|
|
|
+ isJobTicketPoint.pointStatus = "0"
|
|
|
isJobTicketPoint.lockId = it.lockId
|
|
|
+ isJobTicketPoint.groupId = groupId
|
|
|
isJobTicketPoint
|
|
|
}
|
|
|
}
|
|
|
- val ticketPointIds = jobTicketDao.saveIsJobTicketPoints(ticketPoints.flatten())
|
|
|
+ jobTicketDao.saveIsJobTicketPoints(ticketPoints.flatten())
|
|
|
val ticketPointSaveData = jobTicketDao.getJobTicketPointsDataByTicketId(ticketId)
|
|
|
val ticketLockerUsers = selectedLockerData.map {
|
|
|
- it.jobTicketGroupMemberList.map {
|
|
|
+ val groupId = groupData[it.jobTicketGroupInfo.groupName ?: ""]
|
|
|
+ it.jobTicketGroupDataList.map {
|
|
|
val isJobticketUser = IsJobTicketUser()
|
|
|
isJobticketUser.userId = it.userId
|
|
|
isJobticketUser.ticketId = ticketId
|
|
|
isJobticketUser.userName = it.userName
|
|
|
isJobticketUser.userRole = RoleEnum.JTLOCKER.roleKey
|
|
|
- isJobticketUser.groupId = it.groupId
|
|
|
+ isJobticketUser.groupId = groupId
|
|
|
isJobticketUser
|
|
|
}
|
|
|
}
|
|
|
@@ -1223,11 +1225,9 @@ class JobTicketLogic @Inject constructor(
|
|
|
jobTicketDao.saveIsJobTicketUser(ticketLockerUsers.flatten())
|
|
|
jobTicketDao.saveIsJobTicketUser(ticketColockerUsers)
|
|
|
val ticketLocks = mutableListOf<IsJobTicketLock>().apply {
|
|
|
- ticketPointIds.forEach { point ->
|
|
|
+ ticketPointSaveData.forEach { point ->
|
|
|
val isJobTicketLock = IsJobTicketLock()
|
|
|
isJobTicketLock.ticketId = ticketId
|
|
|
- isJobTicketLock.isolationPointId = point
|
|
|
- isJobTicketLock.groupId = ticketPointSaveData.find { it.recordId == point }?.groupId
|
|
|
add(isJobTicketLock)
|
|
|
}
|
|
|
}
|
|
|
@@ -1239,6 +1239,7 @@ class JobTicketLogic @Inject constructor(
|
|
|
BeanUtils.copyProperties(workflowStep, IsJobTicketStep::class.java)
|
|
|
?: IsJobTicketStep()
|
|
|
isJobTicketStep.stepId = 0L
|
|
|
+ isJobTicketStep.stepStatus = "0"
|
|
|
isJobTicketStep.ticketId = ticketId
|
|
|
isJobTicketStep.stepIndex = workflowStep.stepIndex
|
|
|
isJobTicketStep.stepContent = workflowStep.stepTitle
|
|
|
@@ -1251,9 +1252,13 @@ class JobTicketLogic @Inject constructor(
|
|
|
}
|
|
|
}
|
|
|
jobTicketDao.saveIsJobTicketStep(ticketStep)
|
|
|
+ startJob(ticketId)
|
|
|
return ticketId
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * 创建解锁作业
|
|
|
+ */
|
|
|
override fun createUnLockJob(
|
|
|
selectedPointsData: List<JobTicketGroupDataVo<JobPointVo>>,
|
|
|
selectedLockerData: List<JobTicketGroupDataVo<JobUserVo>>,
|
|
|
@@ -1264,38 +1269,40 @@ class JobTicketLogic @Inject constructor(
|
|
|
): Long {
|
|
|
val modeId = workflowStepDao.getWorkflowModes().find { it.modeName == "解锁" }?.modeId!!
|
|
|
val isJobTicket = IsJobTicket()
|
|
|
- isJobTicket.ticketName = jobName
|
|
|
+ isJobTicket.ticketName = "${jobName}-解锁"
|
|
|
isJobTicket.workstationId = workstationId
|
|
|
isJobTicket.modeId = modeId
|
|
|
isJobTicket.sopId = sopId
|
|
|
val ticketId = jobTicketDao.saveIsJobTicket(isJobTicket)
|
|
|
- val isUnlockFirst = workflowStepDao.isUnlockBeforeLock(modeId)
|
|
|
+ val groupData = mutableMapOf<String, Long>()
|
|
|
val ticketPoints = selectedPointsData.map {
|
|
|
val isJobTicketGroup = IsJobTicketGroup()
|
|
|
isJobTicketGroup.ticketId = ticketId
|
|
|
isJobTicketGroup.groupName = it.jobTicketGroupInfo.groupName ?: ""
|
|
|
- isJobTicketGroup
|
|
|
- jobTicketDao.saveIsJobTicketGroup(isJobTicketGroup)
|
|
|
- it.jobTicketGroupMemberList.map {
|
|
|
+ val groupId = jobTicketDao.saveIsJobTicketGroup(isJobTicketGroup)
|
|
|
+ groupData[isJobTicketGroup.groupName] = groupId
|
|
|
+ it.jobTicketGroupDataList.map {
|
|
|
val isJobTicketPoint = IsJobTicketPoints()
|
|
|
isJobTicketPoint.ticketId = ticketId
|
|
|
isJobTicketPoint.pointId = it.pointId
|
|
|
isJobTicketPoint.workstationId = workstationId
|
|
|
- isJobTicketPoint.pointStatus = if (isUnlockFirst) "1" else "0"
|
|
|
+ isJobTicketPoint.pointStatus = "1"
|
|
|
isJobTicketPoint.lockId = it.lockId
|
|
|
+ isJobTicketPoint.groupId = groupId
|
|
|
isJobTicketPoint
|
|
|
}
|
|
|
}
|
|
|
- val ticketPointIds = jobTicketDao.saveIsJobTicketPoints(ticketPoints.flatten())
|
|
|
+ jobTicketDao.saveIsJobTicketPoints(ticketPoints.flatten())
|
|
|
val ticketPointSaveData = jobTicketDao.getJobTicketPointsDataByTicketId(ticketId)
|
|
|
val ticketLockerUsers = selectedLockerData.map {
|
|
|
- it.jobTicketGroupMemberList.map {
|
|
|
+ val groupId = groupData[it.jobTicketGroupInfo.groupName]
|
|
|
+ it.jobTicketGroupDataList.map {
|
|
|
val isJobticketUser = IsJobTicketUser()
|
|
|
isJobticketUser.userId = it.userId
|
|
|
isJobticketUser.ticketId = ticketId
|
|
|
isJobticketUser.userName = it.userName
|
|
|
isJobticketUser.userRole = RoleEnum.JTLOCKER.roleKey
|
|
|
- isJobticketUser.groupId = it.groupId
|
|
|
+ isJobticketUser.groupId = groupId
|
|
|
isJobticketUser
|
|
|
}
|
|
|
}
|
|
|
@@ -1310,11 +1317,12 @@ class JobTicketLogic @Inject constructor(
|
|
|
jobTicketDao.saveIsJobTicketUser(ticketLockerUsers.flatten())
|
|
|
jobTicketDao.saveIsJobTicketUser(ticketColockerUsers)
|
|
|
val ticketLocks = mutableListOf<IsJobTicketLock>().apply {
|
|
|
- ticketPointIds.forEach { point ->
|
|
|
+ ticketPointSaveData.forEach { point ->
|
|
|
val isJobTicketLock = IsJobTicketLock()
|
|
|
isJobTicketLock.ticketId = ticketId
|
|
|
- isJobTicketLock.isolationPointId = point
|
|
|
- isJobTicketLock.groupId = ticketPointSaveData.find { it.recordId == point }?.groupId
|
|
|
+ isJobTicketLock.isolationPointId = point.pointId
|
|
|
+ isJobTicketLock.groupId = point.groupId
|
|
|
+ isJobTicketLock.lockId = point.lockId
|
|
|
add(isJobTicketLock)
|
|
|
}
|
|
|
}
|
|
|
@@ -1327,6 +1335,7 @@ class JobTicketLogic @Inject constructor(
|
|
|
?: IsJobTicketStep()
|
|
|
isJobTicketStep.stepId = 0L
|
|
|
isJobTicketStep.ticketId = ticketId
|
|
|
+ isJobTicketStep.stepStatus = "0"
|
|
|
isJobTicketStep.stepIndex = workflowStep.stepIndex
|
|
|
isJobTicketStep.stepContent = workflowStep.stepTitle
|
|
|
isJobTicketStep.androidStepContent = workflowStep.stepTitleShort
|
|
|
@@ -1338,6 +1347,7 @@ class JobTicketLogic @Inject constructor(
|
|
|
}
|
|
|
}
|
|
|
jobTicketDao.saveIsJobTicketStep(ticketStep)
|
|
|
+ startJob(ticketId)
|
|
|
return ticketId
|
|
|
}
|
|
|
|