From 1c35f2b1215c136625c3a2eda0c1a50772bddad1 Mon Sep 17 00:00:00 2001
From: skyouc
Date: 星期二, 23 九月 2025 16:31:14 +0800
Subject: [PATCH] 任务工作档修改
---
src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java | 2
src/main/webapp/views/task/task.html | 54 -
src/main/java/com/zy/asrs/entity/Task.java | 483 +++++++++++++++++
src/main/java/com/zy/asrs/controller/TaskController.java | 20
src/main/webapp/static/js/wrkMast/wrkMast.js | 31 -
src/main/java/com/zy/asrs/entity/TaskDetl.java | 3
src/main/webapp/views/task/taskDetl.html | 93 +++
/dev/null | 391 -------------
src/main/java/com/zy/asrs/service/impl/TaskServiceImpl.java | 263 +++++++++
src/main/java/com/zy/asrs/service/impl/TaskLogServiceImpl.java | 37 +
src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java | 2
src/main/webapp/static/js/task/task.js | 187 ++++-
src/main/webapp/views/.DS_Store | 0
src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java | 53 +
src/main/java/com/zy/asrs/service/TaskLogService.java | 1
src/main/webapp/static/js/common.js | 1
src/main/java/com/zy/asrs/service/TaskService.java | 5
17 files changed, 1,090 insertions(+), 536 deletions(-)
diff --git a/src/main/java/basAreas.sql b/src/main/java/basAreas.sql
deleted file mode 100644
index 3204d1b..0000000
--- a/src/main/java/basAreas.sql
+++ /dev/null
@@ -1,18 +0,0 @@
--- save basAreas record
--- mysql
-insert into `sys_resource` ( `code`, `name`, `resource_id`, `level`, `sort`, `status`) values ( 'basAreas/basAreas.html', 'basAreas绠$悊', null , '2', null , '1');
-
-insert into `sys_resource` ( `code`, `name`, `resource_id`, `level`, `sort`, `status`) values ( 'basAreas#view', '鏌ヨ', '', '3', '0', '1');
-insert into `sys_resource` ( `code`, `name`, `resource_id`, `level`, `sort`, `status`) values ( 'basAreas#btn-add', '鏂板', '', '3', '1', '1');
-insert into `sys_resource` ( `code`, `name`, `resource_id`, `level`, `sort`, `status`) values ( 'basAreas#btn-edit', '缂栬緫', '', '3', '2', '1');
-insert into `sys_resource` ( `code`, `name`, `resource_id`, `level`, `sort`, `status`) values ( 'basAreas#btn-delete', '鍒犻櫎', '', '3', '3', '1');
-insert into `sys_resource` ( `code`, `name`, `resource_id`, `level`, `sort`, `status`) values ( 'basAreas#btn-export', '瀵煎嚭', '', '3', '4', '1');
-
--- sqlserver
-insert [dbo].[sys_resource] ( [code], [name], [resource_id], [level], [sort], [status]) values ( N'basAreas/basAreas.html', N'basAreas绠$悊', null, '2', null, '1');
-
-insert [dbo].[sys_resource] ( [code], [name], [resource_id], [level], [sort], [status]) values ( N'basAreas#view', N'鏌ヨ', '', '3', '0', '1');
-insert [dbo].[sys_resource] ( [code], [name], [resource_id], [level], [sort], [status]) values ( N'basAreas#btn-add', N'鏂板', '', '3', '1', '1');
-insert [dbo].[sys_resource] ( [code], [name], [resource_id], [level], [sort], [status]) values ( N'basAreas#btn-edit', N'缂栬緫', '', '3', '2', '1');
-insert [dbo].[sys_resource] ( [code], [name], [resource_id], [level], [sort], [status]) values ( N'basAreas#btn-delete', N'鍒犻櫎', '', '3', '3', '1');
-insert [dbo].[sys_resource] ( [code], [name], [resource_id], [level], [sort], [status]) values ( N'basAreas#btn-export', N'瀵煎嚭', '', '3', '4', '1');
diff --git a/src/main/java/com/zy/asrs/controller/TaskController.java b/src/main/java/com/zy/asrs/controller/TaskController.java
index ba0b172..447233e 100644
--- a/src/main/java/com/zy/asrs/controller/TaskController.java
+++ b/src/main/java/com/zy/asrs/controller/TaskController.java
@@ -85,6 +85,26 @@
return R.ok();
}
+
+ @RequestMapping("/task/control")
+ @ManagerAuth(memo = "鎵嬪姩澶勭悊宸ヤ綔妗�")
+ public R handControlWrkMast(@RequestParam String workNo,
+ @RequestParam Integer type){
+ if (type == 1) {
+ taskService.completeWrkMast(workNo, getUserId());
+ return R.ok("宸ヤ綔妗e凡瀹屾垚");
+ } else if (type == 2) {
+ taskService.cancelWrkMast(workNo, getUserId());
+ return R.ok("宸ヤ綔妗e凡鍙栨秷");
+ } else if (type == 3) {
+ taskService.pickWrkMast(workNo, getUserId());
+ return R.ok("宸ヤ綔妗e凡鎷f枡");
+ }
+ return R.ok();
+ }
+
+
+
@RequestMapping(value = "/task/export/auth")
@ManagerAuth
public R export(@RequestBody JSONObject param){
diff --git a/src/main/java/com/zy/asrs/entity/Task.java b/src/main/java/com/zy/asrs/entity/Task.java
index 25536fb..51fff6b 100644
--- a/src/main/java/com/zy/asrs/entity/Task.java
+++ b/src/main/java/com/zy/asrs/entity/Task.java
@@ -4,13 +4,22 @@
import com.baomidou.mybatisplus.enums.IdType;
import com.baomidou.mybatisplus.annotations.TableField;
+import com.core.common.SpringUtils;
+import com.zy.asrs.service.*;
+import com.zy.system.entity.User;
+import com.zy.system.service.UserService;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import com.baomidou.mybatisplus.annotations.TableName;
+import lombok.experimental.Accessors;
+
import java.io.Serializable;
+import java.text.SimpleDateFormat;
+import java.util.Date;
@Data
@TableName("agv_task")
+@Accessors(chain = true)
public class Task implements Serializable {
private static final long serialVersionUID = 1L;
@@ -26,15 +35,479 @@
@TableField("task_type")
private String taskType;
+ /**
+ * 宸ヤ綔鍙�
+ */
+ @ApiModelProperty(value= "宸ヤ綔鍙�")
+ @TableField("wrk_no")
+ private Integer wrkNo;
+
+ @ApiModelProperty(value= "")
+ @TableField("inv_wh")
+ private String invWh;
+
+ @ApiModelProperty(value= "")
+ private Date ymd;
+
+ @ApiModelProperty(value= "")
+ private String mk;
+
+ @ApiModelProperty(value= "")
+ @TableField("whs_type")
+ private Integer whsType;
+
+ /**
+ * 宸ヤ綔鐘舵��
+ */
+ @ApiModelProperty(value= "宸ヤ綔鐘舵��")
+ @TableField("wrk_sts")
+ private Long wrkSts;
+
+ /**
+ * 鍏ュ嚭搴撶被鍨�
+ */
+ @ApiModelProperty(value= "鍏ュ嚭搴撶被鍨�")
+ @TableField("io_type")
+ private Integer ioType;
+
+ /**
+ * 鍫嗗灈鏈�
+ */
+ @ApiModelProperty(value= "鍫嗗灈鏈�")
+ @TableField("crn_no")
+ private Integer crnNo;
+
+ @ApiModelProperty(value= "")
+ @TableField("sheet_no")
+ private String sheetNo;
+
+ /**
+ * 浼樺厛绾�
+ */
+ @ApiModelProperty(value= "浼樺厛绾�")
+ @TableField("io_pri")
+ private Double ioPri;
+
+ @ApiModelProperty(value= "")
+ @TableField("wrk_date")
+ private Date wrkDate;
+
+ /**
+ * 鐩爣搴撲綅
+ */
+ @ApiModelProperty(value= "鐩爣搴撲綅")
+ @TableField("loc_no")
+ private String locNo;
+
+ /**
+ * 鐩爣绔�
+ */
+ @ApiModelProperty(value= "鐩爣绔�")
+ @TableField("sta_no")
+ private String staNo;
+
+ /**
+ * 婧愮珯
+ */
+ @ApiModelProperty(value= "婧愮珯")
+ @TableField("source_sta_no")
+ private String sourceStaNo;
+
+ /**
+ * 婧愬簱浣�
+ */
+ @ApiModelProperty(value= "婧愬簱浣�")
+ @TableField("source_loc_no")
+ private String sourceLocNo;
+
+ @ApiModelProperty(value= "")
+ @TableField("loc_sts")
+ private String locSts;
+
+ /**
+ * 鎷f枡
+ */
+ @ApiModelProperty(value= "鎷f枡")
+ private String picking;
+
+ @ApiModelProperty(value= "")
+ @TableField("link_mis")
+ private String linkMis;
+
+ @ApiModelProperty(value= "")
+ @TableField("online_yn")
+ private String onlineYn;
+
+ @ApiModelProperty(value= "")
+ @TableField("upd_mk")
+ private String updMk;
+
+ /**
+ * 閫�鍑�
+ */
+ @ApiModelProperty(value= "閫�鍑�")
+ @TableField("exit_mk")
+ private String exitMk;
+
+ @ApiModelProperty(value= "")
+ @TableField("plt_type")
+ private Integer pltType;
+
+ /**
+ * 绌烘澘
+ */
+ @ApiModelProperty(value= "绌烘澘")
+ @TableField("empty_mk")
+ private String emptyMk;
+
+ /**
+ * 宸ヤ綔鏃堕棿
+ */
+ @ApiModelProperty(value= "宸ヤ綔鏃堕棿")
+ @TableField("io_time")
+ private Date ioTime;
+
+ @ApiModelProperty(value= "")
+ @TableField("ctn_type")
+ private Integer ctnType;
+
+ @ApiModelProperty(value= "")
+ private String packed;
+
+ @ApiModelProperty(value= "")
+ @TableField("ove_mk")
+ private String oveMk;
+
+ @ApiModelProperty(value= "")
+ @TableField("mtn_type")
+ private Double mtnType;
+
+ @ApiModelProperty(value= "")
+ @TableField("user_no")
+ private String userNo;
+
+ /**
+ * 鍫嗗灈鏈哄惎鍔ㄦ椂闂�
+ */
+ @ApiModelProperty(value= "鍫嗗灈鏈哄惎鍔ㄦ椂闂�")
+ @TableField("crn_str_time")
+ private Date crnStrTime;
+
+ /**
+ * 鍫嗗灈鏈哄仠姝㈡椂闂�
+ */
+ @ApiModelProperty(value= "鍫嗗灈鏈哄仠姝㈡椂闂�")
+ @TableField("crn_end_time")
+ private Date crnEndTime;
+
+ @ApiModelProperty(value= "")
+ @TableField("plc_str_time")
+ private Date plcStrTime;
+
+ @ApiModelProperty(value= "")
+ @TableField("crn_pos_time")
+ private Date crnPosTime;
+
+ @ApiModelProperty(value= "")
+ @TableField("load_time")
+ private Double loadTime;
+
+ @ApiModelProperty(value= "")
+ @TableField("exp_time")
+ private Double expTime;
+
+ @ApiModelProperty(value= "")
+ @TableField("ref_wrkno")
+ private Double refWrkno;
+
+ /**
+ * 鎷f枡鏃堕棿
+ */
+ @ApiModelProperty(value= "鎷f枡鏃堕棿")
+ @TableField("ref_iotime")
+ private Date refIotime;
+
+ /**
+ * 淇敼浜哄憳
+ */
+ @ApiModelProperty(value= "淇敼浜哄憳")
+ @TableField("modi_user")
+ private Long modiUser;
+
+ /**
+ * 淇敼鏃堕棿
+ */
+ @ApiModelProperty(value= "淇敼鏃堕棿")
+ @TableField("modi_time")
+ private Date modiTime;
+
+ /**
+ * 鍒涘缓鑰�
+ */
+ @ApiModelProperty(value= "鍒涘缓鑰�")
+ @TableField("appe_user")
+ private Long appeUser;
+
+ /**
+ * 娣诲姞鏃堕棿
+ */
+ @ApiModelProperty(value= "娣诲姞鏃堕棿")
+ @TableField("appe_time")
+ private Date appeTime;
+
+ @ApiModelProperty(value= "")
+ @TableField("pause_mk")
+ private String pauseMk;
+
+ @ApiModelProperty(value= "")
+ @TableField("error_time")
+ private Date errorTime;
+
+ @ApiModelProperty(value= "")
+ @TableField("error_memo")
+ private String errorMemo;
+
+ @ApiModelProperty(value= "")
+ @TableField("ctn_kind")
+ private Integer ctnKind;
+
+ @ApiModelProperty(value= "")
+ @TableField("manu_type")
+ private String manuType;
+
+ /**
+ * 澶囨敞
+ */
+ @ApiModelProperty(value= "澶囨敞")
+ private String memo;
+
+ @ApiModelProperty(value= "")
+ @TableField("sc_weight")
+ private Double scWeight;
+
+ @ApiModelProperty(value= "")
+ @TableField("log_mk")
+ private String logMk;
+
+ @ApiModelProperty(value= "")
+ @TableField("log_err_time")
+ private Date logErrTime;
+
+ @ApiModelProperty(value= "")
+ @TableField("log_err_memo")
+ private String logErrMemo;
+
+ /**
+ * 鏉$爜
+ */
+ @ApiModelProperty(value= "鏉$爜")
+ private String barcode;
+
+ // Y:閿�鍞鍗曞嚭搴撲换鍔�
+ @ApiModelProperty(value= "")
+ @TableField("Pdc_type")
+ private String PdcType;
+
+ @ApiModelProperty(value= "")
+ @TableField("ctn_no")
+ private String ctnNo;
+
+ /**
+ * 婊℃澘
+ */
+ @ApiModelProperty(value= "婊℃澘")
+ @TableField("full_plt")
+ private String fullPlt;
+
+ /**
+ * 鍏堝叆鍝� / 鍙岄噸鍏ュ簱
+ */
+ @ApiModelProperty(value= "鍏堝叆鍝�")
+ @TableField("pre_have")
+ private String preHave;
+
+ /**
+ * 绌烘搷浣� / 鍙栬揣鏃犵
+ */
+ @ApiModelProperty(value= "绌烘搷浣�")
+ @TableField("take_none")
+ private String takeNone;
+
public Task() {}
- public Task(String taskType) {
- this.taskType = taskType;
+ public String getYmd$(){
+ if (Cools.isEmpty(this.ymd)){
+ return "";
+ }
+ return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.ymd);
}
-// Task task = new Task(
-// null // 浠诲姟绫诲瀷锛� agv , crn
-// );
+ public String getWrkSts$(){
+ BasWrkStatusService service = SpringUtils.getBean(BasWrkStatusService.class);
+ BasWrkStatus basWrkStatus = service.selectById(this.wrkSts);
+ if (!Cools.isEmpty(basWrkStatus)){
+ return String.valueOf(basWrkStatus.getWrkDesc());
+ }
+ return null;
+ }
+
+ public String getIoType$(){
+ BasWrkIotypeService service = SpringUtils.getBean(BasWrkIotypeService.class);
+ BasWrkIotype basWrkIotype = service.selectById(this.ioType);
+ if (!Cools.isEmpty(basWrkIotype)){
+ return String.valueOf(basWrkIotype.getIoDesc());
+ }
+ return null;
+ }
+
+ public String getCrnNo$(){
+ BasCrnpService service = SpringUtils.getBean(BasCrnpService.class);
+ BasCrnp basCrnp = service.selectById(this.crnNo);
+ if (!Cools.isEmpty(basCrnp)){
+ return String.valueOf(basCrnp.getCrnNo());
+ }
+ return null;
+ }
+
+ public String getWrkDate$(){
+ if (Cools.isEmpty(this.wrkDate)){
+ return "";
+ }
+ return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.wrkDate);
+ }
+
+ public String getLocNo$(){
+ LocMastService service = SpringUtils.getBean(LocMastService.class);
+ LocMast locMast = service.selectById(this.locNo);
+ if (!Cools.isEmpty(locMast)){
+ return String.valueOf(locMast.getLocNo());
+ }
+ return null;
+ }
+
+ public String getTaskType$(){
+ if (Cools.isEmpty(this.taskType)){return null;}
+ if (taskType.equals("agv")) {
+ return "AGV浠诲姟";
+ } else {
+ return "鍫嗗灈鏈轰换鍔�";
+ }
+ }
+ public String getStaNo$(){
+ BasDevpService service = SpringUtils.getBean(BasDevpService.class);
+ BasDevp basDevp = service.selectById(this.staNo);
+ if (!Cools.isEmpty(basDevp)){
+ return String.valueOf(basDevp.getDevNo());
+ }
+ return null;
+ }
+
+ public String getSourceStaNo$(){
+ BasDevpService service = SpringUtils.getBean(BasDevpService.class);
+ BasDevp basDevp = service.selectById(this.sourceStaNo);
+ if (!Cools.isEmpty(basDevp)){
+ return String.valueOf(basDevp.getDevNo());
+ }
+ return null;
+ }
+
+ public String getSourceLocNo$(){
+ LocMastService service = SpringUtils.getBean(LocMastService.class);
+ LocMast locMast = service.selectById(this.sourceLocNo);
+ if (!Cools.isEmpty(locMast)){
+ return String.valueOf(locMast.getLocNo());
+ }
+ return null;
+ }
+
+ public String getIoTime$(){
+ if (Cools.isEmpty(this.ioTime)){
+ return "";
+ }
+ return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.ioTime);
+ }
+
+ public String getCrnStrTime$(){
+ if (Cools.isEmpty(this.crnStrTime)){
+ return "";
+ }
+ return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.crnStrTime);
+ }
+
+ public String getCrnEndTime$(){
+ if (Cools.isEmpty(this.crnEndTime)){
+ return "";
+ }
+ return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.crnEndTime);
+ }
+
+ public String getPlcStrTime$(){
+ if (Cools.isEmpty(this.plcStrTime)){
+ return "";
+ }
+ return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.plcStrTime);
+ }
+
+ public String getCrnPosTime$(){
+ if (Cools.isEmpty(this.crnPosTime)){
+ return "";
+ }
+ return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.crnPosTime);
+ }
+
+ public String getRefIotime$(){
+ if (Cools.isEmpty(this.refIotime)){
+ return "";
+ }
+ return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.refIotime);
+ }
+
+ public String getModiUser$(){
+ UserService service = SpringUtils.getBean(UserService.class);
+ User user = service.selectById(this.modiUser);
+ if (!Cools.isEmpty(user)){
+ return String.valueOf(user.getUsername());
+ }
+ return null;
+ }
+
+ public String getModiTime$(){
+ if (Cools.isEmpty(this.modiTime)){
+ return "";
+ }
+ return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.modiTime);
+ }
+
+ public String getAppeUser$(){
+ UserService service = SpringUtils.getBean(UserService.class);
+ User user = service.selectById(this.appeUser);
+ if (!Cools.isEmpty(user)){
+ return String.valueOf(user.getUsername());
+ }
+ return null;
+ }
+
+ public String getAppeTime$(){
+ if (Cools.isEmpty(this.appeTime)){
+ return "";
+ }
+ return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.appeTime);
+ }
+
+ public String getErrorTime$(){
+ if (Cools.isEmpty(this.errorTime)){
+ return "";
+ }
+ return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.errorTime);
+ }
+
+
+ public String getLogErrTime$(){
+ if (Cools.isEmpty(this.logErrTime)){
+ return "";
+ }
+ return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.logErrTime);
+ }
}
diff --git a/src/main/java/com/zy/asrs/entity/TaskDetl.java b/src/main/java/com/zy/asrs/entity/TaskDetl.java
index cde2747..2467477 100644
--- a/src/main/java/com/zy/asrs/entity/TaskDetl.java
+++ b/src/main/java/com/zy/asrs/entity/TaskDetl.java
@@ -4,6 +4,8 @@
import com.core.common.Cools;import com.baomidou.mybatisplus.annotations.TableField;
import java.text.SimpleDateFormat;
import java.util.Date;
+
+import lombok.experimental.Accessors;
import org.springframework.format.annotation.DateTimeFormat;
import com.core.common.SpringUtils;
import com.zy.system.service.UserService;
@@ -22,6 +24,7 @@
import java.io.Serializable;
@Data
+@Accessors(chain = true)
@TableName("agv_task_detl")
public class TaskDetl implements Serializable {
diff --git a/src/main/java/com/zy/asrs/service/TaskLogService.java b/src/main/java/com/zy/asrs/service/TaskLogService.java
index 124755b..b855a03 100644
--- a/src/main/java/com/zy/asrs/service/TaskLogService.java
+++ b/src/main/java/com/zy/asrs/service/TaskLogService.java
@@ -5,4 +5,5 @@
public interface TaskLogService extends IService<TaskLog> {
+ boolean save(Integer wrkNo);
}
diff --git a/src/main/java/com/zy/asrs/service/TaskService.java b/src/main/java/com/zy/asrs/service/TaskService.java
index 1525d66..30bb57f 100644
--- a/src/main/java/com/zy/asrs/service/TaskService.java
+++ b/src/main/java/com/zy/asrs/service/TaskService.java
@@ -5,4 +5,9 @@
public interface TaskService extends IService<Task> {
+ void completeWrkMast(String workNo, Long userId);
+
+ void cancelWrkMast(String workNo, Long userId);
+
+ void pickWrkMast(String workNo, Long userId);
}
diff --git a/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
index c48df3a..b01b75f 100644
--- a/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
@@ -97,8 +97,15 @@
@Resource
private OrderDetlPakoutService orderDetlPakoutService;
+
@Autowired
private LocCacheService locCacheService;
+
+ @Autowired
+ private TaskService taskService;
+
+ @Autowired
+ private TaskDetlService taskDetlService;
@Override
@Transactional
@@ -1190,32 +1197,32 @@
// 鑾峰彇宸ヤ綔鍙�
int workNo = commonService.getWorkNo(WorkNoType.PICK.type);
// 淇濆瓨宸ヤ綔妗�
- WrkMast wrkMast = new WrkMast();
- wrkMast.setWrkNo(workNo);
- wrkMast.setIoTime(now);
- wrkMast.setWrkSts(11L); // 宸ヤ綔鐘舵�侊細11.鐢熸垚鍑哄簱ID
- wrkMast.setIoType(11); // 鍏ュ嚭搴撶姸鎬侊細 11.搴撴牸绉昏浇
- wrkMast.setTaskType("agv");
- wrkMast.setIoPri(10D);
- wrkMast.setLocNo(loc.getLocNo()); // 鐩爣搴撲綅
- wrkMast.setFullPlt("Y"); // 婊℃澘锛歒
- wrkMast.setPicking("N"); // 鎷f枡
- wrkMast.setExitMk("N"); // 閫�鍑�
- wrkMast.setSourceLocNo(orgSite);
- wrkMast.setEmptyMk(loc.getLocSts().equals("D") ? "Y" : "N"); // 绌烘澘
- wrkMast.setBarcode(barcode); // 鎵樼洏鐮�
- wrkMast.setLinkMis("N");
- wrkMast.setAppeUser(userId);
- wrkMast.setAppeTime(now);
- wrkMast.setModiUser(userId);
- wrkMast.setModiTime(now);
- if (!wrkMastService.insert(wrkMast)) {
+ Task task = new Task();
+ task.setWrkNo(workNo)
+ .setIoTime(now)
+ .setWrkSts(11L) // 宸ヤ綔鐘舵�侊細11.鐢熸垚鍑哄簱ID
+ .setIoType(11) // 鍏ュ嚭搴撶姸鎬侊細 11.搴撴牸绉昏浇
+ .setTaskType("agv")
+ .setIoPri(10D)
+ .setLocNo(loc.getLocNo()) // 鐩爣搴撲綅
+ .setFullPlt("Y") // 婊℃澘锛歒
+ .setPicking("N") // 鎷f枡
+ .setExitMk("N")// 閫�鍑�
+ .setSourceLocNo(orgSite)
+ .setEmptyMk(loc.getLocSts().equals("D") ? "Y" : "N")// 绌烘澘
+ .setBarcode(barcode)// 鎵樼洏鐮�
+ .setLinkMis("N")
+ .setAppeUser(userId)
+ .setAppeTime(now)
+ .setModiUser(userId)
+ .setModiTime(now);
+ if (!taskService.insert(task)) {
throw new CoolException("淇濆瓨宸ヤ綔妗eけ璐�");
}
- List<WrkDetl> taskDetls = new ArrayList<>();
+ List<TaskDetl> taskDetls = new ArrayList<>();
detls.forEach(detl -> {
- WrkDetl wrkDetl = new WrkDetl();
+ TaskDetl wrkDetl = new TaskDetl();
BeanUtils.copyProperties(detl, wrkDetl);
wrkDetl.setWrkNo(workNo)
.setIoTime(new Date())
@@ -1232,7 +1239,7 @@
taskDetls.add(wrkDetl);
});
//淇濆瓨宸ヤ綔妗f槑缁�
- if (!wrkDetlService.insertBatch(taskDetls)) {
+ if (!taskDetlService.insertBatch(taskDetls)) {
throw new CoolException("淇濆瓨宸ヤ綔妗f槑缁嗗け璐�");
}
// 淇敼鐩爣搴撲綅鐘舵��
diff --git a/src/main/java/com/zy/asrs/service/impl/TaskLogServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/TaskLogServiceImpl.java
index a413b01..cd66568 100644
--- a/src/main/java/com/zy/asrs/service/impl/TaskLogServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/TaskLogServiceImpl.java
@@ -1,12 +1,49 @@
package com.zy.asrs.service.impl;
+import com.baomidou.mybatisplus.mapper.EntityWrapper;
+import com.core.exception.CoolException;
+import com.zy.asrs.entity.Task;
+import com.zy.asrs.entity.WrkMast;
+import com.zy.asrs.entity.WrkMastLog;
import com.zy.asrs.mapper.TaskLogMapper;
import com.zy.asrs.entity.TaskLog;
import com.zy.asrs.service.TaskLogService;
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
+import com.zy.asrs.service.TaskService;
+import org.springframework.beans.BeanUtils;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.util.Objects;
@Service("taskLogService")
public class TaskLogServiceImpl extends ServiceImpl<TaskLogMapper, TaskLog> implements TaskLogService {
+ @Autowired
+ private TaskService taskService;
+
+ /**
+ * @author Ryan
+ * @date 2025/9/23
+ * @description: 淇濆瓨浠诲姟鏃ュ織
+ * @version 1.0
+ */
+ @Override
+ @Transactional(rollbackFor = Exception.class)
+ public boolean save(Integer wrkNo) {
+ Task task = taskService.selectOne(new EntityWrapper<Task>().eq("wrk_no", wrkNo));
+ if (Objects.isNull(task)) {
+ throw new CoolException("鏁版嵁閿欒锛氫换鍔′笉瀛樺湪锛侊紒");
+ }
+ TaskLog taskLog = new TaskLog();
+ BeanUtils.copyProperties(task, taskLog);
+ taskLog.setLogId(task.getId());
+
+ if (!this.insert(taskLog)) {
+ throw new CoolException("浠诲姟鏃ュ織淇濆瓨澶辫触锛侊紒");
+ }
+
+ return false;
+ }
}
diff --git a/src/main/java/com/zy/asrs/service/impl/TaskServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/TaskServiceImpl.java
index 68b9ca5..154b87d 100644
--- a/src/main/java/com/zy/asrs/service/impl/TaskServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/TaskServiceImpl.java
@@ -1,12 +1,273 @@
package com.zy.asrs.service.impl;
+import com.baomidou.mybatisplus.mapper.EntityWrapper;
+import com.baomidou.mybatisplus.mapper.Wrapper;
+import com.core.common.Cools;
+import com.core.common.DateUtils;
+import com.core.exception.CoolException;
+import com.zy.asrs.entity.*;
import com.zy.asrs.mapper.TaskMapper;
-import com.zy.asrs.entity.Task;
+import com.zy.asrs.service.TaskLogService;
import com.zy.asrs.service.TaskService;
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
+import com.zy.asrs.utils.OrderInAndOutUtil;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.util.Date;
+import java.util.List;
+import java.util.concurrent.TimeUnit;
@Service("taskService")
public class TaskServiceImpl extends ServiceImpl<TaskMapper, Task> implements TaskService {
+ @Autowired
+ private TaskLogService taskLogService;
+
+ @Override
+ @Transactional
+ public void completeWrkMast(String workNo, Long userId) {
+ Task wrkMast = this.selectOne(new EntityWrapper<Task>().eq("wrk_no", workNo));
+ if (Cools.isEmpty(wrkMast)) {
+ throw new CoolException(workNo + "宸ヤ綔妗d笉瀛樺湪");
+ }
+ if (wrkMast.getWrkSts() == 4 || wrkMast.getWrkSts() == 14) {
+ throw new CoolException("褰撳墠宸ヤ綔妗e凡瀹屾垚");
+ }
+ // 鍏ュ簱 + 搴撲綅杞Щ
+ if (wrkMast.getWrkSts() < 4 || (wrkMast.getWrkSts() > 10 && wrkMast.getIoType() == 11)) {
+ wrkMast.setWrkSts(4L);
+ // 鍑哄簱
+ } else if (wrkMast.getWrkSts() > 10) {
+ wrkMast.setWrkSts(14L);
+ }
+ Date now = new Date();
+ wrkMast.setCrnStrTime(DateUtils.calculate(now, 1L, TimeUnit.SECONDS, true));
+ wrkMast.setCrnEndTime(now);
+ wrkMast.setModiTime(now);
+ wrkMast.setModiUser(userId);
+ // 瀹屾垚鎿嶄綔浜哄憳璁板綍
+ wrkMast.setManuType("鎵嬪姩瀹屾垚");
+ if (!this.updateById(wrkMast)) {
+ throw new CoolException("淇敼宸ヤ綔妗eけ璐�");
+ }
+ }
+
+ @Override
+ @Transactional
+ public void pickWrkMast(String workNo, Long userId) {
+ Task wrkMast = this.selectById(workNo);
+ if (Cools.isEmpty(wrkMast)) {
+ throw new CoolException(workNo + "宸ヤ綔妗d笉瀛樺湪");
+ }
+ // 鍏ュ嚭搴撶被鍨嬪垽鏂�
+ if (wrkMast.getIoType() != 103 && wrkMast.getIoType() != 104 && wrkMast.getIoType() != 107) {
+ throw new CoolException("褰撳墠鍏ュ嚭搴撶被鍨嬫棤娉曡繘琛屾搷浣�");
+ }
+ // 宸ヤ綔鐘舵�佸垽鏂�
+ if (wrkMast.getWrkSts() < 11 || wrkMast.getWrkSts() == 15) {
+ throw new CoolException("褰撳墠宸ヤ綔鐘舵�佹棤娉曡繘琛屾搷浣�");
+ }
+ // 淇濆瓨宸ヤ綔鏄庣粏妗e巻鍙叉。
+// if (!wrkDetlLogService.save(wrkMast.getWrkNo())) {
+// throw new CoolException("淇濆瓨宸ヤ綔鏄庣粏妗e巻鍙叉。澶辫触");
+// }
+ // 淇濆瓨宸ヤ綔涓绘。鍘嗗彶妗�
+ if (!taskLogService.save(wrkMast.getWrkNo())) {
+ throw new CoolException("淇濆瓨宸ヤ綔涓绘。鍘嗗彶妗eけ璐�");
+ }
+ // 鑾峰彇鐩爣绔�
+ Wrapper<StaDesc> wrapper = new EntityWrapper<StaDesc>()
+ .eq("type_no", wrkMast.getIoType() - 50)
+ .eq("stn_no", wrkMast.getStaNo()) // 浣滀笟绔欑偣 = 鎷f枡鍑哄簱鐨勭洰鏍囩珯
+ .eq("crn_no", wrkMast.getCrnNo()); // 鍫嗗灈鏈哄彿
+ StaDesc staDesc = staDescService.selectOne(wrapper);
+ if (Cools.isEmpty(staDesc)) {
+ throw new CoolException("鍏ュ簱璺緞涓嶅瓨鍦�");
+ }
+ Date now = new Date();
+ // 鍫嗗灈鏈虹珯鐐�(鐩爣绔�)
+ Integer staNo = staDesc.getCrnStn();
+ // 鏇存柊宸ヤ綔妗f暟鎹姸鎬�
+ wrkMast.setIoType(wrkMast.getIoType() - 50); // 鍏ュ嚭搴撶被鍨�: 103->53,104->54,107->57
+ wrkMast.setWrkSts(2L); // 宸ヤ綔鐘舵��: 2.璁惧涓婅蛋
+ wrkMast.setSourceStaNo(wrkMast.getStaNo()); // 婧愮珯
+ wrkMast.setStaNo(staNo + ""); // 鐩爣绔�
+ wrkMast.setLocNo(wrkMast.getSourceLocNo()); // 鐩爣搴撲綅 = 鍑哄簱鏃剁殑婧愬簱浣�
+ wrkMast.setSourceLocNo(""); // 婧愬簱浣嶆竻绌�
+ wrkMast.setModiTime(now);
+ wrkMast.setModiUser(userId);
+ if (!wrkMastService.updateById(wrkMast)) {
+ throw new CoolException("鏇存柊宸ヤ綔妗f暟鎹姸鎬佸け璐�");
+ }
+ // 淇敼搴撲綅鐘舵�� Q.鎷f枡/鐩樼偣/骞舵澘鍐嶅叆搴�
+ LocMast locMast = locMastService.selectById(wrkMast.getLocNo());
+ locMast.setLocSts("Q");
+ locMast.setModiTime(now);
+ locMast.setModiUser(userId);
+ if (!locMastService.updateById(locMast)) {
+ throw new CoolException("淇敼搴撲綅鐘舵�佸け璐�");
+ }
+ }
+
+
+
+ @Override
+ @Transactional
+ public void cancelWrkMast(String workNo, Long userId) {
+ Date now = new Date();
+ WrkMast wrkMast = wrkMastService.selectById(workNo);
+ if (Cools.isEmpty(wrkMast)) {
+ throw new CoolException(workNo + "宸ヤ綔妗d笉瀛樺湪");
+ }
+ String locNo = ""; // 寰呬慨鏀圭洰鏍囧簱浣�
+ String locSts = ""; // 寰呬慨鏀圭洰鏍囧簱浣嶇姸鎬�
+ // 鍏ュ簱鍙栨秷锛堜慨鏀圭洰鏍囧簱浣嶏級
+ if (wrkMast.getWrkSts() < 4) {
+ locNo = wrkMast.getLocNo();
+ locSts = "O";
+
+ // 搴撲綅杞Щ
+ if (wrkMast.getIoType() == 11) {
+ // 搴撲綅杞Щ锛氭簮搴撲綅
+ LocMast locMast = locMastService.selectById(wrkMast.getSourceLocNo());
+ if (Cools.isEmpty(locMast)) {
+ throw new CoolException("鍙栨秷搴撲綅杞Щ澶辫触锛屾簮搴撲綅涓嶅瓨鍦�:" + wrkMast.getSourceLocNo());
+ }
+ locMast.setLocSts(wrkMast.getFullPlt().equalsIgnoreCase("N") ? "D" : "F");
+ locMast.setModiTime(now);
+ locMast.setModiUser(userId);
+ locMastService.updateById(locMast);
+ }
+ // 鍑哄簱鍙栨秷锛堜慨鏀规簮搴撲綅锛�
+ } else if (wrkMast.getWrkSts() > 10 && wrkMast.getWrkSts() != 14) {
+ locNo = wrkMast.getSourceLocNo();
+ // 鍑哄簱 ===>> F.鍦ㄥ簱
+ if (wrkMast.getIoType() > 100 && wrkMast.getIoType() != 110) {
+ locSts = "F";
+ // 绌烘澘鍑哄簱 ===>> D.绌烘《/绌烘爤鏉�
+ } else if (wrkMast.getIoType() == 110) {
+ locSts = "D";
+ // 搴撲綅杞Щ ===>> D.绌烘《/绌烘爤鏉�
+ } else if (wrkMast.getIoType() == 11) {
+ locSts = wrkMast.getFullPlt().equalsIgnoreCase("N") ? "D" : "F";
+ // 搴撲綅杞Щ锛氱洰鏍囧簱浣�
+ LocMast locMast = locMastService.selectById(wrkMast.getLocNo());
+ if (Cools.isEmpty(locMast)) {
+ throw new CoolException("鍙栨秷搴撲綅杞Щ澶辫触锛岀洰鏍囧簱浣嶄笉瀛樺湪:" + wrkMast.getSourceLocNo());
+ }
+ locMast.setLocSts("O");
+ locMast.setModiTime(now);
+ locMast.setModiUser(userId);
+ locMastService.updateById(locMast);
+ }
+ } else {
+ throw new CoolException("褰撳墠宸ヤ綔鐘舵�佹棤娉曞彇娑�");
+ }
+
+ //鍙栨秷鍏ュ簱宸ヤ綔妗f椂锛屾煡璇㈢粍鎵樿〃锛屽鏋滄湁灏嗙姸鎬佹敼涓哄緟澶勭悊
+ if (wrkMast.getIoType() == 1) {
+ List<WaitPakin> waitPakins = waitPakinService.selectList(new EntityWrapper<WaitPakin>().eq("zpallet", wrkMast.getBarcode()));
+ for (WaitPakin waitPakin : waitPakins) {
+ if (!Cools.isEmpty(waitPakin)) {
+ waitPakin.setIoStatus("N");
+ waitPakin.setLocNo("");
+ waitPakinService.update(waitPakin, new EntityWrapper<WaitPakin>()
+// .eq("order_no", waitPakin.getOrderNo())
+ .eq("zpallet", waitPakin.getZpallet())
+ .eq("matnr", waitPakin.getMatnr())
+ .eq("batch", waitPakin.getBatch()));
+ }
+ }
+ }
+
+ //鍙栨秷鍑哄簱宸ヤ綔妗f椂锛屾煡璇㈠崟鎹鐞嗚〃锛屽洖婊氫綔涓氫腑鏁伴噺
+ if (wrkMast.getIoType() == 101 || wrkMast.getIoType() == 103) {
+ List<WrkDetl> wrkDetls = wrkDetlService.selectByWrkNo(wrkMast.getWrkNo());
+ for (WrkDetl wrkDetl : wrkDetls) {
+ if (!Cools.isEmpty(wrkDetl.getOrderNo())) {
+// if (!orderDetlService.decrease(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), wrkDetl.getBatch(), wrkDetl.getAnfme())) {
+// throw new CoolException("璁㈠崟鏁版嵁鍥炴粴澶辫触");
+// }
+ OrderInAndOutUtil.decrease(Boolean.FALSE, wrkDetl.getOrderNo(), wrkDetl.getMatnr(), wrkDetl.getBatch(), wrkDetl.getBrand(),
+ wrkDetl.getStandby1(), wrkDetl.getStandby2(), wrkDetl.getStandby3(),
+ wrkDetl.getBoxType1(), wrkDetl.getBoxType2(), wrkDetl.getBoxType3(), wrkDetl.getAnfme());
+
+ //淇敼璁㈠崟涓昏〃鐘舵��,娌℃湁浣滀笟鏁伴噺鏃舵墠鍙互淇敼
+ boolean flag = true;
+// List<OrderDetl> orderDetls = orderDetlService.selectList(new EntityWrapper<OrderDetl>().eq("order_no",wrkDetl.getOrderNo()));
+ Order order = OrderInAndOutUtil.selectByNo(Boolean.FALSE, wrkDetl.getOrderNo());
+ List<OrderDetl> orderDetls = OrderInAndOutUtil.selectByOrderId(Boolean.FALSE, order.getId());
+ for (OrderDetl orderDetl : orderDetls) {
+ if (orderDetl.getWorkQty() > 0) {
+ flag = false;
+ }
+ }
+ if (flag) {
+// Order order = orderService.selectOne(new EntityWrapper<Order>().eq("order_no",wrkDetl.getOrderNo()));
+ if (!Cools.isEmpty(order) && order.getSettle() == 2) {
+ order.setSettle(1L);
+ order.setUpdateBy(userId);
+ order.setUpdateTime(now);
+ }
+// if(!orderService.update(order,new EntityWrapper<Order>().eq("order_no",wrkDetl.getOrderNo()))){
+// throw new CoolException("淇敼璁㈠崟鐘舵�佸け璐�");
+// }
+ OrderInAndOutUtil.updateOrder(Boolean.FALSE, order.getId(), order.getSettle(), userId);
+ }
+ }
+ }
+
+ }
+
+// // 璁㈠崟鍏宠仈
+// List<WrkDetl> wrkDetls = wrkDetlService.selectByWrkNo(wrkMast.getWrkNo());
+// for (WrkDetl wrkDetl : wrkDetls) {
+// if (!Cools.isEmpty(wrkDetl.getOrderNo())) {
+// if (!orderDetlService.decrease(wrkDetl.getOrderNo(), wrkDetl.getMatnr(), wrkDetl.getBatch(), wrkDetl.getAnfme())) {
+// throw new CoolException("璁㈠崟鏁版嵁鍥炴粴澶辫触");
+// }
+// // 鐢熸垚鏂扮殑鍑哄簱浣滀笟
+//// stockOutRe(wrkMast, wrkDetls);
+// }
+// }
+
+ // 鍙栨秷鎿嶄綔浜哄憳璁板綍
+ wrkMast.setManuType("鎵嬪姩鍙栨秷");
+ wrkMast.setModiUser(userId);
+ wrkMast.setModiTime(now);
+ if (!wrkMastService.updateById(wrkMast)) {
+ throw new CoolException("鍙栨秷宸ヤ綔妗eけ璐�");
+ }
+ // 淇濆瓨宸ヤ綔涓绘。鍘嗗彶妗�
+ if (!wrkMastLogService.save(wrkMast.getWrkNo())) {
+ throw new CoolException("淇濆瓨宸ヤ綔鍘嗗彶妗eけ璐�, workNo = " + wrkMast.getWrkNo());
+ }
+ // 鍒犻櫎宸ヤ綔涓绘。
+ boolean wrkMastRes = wrkMastService.deleteById(wrkMast);
+
+ if (wrkMast.getIoType() != 10 && wrkMast.getIoType() != 110) {
+ // 淇濆瓨宸ヤ綔鏄庣粏妗e巻鍙叉。
+ if (!wrkDetlLogService.save(wrkMast.getWrkNo())) {
+// throw new CoolException("淇濆瓨宸ヤ綔鏄庣粏鍘嗗彶妗eけ璐�, workNo = " + wrkMast.getWrkNo());
+ }
+ // 鍒犻櫎宸ヤ綔妗f槑缁�
+ boolean wrkDetlRes = wrkDetlService.delete(new EntityWrapper<WrkDetl>().eq("wrk_no", workNo));
+ }
+
+ // 淇敼搴撲綅鐘舵��
+ LocMast locMast = locMastService.selectById(locNo);
+ if (Cools.isEmpty(locMast)) {
+ throw new CoolException("鍙栨秷宸ヤ綔妗eけ璐ワ紝搴撲綅涓嶅瓨鍦�:" + locNo);
+ }
+ locMast.setLocSts(locSts);
+ locMast.setModiTime(now);
+ locMast.setModiUser(userId);
+ boolean locMastRes = locMastService.updateById(locMast);
+ if (!wrkMastRes || !locMastRes) {
+ throw new CoolException("淇濆瓨鏁版嵁澶辫触");
+ }
+ }
+
}
diff --git a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
index ede2bb1..f3821ff 100644
--- a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
@@ -813,7 +813,7 @@
@Override
@Transactional
public void completeWrkMast(String workNo, Long userId) {
- WrkMast wrkMast = wrkMastService.selectById(workNo);
+ WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("wrk_no", workNo));
if (Cools.isEmpty(wrkMast)) {
throw new CoolException(workNo + "宸ヤ綔妗d笉瀛樺湪");
}
diff --git a/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java b/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
index 4389d7f..06aec8e 100644
--- a/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java
@@ -108,7 +108,7 @@
}
Set<Long> list = apallet.stream().map(WaitPakin::getOrderId).collect(Collectors.toSet());
- List<OrderPakin> pakins = orderPakinService.selectList(new EntityWrapper<OrderPakin>().in("order_id", list));
+ List<OrderPakin> pakins = orderPakinService.selectList(new EntityWrapper<OrderPakin>().in("id", list));
if (Objects.isNull(pakins) || pakins.isEmpty()) {
throw new CoolException("鍗曟嵁涓嶅瓨鍦紒锛�");
}
diff --git a/src/main/java/locCache.sql b/src/main/java/locCache.sql
deleted file mode 100644
index ccc54fe..0000000
--- a/src/main/java/locCache.sql
+++ /dev/null
@@ -1,18 +0,0 @@
--- save locCache record
--- mysql
-insert into `sys_resource` ( `code`, `name`, `resource_id`, `level`, `sort`, `status`) values ( 'locCache/locCache.html', '缂撳瓨搴撳尯', null , '2', null , '1');
-
-insert into `sys_resource` ( `code`, `name`, `resource_id`, `level`, `sort`, `status`) values ( 'locCache#view', '鏌ヨ', '', '3', '0', '1');
-insert into `sys_resource` ( `code`, `name`, `resource_id`, `level`, `sort`, `status`) values ( 'locCache#btn-add', '鏂板', '', '3', '1', '1');
-insert into `sys_resource` ( `code`, `name`, `resource_id`, `level`, `sort`, `status`) values ( 'locCache#btn-edit', '缂栬緫', '', '3', '2', '1');
-insert into `sys_resource` ( `code`, `name`, `resource_id`, `level`, `sort`, `status`) values ( 'locCache#btn-delete', '鍒犻櫎', '', '3', '3', '1');
-insert into `sys_resource` ( `code`, `name`, `resource_id`, `level`, `sort`, `status`) values ( 'locCache#btn-export', '瀵煎嚭', '', '3', '4', '1');
-
--- sqlserver
-insert [dbo].[sys_resource] ( [code], [name], [resource_id], [level], [sort], [status]) values ( N'locCache/locCache.html', N'缂撳瓨搴撳尯', null, '2', null, '1');
-
-insert [dbo].[sys_resource] ( [code], [name], [resource_id], [level], [sort], [status]) values ( N'locCache#view', N'鏌ヨ', '90594', '3', '0', '1');
-insert [dbo].[sys_resource] ( [code], [name], [resource_id], [level], [sort], [status]) values ( N'locCache#btn-add', N'鏂板', '90594', '3', '1', '1');
-insert [dbo].[sys_resource] ( [code], [name], [resource_id], [level], [sort], [status]) values ( N'locCache#btn-edit', N'缂栬緫', '90594', '3', '2', '1');
-insert [dbo].[sys_resource] ( [code], [name], [resource_id], [level], [sort], [status]) values ( N'locCache#btn-delete', N'鍒犻櫎', '90594', '3', '3', '1');
-insert [dbo].[sys_resource] ( [code], [name], [resource_id], [level], [sort], [status]) values ( N'locCache#btn-export', N'瀵煎嚭', '90594', '3', '4', '1');
diff --git a/src/main/webapp/static/js/common.js b/src/main/webapp/static/js/common.js
index a6cda0d..9328d87 100644
--- a/src/main/webapp/static/js/common.js
+++ b/src/main/webapp/static/js/common.js
@@ -249,7 +249,6 @@
,{field: 'batch', align: 'center',title: '璐у搧鐗瑰緛', sort:true}
,{field: 'anfme', align: 'center',title: '鏁伴噺', hide: false}
,{field: 'zpallet', align: 'center',title: '鎵樼洏鏉$爜', hide: false}
-
,{field: 'specs', align: 'center',title: '瑙勬牸', hide: false}
,{field: 'model', align: 'center',title: '浠g爜', hide: true}
,{field: 'color', align: 'center',title: '棰滆壊', hide: true}
diff --git a/src/main/webapp/static/js/task/task.js b/src/main/webapp/static/js/task/task.js
index ff17d6e..f1b3380 100644
--- a/src/main/webapp/static/js/task/task.js
+++ b/src/main/webapp/static/js/task/task.js
@@ -1,7 +1,7 @@
var pageCurr;
layui.config({
base: baseUrl + "/static/layui/lay/modules/"
-}).use(['table','laydate', 'form', 'admin'], function(){
+}).use(['table', 'laydate', 'form', 'admin'], function () {
var table = layui.table;
var $ = layui.jquery;
var layer = layui.layer;
@@ -13,7 +13,7 @@
tableIns = table.render({
elem: '#task',
headers: {token: localStorage.getItem('token')},
- url: baseUrl+'/task/list/auth',
+ url: baseUrl + '/task/list/auth',
page: true,
limit: 15,
limits: [15, 30, 50, 100, 200, 500],
@@ -22,10 +22,23 @@
height: 'full-120',
cols: [[
{type: 'checkbox'}
- ,{field: 'id', align: 'center',title: ''}
- ,{field: 'taskType', align: 'center',title: '浠诲姟绫诲瀷锛� agv , crn'}
-
- ,{fixed: 'right', title:'鎿嶄綔', align: 'center', toolbar: '#operate', width:120}
+ , {field: 'wrkNo', align: 'center', title: '宸ヤ綔鍙�', sort: true, width: 115}
+ , {field: 'ioTime$', align: 'center', title: '宸ヤ綔鏃堕棿', sort: true, width: 160}
+ , {field: 'wrkSts$', align: 'center', title: '宸ヤ綔鐘舵��', width: 150}
+ , {field: 'ioType$', align: 'center', title: '鍏ュ嚭搴撶被鍨�', width: 150}
+ , {field: 'ioPri', align: 'center', title: '浼樺厛绾�'}
+ , {field: 'taskType$', align: 'center', title: '浠诲姟绫诲瀷'}
+ , {field: 'crnNo$', align: 'center', title: '鍫嗗灈鏈�', hide: true}
+ , {field: 'sourceStaNo$', align: 'center', title: '婧愮珯'}
+ , {field: 'staNo$', align: 'center', title: '鐩爣绔�'}
+ , {field: 'sourceLocNo', align: 'center', title: '婧愬簱浣�'}
+ , {field: 'locNo', align: 'center', title: '鐩爣搴撲綅'}
+ , {field: 'barcode', align: 'center', title: '鏉$爜'}
+ , {field: 'preHave', align: 'center', title: '鍏堝叆鍝�', hide: true}
+ , {field: 'takeNone', align: 'center', title: '绌烘搷浣�', hide: true}
+ , {field: 'modiUser$', align: 'center', title: '淇敼浜哄憳', hide: true}
+ , {field: 'modiTime$', align: 'center', title: '淇敼鏃堕棿', hide: true, width: 160}
+ , {fixed: 'right', title: '鎿嶄綔', align: 'center', toolbar: '#operate', width: 250}
]],
request: {
pageName: 'curr',
@@ -42,11 +55,11 @@
response: {
statusCode: 200
},
- done: function(res, curr, count) {
+ done: function (res, curr, count) {
if (res.code === 403) {
- top.location.href = baseUrl+"/";
+ top.location.href = baseUrl + "/";
}
- pageCurr=curr;
+ pageCurr = curr;
limit();
}
});
@@ -54,7 +67,7 @@
// 鐩戝惉鎺掑簭浜嬩欢
table.on('sort(task)', function (obj) {
var searchData = {};
- $.each($('#search-box [name]').serializeArray(), function() {
+ $.each($('#search-box [name]').serializeArray(), function () {
searchData[this.name] = this.value;
});
searchData['orderByField'] = obj.field;
@@ -68,23 +81,23 @@
// 鐩戝惉澶村伐鍏锋爮浜嬩欢
table.on('toolbar(task)', function (obj) {
var checkStatus = table.checkStatus(obj.config.id).data;
- switch(obj.event) {
+ switch (obj.event) {
case 'addData':
showEditModel();
break;
case 'deleteData':
- if (checkStatus.length === 0) {
- layer.msg('璇烽�夋嫨瑕佸垹闄ょ殑鏁版嵁', {icon: 2});
- return;
- }
- del(checkStatus.map(function (d) {
- return d.id;
- }));
- break;
+ if (checkStatus.length === 0) {
+ layer.msg('璇烽�夋嫨瑕佸垹闄ょ殑鏁版嵁', {icon: 2});
+ return;
+ }
+ del(checkStatus.map(function (d) {
+ return d.id;
+ }));
+ break;
case 'exportData':
- admin.confirm('纭畾瀵煎嚭Excel鍚�', {shadeClose: true}, function(){
- var titles=[];
- var fields=[];
+ admin.confirm('纭畾瀵煎嚭Excel鍚�', {shadeClose: true}, function () {
+ var titles = [];
+ var fields = [];
obj.config.cols[0].map(function (col) {
if (col.type === 'normal' && col.hide === false && col.toolbar == null) {
titles.push(col.title);
@@ -92,7 +105,7 @@
}
});
var exportData = {};
- $.each($('#search-box [name]').serializeArray(), function() {
+ $.each($('#search-box [name]').serializeArray(), function () {
exportData[this.name] = this.value;
});
var param = {
@@ -100,18 +113,18 @@
'fields': fields
};
$.ajax({
- url: baseUrl+"/task/export/auth",
+ url: baseUrl + "/task/export/auth",
headers: {'token': localStorage.getItem('token')},
data: JSON.stringify(param),
- dataType:'json',
- contentType:'application/json;charset=UTF-8',
+ dataType: 'json',
+ contentType: 'application/json;charset=UTF-8',
method: 'POST',
success: function (res) {
layer.closeAll();
if (res.code === 200) {
- table.exportFile(titles,res.data,'xls');
+ table.exportFile(titles, res.data, 'xls');
} else if (res.code === 403) {
- top.location.href = baseUrl+"/";
+ top.location.href = baseUrl + "/";
} else {
layer.msg(res.msg, {icon: 2})
}
@@ -123,17 +136,94 @@
});
// 鐩戝惉琛屽伐鍏蜂簨浠�
- table.on('tool(task)', function(obj){
- var data = obj.data;
+ table.on('tool(task)', function (obj) {
+ let data = obj.data;
switch (obj.event) {
- case 'edit':
- showEditModel(data);
+ // 鏄庣粏灞曠ず
+ case 'detlShow':
+ wrkNo = data.wrkNo;
+ // 寮瑰眰鏄剧ず
+ layer.open({
+ type: 2,
+ title: '宸ヤ綔妗f槑缁�',
+ maxmin: true,
+ area: [top.detailWidth, top.detailHeight],
+ shadeClose: true,
+ content: 'taskDetl.html',
+ success: function (layero, index) {
+ }
+ });
break;
- case "del":
- del([data.id]);
+ // 瀹屾垚
+ case 'complete':
+ layer.confirm('纭瀹屾垚璇ョ瑪宸ヤ綔妗o紵', {title: '宸ヤ綔鍙凤細' + data.wrkNo, shadeClose: true}, function () {
+ http.post(baseUrl + "/hand/control/wrkMast", {workNo: data.wrkNo, type: 1}, function (res) {
+ $(".layui-laypage-btn")[0].click();
+ layer.msg(data.wrkNo + res.msg);
+ })
+ layer.closeAll();
+ });
+ break;
+ // 鍙栨秷
+ case 'cancel':
+ if (data.pdcType === "Y") {
+ layer.confirm('褰撳墠浠诲姟鍏宠仈ERP閿�鍞崟锛屽彇娑堝皢閲嶆柊鐢熸垚鍑哄簱浣滀笟锛屾槸鍚︾户缁紵', {
+ title: '宸ヤ綔鍙凤細' + data.wrkNo,
+ shadeClose: true
+ }, function () {
+ http.post(baseUrl + "/hand/control/wrkMast", {workNo: data.wrkNo, type: 2}, function (res) {
+ $(".layui-laypage-btn")[0].click();
+ layer.msg(data.wrkNo + res.msg);
+ })
+ layer.closeAll();
+ });
+ } else {
+ layer.confirm('纭鍙栨秷璇ョ瑪宸ヤ綔妗o紵', {
+ title: '宸ヤ綔鍙凤細' + data.wrkNo,
+ shadeClose: true
+ }, function () {
+ http.post(baseUrl + "/hand/control/wrkMast", {workNo: data.wrkNo, type: 2}, function (res) {
+ $(".layui-laypage-btn")[0].click();
+ layer.msg(data.wrkNo + res.msg);
+ })
+ layer.closeAll();
+ });
+ }
+ break;
+ // 鎷f枡鍏ュ簱
+ case 'pick':
+ layer.confirm('鎷f枡鍏ュ簱璇ョ瑪宸ヤ綔妗o紵', {title: '宸ヤ綔鍙凤細' + data.wrkNo, shadeClose: true}, function () {
+ http.post(baseUrl + "/hand/control/wrkMast", {workNo: data.wrkNo, type: 3}, function (res) {
+ $(".layui-laypage-btn")[0].click();
+ layer.msg(data.wrkNo + res.msg);
+ })
+ layer.closeAll();
+ });
+ break;
+ // 鍏堝叆鍝�
+ case 'preHave':
+ layer.confirm('浠诲姟鍙戠敓鍏堝叆鍝佸紓甯搞�傚闇�閲嶆柊鍏ュ簱锛岃纭繚璐х墿宸叉斁鑷冲爢鍨涙満鍑哄簱绔欙紒', {
+ title: '宸ヤ綔鍙凤細' + data.wrkNo,
+ shadeClose: true
+ }, function () {
+ http.post(baseUrl + "/deal/preHave/start", {wrkNo: data.wrkNo}, function (res) {
+ $(".layui-laypage-btn")[0].click();
+ layer.msg(data.wrkNo + res.msg, {icon: 1});
+ })
+ layer.closeAll();
+ });
+ break;
+ // 绌烘搷浣�
+ case 'takeNone':
+ layer.confirm('浠诲姟鍙戦�佺┖鎿嶄綔寮傚父锛佹槸鍚︺�傘�傘�傘�傘�傘�傘�傘�傦紵', {
+ title: '宸ヤ綔鍙凤細' + data.wrkNo,
+ shadeClose: true
+ }, function () {
+ });
break;
}
});
+
/* 寮圭獥 - 鏂板銆佷慨鏀� */
function showEditModel(mData) {
@@ -148,19 +238,19 @@
form.on('submit(editSubmit)', function (data) {
var loadIndex = layer.load(2);
$.ajax({
- url: baseUrl+"/task/"+(mData?'update':'add')+"/auth",
+ url: baseUrl + "/task/" + (mData ? 'update' : 'add') + "/auth",
headers: {'token': localStorage.getItem('token')},
data: data.field,
method: 'POST',
success: function (res) {
layer.close(loadIndex);
- if (res.code === 200){
+ if (res.code === 200) {
layer.close(dIndex);
layer.msg(res.msg, {icon: 1});
tableReload();
- } else if (res.code === 403){
- top.location.href = baseUrl+"/";
- }else {
+ } else if (res.code === 403) {
+ top.location.href = baseUrl + "/";
+ } else {
layer.msg(res.msg, {icon: 2});
}
}
@@ -182,17 +272,17 @@
layer.close(i);
var loadIndex = layer.load(2);
$.ajax({
- url: baseUrl+"/task/delete/auth",
+ url: baseUrl + "/task/delete/auth",
headers: {'token': localStorage.getItem('token')},
data: {ids: ids},
method: 'POST',
success: function (res) {
layer.close(loadIndex);
- if (res.code === 200){
+ if (res.code === 200) {
layer.msg(res.msg, {icon: 1});
tableReload();
- } else if (res.code === 403){
- top.location.href = baseUrl+"/";
+ } else if (res.code === 403) {
+ top.location.href = baseUrl + "/";
} else {
layer.msg(res.msg, {icon: 2});
}
@@ -219,28 +309,29 @@
setTimeout(function () {
layDate.render({
elem: '.layui-laydate-range'
- ,type: 'datetime'
- ,range: true
+ , type: 'datetime'
+ , range: true
});
}, 300);
}
+
layDateRender();
});
// 鍏抽棴鍔ㄤ綔
-$(document).on('click','#data-detail-close', function () {
+$(document).on('click', '#data-detail-close', function () {
parent.layer.closeAll();
});
function tableReload(child) {
var searchData = {};
- $.each($('#search-box [name]').serializeArray(), function() {
+ $.each($('#search-box [name]').serializeArray(), function () {
searchData[this.name] = this.value;
});
tableIns.reload({
where: searchData,
page: {curr: pageCurr}
- });
+ });
}
diff --git a/src/main/webapp/static/js/wrkMast/wrkMast.js b/src/main/webapp/static/js/wrkMast/wrkMast.js
index 60b5e91..39e2ddf 100644
--- a/src/main/webapp/static/js/wrkMast/wrkMast.js
+++ b/src/main/webapp/static/js/wrkMast/wrkMast.js
@@ -34,39 +34,8 @@
,{field: 'barcode', align: 'center',title: '鏉$爜'}
,{field: 'preHave', align: 'center',title: '鍏堝叆鍝�', hide: true}
,{field: 'takeNone', align: 'center',title: '绌烘搷浣�', hide: true}
- // ,{field: 'picking', align: 'center',title: '鎷f枡', templet:function(row){
- // var html = "<input value='picking' type='checkbox' lay-skin='primary' lay-filter='tableCheckbox' table-index='"+row.LAY_TABLE_INDEX+"'";
- // if(row.picking === 'Y'){html += " checked ";}
- // html += ">";
- // return html;
- // }}
- // ,{field: 'exitMk', align: 'center',title: '閫�鍑�', templet:function(row){
- // var html = "<input value='exitMk' type='checkbox' lay-skin='primary' lay-filter='tableCheckbox' table-index='"+row.LAY_TABLE_INDEX+"'";
- // if(row.exitMk === 'Y'){html += " checked ";}
- // html += ">";
- // return html;
- // }}
- // ,{field: 'emptyMk', align: 'center',title: '绌烘澘', templet:function(row){
- // var html = "<input value='emptyMk' type='checkbox' lay-skin='primary' lay-filter='tableCheckbox' table-index='"+row.LAY_TABLE_INDEX+"'";
- // if(row.emptyMk === 'Y'){html += " checked ";}
- // html += ">";
- // return html;
- // }}
- //
- // ,{field: 'crnStrTime$', align: 'center',title: '鍫嗗灈鏈哄惎鍔ㄦ椂闂�'}
- // ,{field: 'crnEndTime$', align: 'center',title: '鍫嗗灈鏈哄仠姝㈡椂闂�'}
- // ,{field: 'refIotime$', align: 'center',title: '鎷f枡鏃堕棿'}
,{field: 'modiUser$', align: 'center',title: '淇敼浜哄憳', hide:true}
,{field: 'modiTime$', align: 'center',title: '淇敼鏃堕棿', hide:true, width: 160}
- // ,{field: 'memo', align: 'center',title: '澶囨敞'}
- //
- // ,{field: 'fullPlt', align: 'center',title: '婊℃澘', templet:function(row){
- // var html = "<input value='fullPlt' type='checkbox' lay-skin='primary' lay-filter='tableCheckbox' table-index='"+row.LAY_TABLE_INDEX+"'";
- // if(row.fullPlt === 'Y'){html += " checked ";}
- // html += ">";
- // return html;
- // }}
-
,{fixed: 'right', title:'鎿嶄綔', align: 'center', toolbar: '#operate', width:250}
]],
request: {
diff --git a/src/main/webapp/views/.DS_Store b/src/main/webapp/views/.DS_Store
new file mode 100644
index 0000000..0dbb519
--- /dev/null
+++ b/src/main/webapp/views/.DS_Store
Binary files differ
diff --git a/src/main/webapp/views/task/task.html b/src/main/webapp/views/task/task.html
index 25896cc..b3e97a7 100644
--- a/src/main/webapp/views/task/task.html
+++ b/src/main/webapp/views/task/task.html
@@ -22,14 +22,16 @@
<input class="layui-input" type="text" name="id" placeholder="缂栧彿" autocomplete="off">
</div>
</div>
- <div class="layui-inline" style="width: 300px">
+ <div class="layui-inline" style="width: 300px">
<div class="layui-input-inline">
- <input class="layui-input layui-laydate-range" name="create_time" type="text" placeholder="璧峰鏃堕棿 - 缁堟鏃堕棿" autocomplete="off" style="width: 300px">
+ <input class="layui-input layui-laydate-range" name="create_time" type="text"
+ placeholder="璧峰鏃堕棿 - 缁堟鏃堕棿" autocomplete="off" style="width: 300px">
</div>
</div>
<div class="layui-inline">
<div class="layui-input-inline">
- <input class="layui-input" type="text" name="condition" placeholder="璇疯緭鍏�" autocomplete="off">
+ <input class="layui-input" type="text" name="condition" placeholder="璇疯緭鍏�"
+ autocomplete="off">
</div>
</div>
<div class="layui-inline"> 
@@ -47,17 +49,22 @@
</div>
</div>
-<script type="text/html" id="toolbar">
- <div class="layui-btn-container">
- <button class="layui-btn layui-btn-sm" id="btn-add" lay-event="addData">鏂板</button>
- <button class="layui-btn layui-btn-sm layui-btn-danger" id="btn-delete" lay-event="deleteData">鍒犻櫎</button>
- <button class="layui-btn layui-btn-primary layui-btn-sm" id="btn-export" lay-event="exportData" style="float: right">瀵煎嚭</button>
- </div>
-</script>
-
<script type="text/html" id="operate">
- <a class="layui-btn layui-btn-primary layui-btn-xs btn-edit" lay-event="edit">淇敼</a>
- <a class="layui-btn layui-btn-danger layui-btn-xs btn-edit" lay-event="del">鍒犻櫎</a>
+ {{#if (d.preHave === 'Y' && d.wrkSts === 3) { }}
+ <a class="layui-btn layui-btn-primary layui-border-red layui-btn-xs btn-error" lay-event="preHave">鍏堝叆鍝�</a>
+ {{# } }}
+ {{#if (d.takeNone === 'Y' && d.wrkSts === 12) { }}
+ <a class="layui-btn layui-btn-danger layui-btn-xs btn-error" lay-event="takeNone">绌烘搷浣�</a>
+ {{# } }}
+ <a class="layui-btn layui-btn-xs btn-detlShow" lay-event="detlShow">鏄庣粏</a>
+ <a class="layui-btn layui-btn-danger layui-btn-xs btn-complete" lay-event="complete">瀹屾垚</a>
+ <a class="layui-btn layui-btn-primary layui-btn-xs btn-cancel" lay-event="cancel">鍙栨秷</a>
+ {{#if (d.ioType === 103) { }}
+ <a class="layui-btn layui-btn-warm layui-btn-xs btn-pick" lay-event="pick">鎷�</a>
+ {{# } }}
+ {{#if (d.ioType === 107) { }}
+ <a class="layui-btn layui-btn-warm layui-btn-xs btn-pick" lay-event="pick">鐩�</a>
+ {{# } }}
</script>
<script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script>
@@ -66,27 +73,6 @@
<script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script>
<script type="text/javascript" src="../../static/js/task/task.js" charset="utf-8"></script>
</body>
-<!-- 琛ㄥ崟寮圭獥 -->
-<script type="text/html" id="editDialog">
- <form id="detail" lay-filter="detail" class="layui-form admin-form model-form">
- <input name="id" type="hidden">
- <div class="layui-row">
- <div class="layui-col-md12">
- <div class="layui-form-item">
- <label class="layui-form-label">浠诲姟绫诲瀷锛� agv , crn: </label>
- <div class="layui-input-block">
- <input class="layui-input" name="taskType" placeholder="璇疯緭鍏ヤ换鍔$被鍨嬶細 agv , crn">
- </div>
- </div>
- </div>
- </div>
- <hr class="layui-bg-gray">
- <div class="layui-form-item text-right">
- <button class="layui-btn" lay-filter="editSubmit" lay-submit="">淇濆瓨</button>
- <button class="layui-btn layui-btn-primary" type="button" ew-event="closeDialog">鍙栨秷</button>
- </div>
- </form>
-</script>
</html>
diff --git a/src/main/webapp/views/task/taskDetl.html b/src/main/webapp/views/task/taskDetl.html
new file mode 100644
index 0000000..69e87b4
--- /dev/null
+++ b/src/main/webapp/views/task/taskDetl.html
@@ -0,0 +1,93 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+ <meta charset="utf-8">
+ <title></title>
+ <meta name="renderer" content="webkit">
+ <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
+ <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
+ <link rel="stylesheet" href="../../static/layui/css/layui.css" media="all">
+ <link rel="stylesheet" href="../../static/css/cool.css" media="all">
+ <link rel="stylesheet" href="../../static/css/common.css" media="all">
+ <style>
+ </style>
+</head>
+<body>
+<div class="layui-inline" style="width:31%;margin-top: 20px">
+ <label class="layui-form-label">宸� 浣� 鍙凤細</label>
+ <div class="layui-input-inline">
+ <input id="wrkNo" class="layui-input" type="text" disabled="disabled">
+ </div>
+</div>
+<table class="layui-hide" id="taskDetailByMast" lay-filter="taskDetailByMast"></table>
+</body>
+<script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script>
+<script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script>
+<script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script>
+<script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script>
+<script type="text/javascript" src="../../static/js/locMast/locMast.js" charset="utf-8"></script>
+<script type="text/javascript">
+ var pageCur;
+
+ function getCol() {
+ var cols = [
+ {field: 'wrkNo', align: 'center', title: '宸ヤ綔鍙�'}
+ , {field: 'ioTime$', align: 'center', title: '宸ヤ綔鏃堕棿'}
+ ];
+ cols.push.apply(cols, detlCols);
+ return cols;
+ }
+
+ layui.use(['table', 'laydate', 'form'], function () {
+ table = layui.table;
+ var $ = layui.jquery;
+ var form = layui.form;
+
+ $('#wrkNo').val(parent.wrkNo);
+ // 鏁版嵁娓叉煋
+ tableIns1 = table.render({
+ elem: '#taskDetailByMast',
+ headers: {token: localStorage.getItem('token')},
+ url: baseUrl + '/taskDetl/list/auth',
+ where: {wrk_no: parent.wrkNo},
+ page: true,
+ limit: 16,
+ limits: [16, 30, 50, 100, 200, 500],
+ even: true,
+ toolbar: '#toolbar',
+ cellMinWidth: 50,
+ cols: [getCol()],
+ request: {
+ pageName: 'curr',
+ pageSize: 'limit'
+ },
+ parseData: function (res) {
+ return {
+ 'code': res.code,
+ 'msg': res.msg,
+ 'count': res.data.total,
+ 'data': res.data.records
+ }
+ },
+ response: {
+ statusCode: 200
+ },
+ done: function (res, curr, count) {
+ if (res.code === 403) {
+ top.location.href = baseUrl + "/";
+ }
+ pageCur = curr;
+ form.on('checkbox(tableCheckbox)', function (data) {
+ var _index = $(data.elem).attr('table-index') || 0;
+ if (data.elem.checked) {
+ res.data[_index][data.value] = 'Y';
+ } else {
+ res.data[_index][data.value] = 'N';
+ }
+ });
+ }
+ });
+ });
+</script>
+</html>
+
diff --git a/src/main/webapp/views/taskDetl/taskDetl.html b/src/main/webapp/views/taskDetl/taskDetl.html
deleted file mode 100644
index d38091f..0000000
--- a/src/main/webapp/views/taskDetl/taskDetl.html
+++ /dev/null
@@ -1,391 +0,0 @@
-<!DOCTYPE html>
-<html lang="en">
-<head>
- <meta charset="utf-8">
- <title></title>
- <meta name="renderer" content="webkit">
- <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
- <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
- <link rel="stylesheet" href="../../static/layui/css/layui.css" media="all">
- <link rel="stylesheet" href="../../static/css/admin.css?v=318" media="all">
- <link rel="stylesheet" href="../../static/css/cool.css" media="all">
-</head>
-<body>
-
-<div class="layui-fluid">
- <div class="layui-card">
- <div class="layui-card-body">
- <div class="layui-form toolbar" id="search-box">
- <div class="layui-form-item">
- <div class="layui-inline">
- <div class="layui-input-inline">
- <input class="layui-input" type="text" name="id" placeholder="缂栧彿" autocomplete="off">
- </div>
- </div>
- <div class="layui-inline" style="width: 300px">
- <div class="layui-input-inline">
- <input class="layui-input layui-laydate-range" name="create_time" type="text" placeholder="璧峰鏃堕棿 - 缁堟鏃堕棿" autocomplete="off" style="width: 300px">
- </div>
- </div>
- <div class="layui-inline">
- <div class="layui-input-inline">
- <input class="layui-input" type="text" name="condition" placeholder="璇疯緭鍏�" autocomplete="off">
- </div>
- </div>
- <div class="layui-inline"> 
- <button class="layui-btn icon-btn" lay-filter="search" lay-submit>
- <i class="layui-icon"></i>鎼滅储
- </button>
- <button class="layui-btn icon-btn" lay-filter="reset" lay-submit>
- <i class="layui-icon"></i>閲嶇疆
- </button>
- </div>
- </div>
- </div>
- <table class="layui-hide" id="taskDetl" lay-filter="taskDetl"></table>
- </div>
- </div>
-</div>
-
-<script type="text/html" id="toolbar">
- <div class="layui-btn-container">
- <button class="layui-btn layui-btn-sm" id="btn-add" lay-event="addData">鏂板</button>
- <button class="layui-btn layui-btn-sm layui-btn-danger" id="btn-delete" lay-event="deleteData">鍒犻櫎</button>
- <button class="layui-btn layui-btn-primary layui-btn-sm" id="btn-export" lay-event="exportData" style="float: right">瀵煎嚭</button>
- </div>
-</script>
-
-<script type="text/html" id="operate">
- <a class="layui-btn layui-btn-primary layui-btn-xs btn-edit" lay-event="edit">淇敼</a>
- <a class="layui-btn layui-btn-danger layui-btn-xs btn-edit" lay-event="del">鍒犻櫎</a>
-</script>
-
-<script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script>
-<script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script>
-<script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script>
-<script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script>
-<script type="text/javascript" src="../../static/js/taskDetl/taskDetl.js" charset="utf-8"></script>
-</body>
-<!-- 琛ㄥ崟寮圭獥 -->
-<script type="text/html" id="editDialog">
- <form id="detail" lay-filter="detail" class="layui-form admin-form model-form">
- <input name="id" type="hidden">
- <div class="layui-row">
- <div class="layui-col-md12">
- <div class="layui-form-item">
- <label class="layui-form-label layui-form-required">宸ヤ綔鍙�: </label>
- <div class="layui-input-block">
- <input class="layui-input" name="wrkNo" placeholder="璇疯緭鍏ュ伐浣滃彿" lay-vertype="tips" lay-verify="required">
- </div>
- </div>
- <div class="layui-form-item">
- <label class="layui-form-label">宸ヤ綔鏃堕棿: </label>
- <div class="layui-input-block">
- <input class="layui-input" name="ioTime" id="ioTime$" placeholder="璇疯緭鍏ュ伐浣滄椂闂�">
- </div>
- </div>
- <div class="layui-form-item">
- <label class="layui-form-label">鏁伴噺: </label>
- <div class="layui-input-block">
- <input class="layui-input" name="anfme" placeholder="璇疯緭鍏ユ暟閲�">
- </div>
- </div>
- <div class="layui-form-item">
- <label class="layui-form-label">鎵樼洏鏉$爜: </label>
- <div class="layui-input-block">
- <input class="layui-input" name="zpallet" placeholder="璇疯緭鍏ユ墭鐩樻潯鐮�">
- </div>
- </div>
- <div class="layui-form-item">
- <label class="layui-form-label layui-form-required">鍟嗗搧缂栧彿: </label>
- <div class="layui-input-block">
- <input class="layui-input" name="matnr" placeholder="璇疯緭鍏ュ晢鍝佺紪鍙�" lay-vertype="tips" lay-verify="required">
- </div>
- </div>
- <div class="layui-form-item">
- <label class="layui-form-label">鍟嗗搧鍚嶇О: </label>
- <div class="layui-input-block">
- <input class="layui-input" name="maktx" placeholder="璇疯緭鍏ュ晢鍝佸悕绉�">
- </div>
- </div>
- <div class="layui-form-item">
- <label class="layui-form-label">鎵瑰彿: </label>
- <div class="layui-input-block">
- <input class="layui-input" name="batch" placeholder="璇疯緭鍏ユ壒鍙�">
- </div>
- </div>
- <div class="layui-form-item">
- <label class="layui-form-label">鍗曟嵁缂栧彿: </label>
- <div class="layui-input-block">
- <input class="layui-input" name="orderNo" placeholder="璇疯緭鍏ュ崟鎹紪鍙�">
- </div>
- </div>
- <div class="layui-form-item">
- <label class="layui-form-label">瑙勬牸: </label>
- <div class="layui-input-block">
- <input class="layui-input" name="specs" placeholder="璇疯緭鍏ヨ鏍�">
- </div>
- </div>
- <div class="layui-form-item">
- <label class="layui-form-label">鍨嬪彿: </label>
- <div class="layui-input-block">
- <input class="layui-input" name="model" placeholder="璇疯緭鍏ュ瀷鍙�">
- </div>
- </div>
- <div class="layui-form-item">
- <label class="layui-form-label">棰滆壊: </label>
- <div class="layui-input-block">
- <input class="layui-input" name="color" placeholder="璇疯緭鍏ラ鑹�">
- </div>
- </div>
- <div class="layui-form-item">
- <label class="layui-form-label">鍝佺墝: </label>
- <div class="layui-input-block">
- <input class="layui-input" name="brand" placeholder="璇疯緭鍏ュ搧鐗�">
- </div>
- </div>
- <div class="layui-form-item">
- <label class="layui-form-label">鍗曚綅: </label>
- <div class="layui-input-block">
- <input class="layui-input" name="unit" placeholder="璇疯緭鍏ュ崟浣�">
- </div>
- </div>
- <div class="layui-form-item">
- <label class="layui-form-label">鍗曚环: </label>
- <div class="layui-input-block">
- <input class="layui-input" name="price" placeholder="璇疯緭鍏ュ崟浠�">
- </div>
- </div>
- <div class="layui-form-item">
- <label class="layui-form-label">sku: </label>
- <div class="layui-input-block">
- <input class="layui-input" name="sku" placeholder="璇疯緭鍏ku">
- </div>
- </div>
- <div class="layui-form-item">
- <label class="layui-form-label">鍗曚綅閲�: </label>
- <div class="layui-input-block">
- <input class="layui-input" name="units" placeholder="璇疯緭鍏ュ崟浣嶉噺">
- </div>
- </div>
- <div class="layui-form-item">
- <label class="layui-form-label">鏉$爜: </label>
- <div class="layui-input-block">
- <input class="layui-input" name="barcode" placeholder="璇疯緭鍏ユ潯鐮�">
- </div>
- </div>
- <div class="layui-form-item">
- <label class="layui-form-label">浜у湴: </label>
- <div class="layui-input-block">
- <input class="layui-input" name="origin" placeholder="璇疯緭鍏ヤ骇鍦�">
- </div>
- </div>
- <div class="layui-form-item">
- <label class="layui-form-label">鍘傚: </label>
- <div class="layui-input-block">
- <input class="layui-input" name="manu" placeholder="璇疯緭鍏ュ巶瀹�">
- </div>
- </div>
- <div class="layui-form-item">
- <label class="layui-form-label">鐢熶骇鏃ユ湡: </label>
- <div class="layui-input-block">
- <input class="layui-input" name="manuDate" placeholder="璇疯緭鍏ョ敓浜ф棩鏈�">
- </div>
- </div>
- <div class="layui-form-item">
- <label class="layui-form-label">鍝侀」鏁�: </label>
- <div class="layui-input-block">
- <input class="layui-input" name="itemNum" placeholder="璇疯緭鍏ュ搧椤规暟">
- </div>
- </div>
- <div class="layui-form-item">
- <label class="layui-form-label">瀹夊叏搴撳瓨閲�: </label>
- <div class="layui-input-block">
- <input class="layui-input" name="safeQty" placeholder="璇疯緭鍏ュ畨鍏ㄥ簱瀛橀噺">
- </div>
- </div>
- <div class="layui-form-item">
- <label class="layui-form-label">閲嶉噺: </label>
- <div class="layui-input-block">
- <input class="layui-input" name="weight" placeholder="璇疯緭鍏ラ噸閲�">
- </div>
- </div>
- <div class="layui-form-item">
- <label class="layui-form-label">闀垮害: </label>
- <div class="layui-input-block">
- <input class="layui-input" name="manLength" placeholder="璇疯緭鍏ラ暱搴�">
- </div>
- </div>
- <div class="layui-form-item">
- <label class="layui-form-label">浣撶Н: </label>
- <div class="layui-input-block">
- <input class="layui-input" name="volume" placeholder="璇疯緭鍏ヤ綋绉�">
- </div>
- </div>
- <div class="layui-form-item">
- <label class="layui-form-label">涓夋柟缂栫爜: </label>
- <div class="layui-input-block">
- <input class="layui-input" name="threeCode" placeholder="璇疯緭鍏ヤ笁鏂圭紪鐮�">
- </div>
- </div>
- <div class="layui-form-item">
- <label class="layui-form-label">渚涘簲鍟�: </label>
- <div class="layui-input-block">
- <input class="layui-input" name="supp" placeholder="璇疯緭鍏ヤ緵搴斿晢">
- </div>
- </div>
- <div class="layui-form-item">
- <label class="layui-form-label">渚涘簲鍟嗙紪鐮�: </label>
- <div class="layui-input-block">
- <input class="layui-input" name="suppCode" placeholder="璇疯緭鍏ヤ緵搴斿晢缂栫爜">
- </div>
- </div>
- <div class="layui-form-item">
- <label class="layui-form-label">鏄惁鎵规: </label>
- <div class="layui-input-block">
- <select name="beBatch">
- <option value="">璇烽�夋嫨鏄惁鎵规</option>
- <option value="1">鏄�</option>
- <option value="0">鍚�</option>
- </select>
- </div>
- </div>
- <div class="layui-form-item">
- <label class="layui-form-label">淇濊川鏈�: </label>
- <div class="layui-input-block">
- <input class="layui-input" name="deadTime" placeholder="璇疯緭鍏ヤ繚璐ㄦ湡">
- </div>
- </div>
- <div class="layui-form-item">
- <label class="layui-form-label">棰勮澶╂暟: </label>
- <div class="layui-input-block">
- <input class="layui-input" name="deadWarn" placeholder="璇疯緭鍏ラ璀﹀ぉ鏁�">
- </div>
- </div>
- <div class="layui-form-item">
- <label class="layui-form-label">鍒惰喘: </label>
- <div class="layui-input-block">
- <select name="source">
- <option value="">璇烽�夋嫨鍒惰喘</option>
- <option value="1">鍒堕��</option>
- <option value="2">閲囪喘</option>
- <option value="3">澶栧崗</option>
- </select>
- </div>
- </div>
- <div class="layui-form-item">
- <label class="layui-form-label">瑕佹眰妫�楠�: </label>
- <div class="layui-input-block">
- <select name="inspect">
- <option value="">璇烽�夋嫨瑕佹眰妫�楠�</option>
- <option value="1">鏄�</option>
- <option value="0">鍚�</option>
- </select>
- </div>
- </div>
- <div class="layui-form-item">
- <label class="layui-form-label">鍗遍櫓鍝�: </label>
- <div class="layui-input-block">
- <select name="danger">
- <option value="">璇烽�夋嫨鍗遍櫓鍝�</option>
- <option value="1">鏄�</option>
- <option value="0">鍚�</option>
- </select>
- </div>
- </div>
- <div class="layui-form-item">
- <label class="layui-form-label">淇敼浜哄憳: </label>
- <div class="layui-input-block cool-auto-complete">
- <input class="layui-input" name="modiUser" placeholder="璇疯緭鍏ヤ慨鏀逛汉鍛�" style="display: none">
- <input id="modiUser$" name="modiUser$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="璇疯緭鍏ヤ慨鏀逛汉鍛�" onfocus=this.blur()>
- <div class="cool-auto-complete-window">
- <input class="cool-auto-complete-window-input" data-key="userQueryBymodiUser" onkeyup="autoLoad(this.getAttribute('data-key'))">
- <select class="cool-auto-complete-window-select" data-key="userQueryBymodiUserSelect" onchange="confirmed(this.getAttribute('data-key'))" multiple="multiple">
- </select>
- </div>
- </div>
- </div>
- <div class="layui-form-item">
- <label class="layui-form-label">淇敼鏃堕棿: </label>
- <div class="layui-input-block">
- <input class="layui-input" name="modiTime" id="modiTime$" placeholder="璇疯緭鍏ヤ慨鏀规椂闂�">
- </div>
- </div>
- <div class="layui-form-item">
- <label class="layui-form-label">娣诲姞浜哄憳: </label>
- <div class="layui-input-block cool-auto-complete">
- <input class="layui-input" name="appeUser" placeholder="璇疯緭鍏ユ坊鍔犱汉鍛�" style="display: none">
- <input id="appeUser$" name="appeUser$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="璇疯緭鍏ユ坊鍔犱汉鍛�" onfocus=this.blur()>
- <div class="cool-auto-complete-window">
- <input class="cool-auto-complete-window-input" data-key="userQueryByappeUser" onkeyup="autoLoad(this.getAttribute('data-key'))">
- <select class="cool-auto-complete-window-select" data-key="userQueryByappeUserSelect" onchange="confirmed(this.getAttribute('data-key'))" multiple="multiple">
- </select>
- </div>
- </div>
- </div>
- <div class="layui-form-item">
- <label class="layui-form-label">娣诲姞鏃堕棿: </label>
- <div class="layui-input-block">
- <input class="layui-input" name="appeTime" id="appeTime$" placeholder="璇疯緭鍏ユ坊鍔犳椂闂�">
- </div>
- </div>
- <div class="layui-form-item">
- <label class="layui-form-label">澶囨敞: </label>
- <div class="layui-input-block">
- <input class="layui-input" name="memo" placeholder="璇疯緭鍏ュ娉�">
- </div>
- </div>
- <div class="layui-form-item">
- <label class="layui-form-label">: </label>
- <div class="layui-input-block">
- <input class="layui-input" name="lineNumber" placeholder="璇疯緭鍏�">
- </div>
- </div>
- <div class="layui-form-item">
- <label class="layui-form-label">: </label>
- <div class="layui-input-block">
- <input class="layui-input" name="standby1" placeholder="璇疯緭鍏�">
- </div>
- </div>
- <div class="layui-form-item">
- <label class="layui-form-label">: </label>
- <div class="layui-input-block">
- <input class="layui-input" name="standby2" placeholder="璇疯緭鍏�">
- </div>
- </div>
- <div class="layui-form-item">
- <label class="layui-form-label">: </label>
- <div class="layui-input-block">
- <input class="layui-input" name="standby3" placeholder="璇疯緭鍏�">
- </div>
- </div>
- <div class="layui-form-item">
- <label class="layui-form-label">: </label>
- <div class="layui-input-block">
- <input class="layui-input" name="boxType1" placeholder="璇疯緭鍏�">
- </div>
- </div>
- <div class="layui-form-item">
- <label class="layui-form-label">: </label>
- <div class="layui-input-block">
- <input class="layui-input" name="boxType2" placeholder="璇疯緭鍏�">
- </div>
- </div>
- <div class="layui-form-item">
- <label class="layui-form-label">: </label>
- <div class="layui-input-block">
- <input class="layui-input" name="boxType3" placeholder="璇疯緭鍏�">
- </div>
- </div>
-
- </div>
- </div>
- <hr class="layui-bg-gray">
- <div class="layui-form-item text-right">
- <button class="layui-btn" lay-filter="editSubmit" lay-submit="">淇濆瓨</button>
- <button class="layui-btn layui-btn-primary" type="button" ew-event="closeDialog">鍙栨秷</button>
- </div>
- </form>
-</script>
-</html>
-
--
Gitblit v1.9.1