Kaynağa Gözat

Merge branch 'master' of http://git.dongkesoft.com:9001/iBOSS-2.0-Mini/iboss-server-mdm

hongxudong 1 yıl önce
ebeveyn
işleme
e565f2c1df

+ 21 - 0
src/main/java/com/dk/mdm/controller/mst/StaffController.java

@@ -247,4 +247,25 @@ public class StaffController {
         return staffService.logout(param);
         return staffService.logout(param);
     }
     }
 
 
+    /**
+     * @desc   : 生成幽灵标识的数据
+     * @author : 常皓宁
+     * @date   : 2024/6/19 10:53
+     */
+    @ApiOperation(value = "生成幽灵标识的数据", notes = "生成幽灵标识的数据")
+    @PostMapping({"insert_flg_ghost_staff"})
+    public ResponseResultVO<?> insertGhostStaff(@RequestBody StaffVO staffVO) {
+        return staffService.insertGhostStaff(staffVO);
+    }
+
+    /**
+     * @desc   : 删除幽灵标识数据
+     * @author : 常皓宁
+     * @date   : 2024/6/20 8:51
+     */
+    @ApiOperation(value = "删除幽灵标识数据", notes = "删除幽灵标识数据")
+    @PostMapping({"delete_flg_ghost_staff"})
+    public ResponseResultVO<?> deleteGhostStaff(@RequestBody StaffVO staffVO) {
+        return staffService.deleteGhostStaff(staffVO);
+    }
 }
 }

+ 2 - 2
src/main/java/com/dk/mdm/mapper/ivt/OutboundItemMapper.xml

@@ -407,8 +407,8 @@ sys.f_remove_zero(out_qty) as out_qty, out_amt, sys.f_remove_zero(return_qty) as
                t.sku_id,
                t.sku_id,
                tmgs.sku_images,
                tmgs.sku_images,
                tmgs.flg_sub_unit AS "flgSubUnit",
                tmgs.flg_sub_unit AS "flgSubUnit",
-               t.outing_box ,
-               t.outing_piece ,
+               t.outing_box + t.out_box  as outing_box,
+               sys.f_remove_zero(t.outing_piece + t.out_piece)  as outing_piece,
                t.out_box ,
                t.out_box ,
                t.out_piece ,
                t.out_piece ,
                tmgs.price_standard AS "priceStandard",
                tmgs.price_standard AS "priceStandard",

+ 7 - 0
src/main/java/com/dk/mdm/mapper/mst/StaffMapper.java

@@ -60,5 +60,12 @@ public interface StaffMapper extends BaseMapper<Staff>{
      */
      */
     StaffResponse selectByUuId(StaffQuery staffQuery);
     StaffResponse selectByUuId(StaffQuery staffQuery);
 
 
+    /**
+     * @desc   : 删除幽灵标识数据
+     * @author : 常皓宁
+     * @date   : 2024/6/20 8:55
+     */
+    int deleteGhostStaff(StaffQuery staffQuery);
+
 }
 }
 
 

+ 10 - 0
src/main/java/com/dk/mdm/mapper/mst/StaffMapper.xml

@@ -247,4 +247,14 @@
             AND staff_code = #{staffCode}
             AND staff_code = #{staffCode}
         </if>
         </if>
     </select>
     </select>
+
+    <!-- 删除幽灵标识数据-->
+    <delete id="deleteGhostStaff">
+        DELETE
+        FROM dkic_b.t_mst_staff
+        where staff_name = #{staffName}
+          and staff_phone = #{staffPhone}
+          and cp_id = #{cpId}
+          and flg_ghost = true
+    </delete>
 </mapper>
 </mapper>

+ 21 - 3
src/main/java/com/dk/mdm/service/ivt/outbound/OutboundSaleOrderService.java

@@ -54,6 +54,7 @@ import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.transaction.annotation.Transactional;
 
 
 import java.math.BigDecimal;
 import java.math.BigDecimal;
+import java.math.RoundingMode;
 import java.time.LocalDate;
 import java.time.LocalDate;
 import java.util.HashMap;
 import java.util.HashMap;
 import java.util.List;
 import java.util.List;
