From 7af1ffdd5af44733dc86a3d03e1f8543e87462d8 Mon Sep 17 00:00:00 2001
From: zhang <zc857179121@qq.com>
Date: 星期一, 04 八月 2025 14:43:37 +0800
Subject: [PATCH] 1
---
src/main/java/com/zy/asrs/importexcle/ImportReviewDto.java | 27 ++
src/main/java/com/zy/asrs/controller/ReviewController.java | 6
src/main/java/com/zy/asrs/entity/ReviewDetl.java | 144 +++++++++--------
src/main/webapp/views/review/review.html | 5
src/main/java/com/zy/asrs/controller/MobileController.java | 174 ++++++++++++++-------
src/main/java/com/zy/asrs/importexcle/ImportReviewListener.java | 101 +++++++-----
src/main/webapp/static/js/review/review.js | 11
7 files changed, 289 insertions(+), 179 deletions(-)
diff --git a/src/main/java/com/zy/asrs/controller/MobileController.java b/src/main/java/com/zy/asrs/controller/MobileController.java
index 9e07434..c33a054 100644
--- a/src/main/java/com/zy/asrs/controller/MobileController.java
+++ b/src/main/java/com/zy/asrs/controller/MobileController.java
@@ -16,12 +16,15 @@
import com.zy.asrs.service.*;
import com.zy.common.model.WrkDto;
import com.zy.common.web.BaseController;
+import com.zy.system.entity.User;
+import com.zy.system.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.util.*;
+import java.util.stream.Collectors;
/**
* 绉诲姩绔帴鍙f帶鍒跺櫒
@@ -29,7 +32,7 @@
*/
@RestController
@RequestMapping("mobile")
-public class MobileController extends BaseController {
+public class MobileController extends BaseController {
@Autowired
private MobileService mobileService;
@@ -64,33 +67,41 @@
@Resource
private OrderDetlMapper orderDetlMapper;
+ @Resource
+ private ReviewService reviewService;
+
+ @Resource
+ private ReviewDetlService reviewDetlService;
+
+ @Resource
+ private UserService userService;
// 鍟嗗搧涓婃灦
@RequestMapping("/mat/onSale/auth")
@ManagerAuth
- public R matOnSale(@RequestBody CombParam combParam){
+ public R matOnSale(@RequestBody CombParam combParam) {
mobileService.onSale(combParam);
return R.ok("涓婃灦鎴愬姛");
}
+
// 鍟嗗搧涓嬫灦
@RequestMapping("/mat/offSale/auth")
//@ManagerAuth
- public R matOffSale(@RequestBody OffSaleParam offSaleParam){
+ public R matOffSale(@RequestBody OffSaleParam offSaleParam) {
mobileService.offSale(offSaleParam);
return R.ok("涓嬫灦鎴愬姛");
}
@RequestMapping("/search/sign/auth/v2")
@ManagerAuth(memo = "鎷嗗彔鐩樻ā寮忓垏鎹�")
- public R orderSearchByBarcodeV2(@RequestParam boolean sign){
- RgvOneSign rgvOneSign = rgvOneSignService.selectOne(new EntityWrapper<RgvOneSign>().eq("rgv_one_type","oneSign"));
- if (sign){
- rgvOneSign.setRgvOneSign(1-rgvOneSign.getRgvOneSign());
+ public R orderSearchByBarcodeV2(@RequestParam boolean sign) {
+ RgvOneSign rgvOneSign = rgvOneSignService.selectOne(new EntityWrapper<RgvOneSign>().eq("rgv_one_type", "oneSign"));
+ if (sign) {
+ rgvOneSign.setRgvOneSign(1 - rgvOneSign.getRgvOneSign());
rgvOneSignService.updateById(rgvOneSign);
}
return R.ok(rgvOneSign.getRgvOneSign());
}
-
// 缁勬墭 ----------------------------------------------------------------------------------------------------
@@ -121,18 +132,18 @@
// }
@RequestMapping("/order/search/orderNo/auth")
@ManagerAuth
- public R orderSearchByBarcode(@RequestParam String orderNo){
- if (Cools.isEmpty(orderNo)){
- orderNo=null;
+ public R orderSearchByBarcode(@RequestParam String orderNo) {
+ if (Cools.isEmpty(orderNo)) {
+ orderNo = null;
}
List<Order> orders = orderService.selectorderNoL(orderNo);
- if (Cools.isEmpty(orders)){
+ if (Cools.isEmpty(orders)) {
return R.ok();
}
LinkedList<CombParam> combParams = new LinkedList<>();
- if (!Cools.isEmpty(orders)){
- for (Order order:orders){
- CombParam combParam=new CombParam();
+ if (!Cools.isEmpty(orders)) {
+ for (Order order : orders) {
+ CombParam combParam = new CombParam();
if (order == null) {
continue;
}
@@ -146,11 +157,11 @@
List<OrderDetl> orderDetls = orderService.selectWorkingDetls(order.getId());
if (!Cools.isEmpty(orderDetls)) {
LinkedList<CombParam.CombMat> combMats = new LinkedList<>();
- for (OrderDetl orderDetl:orderDetls){
+ for (OrderDetl orderDetl : orderDetls) {
CombParam.CombMat combMat = new CombParam.CombMat();
combMat.setMatnr(orderDetl.getMatnr());
combMat.setBatch(orderDetl.getBatch());
- combMat.setAnfme(orderDetl.getAnfme()-orderDetl.getWorkQty());
+ combMat.setAnfme(orderDetl.getAnfme() - orderDetl.getWorkQty());
combMat.setMaktx(orderDetl.getMaktx());
combMat.setSpecs(orderDetl.getSpecs());
combMats.add(combMat);
@@ -166,18 +177,18 @@
@RequestMapping("/order/search/orderNo/auth/v2")
@ManagerAuth(memo = "閫�搴撳崟鑾峰彇")
- public R orderSearchByBarcodeV2(@RequestParam String orderNo){
- if (Cools.isEmpty(orderNo)){
- orderNo=null;
+ public R orderSearchByBarcodeV2(@RequestParam String orderNo) {
+ if (Cools.isEmpty(orderNo)) {
+ orderNo = null;
}
List<Order> orders = orderService.selectorderNoL(orderNo);
- if (Cools.isEmpty(orders)){
+ if (Cools.isEmpty(orders)) {
return R.ok();
}
LinkedList<CombParam> combParams = new LinkedList<>();
- if (!Cools.isEmpty(orders)){
- for (Order order:orders){
- CombParam combParam=new CombParam();
+ if (!Cools.isEmpty(orders)) {
+ for (Order order : orders) {
+ CombParam combParam = new CombParam();
if (order == null) {
continue;
}
@@ -191,20 +202,20 @@
List<OrderDetl> orderDetls = orderService.selectWorkingDetls(order.getId());
if (!Cools.isEmpty(orderDetls)) {
LinkedList<CombParam.CombMat> combMats = new LinkedList<>();
- for (OrderDetl orderDetl:orderDetls){
- if (orderDetl.getWorkQty()!=0){
+ for (OrderDetl orderDetl : orderDetls) {
+ if (orderDetl.getWorkQty() != 0) {
continue;
}
CombParam.CombMat combMat = new CombParam.CombMat();
combMat.setMatnr(orderDetl.getMatnr());
combMat.setBatch(orderDetl.getBatch());
- combMat.setAnfme(orderDetl.getAnfme()-orderDetl.getWorkQty());
+ combMat.setAnfme(orderDetl.getAnfme() - orderDetl.getWorkQty());
combMat.setMaktx(orderDetl.getMaktx());
combMat.setSpecs(orderDetl.getSpecs());
combMat.setWeight(orderDetl.getWeight());
combMats.add(combMat);
}
- if (combMats.size()==0){
+ if (combMats.size() == 0) {
continue;
}
combParam.setCombMats(combMats);
@@ -218,15 +229,15 @@
@RequestMapping("/wrkDetl/search/batch/auth")
@ManagerAuth(memo = "鍑哄簱纭鑾峰彇淇℃伅")
- public R wrkDetlSearchByBatch(@RequestBody String batch){
- if (Cools.isEmpty(batch)){
+ public R wrkDetlSearchByBatch(@RequestBody String batch) {
+ if (Cools.isEmpty(batch)) {
return R.error("鍙傛暟涓虹┖");
}
// List<Order> orders = orderService.selectorderNoL(batch);
WrkDetl wrkDetl = wrkDetlService.selectOne(new EntityWrapper<WrkDetl>().eq("batch", batch));
- if (Cools.isEmpty(wrkDetl)){
+ if (Cools.isEmpty(wrkDetl)) {
WrkDetlLog wrkDetlLog = wrkDetlLogService.selectOne(new EntityWrapper<WrkDetlLog>().eq("batch", batch));
- if (Cools.isEmpty(wrkDetlLog)){
+ if (Cools.isEmpty(wrkDetlLog)) {
return R.error("鏈煡鍒版暟鎹�");
}
wrkDetl = new WrkDetl();
@@ -235,7 +246,7 @@
wrkDetl.setBarcode(wrkDetlLog.getBarcode());
wrkDetl.setDeadTime(wrkDetlLog.getDeadTime());
}
- if (Cools.isEmpty(wrkDetl)){
+ if (Cools.isEmpty(wrkDetl)) {
return R.error("鏈煡鍒版暟鎹�");
}
return R.ok().add(wrkDetl);
@@ -243,8 +254,8 @@
@RequestMapping("/order/search/batch/auth")
@ManagerAuth(memo = "鍑哄簱纭")
- public R orderSearchByBatch(@RequestBody String batch){
- if (Cools.isEmpty(batch)){
+ public R orderSearchByBatch(@RequestBody String batch) {
+ if (Cools.isEmpty(batch)) {
return R.error("鍙傛暟涓虹┖");
}
String orderNo = "";
@@ -254,16 +265,16 @@
if (Cools.isEmpty(wrkDetlLog)) {
return R.error("鏈煡鍒版暟鎹�");
}
- orderNo=wrkDetlLog.getOrderNo();
- }else {
- orderNo=wrkDetl.getOrderNo();
+ orderNo = wrkDetlLog.getOrderNo();
+ } else {
+ orderNo = wrkDetl.getOrderNo();
}
// List<Order> orders = orderService.selectorderNoL(batch);
- OrderDetl orderDetl = orderDetlService.selectOne(new EntityWrapper<OrderDetl>().eq("batch", batch).eq("order_no",orderNo));
- if (Cools.isEmpty(orderDetl)){
+ OrderDetl orderDetl = orderDetlService.selectOne(new EntityWrapper<OrderDetl>().eq("batch", batch).eq("order_no", orderNo));
+ if (Cools.isEmpty(orderDetl)) {
return R.error("鏈煡鍒版暟鎹�");
}
- if (!orderDetl.getQty$().equals("宸插畬鎴�")){
+ if (!orderDetl.getQty$().equals("宸插畬鎴�")) {
return R.error("浠诲姟鏈畬鎴�");
}
orderDetl.setSource(1);
@@ -280,14 +291,14 @@
@RequestMapping("/truss/order/auth")
@ManagerAuth(memo = "閫�搴擄紝1妤兼鏋堕��搴擄紝閫�搴撳崟閫�搴�")
- public R trussCombOrder(@RequestBody TrussCombParam combParam){
+ public R trussCombOrder(@RequestBody TrussCombParam combParam) {
mobileService.trussCombOrder(combParam, getUserId());
return R.ok("缁勬墭鎴愬姛");
}
@RequestMapping("/truss/comd/auth")
// @ManagerAuth(memo = "鎵嬪姩鍏ュ簱锛�2妤兼棤闇�妗佹灦鎵嬪姩鍏ュ簱 wms鍏ュ簱")
- public R PalletizingCompleteTwoFloorParam(@RequestBody PalletizingCompleteTwoFloorParam combParam){
+ public R PalletizingCompleteTwoFloorParam(@RequestBody PalletizingCompleteTwoFloorParam combParam) {
mobileService.PalletizingCompleteTwoFloorParam(combParam);
return R.ok("缁勬墭鎴愬姛");
}
@@ -315,14 +326,14 @@
@RequestMapping("/comb/auth")
@ManagerAuth(memo = "缁勬墭")
- public R comb(@RequestBody CombParam combParam){
+ public R comb(@RequestBody CombParam combParam) {
mobileService.comb(combParam, getUserId());
return R.ok("缁勬墭鎴愬姛");
}
@RequestMapping("/pack/get/auth")
@ManagerAuth
- public R packGet(@RequestParam String barcode){
+ public R packGet(@RequestParam String barcode) {
Pack pack = packService.selectByBarcode(barcode);
if (pack == null) {
return R.ok();
@@ -335,7 +346,7 @@
@RequestMapping("/pack/comb/auth")
@ManagerAuth(memo = "涓嬬嚎缁勬墭")
- public R packComb(@RequestBody CombParam combParam){
+ public R packComb(@RequestBody CombParam combParam) {
mobileService.packComb(combParam, getUserId());
return R.ok("缁勬墭鎴愬姛");
}
@@ -348,7 +359,7 @@
@Deprecated
public R pakoutQuery(@RequestParam(required = false) String barcode,
@RequestParam(required = false) Integer staNo,
- @RequestParam(required = false) String matnr){
+ @RequestParam(required = false) String matnr) {
if (Cools.isEmpty(barcode) && Cools.isEmpty(matnr)) {
return R.ok();
}
@@ -372,7 +383,7 @@
*/
@RequestMapping("/pakout/confirm/barcode/auth")
@ManagerAuth
- public R pakoutQueryByBarcode(@RequestParam(required = false) String barcode){
+ public R pakoutQueryByBarcode(@RequestParam(required = false) String barcode) {
if (Cools.isEmpty(barcode)) {
return R.ok();
}
@@ -389,7 +400,7 @@
// 鏍规嵁搴撲綅鐮佸拰鍟嗗搧鐮佹悳绱㈠晢鍝�
@RequestMapping("/mat/find/auth")
public R find(@RequestParam(required = false) String locNo
- , @RequestParam(required = false) String matnr){
+ , @RequestParam(required = false) String matnr) {
//List<ManLocDetl> manLocDetls = manLocDetlMapper.selectItem0(locNo, matnr);
ManLocDetl manLocDetl = manLocDetlMapper.selectLocNo0(locNo, matnr);
return R.ok(manLocDetl);
@@ -402,7 +413,7 @@
@RequestMapping("/pakout/confirm/pick/auth")
@ManagerAuth
public R pakoutQueryByBarcode(@RequestParam(required = false) Integer wrkNo
- , @RequestParam(required = false) String matnr){
+ , @RequestParam(required = false) String matnr) {
if (Cools.isEmpty(wrkNo)) {
return R.ok();
}
@@ -537,7 +548,7 @@
@RequestMapping("/adjust/auth")
@ManagerAuth(memo = "鐩樼偣")
- public R adjust(@RequestBody MobileAdjustParam combParam){
+ public R adjust(@RequestBody MobileAdjustParam combParam) {
mobileService.adjust(combParam, getUserId());
return R.ok("鐩樼偣鎴愬姛");
}
@@ -545,10 +556,10 @@
@PostMapping("/order/out/pakout/auth")
@ManagerAuth(memo = "璁㈠崟鍑哄簱")
public synchronized R pakoutByOrder(@RequestBody JSONObject param) {
- if(!param.containsKey("staNo") || !param.containsKey("orderNo")){
+ if (!param.containsKey("staNo") || !param.containsKey("orderNo")) {
return R.parse(BaseRes.PARAM);
}
- mobileService.pakoutByOrder(param,getUserId());
+ mobileService.pakoutByOrder(param, getUserId());
return R.ok("鍑哄簱鎴愬姛");
}
@@ -556,7 +567,7 @@
@ManagerAuth(memo = "鍑哄簱澶嶆牳纭")
public synchronized R pakoutFhqr(@RequestBody PdckqrParam param) {
// 鏍规嵁宸ヤ綔鍙风‘璁ゅ鏍�
- if(Cools.isEmpty(param) || Cools.isEmpty(param.getBarcode()) || Cools.isEmpty(param.getMaterials())){
+ if (Cools.isEmpty(param) || Cools.isEmpty(param.getBarcode()) || Cools.isEmpty(param.getMaterials())) {
return R.parse(BaseRes.PARAM);
}
return mobileService.pakoutFhqr(param);
@@ -566,7 +577,7 @@
@ManagerAuth(memo = "鐩樼偣鍑哄簱纭")
public synchronized R pdckqr(@RequestBody PdckqrParam param) {
// 鏍规嵁宸ヤ綔鍙风‘璁ゅ鏍�
- if(Cools.isEmpty(param) || Cools.isEmpty(param.getBarcode()) || Cools.isEmpty(param.getMaterials())){
+ if (Cools.isEmpty(param) || Cools.isEmpty(param.getBarcode()) || Cools.isEmpty(param.getMaterials())) {
return R.parse(BaseRes.PARAM);
}
return mobileService.pdckqr(param);
@@ -583,7 +594,7 @@
public synchronized R pdaWarehousingNow(@RequestBody PdaWarehousingNowParam param) {
// 鏍规嵁宸ヤ綔鍙风‘璁ゅ鏍�
- if(Cools.isEmpty(param) || Cools.isEmpty(param.getBarcode()) || Cools.isEmpty(param.getSourceStaNo())){
+ if (Cools.isEmpty(param) || Cools.isEmpty(param.getBarcode()) || Cools.isEmpty(param.getSourceStaNo())) {
return R.parse(BaseRes.PARAM);
}
return mobileService.pdaWarehousingNow(param, getUserId());
@@ -607,7 +618,7 @@
@PostMapping("/pdaGetMemo")
// @ManagerAuth(memo = "pda鑾峰彇鏈ㄧ璧勬枡")
- public synchronized List<Map<String, Object>> pdaGetMemo() {
+ public synchronized List<Map<String, Object>> pdaGetMemo() {
return mobileService.pdaGetMemo();
}
@@ -638,4 +649,53 @@
}
+
+ @GetMapping("/getReviewList/{orderNo}")
+ public synchronized R getReviewList(@PathVariable("orderNo") String orderNo) {
+ List<Review> reviewList = reviewService.selectList(new EntityWrapper<Review>().like("order_no", orderNo));
+ List<String> collect = reviewList.stream().map(Review::getOrderNo).collect(Collectors.toList());
+ return R.ok(collect);
+
+ }
+
+ @GetMapping("/getReviewDetlByOrderNo/{orderNo}")
+ public synchronized R getReviewDetlByOrderNo(@PathVariable("orderNo") String orderNo) {
+ List<ReviewDetl> reviewList = reviewDetlService.selectList(new EntityWrapper<ReviewDetl>().eq("order_no", orderNo).ne("inspect", 1));
+ return R.ok(reviewList);
+
+ }
+
+
+ @PostMapping("/reviewCheck")
+ @ManagerAuth(memo = "鍗曟嵁澶嶆牳")
+ public synchronized R reviewCheck(@RequestBody List<ReviewDetl> param) {
+ System.out.println(JSONObject.toJSONString(param));
+ if (Cools.isEmpty(param)) {
+ return R.parse("鍙傛暟鏈夎锛岃妫�鏌ュ弬鏁�");
+ }
+ for (ReviewDetl reviewDetl : param) {
+ if (!Cools.isEmpty(reviewDetl.getInspect()) && reviewDetl.getInspect() == 1) {
+ ReviewDetl reviewDetl1 = reviewDetlService.selectById(reviewDetl.getId());
+ reviewDetl1.setInspect(reviewDetl.getInspect());
+ reviewDetl1.setMemo(reviewDetl.getMemo());
+ reviewDetl1.setThreeCode(reviewDetl.getThreeCode());
+ reviewDetl1.setUpdateTime(new Date());
+ reviewDetlService.updateById(reviewDetl1);
+ Review review = reviewService.selectById(reviewDetl1.getOrderId());
+ review.setSettle(2L);
+ reviewService.updateById(review);
+ }
+ }
+ return R.ok();
+ }
+
+ @GetMapping("/getCheckUser")
+ public R getCheckUser() {
+ Set set = new HashSet<String>();
+ List<User> userList = userService.selectList(new EntityWrapper<User>().eq("status", 1).eq("role_id", 18L));
+ for (User user : userList) {
+ set.add(user.getUsername());
+ }
+ return R.ok(set);
+ }
}
diff --git a/src/main/java/com/zy/asrs/controller/ReviewController.java b/src/main/java/com/zy/asrs/controller/ReviewController.java
index 5d44631..bb93522 100644
--- a/src/main/java/com/zy/asrs/controller/ReviewController.java
+++ b/src/main/java/com/zy/asrs/controller/ReviewController.java
@@ -19,6 +19,7 @@
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.MediaType;
+import org.springframework.transaction.PlatformTransactionManager;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
@@ -41,6 +42,9 @@
@Autowired
private SnowflakeIdWorker snowflakeIdWorker;
+ @Autowired
+ private PlatformTransactionManager transactionManager;
+
@Resource
private ReviewDetlMapper reviewDetlMapper;
@@ -61,7 +65,7 @@
public void importOrder(MultipartFile multipartFile) throws IOException {
// 鑰冩牳鏁版嵁鐨勫垽閲嶄娇鐢╫rder_id,check_type鐨勭粍鍚堝敮涓�绱㈠紩瑙e喅
EasyExcel.read(multipartFile.getInputStream(), ImportReviewDto.class,
- new ImportReviewListener(snowflakeIdWorker, getUserId())).sheet().doReadSync();
+ new ImportReviewListener(transactionManager,reviewService, reviewDetlService, snowflakeIdWorker, getUserId())).sheet().doReadSync();
}
diff --git a/src/main/java/com/zy/asrs/entity/ReviewDetl.java b/src/main/java/com/zy/asrs/entity/ReviewDetl.java
index 5f667aa..5d3aab7 100644
--- a/src/main/java/com/zy/asrs/entity/ReviewDetl.java
+++ b/src/main/java/com/zy/asrs/entity/ReviewDetl.java
@@ -8,7 +8,6 @@
import com.core.common.Cools;
import com.core.common.SpringUtils;
import com.zy.asrs.service.BasBoxTypeService;
-import com.zy.asrs.service.OrderService;
import com.zy.common.utils.Synchro;
import com.zy.system.entity.User;
import com.zy.system.service.UserService;
@@ -29,21 +28,21 @@
/**
* ID
*/
- @ApiModelProperty(value= "ID")
+ @ApiModelProperty(value = "ID")
@TableId(value = "id", type = IdType.AUTO)
private Long id;
/**
* 璁㈠崟鍐呯爜
*/
- @ApiModelProperty(value= "璁㈠崟鍐呯爜")
+ @ApiModelProperty(value = "璁㈠崟鍐呯爜")
@TableField("order_id")
private Long orderId;
/**
* 鍗曟嵁缂栧彿
*/
- @ApiModelProperty(value= "鍗曟嵁缂栧彿")
+ @ApiModelProperty(value = "鍗曟嵁缂栧彿")
@TableField("order_no")
private String orderNo;
@@ -51,250 +50,250 @@
/**
* 鏁伴噺
*/
- @ApiModelProperty(value= "鏁伴噺")
+ @ApiModelProperty(value = "鏁伴噺")
private Double anfme;
/**
* 浣滀笟鏁伴噺
- *
- * 鍏ュ簱 : 缁勬墭瀹屾垚锛岀粍鎵樻。銆佸伐浣滄。銆佸叆搴撳畬鎴愭暟閲�
- * 鍑哄簱 : 宸ヤ綔妗c�佸嚭搴撳畬鎴愭暟閲�
+ * <p>
+ * 鍏ュ簱 : 缁勬墭瀹屾垚锛岀粍鎵樻。銆佸伐浣滄。銆佸叆搴撳畬鎴愭暟閲�
+ * 鍑哄簱 : 宸ヤ綔妗c�佸嚭搴撳畬鎴愭暟閲�
*/
- @ApiModelProperty(value= "浣滀笟鏁伴噺")
+ @ApiModelProperty(value = "浣滀笟鏁伴噺")
@TableField("work_qty")
private Double workQty;
/**
* 瀹屾垚鏁伴噺
- *
- * 鍏ュ簱 : qty 馃憜
- * 鍑哄簱 : qty 馃憜
+ * <p>
+ * 鍏ュ簱 : qty 馃憜
+ * 鍑哄簱 : qty 馃憜
*/
- @ApiModelProperty(value= "瀹屾垚鏁伴噺")
+ @ApiModelProperty(value = "瀹屾垚鏁伴噺")
private Double qty;
/**
* 鍟嗗搧缂栫爜
*/
- @ApiModelProperty(value= "鍟嗗搧缂栫爜")
+ @ApiModelProperty(value = "鍟嗗搧缂栫爜")
private String matnr;
/**
* 鍟嗗搧鍚嶇О
*/
- @ApiModelProperty(value= "鍟嗗搧鍚嶇О")
+ @ApiModelProperty(value = "鍟嗗搧鍚嶇О")
private String maktx;
/**
* 鎵瑰彿
*/
- @ApiModelProperty(value= "鎵瑰彿")
+ @ApiModelProperty(value = "鎵瑰彿")
private String batch;
/**
* 瑙勬牸
*/
- @ApiModelProperty(value= "瑙勬牸")
+ @ApiModelProperty(value = "瑙勬牸")
private String specs;
/**
* 鍨嬪彿
*/
- @ApiModelProperty(value= "鍨嬪彿")
+ @ApiModelProperty(value = "鍨嬪彿")
private String model;
/**
* 棰滆壊
*/
- @ApiModelProperty(value= "棰滆壊")
+ @ApiModelProperty(value = "棰滆壊")
private String color;
/**
* 鍝佺墝
*/
- @ApiModelProperty(value= "鍝佺墝")
+ @ApiModelProperty(value = "鍝佺墝")
private String brand;
/**
* 鍗曚綅
*/
- @ApiModelProperty(value= "鍗曚綅")
+ @ApiModelProperty(value = "鍗曚綅")
private String unit;
/**
* 鍗曚环
*/
- @ApiModelProperty(value= "鍗曚环")
+ @ApiModelProperty(value = "鍗曚环")
private Double price;
/**
* sku
*/
- @ApiModelProperty(value= "sku")
+ @ApiModelProperty(value = "sku")
private String sku;
/**
* 鍗曚綅閲�
*/
- @ApiModelProperty(value= "鍗曚綅閲�")
+ @ApiModelProperty(value = "鍗曚綅閲�")
private Double units;
/**
* 鏉$爜
*/
- @ApiModelProperty(value= "鏉$爜")
+ @ApiModelProperty(value = "鏉$爜")
private String barcode;
/**
* 浜у湴
*/
- @ApiModelProperty(value= "浜у湴")
+ @ApiModelProperty(value = "浜у湴")
private String origin;
/**
* 鍘傚 銆併�佹睙閾滐細鏆傚瓨搴撲綅鍙�
*/
- @ApiModelProperty(value= "鍘傚")
+ @ApiModelProperty(value = "鍘傚")
private String manu;
/**
* 鐢熶骇鏃ユ湡
*/
- @ApiModelProperty(value= "鐢熶骇鏃ユ湡")
+ @ApiModelProperty(value = "鐢熶骇鏃ユ湡")
@TableField("manu_date")
private String manuDate;
/**
* 鍝侀」鏁�
*/
- @ApiModelProperty(value= "鍝侀」鏁�")
+ @ApiModelProperty(value = "鍝侀」鏁�")
@TableField("item_num")
private String itemNum;
/**
* 瀹夊叏搴撳瓨閲�
*/
- @ApiModelProperty(value= "瀹夊叏搴撳瓨閲�")
+ @ApiModelProperty(value = "瀹夊叏搴撳瓨閲�")
@TableField("safe_qty")
private Double safeQty;
/**
* 閲嶉噺
*/
- @ApiModelProperty(value= "閲嶉噺")
+ @ApiModelProperty(value = "閲嶉噺")
private Double weight;
/**
* 闀垮害
*/
- @ApiModelProperty(value= "闀垮害")
+ @ApiModelProperty(value = "闀垮害")
private Double length;
/**
* 浣撶Н
*/
- @ApiModelProperty(value= "浣撶Н")
+ @ApiModelProperty(value = "浣撶Н")
private Double volume;
/**
* 涓夋柟缂栫爜
*/
- @ApiModelProperty(value= "涓夋柟缂栫爜")
+ @ApiModelProperty(value = "涓夋柟缂栫爜")
@TableField("three_code")
private String threeCode;
/**
* 渚涘簲鍟�
*/
- @ApiModelProperty(value= "渚涘簲鍟�")
+ @ApiModelProperty(value = "渚涘簲鍟�")
private String supp;
/**
* 渚涘簲鍟嗙紪鐮�
*/
- @ApiModelProperty(value= "渚涘簲鍟嗙紪鐮�")
+ @ApiModelProperty(value = "渚涘簲鍟嗙紪鐮�")
@TableField("supp_code")
private String suppCode;
/**
* 鏄惁鎵规 1: 鏄� 0: 鍚�
*/
- @ApiModelProperty(value= "鏄惁鎵规 1: 鏄� 0: 鍚� ")
+ @ApiModelProperty(value = "鏄惁鎵规 1: 鏄� 0: 鍚� ")
@TableField("be_batch")
private Integer beBatch;
/**
* 淇濊川鏈�
*/
- @ApiModelProperty(value= "淇濊川鏈�")
+ @ApiModelProperty(value = "淇濊川鏈�")
@TableField("dead_time")
private String deadTime;
/**
* 棰勮澶╂暟
*/
- @ApiModelProperty(value= "棰勮澶╂暟")
+ @ApiModelProperty(value = "棰勮澶╂暟")
@TableField("dead_warn")
private Integer deadWarn;
/**
* 鍒惰喘 1: 鍒堕�� 2: 閲囪喘 3: 澶栧崗 銆併�佹睙閾滐細鏄惁纭 1: 纭 2: 鏈‘璁�
*/
- @ApiModelProperty(value= "鍒惰喘 1: 鍒堕�� 2: 閲囪喘 3: 澶栧崗 ")
+ @ApiModelProperty(value = "鍒惰喘 1: 鍒堕�� 2: 閲囪喘 3: 澶栧崗 ")
private Integer source;
/**
* 瑕佹眰妫�楠� 1: 鏄� 0: 鍚�
*/
- @ApiModelProperty(value= "瑕佹眰妫�楠� 1: 鏄� 0: 鍚� ")
+ @ApiModelProperty(value = "瑕佹眰妫�楠� 1: 鏄� 0: 鍚� ")
private Integer inspect;
/**
* 鍗遍櫓鍝� 1: 鏄� 0: 鍚�
*/
- @ApiModelProperty(value= "鍗遍櫓鍝� 1: 鏄� 0: 鍚� ")
+ @ApiModelProperty(value = "鍗遍櫓鍝� 1: 鏄� 0: 鍚� ")
private Integer danger;
/**
* 鐘舵�� 1: 姝e父 0: 绂佺敤
*/
- @ApiModelProperty(value= "鐘舵�� 1: 姝e父 0: 绂佺敤 ")
+ @ApiModelProperty(value = "鐘舵�� 1: 姝e父 0: 绂佺敤 ")
private Integer status;
/**
* 娣诲姞浜哄憳
*/
- @ApiModelProperty(value= "娣诲姞浜哄憳")
+ @ApiModelProperty(value = "娣诲姞浜哄憳")
@TableField("create_by")
private Long createBy;
/**
* 娣诲姞鏃堕棿
*/
- @ApiModelProperty(value= "娣诲姞鏃堕棿")
+ @ApiModelProperty(value = "娣诲姞鏃堕棿")
@TableField("create_time")
- @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date createTime;
/**
* 淇敼浜哄憳
*/
- @ApiModelProperty(value= "淇敼浜哄憳")
+ @ApiModelProperty(value = "淇敼浜哄憳")
@TableField("update_by")
private Long updateBy;
/**
* 淇敼鏃堕棿
*/
- @ApiModelProperty(value= "淇敼鏃堕棿")
+ @ApiModelProperty(value = "淇敼鏃堕棿")
@TableField("update_time")
- @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date updateTime;
/**
* 澶囨敞
*/
- @ApiModelProperty(value= "澶囨敞")
+ @ApiModelProperty(value = "澶囨敞")
private String memo;
@ApiModelProperty(value = "閫�搴撴爣璁�")
@@ -304,14 +303,16 @@
/**
* 鍗蜂俊鎭疘D
*/
- @ApiModelProperty(value= "鍗蜂俊鎭疘D")
+ @ApiModelProperty(value = "鍗蜂俊鎭疘D")
@TableField("roll_up")
private Long rollUp;
- public String getStatus$(){
- if (null == this.status){ return null; }
- switch (this.status){
+ public String getStatus$() {
+ if (null == this.status) {
+ return null;
+ }
+ switch (this.status) {
case 1:
return "姝e父";
case 0:
@@ -321,43 +322,54 @@
}
}
- public String getCreateBy$(){
+ public String getCreateBy$() {
UserService service = SpringUtils.getBean(UserService.class);
User user = service.selectById(this.createBy);
- if (!Cools.isEmpty(user)){
+ if (!Cools.isEmpty(user)) {
return String.valueOf(user.getUsername());
}
return null;
}
- public String getCreateTime$(){
- if (Cools.isEmpty(this.createTime)){
+ public String getCreateTime$() {
+ if (Cools.isEmpty(this.createTime)) {
return "";
}
return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.createTime);
}
- public String getUpdateBy$(){
+ public String getUpdateBy$() {
UserService service = SpringUtils.getBean(UserService.class);
User user = service.selectById(this.updateBy);
- if (!Cools.isEmpty(user)){
+ if (!Cools.isEmpty(user)) {
return String.valueOf(user.getUsername());
}
return null;
}
- public String getUpdateTime$(){
- if (Cools.isEmpty(this.updateTime)){
+ public String getUpdateTime$() {
+ if (Cools.isEmpty(this.updateTime)) {
return "";
}
return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.updateTime);
}
- public String getQty$(){
- if (getAnfme().equals(getQty())){
+ public String getQty$() {
+ if (getAnfme().equals(getQty())) {
return "宸插畬鎴�";
}
return "鏈畬鎴�";
+ }
+
+ public String getInspect$() {
+ if (Cools.isEmpty(this.inspect)) {
+ return "鏈鏍�";
+ }
+ if (this.inspect == 1) {
+ return "宸插鏍�";
+ } else {
+ return "鏈鏍�";
+ }
}
public Double getEnableQty() {
@@ -374,10 +386,10 @@
Synchro.Copy(source, this);
}
- public String getBrand$(){
+ public String getBrand$() {
BasBoxTypeService basBoxTypeService = SpringUtils.getBean(BasBoxTypeService.class);
BasBoxType basBoxType = basBoxTypeService.selectOne(new EntityWrapper<BasBoxType>().eq("box_type", this.brand));
- if (!Cools.isEmpty(basBoxType)){
+ if (!Cools.isEmpty(basBoxType)) {
return String.valueOf(basBoxType.getBoxSpecs());
}
return this.brand;
diff --git a/src/main/java/com/zy/asrs/importexcle/ImportReviewDto.java b/src/main/java/com/zy/asrs/importexcle/ImportReviewDto.java
index 61d986e..f37c53a 100644
--- a/src/main/java/com/zy/asrs/importexcle/ImportReviewDto.java
+++ b/src/main/java/com/zy/asrs/importexcle/ImportReviewDto.java
@@ -11,18 +11,37 @@
@Data
public class ImportReviewDto {
- @ExcelProperty(value = "鍖呰缁勫彿/婧愬簱浣�",index = 0)
+ private Long orderId;
+
+ @ExcelProperty(value = "鍗曟嵁缂栧彿", index = 0)
private String column1;
- @ExcelProperty(value = "鍑哄簱鍗曞彿/鍗曟嵁绫诲瀷/瀹㈡埛鍚嶇О/澶囨敞/鐩爣搴撲綅",index = 1)
+ @ExcelProperty(value = "鐗╂枡缂栧彿", index = 1)
private String column2;
- @ExcelProperty(value = "鐩爣宸烽亾/瀹㈡埛鍚嶇О",index = 2)
+ @ExcelProperty(value = "鐗╂枡鍚嶇О", index = 2)
private String column3;
- @ExcelProperty(value = "澶囨敞",index = 3)
+ @ExcelProperty(value = "瑙勬牸", index = 3)
private String column4;
+ @ExcelProperty(value = "鍗曚綅", index = 4)
+ private String column5;
+
+ @ExcelProperty(value = "鍝佺骇", index = 5)
+ private String column6;
+
+ @ExcelProperty(value = "鎵规鍙�", index = 6)
+ private String column7;
+
+ @ExcelProperty(value = "鍗峰彿", index = 7)
+ private String column8;
+
+ @ExcelProperty(value = "鍑哄簱鏁伴噺", index = 8)
+ private Double column9;
+
+ @ExcelProperty(value = "鍑哄簱鏃ユ湡", index = 9)
+ private String column10;
}
diff --git a/src/main/java/com/zy/asrs/importexcle/ImportReviewListener.java b/src/main/java/com/zy/asrs/importexcle/ImportReviewListener.java
index 43991df..c052675 100644
--- a/src/main/java/com/zy/asrs/importexcle/ImportReviewListener.java
+++ b/src/main/java/com/zy/asrs/importexcle/ImportReviewListener.java
@@ -3,13 +3,19 @@
import com.alibaba.excel.context.AnalysisContext;
import com.alibaba.excel.event.AnalysisEventListener;
import com.alibaba.fastjson.JSON;
+import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.core.common.Cools;
+import com.core.common.DateUtils;
import com.core.common.SnowflakeIdWorker;
-import com.zy.asrs.entity.OrderDetl;
+import com.core.exception.CoolException;
+import com.zy.asrs.entity.Review;
+import com.zy.asrs.entity.ReviewDetl;
import com.zy.asrs.service.ReviewDetlService;
import com.zy.asrs.service.ReviewService;
import lombok.SneakyThrows;
import lombok.extern.slf4j.Slf4j;
+import org.springframework.transaction.PlatformTransactionManager;
+import org.springframework.transaction.TransactionStatus;
import java.util.*;
@@ -23,29 +29,32 @@
/**
* 姣忛殧1000鏉″瓨鍌ㄦ暟鎹簱锛屽疄闄呬娇鐢ㄤ腑鍙互3000鏉★紝鐒跺悗娓呯悊list 锛屾柟渚垮唴瀛樺洖鏀�
*/
- private static final int BATCH_COUNT = 400;
+ private static final int BATCH_COUNT = 2000;
private int count = 0;
- private String orderNo;
private long orderId;
- private long docTypeId;
List<ImportReviewDto> list = new ArrayList<>();
/**
* 鍋囪杩欎釜鏄竴涓狣AO锛屽綋鐒舵湁涓氬姟閫昏緫杩欎釜涔熷彲浠ユ槸涓�涓猻ervice銆傚綋鐒跺鏋滀笉鐢ㄥ瓨鍌ㄨ繖涓璞℃病鐢ㄣ��
*/
+ private final PlatformTransactionManager transactionManager;
private ReviewService reviewService;
private ReviewDetlService reviewDetlService;
private final SnowflakeIdWorker snowflakeIdWorker;
private final Long userId;
+ private TransactionStatus transactionStatus;
/**
* 濡傛灉浣跨敤浜唖pring,璇蜂娇鐢ㄨ繖涓瀯閫犳柟娉曘�傛瘡娆″垱寤篖istener鐨勬椂鍊欓渶瑕佹妸spring绠$悊鐨勭被浼犺繘鏉�
*/
- public ImportReviewListener(SnowflakeIdWorker snowflakeIdWorker, Long userId) {
+ public ImportReviewListener(PlatformTransactionManager transactionManager, ReviewService reviewService, ReviewDetlService reviewDetlService, SnowflakeIdWorker snowflakeIdWorker, Long userId) {
+ this.transactionManager = transactionManager;
+ this.reviewService = reviewService;
+ this.reviewDetlService = reviewDetlService;
this.snowflakeIdWorker = snowflakeIdWorker;
this.userId = userId;
}
@@ -57,28 +66,42 @@
public void invoke(ImportReviewDto data, AnalysisContext context) {
log.info("瑙f瀽鍒扮 {} 鏉℃暟鎹�:{}", ++count, JSON.toJSONString(data));
- // 鑾峰彇鍖呰缁勫彿锛坈olumn1锛�
- String packNo = data.getColumn1();
- if (Cools.isEmpty(packNo)) {
- log.warn("鍖呰缁勫彿涓虹┖锛岃烦杩囪琛岋紒");
+ if (Cools.isEmpty(data.getColumn2())) {
+ log.warn("瑙勬牸鍨嬪彿锛岃烦杩囪琛岋紒");
return;
}
- // 濡傛灉宸茬粡澶勭悊杩囪鍖呰缁勫彿锛屽垯璺宠繃
- if (uniquePackNos.contains(packNo)) {
- log.info("閲嶅鐨勫寘瑁呯粍鍙凤細{}锛岃烦杩�", packNo);
+ if (Cools.isEmpty(data.getColumn4())) {
+ log.info("閲嶅鐨勫寘瑁呯粍鍙凤細{}锛岃烦杩�", data.getColumn5());
return;
}
-
+ if (Cools.isEmpty(data.getColumn7())) {
+ log.info("閲嶅鐨勫寘瑁呯粍鍙凤細{}锛岃烦杩�", data.getColumn7());
+ return;
+ }
// 棣栨鍑虹幇锛岃褰曞苟澶勭悊
- uniquePackNos.add(packNo);
- list.add(data);
+ uniquePackNos.add(data.getColumn1());
- if (context.getCurrentRowNum() == 3) {
+ String time = DateUtils.convert(new Date(), DateUtils.yyyyMMddHHmmss_F);
+ Review review = reviewService.selectOne(new EntityWrapper<Review>().eq("order_no", data.getColumn1()));
+ if (review == null) {
+ review = new Review();
+ review.setUuid(String.valueOf(snowflakeIdWorker.nextId()));
+ review.setOrderNo(data.getColumn1());
+ review.setOrderTime(time);
+ review.setSettle(1L);
+ review.setStatus(1);
+ review.setCreateBy(userId);
+ review.setCreateTime(new Date());
- return;
+ reviewService.insert(review);
+ review = reviewService.selectOne(new EntityWrapper<Review>().eq("order_no", data.getColumn1()));
+ }else {
+ log.info("宸插瓨鍦ㄨ璁㈠崟锛歿}锛�", data.getColumn1());
+ throw new CoolException("璁㈠崟宸插瓨鍦紒");
}
-
+ data.setOrderId(review.getId());
+ list.add(data);
if (list.size() >= BATCH_COUNT) {
saveData();
list.clear();
@@ -106,47 +129,37 @@
*/
private void saveData() {
log.info("{}鏉℃暟鎹紝寮�濮嬪瓨鍌ㄦ暟鎹簱锛�", list.size());
- log.info("鍗曟嵁鍙凤細{}锛屾暟鎹細{},", orderNo, JSON.toJSONString(list));
+ log.info("鏁版嵁锛歿},", JSON.toJSONString(list));
- List<OrderDetl> orderDetlList = new ArrayList<>();
+ List<ReviewDetl> orderDetlList = new ArrayList<>();
for (ImportReviewDto importOrderDto : list) {
- OrderDetl orderDetl = new OrderDetl();
+ ReviewDetl orderDetl = new ReviewDetl();
- if (docTypeId == 24) {
- orderDetl.setSpecs(String.format("%07d", Integer.parseInt(importOrderDto.getColumn1()))); // 婧愬簱浣�
- if (importOrderDto.getColumn2() != null) {
- orderDetl.setModel(String.format("%07d", Integer.parseInt(importOrderDto.getColumn2()))); // 鐩爣搴撲綅
- }
- if (importOrderDto.getColumn3() != null) {
- orderDetl.setBeBatch(Integer.parseInt(importOrderDto.getColumn3())); // 宸烽亾
- }
- } else {
- orderDetl.setBrand(importOrderDto.getColumn1());
- orderDetl.setSupp(importOrderDto.getColumn3());
- orderDetl.setMemo(importOrderDto.getColumn4());
- }
+ orderDetl.setOrderNo(importOrderDto.getColumn1());
+ orderDetl.setMatnr(importOrderDto.getColumn2());
+ orderDetl.setMaktx(importOrderDto.getColumn3());
+ orderDetl.setSpecs(importOrderDto.getColumn4());
+ orderDetl.setUnit(importOrderDto.getColumn5());
+ //orderDetl.set(importOrderDto.getColumn6());
+ orderDetl.setBatch(importOrderDto.getColumn7());
+ orderDetl.setModel(importOrderDto.getColumn8());
+ orderDetl.setAnfme(importOrderDto.getColumn9());
+ orderDetl.setDeadTime(importOrderDto.getColumn10());
- orderDetl.setBatch("");
- orderDetl.setOrderId(orderId);
- orderDetl.setOrderNo(orderNo);
+ orderDetl.setOrderId(importOrderDto.getOrderId());
orderDetl.setCreateBy(9527L);
orderDetl.setCreateTime(new Date());
orderDetl.setUpdateBy(9527L);
orderDetl.setUpdateTime(new Date());
orderDetl.setStatus(1);
- orderDetl.setQty(0.0D);
- orderDetl.setAnfme(1.0);
orderDetlList.add(orderDetl);
}
// 鉁� 鍏抽敭鐐癸細鍒嗘壒鎻愪氦
- for (int i = 0; i < orderDetlList.size(); i += MAX_BATCH_SIZE) {
- int end = Math.min(i + MAX_BATCH_SIZE, orderDetlList.size());
- List<OrderDetl> batch = orderDetlList.subList(i, end);
- //reviewDetlService.batchDetls(batch);
+ for (ReviewDetl d : orderDetlList) {
+ reviewDetlService.insert(d);
}
-
log.info("瀛樺偍鏁版嵁搴撴垚鍔燂紒");
}
diff --git a/src/main/webapp/static/js/review/review.js b/src/main/webapp/static/js/review/review.js
index caea5f8..34e90b9 100644
--- a/src/main/webapp/static/js/review/review.js
+++ b/src/main/webapp/static/js/review/review.js
@@ -32,7 +32,7 @@
{type: 'numbers'},
{field: 'orderNo', title: '鍗曟嵁缂栧彿'},
{field: 'cstmrName', align: 'center',title: '瀹㈡埛鍚嶇О'},
- {align: 'center', title: '鏄庣粏', toolbar: '#tbLook', minWidth: 160, width: 160},
+ {align: 'center', title: '鏄庣粏', toolbar: '#tbLook', minWidth: 250, width: 250},
{field: 'createTime$', title: '鍒涘缓鏃堕棿', minWidth: 200, width: 200},
{field: 'settle$', align: 'center', title: '鐘舵��', templet: '#settleTpl', minWidth: 160, width: 160},
//{field: 'memo', align: 'center',title: '澶囨敞'},
@@ -207,7 +207,7 @@
layer.open({
type: 1,
title: false,
- area: '1020px',
+ area: '1220px',
offset: [top + 'px', (left - 530 + $a.outerWidth()) + 'px'],
shade: .01,
shadeClose: true,
@@ -229,10 +229,11 @@
{field: 'maktx', title: '浜у搧鍚嶇О'},
{field: 'specs', title: '瑙勬牸鍨嬪彿'},
{field: 'batch', title: '鎵规鍙�'},
- {field: 'color', title: '鍗峰彿'},
- {field: 'qty', title: '鍑哄簱鏁伴噺'},
+ {field: 'model', title: '鍗峰彿'},
+ {field: 'anfme', title: '鍑哄簱鏁伴噺'},
{field: 'deadTime', title: '鍑哄簱鏃ユ湡'},
- {field: 'source', title: '澶嶆牳鐘舵��'},
+ {field: 'inspect$', title: '澶嶆牳鐘舵��'},
+ {field: 'threeCode', title: '澶嶆牳浜�'},
{field: 'memo', title: '澶嶆牳澶囨敞'}
]],
request: {
diff --git a/src/main/webapp/views/review/review.html b/src/main/webapp/views/review/review.html
index 4ae1fcd..51dadcc 100644
--- a/src/main/webapp/views/review/review.html
+++ b/src/main/webapp/views/review/review.html
@@ -114,7 +114,7 @@
var formData = new FormData();
formData.append('file', file);
- fetch(baseUrl+'/importOrder', {
+ fetch(baseUrl+'/importReview', {
method: 'POST',
headers: {'token': localStorage.getItem('token')},
body: formData
@@ -162,7 +162,8 @@
<!-- <a class="layui-btn layui-btn-primary layui-border-blue layui-btn-xs btn-complete" lay-event="labelUp">涓婁紶鏍囩</a>-->
{{# } }}
{{# if (d.settle == 2) { }}
-<!-- <a class="layui-btn layui-btn-primary layui-border-blue layui-btn-xs btn-complete" lay-event="labelUp">涓婁紶鏍囩</a>-->
+ <a class="layui-btn layui-btn-danger layui-btn-xs btn-edit" lay-event="del">鍒犻櫎</a>
+ <!-- <a class="layui-btn layui-btn-primary layui-border-blue layui-btn-xs btn-complete" lay-event="labelUp">涓婁紶鏍囩</a>-->
<a class="layui-btn layui-btn-primary layui-border-blue layui-btn-xs btn-edit" lay-event="complete">瀹岀粨</a>
{{# } }}
{{# if (d.settle == 4 && d.tkType=='1') { }}
--
Gitblit v1.9.1