From 7411561962ca6e45e32844d7a626a6e89b8292e5 Mon Sep 17 00:00:00 2001
From: jiazx0107 <jiazx0107@163.com>
Date: 星期六, 17 一月 2026 16:59:56 +0800
Subject: [PATCH] 调整出入库通知单功能
---
fzzy-igdss-view/src/main/java/com/fzzy/igds/InoutStockChangePR.java | 4
fzzy-igdss-view/src/main/java/com/fzzy/work/WorkOrderPR.java | 13 +
fzzy-igdss-view/src/main/java/com/fzzy/work/WorkOrder.view.xml | 18 ++
fzzy-igdss-web/src/main/java/com/fzzy/work/WorkOrderController.java | 51 +++++
fzzy-igdss-core/src/main/java/com/fzzy/work/service/WorkOrderService.java | 21 ++
fzzy-igdss-core/src/main/java/com/fzzy/work/service/BizWorkService.java | 17 +-
fzzy-igdss-core/src/main/java/com/fzzy/igds/domain/InoutNoticeOut.java | 16 +-
fzzy-igdss-view/src/main/java/com/fzzy/igds/InoutNoticeIn.view.xml | 82 +++++----
/dev/null | 45 -----
fzzy-igdss-web/src/main/resources/templates/work/flow-his.html | 26 ---
fzzy-igdss-core/src/main/java/com/fzzy/igds/service/DicService.java | 4
fzzy-igdss-view/src/main/java/com/fzzy/igds/FileUploadManage.java | 2
fzzy-igdss-core/src/main/java/com/fzzy/work/service/WorkOrderProcessService.java | 14 +
fzzy-igdss-view/src/main/java/com/fzzy/igds/InoutNoticeOut.view.xml | 138 ++++++++--------
fzzy-igdss-core/src/main/java/com/fzzy/igds/service/InoutNoticeService.java | 14 -
15 files changed, 243 insertions(+), 222 deletions(-)
diff --git a/fzzy-igdss-core/src/main/java/com/fzzy/igds/constant/AuditStatus.java b/fzzy-igdss-core/src/main/java/com/fzzy/igds/constant/AuditStatus.java
deleted file mode 100644
index 6593aff..0000000
--- a/fzzy-igdss-core/src/main/java/com/fzzy/igds/constant/AuditStatus.java
+++ /dev/null
@@ -1,45 +0,0 @@
-package com.fzzy.igds.constant;
-
-/**
- *
- */
-public enum AuditStatus {
- STATUS_10("10", "寰呭鎵�"),
- STATUS_20("20", "閫氳繃"),
-
- STATUS_21("21", "搴撳尯瀹℃壒"),
- STATUS_22("22", "鐩戠瀹℃壒"),
- STATUS_23("22", "閾惰瀹℃壒"),
-
- STATUS_30("30", "鎷掔粷"),
- STATUS_40("40", "閫�鍥�");
-
- private String code;
- private String msg;
-
- AuditStatus(String code, String msg) {
- this.code = code;
- this.msg = msg;
- }
-
- public String getCode() {
- return code;
- }
-
- public String getMsg() {
- return msg;
- }
-
- public static String getMsg(String code) {
- if(null == code) return null;
- if(AuditStatus.STATUS_10.getCode().equals(code)) return AuditStatus.STATUS_10.getMsg();
- if(AuditStatus.STATUS_20.getCode().equals(code)) return AuditStatus.STATUS_20.getMsg();
- if(AuditStatus.STATUS_21.getCode().equals(code)) return AuditStatus.STATUS_21.getMsg();
- if(AuditStatus.STATUS_22.getCode().equals(code)) return AuditStatus.STATUS_22.getMsg();
- if(AuditStatus.STATUS_23.getCode().equals(code)) return AuditStatus.STATUS_23.getMsg();
- if(AuditStatus.STATUS_30.getCode().equals(code)) return AuditStatus.STATUS_30.getMsg();
- if(AuditStatus.STATUS_40.getCode().equals(code)) return AuditStatus.STATUS_40.getMsg();
- return code;
- }
-
-}
diff --git a/fzzy-igdss-core/src/main/java/com/fzzy/igds/domain/InoutNoticeOut.java b/fzzy-igdss-core/src/main/java/com/fzzy/igds/domain/InoutNoticeOut.java
index b1b1ee1..fb3e522 100644
--- a/fzzy-igdss-core/src/main/java/com/fzzy/igds/domain/InoutNoticeOut.java
+++ b/fzzy-igdss-core/src/main/java/com/fzzy/igds/domain/InoutNoticeOut.java
@@ -81,14 +81,14 @@
@TableField("audit_status")
private String auditStatus = "10";
- @Column(name = "audit_user", columnDefinition = "varchar(20) COMMENT '瀹℃牳浜�'")
- @TableField("audit_user")
- private String auditUser;
-
- @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
- @Column(name = "audit_date", columnDefinition = "datetime COMMENT '瀹℃壒鏃堕棿'")
- @TableField("audit_date")
- private Date auditDate;
+// @Column(name = "audit_user", columnDefinition = "varchar(20) COMMENT '瀹℃牳浜�'")
+// @TableField("audit_user")
+// private String auditUser;
+//
+// @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+// @Column(name = "audit_date", columnDefinition = "datetime COMMENT '瀹℃壒鏃堕棿'")
+// @TableField("audit_date")
+// private Date auditDate;
@Column(name = "complete_status", columnDefinition = "varchar(20) COMMENT '瀹屾垚鐘舵��(NONE=鏈畬鎴愶紝COMPLETE=宸插畬鎴�)'")
@TableField("complete_status")
diff --git a/fzzy-igdss-core/src/main/java/com/fzzy/igds/service/DicService.java b/fzzy-igdss-core/src/main/java/com/fzzy/igds/service/DicService.java
index c259205..d55fb16 100644
--- a/fzzy-igdss-core/src/main/java/com/fzzy/igds/service/DicService.java
+++ b/fzzy-igdss-core/src/main/java/com/fzzy/igds/service/DicService.java
@@ -2,6 +2,7 @@
import com.fzzy.igds.constant.*;
import com.fzzy.igds.utils.ContextUtil;
+import com.fzzy.work.data.WorkStatus;
import com.ruoyi.common.core.domain.entity.SysDictData;
import com.ruoyi.common.utils.DictUtils;
import com.ruoyi.common.utils.StringUtils;
@@ -252,10 +253,9 @@
*/
public List<SysDictData> triggerStatusType() {
List<SysDictData> list = new ArrayList<SysDictData>();
- for (AuditStatus w : AuditStatus.values()) {
+ for (WorkStatus w : WorkStatus.values()) {
list.add(new SysDictData(w.getMsg(), w.getCode()));
}
-
return list;
}
diff --git a/fzzy-igdss-core/src/main/java/com/fzzy/igds/service/InoutNoticeService.java b/fzzy-igdss-core/src/main/java/com/fzzy/igds/service/InoutNoticeService.java
index cfe719f..778a6a3 100644
--- a/fzzy-igdss-core/src/main/java/com/fzzy/igds/service/InoutNoticeService.java
+++ b/fzzy-igdss-core/src/main/java/com/fzzy/igds/service/InoutNoticeService.java
@@ -1,7 +1,6 @@
package com.fzzy.igds.service;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.fzzy.igds.constant.AuditStatus;
import com.fzzy.igds.constant.Constant;
import com.fzzy.igds.constant.InoutConstant;
import com.fzzy.igds.data.*;
@@ -10,6 +9,7 @@
import com.fzzy.igds.mapper.InoutNoticeOutMapper;
import com.fzzy.igds.utils.ContextUtil;
import com.fzzy.work.data.WorkBizType;
+import com.fzzy.work.data.WorkStatus;
import com.fzzy.work.domain.WorkOrderConf;
import com.fzzy.work.service.BizWorkService;
import com.ruoyi.common.utils.StringUtils;
@@ -177,15 +177,14 @@
data.setUpdateTime(new Date());
data.setCreateBy(ContextUtil.getLoginUserName());
data.setCreateTime(new Date());
- data.setAuditStatus(AuditStatus.STATUS_10.getCode());
+ data.setAuditStatus(WorkStatus.STATUS_10.getCode());
data.setCompleteStatus(Constant.COMPLETE_STATUS_NONE);
//鎵ц娴佺▼
WorkOrderConf conf = workService.getConfByDeptId(data.getDeptId(), WorkBizType.TYPE_10);
//娴佺▼涓嶅惎鐢�
if (null == conf || Constant.YN_N.equals(conf.getValTag())) {
- data.setAuditStatus(AuditStatus.STATUS_20.getCode());
- //data.setAuditDate(data.getCreateTime());
+ data.setAuditStatus(WorkStatus.STATUS_50.getCode());
} else {
BaseResp resp = workService.startByNoticeIn(data, conf);
log.info("---------鍚姩宸ュ崟娴佺▼------{}", resp);
@@ -367,15 +366,14 @@
data.setUpdateTime(new Date());
data.setCreateBy(ContextUtil.getLoginUserName());
data.setCreateTime(new Date());
- data.setAuditStatus(AuditStatus.STATUS_10.getCode());
+ data.setAuditStatus(WorkStatus.STATUS_10.getCode());
data.setCompleteStatus(Constant.COMPLETE_STATUS_NONE);
//鎵ц娴佺▼
- WorkOrderConf conf = workService.getConfByDeptId(data.getDeptId(), WorkBizType.TYPE_10);
+ WorkOrderConf conf = workService.getConfByDeptId(data.getDeptId(), WorkBizType.TYPE_20);
//娴佺▼涓嶅惎鐢�
if (null == conf || Constant.YN_N.equals(conf.getValTag())) {
- data.setAuditStatus(AuditStatus.STATUS_20.getCode());
- data.setAuditDate(data.getCreateTime());
+ data.setAuditStatus(WorkStatus.STATUS_50.getCode());
} else {
BaseResp resp = workService.startByNoticeOut(data, conf);
log.info("---------鍚姩宸ュ崟娴佺▼------{}", resp);
diff --git a/fzzy-igdss-core/src/main/java/com/fzzy/work/service/BizWorkService.java b/fzzy-igdss-core/src/main/java/com/fzzy/work/service/BizWorkService.java
index 1cedead..9623e67 100644
--- a/fzzy-igdss-core/src/main/java/com/fzzy/work/service/BizWorkService.java
+++ b/fzzy-igdss-core/src/main/java/com/fzzy/work/service/BizWorkService.java
@@ -85,7 +85,7 @@
process.setAssigneeName(work.getCreateBy());
process.setAssigneeId(work.getCreateById());
process.setNode(WorkNode.NODE_START.getCode());
- orderProcessService.addData(process);
+ orderProcessService.addData(process,false);
return BaseResp.success();
}
@@ -130,7 +130,7 @@
process.setAssigneeName(work.getCreateBy());
process.setAssigneeId(work.getCreateById());
process.setNode(WorkNode.NODE_START.getCode());
- orderProcessService.addData(process);
+ orderProcessService.addData(process,false);
return BaseResp.success();
}
@@ -201,22 +201,21 @@
process.setAssigneeName(ContextUtil.getLoginUserName());
process.setAssigneeId(ContextUtil.getLoginName());
- WorkNode node = this.getNextNode(work.getNode(), conf);
+ WorkNode nextNode = this.getNextNode(work.getNode(), conf);
- log.info("宸ュ崟瀹℃壒锛歿}锛屽綋鍓嶈妭鐐癸細{}锛屼笅涓�鑺傜偣锛歿}", work.getTitle(), work.getNode(), node);
+ log.info("宸ュ崟瀹℃壒锛歿}锛屽綋鍓嶈妭鐐癸細{}锛屼笅涓�鑺傜偣锛歿}", work.getTitle(), work.getNode(), nextNode);
//閫氳繃鎿嶄綔
if ("pass".equals(action)) {
process.setAction("閫氳繃");
- process.setNode(node.getCode());
+ process.setNode(work.getNode());
//缁撴潫鍒ゆ柇锛屽鏋滄槸缁撴潫鑺傜偣锛屽垯缁撴潫宸ュ崟
- if (WorkNode.NODE_END.getCode().equals(process.getNode())) {
+ if (WorkNode.NODE_END.getCode().equals(nextNode.getCode())) {
work.setStatus(WorkStatus.STATUS_50.getCode());
-
work.setAssigneeName(process.getAssigneeName());
work.setAssigneeId(process.getAssigneeId());
-
+ work.setNode(nextNode.getCode());
orderService.complete(work);
}
}
@@ -231,7 +230,7 @@
}
//澧炲姞瀹℃壒璁板綍
- orderProcessService.addData(process);
+ orderProcessService.addData(process,nextNode.equals(WorkNode.NODE_END));
return BaseResp.success();
}
diff --git a/fzzy-igdss-core/src/main/java/com/fzzy/work/service/WorkOrderProcessService.java b/fzzy-igdss-core/src/main/java/com/fzzy/work/service/WorkOrderProcessService.java
index f8ffd84..97a4423 100644
--- a/fzzy-igdss-core/src/main/java/com/fzzy/work/service/WorkOrderProcessService.java
+++ b/fzzy-igdss-core/src/main/java/com/fzzy/work/service/WorkOrderProcessService.java
@@ -2,12 +2,14 @@
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.fzzy.igds.utils.ContextUtil;
+import com.fzzy.work.data.WorkNode;
import com.fzzy.work.domain.WorkOrderProcess;
import com.fzzy.work.mapper.WorkOrderProcessMapper;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
+import java.util.Date;
import java.util.List;
/**
@@ -31,8 +33,16 @@
return mapper.selectList(queryWrapper);
}
- public void addData(WorkOrderProcess process) {
- if(null == process.getId()) process.setId(ContextUtil.UUID());
+ public void addData(WorkOrderProcess process, boolean isEnd) {
+ if (null == process.getId()) process.setId(ContextUtil.UUID());
mapper.insert(process);
+
+ if (isEnd) {
+ process.setId(ContextUtil.UUID());
+ process.setNode(WorkNode.NODE_END.getCode());
+ process.setRemark("娴佺▼缁撴潫");
+ process.setCreateTime(new Date());
+ mapper.insert(process);
+ }
}
}
diff --git a/fzzy-igdss-core/src/main/java/com/fzzy/work/service/WorkOrderService.java b/fzzy-igdss-core/src/main/java/com/fzzy/work/service/WorkOrderService.java
index ba1ea5f..8dace54 100644
--- a/fzzy-igdss-core/src/main/java/com/fzzy/work/service/WorkOrderService.java
+++ b/fzzy-igdss-core/src/main/java/com/fzzy/work/service/WorkOrderService.java
@@ -3,7 +3,6 @@
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.fzzy.igds.constant.Constant;
-import com.fzzy.igds.constant.InoutConstant;
import com.fzzy.igds.mapper.InoutNoticeInMapper;
import com.fzzy.igds.mapper.InoutNoticeOutMapper;
import com.fzzy.igds.utils.ContextUtil;
@@ -136,6 +135,26 @@
return list;
}
+ public List<SysDictData> triggerNode() {
+ List<SysDictData> list = new ArrayList<SysDictData>();
+ for (WorkNode w : WorkNode.values()) {
+ list.add(new SysDictData(w.getMsg(), w.getCode()));
+ }
+ return list;
+ }
+
+ public WorkOrder selectByBusinessId(String businessId) {
+
+ QueryWrapper<WorkOrder> queryWrapper = new QueryWrapper<>();
+ queryWrapper.eq("business_id", businessId);
+
+ List<WorkOrder> list = workOrderMapper.selectList(queryWrapper);
+
+ if (null == list || list.isEmpty()) return null;
+
+ return list.get(0);
+ }
+
/**
* 鑾峰彇鐢ㄦ埛寰呭鐞嗗伐鍗曟暟
* @param status
diff --git a/fzzy-igdss-view/src/main/java/com/fzzy/igds/FileUploadManage.java b/fzzy-igdss-view/src/main/java/com/fzzy/igds/FileUploadManage.java
index 5fb84a8..a32b382 100644
--- a/fzzy-igdss-view/src/main/java/com/fzzy/igds/FileUploadManage.java
+++ b/fzzy-igdss-view/src/main/java/com/fzzy/igds/FileUploadManage.java
@@ -1,7 +1,5 @@
package com.fzzy.igds;
-import com.bstek.dorado.uploader.DownloadFile;
-import com.bstek.dorado.uploader.annotation.FileProvider;
import com.bstek.dorado.uploader.UploadFile;
import com.bstek.dorado.uploader.annotation.FileResolver;
import com.fzzy.igds.service.FileService;
diff --git a/fzzy-igdss-view/src/main/java/com/fzzy/igds/InoutNoticeIn.view.xml b/fzzy-igdss-view/src/main/java/com/fzzy/igds/InoutNoticeIn.view.xml
index 2ddc0e4..37ff1ec 100644
--- a/fzzy-igdss-view/src/main/java/com/fzzy/igds/InoutNoticeIn.view.xml
+++ b/fzzy-igdss-view/src/main/java/com/fzzy/igds/InoutNoticeIn.view.xml
@@ -4,10 +4,6 @@
<Context/>
<Model>
<DataType name="dtMain">
- <ClientEvent name="onDataChange">
-
-
-</ClientEvent>
<Property name="creationType">com.fzzy.igds.domain.InoutNoticeIn</Property>
<PropertyDef name="id">
<Property></Property>
@@ -110,14 +106,6 @@
<Property name="keyProperty">dictValue</Property>
<Property name="valueProperty">dictLabel</Property>
</Property>
- </PropertyDef>
- <PropertyDef name="auditUser">
- <Property></Property>
- <Property name="label">瀹℃牳浜�</Property>
- </PropertyDef>
- <PropertyDef name="auditDate">
- <Property name="dataType">DateTime</Property>
- <Property name="label">瀹℃壒鏃堕棿</Property>
</PropertyDef>
<PropertyDef name="completeStatus">
<Property></Property>
@@ -278,15 +266,14 @@
<Property name="iconClass">fa fa-pencil-square-o</Property>
</ToolBarButton>
<ToolBarButton layoutConstraint="left">
- <ClientEvent name="onClick">
- var select = view.get("#dataGridMain").get("selection");
- if(select){
- view.get("#ajaxDel").set("parameter",select).execute(function(result){
- select.remove();
- });
- }else{
- $notify("璇烽�夋嫨闇�瑕佸垹闄ょ殑鏁版嵁鈥︹��");
- }</ClientEvent>
+ <ClientEvent name="onClick">var select = view.get("#dataGridMain").get("selection");
+if(select){
+view.get("#ajaxDel").set("parameter",select).execute(function(result){
+select.remove();
+});
+}else{
+$notify("璇烽�夋嫨闇�瑕佸垹闄ょ殑鏁版嵁鈥︹��");
+}</ClientEvent>
<Property name="caption">鍒犻櫎</Property>
<Property name="exClassName">btn3</Property>
<Property name="width">100</Property>
@@ -308,6 +295,7 @@
<Property name="iconClass">fa fa-refresh</Property>
<Property name="width">120</Property>
<Property name="tip">瀹屾垚閲忛粯璁ょ粺璁″埌鏄ㄥぉ锛屾煡鐪嬪疄鏃跺畬鎴愰噺璇风偣鍑烩�滃疄鏃舵牳绠椻�濇寜閽�</Property>
+ <Property name="ignored">true</Property>
</ToolBarButton>
<ToolBarButton layoutConstraint="left">
<ClientEvent name="onClick">
@@ -323,6 +311,20 @@
<Property name="exClassName">btn2</Property>
<Property name="width">120</Property>
<Property name="iconClass">fa fa-print</Property>
+ </ToolBarButton>
+ <Separator/>
+ <ToolBarButton layoutConstraint="left">
+ <ClientEvent name="onClick">var select = view.get("#dataGridMain").get("selection");
+if(select){
+ view.get("#iFrameFlowHis").set("path","/work/flow-his2?businessId="+select.get("id"));
+ view.get("#dialogHis").show();
+}else{
+ $notify("璇烽�夋嫨闇�瑕佹煡鐪嬬殑鏁版嵁鈥︹��");
+}</ClientEvent>
+ <Property name="caption">瀹℃壒璁板綍</Property>
+ <Property name="exClassName">btn4</Property>
+ <Property name="iconClass">fa fa-th-list</Property>
+ <Property name="width">120</Property>
</ToolBarButton>
<Fill/>
</ToolBar>
@@ -378,11 +380,10 @@
<Property name="align">center</Property>
<Property name="width">100</Property>
</DataColumn>
- <DataColumn>
- <Property name="property">updateBy</Property>
+ <DataColumn name="auditStatus">
+ <Property name="property">auditStatus</Property>
+ <Property name="width">100</Property>
<Property name="align">center</Property>
- <Property name="name">updateBy</Property>
- <Property name="width">120</Property>
</DataColumn>
<DataColumn>
<Property name="property">createTime</Property>
@@ -406,7 +407,11 @@
<Property name="iconClass">fa fa-tasks</Property>
<Buttons>
<Button id="btnOk">
- <ClientEvent name="onClick">view.get("#updateSave").execute(function(result){
+ <ClientEvent name="onClick">//璧嬪�兼敹璐у崟浣嶇瓑浜庡綋鍓嶅簱鍖�
+var data = view.get("#dsMain.data:#");
+data.set('unitName',data.getText('deptId'));
+
+view.get("#updateSave").execute(function(result){
if(result.code != '200'){
$alert(result.message);
return;
@@ -565,18 +570,6 @@
<Property name="readOnly">true</Property>
<Editor/>
</AutoFormElement>
- <AutoFormElement>
- <Property name="name">auditUser</Property>
- <Property name="property">auditUser</Property>
- <Property name="readOnly">true</Property>
- <Editor/>
- </AutoFormElement>
- <AutoFormElement>
- <Property name="name">auditDate</Property>
- <Property name="property">auditDate</Property>
- <Property name="readOnly">true</Property>
- <Editor/>
- </AutoFormElement>
<HtmlContainer layoutConstraint="colSpan:3">
<Property name="content">1.鍏ュ簱閫氱煡鍗曚綔涓哄叆搴撲綔涓氱殑鍓嶇疆鏉′欢锛屽繀椤婚厤缃紝鍚﹀垯鏃犳硶杩涜鍏ュ簱浣滀笟銆�<br>
2.鍗曟嵁绫诲瀷=搴撳尯閫氱煡鍗曪紝琛ㄧず搴撳尯鑷繁浣滀笟涓氬姟锛屼笉鍙楃洃绠$鐞嗐��<br>
@@ -631,5 +624,18 @@
<AjaxAction id="recalculate">
<Property name="service">inoutNoticePR#updateSumNoticeIn</Property>
</AjaxAction>
+ <Dialog id="dialogHis">
+ <Property name="width">80%</Property>
+ <Property name="height">80%</Property>
+ <Property name="iconClass">fa fa-th-list</Property>
+ <Property name="caption">瀹℃壒璁板綍</Property>
+ <Buttons/>
+ <Children>
+ <IFrame id="iFrameFlowHis">
+ <Property name="path">/work/flow-his?businessId=1</Property>
+ </IFrame>
+ </Children>
+ <Tools/>
+ </Dialog>
</View>
</ViewConfig>
diff --git a/fzzy-igdss-view/src/main/java/com/fzzy/igds/InoutNoticeOut.view.xml b/fzzy-igdss-view/src/main/java/com/fzzy/igds/InoutNoticeOut.view.xml
index 357dd74..dcc468f 100644
--- a/fzzy-igdss-view/src/main/java/com/fzzy/igds/InoutNoticeOut.view.xml
+++ b/fzzy-igdss-view/src/main/java/com/fzzy/igds/InoutNoticeOut.view.xml
@@ -103,33 +103,10 @@
<Property></Property>
<Property name="label">瀹℃牳鐘舵��</Property>
<Property name="mapping">
- <Property name="mapValues">
- <Collection>
- <Entity>
- <Property name="name">鐩戠瀹℃牳</Property>
- <Property name="code">10</Property>
- </Entity>
- <Entity>
- <Property name="name">閾惰瀹℃牳</Property>
- <Property name="code">20</Property>
- </Entity>
- <Entity>
- <Property name="name">宸插鏍�</Property>
- <Property name="code">30</Property>
- </Entity>
- </Collection>
- </Property>
- <Property name="keyProperty">code</Property>
- <Property name="valueProperty">name</Property>
+ <Property name="mapValues">${dorado.getDataProvider("dicPR#triggerStatusType").getResult()}</Property>
+ <Property name="keyProperty">dictValue</Property>
+ <Property name="valueProperty">dictLabel</Property>
</Property>
- </PropertyDef>
- <PropertyDef name="auditUser">
- <Property></Property>
- <Property name="label">瀹℃牳浜�</Property>
- </PropertyDef>
- <PropertyDef name="auditDate">
- <Property name="dataType">DateTime</Property>
- <Property name="label">瀹℃壒鏃堕棿</Property>
</PropertyDef>
<PropertyDef name="completeStatus">
<Property></Property>
@@ -322,6 +299,7 @@
<Property name="iconClass">fa fa-refresh</Property>
<Property name="width">100</Property>
<Property name="tip">瀹屾垚閲忛粯璁ょ粺璁″埌鏄ㄥぉ锛屾煡鐪嬪疄鏃跺畬鎴愰噺璇风偣鍑烩�滃疄鏃舵牳绠椻�濇寜閽�</Property>
+ <Property name="ignored">true</Property>
</ToolBarButton>
<ToolBarButton layoutConstraint="left">
<ClientEvent name="onClick">
@@ -337,6 +315,20 @@
<Property name="exClassName">btn2</Property>
<Property name="width">120</Property>
<Property name="iconClass">fa fa-print</Property>
+ </ToolBarButton>
+ <Separator/>
+ <ToolBarButton layoutConstraint="left">
+ <ClientEvent name="onClick">var select = view.get("#dataGridMain").get("selection");
+if(select){
+ view.get("#iFrameFlowHis").set("path","/work/flow-his2?businessId="+select.get("id"));
+ view.get("#dialogHis").show();
+}else{
+ $notify("璇烽�夋嫨闇�瑕佹煡鐪嬬殑鏁版嵁鈥︹��");
+}</ClientEvent>
+ <Property name="caption">瀹℃壒璁板綍</Property>
+ <Property name="exClassName">btn4</Property>
+ <Property name="iconClass">fa fa-th-list</Property>
+ <Property name="width">120</Property>
</ToolBarButton>
<Fill/>
</ToolBar>
@@ -392,11 +384,10 @@
<Property name="align">center</Property>
<Property name="width">100</Property>
</DataColumn>
- <DataColumn>
- <Property name="property">updateBy</Property>
+ <DataColumn name="auditStatus">
+ <Property name="property">auditStatus</Property>
+ <Property name="width">100</Property>
<Property name="align">center</Property>
- <Property name="name">updateBy</Property>
- <Property name="width">120</Property>
</DataColumn>
<DataColumn>
<Property name="property">createTime</Property>
@@ -421,7 +412,10 @@
<Property name="iconClass">fa fa-tasks</Property>
<Buttons>
<Button id="btnOk">
- <ClientEvent name="onClick">view.get("#updateSave").execute(function(result){
+ <ClientEvent name="onClick">var data = view.get("#dsMain.data:#");
+data.set('unitName',data.getText('deptId'));
+
+view.get("#updateSave").execute(function(result){
if(result.code != '200'){
$alert(result.message);
return;
@@ -475,7 +469,7 @@
<Property name="labelAlign">right</Property>
<Property name="labelSeparator">锛�</Property>
<Property name="labelWidth">120</Property>
- <AutoFormElement layoutConstraint="colSpan:2">
+ <AutoFormElement>
<Property name="name">name</Property>
<Property name="property">name</Property>
<Editor/>
@@ -484,6 +478,8 @@
<Property name="name">type</Property>
<Property name="property">type</Property>
<Property name="trigger">autoMappingDropDown1</Property>
+ <Property name="editorType">RadioGroup</Property>
+ <Property name="showHint">false</Property>
<Editor/>
</AutoFormElement>
<AutoFormElement id="formItemBank">
@@ -514,20 +510,38 @@
<Property name="trigger">defaultYearDropDown</Property>
<Editor/>
</AutoFormElement>
- <AutoFormElement layoutConstraint="colSpan:2">
- <Property name="name">customerName</Property>
- <Property name="property">customerName</Property>
+ <AutoFormElement>
+ <Property name="name">createTime</Property>
+ <Property name="property">createTime</Property>
+ <Property name="readOnly">true</Property>
<Editor/>
</AutoFormElement>
<AutoFormElement>
- <Property name="name">unitName</Property>
- <Property name="property">unitName</Property>
+ <Property name="name">customerName</Property>
+ <Property name="property">customerName</Property>
<Editor/>
</AutoFormElement>
<AutoFormElement>
<Property name="name">targetNumber</Property>
<Property name="property">targetNumber</Property>
<Property name="readOnly">false</Property>
+ <Editor/>
+ </AutoFormElement>
+ <AutoFormElement>
+ <Property name="name">createBy</Property>
+ <Property name="property">createBy</Property>
+ <Editor/>
+ </AutoFormElement>
+ <AutoFormElement>
+ <Property name="name">createTime</Property>
+ <Property name="property">createTime</Property>
+ <Property name="readOnly">true</Property>
+ <Editor/>
+ </AutoFormElement>
+ <AutoFormElement layoutConstraint="colSpan:3">
+ <Property name="name">remark</Property>
+ <Property name="property">remark</Property>
+ <Property name="editorType">TextArea</Property>
<Editor/>
</AutoFormElement>
<AutoFormElement>
@@ -547,17 +561,6 @@
<Property name="readOnly">false</Property>
<Editor/>
</AutoFormElement>
- <AutoFormElement>
- <Property name="name">createBy</Property>
- <Property name="property">createBy</Property>
- <Editor/>
- </AutoFormElement>
- <AutoFormElement>
- <Property name="name">auditStatus</Property>
- <Property name="property">auditStatus</Property>
- <Property name="readOnly">true</Property>
- <Editor/>
- </AutoFormElement>
<AutoFormElement layoutConstraint="colSpan:2">
<Property name="name">contract</Property>
<Property name="property">contract</Property>
@@ -569,32 +572,16 @@
</Property>
<Property name="text">娉細鐩戠閫氱煡鍗曪紝鍙~鍐欒川鎶煎悎鍚屽悕绉�</Property>
</Label>
- <AutoFormElement layoutConstraint="colSpan:3">
- <Property name="name">remark</Property>
- <Property name="property">remark</Property>
- <Property name="editorType">TextArea</Property>
- <Editor/>
- </AutoFormElement>
<AutoFormElement>
- <Property name="name">createTime</Property>
- <Property name="property">createTime</Property>
- <Editor/>
- </AutoFormElement>
- <AutoFormElement>
- <Property name="name">auditUser</Property>
- <Property name="property">auditUser</Property>
- <Property name="readOnly">true</Property>
- <Editor/>
- </AutoFormElement>
- <AutoFormElement>
- <Property name="name">auditDate</Property>
- <Property name="property">auditDate</Property>
+ <Property name="name">auditStatus</Property>
+ <Property name="property">auditStatus</Property>
<Property name="readOnly">true</Property>
<Editor/>
</AutoFormElement>
<HtmlContainer layoutConstraint="colSpan:3">
- <Property name="content">1.鍑哄簱閫氱煡鍗曚綔涓哄嚭搴撲綔涓氱殑鍓嶇疆鏉′欢锛屽繀椤婚厤缃紝鍚﹀垯鏃犳硶杩涜鍏ュ簱浣滀笟銆�<br>
- 2.鍗曟嵁绫诲瀷=搴撳尯閫氱煡鍗曪紝琛ㄧず搴撳尯鑷繁浣滀笟涓氬姟锛屼笉鍙楃洃绠$鐞嗐��</Property>
+ <Property name="content">1.鍏ュ簱閫氱煡鍗曚綔涓哄叆搴撲綔涓氱殑鍓嶇疆鏉′欢锛屽繀椤婚厤缃紝鍚﹀垯鏃犳硶杩涜鍏ュ簱浣滀笟銆�<br>
+2.鍗曟嵁绫诲瀷=搴撳尯閫氱煡鍗曪紝琛ㄧず搴撳尯鑷繁浣滀笟涓氬姟锛屼笉鍙楃洃绠$鐞嗐��<br>
+3.鍗曟嵁绫诲瀷=璐ㄦ娂鐩戠閫氱煡鍗曪紝鍗曟嵁蹇呴』濉啓鐩戠潱閾惰銆�</Property>
<Property name="exClassName">h-tip</Property>
<Property name="contentOverflow">hidden</Property>
</HtmlContainer>
@@ -645,5 +632,18 @@
<AjaxAction id="recalculate">
<Property name="service">inoutNoticePR#updateSumNoticeOut</Property>
</AjaxAction>
+ <Dialog id="dialogHis">
+ <Property name="width">80%</Property>
+ <Property name="height">80%</Property>
+ <Property name="iconClass">fa fa-th-list</Property>
+ <Property name="caption">瀹℃壒璁板綍</Property>
+ <Buttons/>
+ <Children>
+ <IFrame id="iFrameFlowHis">
+ <Property name="path">/work/flow-his?businessId=1</Property>
+ </IFrame>
+ </Children>
+ <Tools/>
+ </Dialog>
</View>
</ViewConfig>
diff --git a/fzzy-igdss-view/src/main/java/com/fzzy/igds/InoutStockChangePR.java b/fzzy-igdss-view/src/main/java/com/fzzy/igds/InoutStockChangePR.java
index 3c8fcc3..a09146a 100644
--- a/fzzy-igdss-view/src/main/java/com/fzzy/igds/InoutStockChangePR.java
+++ b/fzzy-igdss-view/src/main/java/com/fzzy/igds/InoutStockChangePR.java
@@ -4,14 +4,10 @@
import com.bstek.dorado.annotation.DataResolver;
import com.bstek.dorado.annotation.Expose;
import com.bstek.dorado.data.provider.Page;
-import com.fzzy.igds.domain.Camera;
import com.fzzy.igds.domain.InoutStockChange;
import com.fzzy.igds.service.InoutStockChangeService;
-import com.fzzy.igds.service.SecCameraService;
-import jdk.nashorn.internal.ir.annotations.Reference;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
-import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import javax.annotation.Resource;
diff --git a/fzzy-igdss-view/src/main/java/com/fzzy/work/WorkOrder.view.xml b/fzzy-igdss-view/src/main/java/com/fzzy/work/WorkOrder.view.xml
index 08c7be5..f1db648 100644
--- a/fzzy-igdss-view/src/main/java/com/fzzy/work/WorkOrder.view.xml
+++ b/fzzy-igdss-view/src/main/java/com/fzzy/work/WorkOrder.view.xml
@@ -81,6 +81,12 @@
</PropertyDef>
<PropertyDef name="node">
<Property></Property>
+ <Property name="mapping">
+ <Property name="mapValues">${dorado.getDataProvider("workOrderPR#triggerNode").getResult()}</Property>
+ <Property name="keyProperty">dictValue</Property>
+ <Property name="valueProperty">dictLabel</Property>
+ </Property>
+ <Property name="label">娴佺▼鐜妭</Property>
</PropertyDef>
<PropertyDef name="createById">
<Property></Property>
@@ -132,7 +138,7 @@
<Property name="label">鎴鏃堕棿</Property>
</PropertyDef>
<PropertyDef name="scope">
- <Property/>
+ <Property></Property>
</PropertyDef>
</DataType>
<DataType name="dtWordProcess">
@@ -501,6 +507,11 @@
<Property name="align">center</Property>
<Property name="name">status</Property>
</DataColumn>
+ <DataColumn name="node">
+ <Property name="property">node</Property>
+ <Property name="width">120</Property>
+ <Property name="align">center</Property>
+ </DataColumn>
<DataColumn name="bizType">
<Property name="property">bizType</Property>
<Property name="width">120</Property>
@@ -579,6 +590,11 @@
<Property name="align">center</Property>
<Property name="name">status</Property>
</DataColumn>
+ <DataColumn name="node">
+ <Property name="property">node</Property>
+ <Property name="width">120</Property>
+ <Property name="align">center</Property>
+ </DataColumn>
<DataColumn name="bizType">
<Property name="property">bizType</Property>
<Property name="width">120</Property>
diff --git a/fzzy-igdss-view/src/main/java/com/fzzy/work/WorkOrderPR.java b/fzzy-igdss-view/src/main/java/com/fzzy/work/WorkOrderPR.java
index dca987b..06dfe90 100644
--- a/fzzy-igdss-view/src/main/java/com/fzzy/work/WorkOrderPR.java
+++ b/fzzy-igdss-view/src/main/java/com/fzzy/work/WorkOrderPR.java
@@ -6,7 +6,6 @@
import com.bstek.dorado.data.provider.Page;
import com.fzzy.igds.data.BaseResp;
import com.fzzy.igds.utils.ContextUtil;
-import com.fzzy.work.data.WorkStatus;
import com.fzzy.work.domain.WorkOrder;
import com.fzzy.work.data.WorkOrderParam;
import com.fzzy.work.domain.WorkOrderConf;
@@ -17,7 +16,6 @@
import com.fzzy.work.service.WorkOrderService;
import com.ruoyi.common.core.domain.entity.SysDictData;
-import com.ruoyi.common.core.domain.entity.SysUser;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Component;
@@ -157,6 +155,17 @@
return workOrderService.triggerType();
}
+ /**
+ * 娴佺▼鑺傜偣
+ * ${dorado.getDataProvider("workOrderPR#triggerNode").getResult()}
+ *
+ * @return
+ */
+ @DataProvider
+ public List<SysDictData> triggerNode() {
+ return workOrderService.triggerNode();
+ }
+
//-----------------------娴佺▼澶勭悊---------------------------//
/**
*
diff --git a/fzzy-igdss-web/src/main/java/com/fzzy/work/WorkOrderController.java b/fzzy-igdss-web/src/main/java/com/fzzy/work/WorkOrderController.java
index a36f80c..5c857d1 100644
--- a/fzzy-igdss-web/src/main/java/com/fzzy/work/WorkOrderController.java
+++ b/fzzy-igdss-web/src/main/java/com/fzzy/work/WorkOrderController.java
@@ -1,10 +1,14 @@
package com.fzzy.work;
import com.fzzy.igds.utils.DateUtil;
+import com.fzzy.work.data.WorkNode;
+import com.fzzy.work.data.WorkStatus;
+import com.fzzy.work.domain.WorkOrder;
import com.fzzy.work.domain.WorkOrderConf;
import com.fzzy.work.domain.WorkOrderProcess;
import com.fzzy.work.service.WorkOrderConfService;
import com.fzzy.work.service.WorkOrderProcessService;
+import com.fzzy.work.service.WorkOrderService;
import com.ruoyi.common.core.controller.BaseController;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Controller;
@@ -32,6 +36,8 @@
private WorkOrderConfService workOrderConfService;
@Resource
private WorkOrderProcessService workOrderProcessService;
+ @Resource
+ private WorkOrderService workOrderService;
/**
@@ -81,16 +87,47 @@
log.info("宸ュ崟璁板綍-宸ュ崟ID锛歿}", orderId);
List<WorkOrderProcess> list = workOrderProcessService.queryList(orderId);
mmap.put("list", list);
- mmap.put("tipTime", 1);
- mmap.put("tipCount", 1);
+ mmap.put("tipTime", "0鍒嗛挓");
+ mmap.put("tipCount", "0娆�");
- if (null != list && !list.isEmpty()) {
- //娆℃暟榛樿鍑忓幓绗竴娆℃彁浜�
- mmap.put("tipCount", list.size() - 1);
+ if (null == list || list.isEmpty()) return prefix + "/flow-his";
+
+
+
+ //娆℃暟榛樿鍑忓幓绗竴娆℃彁浜�
+ mmap.put("tipCount", list.size() - 1 + "娆�");
+ WorkOrderProcess last = list.get(0);
+ if(!last.getNode().equals(WorkNode.NODE_END.getCode())){
long tipTime = DateUtil.difMin(list.get(0).getCreateTime(), new Date());
- mmap.put("tipTime", tipTime);
+ mmap.put("tipTime", tipTime + "鍒嗛挓");
}
return prefix + "/flow-his";
}
-}
+
+ @GetMapping("/flow-his2")
+ public String flowHis2(@RequestParam("businessId") String businessId, ModelMap mmap) {
+ log.info("宸ュ崟璁板綍-涓氬姟ID锛歿}", businessId);
+
+ //鑾峰彇宸ュ崟
+ WorkOrder order = workOrderService.selectByBusinessId(businessId);
+ mmap.put("list", null);
+ mmap.put("tipTime", "0鍒嗛挓");
+ mmap.put("tipCount", "0娆�");
+ if (null == order) return prefix + "/flow-his";
+
+ List<WorkOrderProcess> list = workOrderProcessService.queryList(order.getId());
+
+ if (null == list || list.isEmpty()) return prefix + "/flow-his";
+
+ //娆℃暟榛樿鍑忓幓绗竴娆℃彁浜�
+ mmap.put("tipCount", list.size() - 1 + "娆�");
+ WorkOrderProcess last = list.get(0);
+ if(!last.getNode().equals(WorkNode.NODE_END.getCode())){
+ long tipTime = DateUtil.difMin(list.get(0).getCreateTime(), new Date());
+ mmap.put("tipTime", tipTime + "鍒嗛挓");
+ }
+
+ return prefix + "/flow-his";
+ }
+}
\ No newline at end of file
diff --git a/fzzy-igdss-web/src/main/resources/templates/work/flow-his.html b/fzzy-igdss-web/src/main/resources/templates/work/flow-his.html
index d634785..0403f6b 100644
--- a/fzzy-igdss-web/src/main/resources/templates/work/flow-his.html
+++ b/fzzy-igdss-web/src/main/resources/templates/work/flow-his.html
@@ -12,21 +12,17 @@
scrollbar-width: none; /* Firefox */
-ms-overflow-style: none; /* IE 鍜� Edge */
}
-
/* Chrome, Safari 鍜� Opera */
.hide-scrollbar::-webkit-scrollbar {
display: none;
}
-
/* 骞虫粦婊氬姩鏁堟灉 */
.smooth-scroll {
scroll-behavior: smooth;
}
-
html {
overflow: hidden;
}
-
/* 椤甸潰鍩虹鏍峰紡 */
body {
background-color: #FFF;
@@ -35,7 +31,6 @@
font-size: 14px;
overflow-x: hidden;
}
-
.container {
margin: 0 auto;
background-color: #fff;
@@ -43,13 +38,11 @@
box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1);
overflow: hidden;
}
-
.header {
background-color: #e6e6e6;
padding: 15px;
font-weight: bold;
}
-
.summary-box {
margin: 20px;
padding: 15px;
@@ -58,22 +51,18 @@
border-radius: 4px;
font-size: 14px;
}
-
.summary-box .layui-icon {
margin-right: 8px;
color: #1E9FFF;
}
-
.timeline-container {
padding: 0 20px 20px;
}
-
/* 鑷畾涔夋椂闂磋酱鏍峰紡 */
.custom-timeline {
position: relative;
padding: 20px 0;
}
-
.custom-timeline:before {
content: '';
position: absolute;
@@ -83,17 +72,14 @@
width: 2px;
background-color: #e8e8e8;
}
-
.timeline-item {
position: relative;
padding-left: 50px;
margin-bottom: 25px;
}
-
.timeline-item:last-child {
margin-bottom: 0;
}
-
.timeline-icon {
position: absolute;
left: 0;
@@ -107,7 +93,6 @@
color: white;
z-index: 2;
}
-
.timeline-content {
background-color: #f9f9f9;
border-radius: 6px;
@@ -115,7 +100,6 @@
border-left: 3px solid #1E9FFF;
font-size: 14px;
}
-
.operator-info {
font-weight: bold;
color: #333;
@@ -129,31 +113,25 @@
color: #888;
font-size: 13px;
}
-
.time-info {
text-align: right;
color: #999;
font-size: 13px;
margin-top: 8px;
}
-
/* 涓嶅悓鐘舵�佺殑鍥炬爣棰滆壊 */
.status-created {
background-color: #FFB800;
}
-
.status-waiting {
background-color: #FF5722;
}
-
.status-processing {
background-color: #1E9FFF;
}
-
.status-completed {
background-color: #009688;
}
-
/* 鍙粴鍔ㄥ尯鍩熸牱寮� */
.scrollable-area {
max-height: 400px; /* 璁剧疆鏈�澶ч珮搴� */
@@ -205,8 +183,8 @@
<!-- </div>-->
<div class="summary-box">
<i class="layui-icon layui-icon-tips"></i>
- 澶勭悊璁板綍锛氳宸ュ崟绱澶勭悊鏃堕暱 <span style="color:#1E9FFF; font-weight:bold;">1鍒嗛挓</span>锛岀疮璁″鐞嗘鏁� <span
- style="color:#1E9FFF; font-weight:bold;">3娆�</span>
+ 澶勭悊璁板綍锛氳宸ュ崟绱澶勭悊鏃堕暱 <span style="color:#1E9FFF; font-weight:bold;" th:text="${tipTime}">0鍒嗛挓</span>锛岀疮璁″鐞嗘鏁� <span
+ style="color:#1E9FFF; font-weight:bold;" th:text="${tipCount}">0娆�</span>
</div>
<div class="timeline-container">
--
Gitblit v1.9.3