浏览代码

污渍,永远滴神!

Newspaper 1 年之前
父节点
当前提交
3e9fc67093

+ 16 - 2
huimv-admin/src/main/java/com/huimv/admin/controller/BillPersonnelAdmissionController.java

@@ -1,9 +1,14 @@
 package com.huimv.admin.controller;
 
 
+import cn.hutool.core.bean.BeanUtil;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.huimv.admin.common.utils.Result;
 import com.huimv.admin.common.utils.ResultCode;
+import com.huimv.admin.entity.BillGoodsInventory;
 import com.huimv.admin.entity.BillIsolate;
+import com.huimv.admin.entity.vo.BillAdmissionAndGoods;
+import com.huimv.admin.mapper.BillGoodsInventoryMapper;
 import com.huimv.admin.service.IBillPersonnelAdmissionService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.CrossOrigin;
@@ -19,6 +24,7 @@ import org.springframework.web.multipart.MultipartFile;
 import javax.annotation.Resource;
 import javax.servlet.http.HttpServletRequest;
 import java.io.IOException;
+import java.util.List;
 import java.util.Map;
 
 import javax.servlet.http.HttpServletRequest;
@@ -39,6 +45,8 @@ import java.util.Map;
 public class BillPersonnelAdmissionController {
     @Autowired
     private IBillPersonnelAdmissionService billPersonnelAdmissionService;
+    @Resource
+    private BillGoodsInventoryMapper billGoodsInventoryMapper;
 
     @PostMapping("/addAdmission")
     public Result addAdmission(HttpServletRequest httpServletRequest, @RequestParam("admissionType") String admissionType,
@@ -56,8 +64,9 @@ public class BillPersonnelAdmissionController {
                                @RequestParam("destName") String destName,
                                @RequestParam(value = "carNum",required = false) String carNum,
                                @RequestParam(value = "source",required = false) String source,
+                               @RequestParam(value = "goods",required = false) String goods,
                                @RequestParam("farmId") String farmId) throws IOException {
-        return billPersonnelAdmissionService.addAdmission(httpServletRequest,admissionType,vistitType,userName,phone,workName,papersType,papersCode,imgUrl,img,vistitDate,vistitReson,destId,destName,farmId,carNum,source);
+        return billPersonnelAdmissionService.addAdmission(httpServletRequest,admissionType,vistitType,userName,phone,workName,papersType,papersCode,imgUrl,img,vistitDate,vistitReson,destId,destName,farmId,carNum,source,goods);
     }
 
     @PostMapping("/listPersonalAdmission")
@@ -87,7 +96,12 @@ public class BillPersonnelAdmissionController {
 
     @PostMapping("/getById")
     public Result getById(@RequestBody Map<String, String> paramsMap){
-        return new Result(ResultCode.SUCCESS,billPersonnelAdmissionService.getById(paramsMap.get("id")));
+        BillPersonnelAdmission billPersonnelAdmission = billPersonnelAdmissionService.getById(paramsMap.get("id"));
+        BillAdmissionAndGoods billAdmissionAndGoods = new BillAdmissionAndGoods();
+        BeanUtil.copyProperties(billPersonnelAdmission,billAdmissionAndGoods);
+        List<BillGoodsInventory> billGoodsInventories = billGoodsInventoryMapper.selectList(new QueryWrapper<BillGoodsInventory>().eq("bill_admission", paramsMap.get("id")));
+        billAdmissionAndGoods.setGoods(billGoodsInventories);
+        return new Result(ResultCode.SUCCESS,billAdmissionAndGoods);
     }
 
     @Autowired

+ 5 - 0
huimv-admin/src/main/java/com/huimv/admin/entity/BillGoodsInventory.java

@@ -32,11 +32,16 @@ public class BillGoodsInventory implements Serializable {
      */
     private String goodsType;
 
+    private String goodsTypeName;
+
     /**
      * 物资数量
      */
     private String goodsNums;
 
+    private String goodsName;
+
+
     /**
      * 申请单id
      */

+ 3 - 1
huimv-admin/src/main/java/com/huimv/admin/service/IBillPersonnelAdmissionService.java

@@ -1,6 +1,7 @@
 package com.huimv.admin.service;
 
 import com.huimv.admin.common.utils.Result;
+import com.huimv.admin.entity.BillGoodsInventory;
 import com.huimv.admin.entity.BillIsolate;
 import com.huimv.admin.common.utils.Result;
 import com.huimv.admin.entity.BillPersonnelAdmission;
@@ -10,6 +11,7 @@ import org.springframework.web.multipart.MultipartFile;
 import javax.annotation.Resource;
 import javax.servlet.http.HttpServletRequest;
 import java.io.IOException;
+import java.util.List;
 import java.util.Map;
 
 import javax.servlet.http.HttpServletRequest;
@@ -44,7 +46,7 @@ public interface IBillPersonnelAdmissionService extends IService<BillPersonnelAd
     Result listByIdClean(HttpServletRequest httpServletRequest, Map<String,String> paramsMap);
     Result editClean(HttpServletRequest httpServletRequest, Map<String,String> paramsMap) throws ParseException;
     Result editDry(HttpServletRequest httpServletRequest, Map<String,String> paramsMap) throws ParseException;
-    Result addAdmission(HttpServletRequest httpServletRequest, String admissionType, String vistitType, String userName, String phone, String workName, String papersType, String papersCode, MultipartFile imgUrl,String img, String vistitDate, String vistitReson, String destId, String destName, String farmId, String carNum,String source) throws IOException;
+    Result addAdmission(HttpServletRequest httpServletRequest, String admissionType, String vistitType, String userName, String phone, String workName, String papersType, String papersCode, MultipartFile imgUrl, String img, String vistitDate, String vistitReson, String destId, String destName, String farmId, String carNum, String source, String goods) throws IOException;
 
     Result listPersonalAdmission(HttpServletRequest httpServletRequest, Map<String, String> paramsMap);
 

+ 46 - 5
huimv-admin/src/main/java/com/huimv/admin/service/impl/BillPersonnelAdmissionServiceImpl.java

@@ -1,14 +1,19 @@
 package com.huimv.admin.service.impl;
 
+import cn.hutool.core.bean.BeanUtil;
 import cn.hutool.core.util.ObjectUtil;
+import cn.hutool.json.JSONUtil;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.toolkit.StringUtils;
+import com.fasterxml.jackson.core.type.TypeReference;
+import com.fasterxml.jackson.databind.ObjectMapper;
 import com.huimv.admin.common.token.TokenSign;
 import com.huimv.admin.common.utils.DataUill;
 import com.huimv.admin.common.utils.Result;
 import com.huimv.admin.common.utils.ResultCode;
 import com.huimv.admin.entity.*;
+import com.huimv.admin.entity.vo.BillAdmissionAndGoods;
 import com.huimv.admin.entity.vo.CleanAndDryVo2;
 import com.huimv.admin.mapper.*;
 import cn.hutool.core.date.DateTime;
@@ -76,10 +81,12 @@ public class BillPersonnelAdmissionServiceImpl extends ServiceImpl<BillPersonnel
     private UploadImage uploadImage;
     @Autowired
     private BillDryMapper dryMapper;
+    @Resource
+    private BillGoodsInventoryMapper billGoodsInventoryMapper;
 
     @Override
     @Transactional(rollbackFor = Exception.class)
-    public Result addAdmission(HttpServletRequest httpServletRequest, String admissionType, String vistitType, String userName, String phone, String workName, String papersType, String papersCode, MultipartFile imgUrl, String img, String vistitDate, String vistitReson, String destId, String destName, String farmId, String carNum, String source) throws IOException {
+    public Result addAdmission(HttpServletRequest httpServletRequest, String admissionType, String vistitType, String userName, String phone, String workName, String papersType, String papersCode, MultipartFile imgUrl, String img, String vistitDate, String vistitReson, String destId, String destName, String farmId, String carNum, String source,String goods) throws IOException {
         Integer userId = TokenSign.getMemberIdByJwtToken(httpServletRequest);
         if (!PhoneNumberValidator.isValidPhoneNumber(phone)) {
             return new Result(10001, "手机号格式错误!", false);
@@ -141,6 +148,23 @@ public class BillPersonnelAdmissionServiceImpl extends ServiceImpl<BillPersonnel
         baseProcessMapper.insert(baseProcess);
         billPersonnelAdmission.setProcessId(baseProcess.getId());
         billPersonnelAdmissionMapper.insert(billPersonnelAdmission);
+        if (ObjectUtil.isNotEmpty(goods)){
+            ObjectMapper objectMapper = new ObjectMapper();
+            List<BillGoodsInventory> admissionAndGoods = objectMapper.readValue(goods, new TypeReference<List<BillGoodsInventory>>() {});
+            for (BillGoodsInventory good : admissionAndGoods) {
+                good.setBillAdmission(billPersonnelAdmission.getId());
+                if (Integer.parseInt(destId) <= 50){
+                    BaseLocation baseLocation1 = baseLocationMapper.selectOne(new QueryWrapper<BaseLocation>().eq("vistit_type", vistitType).eq("location_type", 2).eq("parent_id",1));
+                    good.setCurrentLocation(baseLocation1.getLocationName());
+                    good.setCurrentLocationId(baseLocation1.getId());
+                }else {
+                    BaseLocation baseLocation2 = baseLocationMapper.selectOne(new QueryWrapper<BaseLocation>().eq("vistit_type", vistitType).eq("location_type", 3).eq("parent_id",1));
+                    good.setCurrentLocation(baseLocation2.getLocationName());
+                    good.setCurrentLocationId(baseLocation2.getId());
+                }
+                billGoodsInventoryMapper.insert(good);
+            }
+        }
         return Result.SUCCESS();
     }
 
@@ -218,22 +242,34 @@ public class BillPersonnelAdmissionServiceImpl extends ServiceImpl<BillPersonnel
             baseProcess.setUpdateDate(baseProcess.getUpdateDate() + "," + LocalDateTime.now().format(dateTimeFormatter));
         }
         if (type.equals("0")) {
+            String[] split = baseProcess.getCurrentStatus().split(",");
+            split[split.length-1]="2";
             //拒绝
             billPersonnelAdmission.setBillStatus(2);
             baseProcess.setProcessType(2);
+            baseProcess.setCurrentStatus(String.join(",",split));
         } else {
             //通过
             billPersonnelAdmission.setBillStatus(1);
             //获取pcr位置
-            String laseLocationId = baseProcess.getCurrentLocationId();
+            String locationId = baseProcess.getCurrentLocationId();
+            String[] strings = locationId.split(",");
+            String laseLocationId = strings[strings.length-1];
             BaseLocation laseLocation = baseLocationMapper.selectById(laseLocationId);
             BaseLocation baseLocation = baseLocationMapper.selectById(laseLocation.getNextId());
             if (userType == 3) {
+                String[] split = baseProcess.getCurrentStatus().split(",");
+                split[split.length-1]="1";
                 if (locationIds.contains(billPersonnelAdmission.getDestId())) {
-                    baseProcess.setCurrentStatus("1");
+                    baseProcess.setCurrentStatus(String.join(",",split));
                     baseProcess.setProcessType(1);
                 } else {
-                    baseProcess.setCurrentStatus("1,0");
+                    StringBuilder result = new StringBuilder();
+                    for (String element : split) {
+                        result.append(element).append(",");
+                    }
+                    result.append("0");
+                    baseProcess.setCurrentStatus(result.toString());
                     baseProcess.setCurrentLocation(baseProcess.getCurrentLocation() + "," + baseLocation.getLocationName());
                     baseProcess.setCurrentLocationId(baseProcess.getCurrentLocationId() + "," + baseLocation.getId());
                     BillPcr billPcr = new BillPcr();
@@ -289,7 +325,12 @@ public class BillPersonnelAdmissionServiceImpl extends ServiceImpl<BillPersonnel
         String type = paramsMap.get("type");
         String id = paramsMap.get("id");
         if (type.equals("0")) {
-            return new Result(ResultCode.SUCCESS, billPersonnelAdmissionMapper.selectById(id));
+            BillPersonnelAdmission billPersonnelAdmission = billPersonnelAdmissionMapper.selectById(id);
+            BillAdmissionAndGoods billAdmissionAndGoods = new BillAdmissionAndGoods();
+            BeanUtil.copyProperties(billPersonnelAdmission,billAdmissionAndGoods);
+            List<BillGoodsInventory> billGoodsInventories = billGoodsInventoryMapper.selectList(new QueryWrapper<BillGoodsInventory>().eq("bill_admission", id));
+            billAdmissionAndGoods.setGoods(billGoodsInventories);
+            return new Result(ResultCode.SUCCESS,billAdmissionAndGoods);
         } else if (type.equals("1")) {
             return new Result(ResultCode.SUCCESS, billPcrMapper.selectById(id));
         } else if (type.equals("2")) {