@@ -208,6 +209,13 @@ public class OutboundSaleOrderService extends BaseService<Outbound> {
             //region  过滤出不够出库的每条明细数量  ------新建出库中数据
             //region  过滤出不够出库的每条明细数量  ------新建出库中数据
             List<OutboundItemVO> outboundIngList = outboundVO.getItemList().stream().filter(it -> it.getNotEnoughInventoryQty()!=null && it.getNotEnoughInventoryQty().compareTo(BigDecimal.ZERO)>0).collect(Collectors.toList());
             List<OutboundItemVO> outboundIngList = outboundVO.getItemList().stream().filter(it -> it.getNotEnoughInventoryQty()!=null && it.getNotEnoughInventoryQty().compareTo(BigDecimal.ZERO)>0).collect(Collectors.toList());
             if(outboundIngList != null && outboundIngList.size()>0){
             if(outboundIngList != null && outboundIngList.size()>0){
+                //赋值箱片
+                for (OutboundItemVO outboundItemVO : outboundIngList) {
+                    //箱
+                    outboundItemVO.setOutingBox(Integer.valueOf(outboundItemVO.getOutingQty().divide(outboundItemVO.getPackBox(),RoundingMode.DOWN).toString()) );
+                    //片
+                    outboundItemVO.setOutingPiece(outboundItemVO.getOutingQty().remainder(outboundItemVO.getPackBox()));
+                }
                 outboundVO.setFlgAutoHandle(false);
                 outboundVO.setFlgAutoHandle(false);
                 outboundVO.setItemList(outboundIngList);
                 outboundVO.setItemList(outboundIngList);
                 //销售出库新建
                 //销售出库新建
@@ -217,9 +225,19 @@ public class OutboundSaleOrderService extends BaseService<Outbound> {
 
 
             //region  库存够扣减的明细  -----------新建已出库数据并扣减库存
             //region  库存够扣减的明细  -----------新建已出库数据并扣减库存
             //销售出库新建
             //销售出库新建
-            outboundVO.setFlgAutoHandle(true);
-            outboundVO.setItemList(itemList);
-            this.saleOrderOutboundInsert(outboundVO,true);
+            if (itemList!=null && itemList.size() > 0) {
+                for (OutboundItemVO outboundItemVO : itemList) {
+                    if(outboundItemVO.getSkuId()!=null){ //过滤外协品 外协品没有箱片
+                        //箱
+                        outboundItemVO.setOutBox(Integer.valueOf(outboundItemVO.getOutingQty().divide(outboundItemVO.getPackBox(),RoundingMode.DOWN).toString()) );
+                        //片
+                        outboundItemVO.setOutPiece(outboundItemVO.getOutingQty().remainder(outboundItemVO.getPackBox()));
+                    }
+                 }
+                outboundVO.setFlgAutoHandle(true);
+                outboundVO.setItemList(itemList);
+                this.saleOrderOutboundInsert(outboundVO, true);
+            }
             //endregion
             //endregion
 
 
         }
         }

+ 65 - 0
src/main/java/com/dk/mdm/service/mst/StaffService.java

@@ -864,4 +864,69 @@ public class StaffService extends BaseService<Staff> {
 //        this.updateByUuid(new Staff().setStaffId(param.get("staffId").toString()).setFlgCanLogin(false));
 //        this.updateByUuid(new Staff().setStaffId(param.get("staffId").toString()).setFlgCanLogin(false));
         return ResponseResultUtil.success(true);
         return ResponseResultUtil.success(true);
     }
     }
+
+
+    /**
+     * @desc   : 生成幽灵标识的数据
+     * @author : 常皓宁
+     * @date   : 2024/6/19 10:53
+     */
+    @Transactional(
+            rollbackFor = {Exception.class}
+    )
+    public ResponseResultVO<?> insertGhostStaff(StaffVO staffVO) {
+        // 转化实体
+        Staff staff = staffConvert.convertToPo(staffVO);
+        StaffQuery staffQuery = new StaffQuery();
+        staffQuery.setStaffCode(staff.getStaffCode());
+        staffQuery.setCpId(staff.getCpId());
+        List<StaffResponse> staffResponses = staffMapper.selectByCond(staffQuery);
+        if (staffResponses == null || staffResponses.size() == 0) {
+            return ResponseResultUtil.error(-200,"绑定员工不存在");
+        }else {
+            for (StaffResponse staffResponse:staffResponses){
+                // 获取编码和主键UuId
+                Map<String, Object> codeMap = commonService.getUniqueNoteCode(
+                        Constant.docNameConstant.STAFF.getName(), staff.getCpId(), true);
+                staff.setStaffId(codeMap.get("outId").toString());
+                staff.setStaffCode(codeMap.get("outNote").toString());
+                staff.setStaffName(staff.getStaffName());
+                staff.setStaffPhone(staff.getStaffPhone());
+                staff.setOrgId(staffResponse.getOrgId());
+                staff.setRoleIds(staffResponse.getRoleIds());
+                staff.setHrStatus(staffResponse.getHrStatus());
+                staff.setFlgCanLogin(staffResponse.getFlgCanLogin());
+                staff.setWxUserId(staff.getWxUserId());
+                staff.setLoginType(staffResponse.getLoginType());
+                staff.setFlgInit(false);
+                staff.setFlgGhost(true);
+                super.insert(staff);
+            }
+            return ResponseResultUtil.success();
+        }
+    }
+
+    /**
+     * @desc   : 删除幽灵标识数据
+     * @author : 常皓宁
+     * @date   : 2024/6/19 10:53
+     */
+    @Transactional(
+            rollbackFor = {Exception.class}
+    )
+    public ResponseResultVO<?> deleteGhostStaff(StaffVO staffVO) {
+        // 转化实体
+        Staff staff = staffConvert.convertToPo(staffVO);
+        StaffQuery staffQuery = new StaffQuery();
+        staffQuery.setStaffName(staff.getStaffName());
+        staffQuery.setStaffPhone(staff.getStaffPhone());
+        staffQuery.setCpId(staff.getCpId());
+        int a = staffMapper.deleteGhostStaff(staffQuery);
+        if (a > 0){
+            return ResponseResultUtil.success();
+        }
+        else{
+            return ResponseResultUtil.error(-200,"绑定员工不存在");
+        }
+    }
 }
 }

+ 1 - 1
src/main/java/com/dk/mdm/service/sale/OrderService.java

@@ -258,7 +258,7 @@ public class OrderService extends BaseService<Order> {
         orderVO.setOrderId(codeMap.get("outId").toString()).setOrderNo(codeMap.get("outNote").toString())
         orderVO.setOrderId(codeMap.get("outId").toString()).setOrderNo(codeMap.get("outNote").toString())
                 .setOrderType(Constant.DocumentType.ORDER.getName());
                 .setOrderType(Constant.DocumentType.ORDER.getName());
         // 转化实体
         // 转化实体
-        Order order = orderConvert.convertToPo(orderVO);
+         Order order = orderConvert.convertToPo(orderVO);
         // 订单总单保存
         // 订单总单保存
         super.insert(order);
         super.insert(order);