futian.liu
2023-12-02 edc87e2fc3760cd7d1230bc058acf5620ea2c465
consum-base/src/main/java/com/consum/base/service/impl/UsingFormBackServiceImpl.java
@@ -19,11 +19,15 @@
import com.consum.base.pojo.response.UsingFormBackModelInfo;
import com.consum.base.pojo.response.UsingFormBackVO;
import com.consum.base.service.BaseCategoryServiceImpl;
import com.consum.base.service.FinSysTenantDepartmentService;
import com.consum.base.service.LWhFormTransferService;
import com.consum.base.service.UsingFormBackGoodsService;
import com.consum.base.service.UsingFormBackModelService;
import com.consum.base.service.UsingFormBackService;
import com.consum.model.po.BaseCategory;
import com.consum.model.po.FinSysTenantDepartment;
import com.consum.model.po.FinSysTenantUser;
import com.consum.model.po.LWhFormTransfer;
import com.consum.model.po.UsingFormBack;
import com.consum.model.po.UsingFormBackGoods;
import com.consum.model.po.UsingFormBackModel;
@@ -59,13 +63,20 @@
    private UsingFormBackModelService usingFormBackModelService;
    @Autowired
    private UsingFormBackGoodsService usingFormBackGoodsService;
    @Autowired
    private FinSysTenantDepartmentService finSysTenantDepartmentService;
    @Autowired
    private LWhFormTransferService lWhFormTransferService;
    @Override
    public void add(UsingFormBackParam usingFormBackParam, FinSysTenantUser sysInfo) {
        Long departmentId = usingFormBackParam.getDepartmentId();
        String departmentName = usingFormBackParam.getDepartmentName();
        FinSysTenantDepartment department = finSysTenantDepartmentService.getById(departmentId);
        if (department == null) {
            throw new RuntimeException("部门不存在");
        }
        String departmentName = department.getName();
        Long operatorId = usingFormBackParam.getOperatorId();
        String operatorName = usingFormBackParam.getOperatorName();
        Long backTime = usingFormBackParam.getDealTime();
@@ -93,8 +104,12 @@
            usingFormBackGoods.setClassification(classification);
            usingFormBackGoods.setTransBusinessId(transBusinessId);
            usingFormBackGoods.setBusinessFormCode(businessFormCode);
//            usingFormBackGoods.setTransOutWarehouseType();
//            usingFormBackGoods.setTransOutWarehouseId();
            LWhFormTransfer lWhFormTransfer = lWhFormTransferService.selectById(transBusinessId);
            Integer outWarehouseType = lWhFormTransfer.getOutWarehouseType();
            Long outWarehouseId = lWhFormTransfer.getOutWarehouseId();
            usingFormBackGoods.setTransOutWarehouseType(outWarehouseType);
            usingFormBackGoods.setTransOutWarehouseId(outWarehouseId);
            usingFormBackModelService.insert(usingFormBackGoods);
            for (baseGoodModel model : backingGoodsInfo.getModels()) {
@@ -180,7 +195,7 @@
            map.put("agencyId", agencyId);
        }
        if (StringUtils.isNotEmpty(createName)) {
            sql.append("AND ufb.CREATE_NAME = :createName ");
            sql.append("AND ufb.OPERATOR_NAME = :createName ");
            map.put("createName", createName);
        }
        sql.append("ORDER BY ufb.CREATE_TIME DESC ");
@@ -194,7 +209,8 @@
            Long id = usingFormBackVO.getId();
            StringBuilder countSql = new StringBuilder("SELECT \n"
                + "\tufbg.BASE_GOODS_TEMPLATE_NAME,\n"
                + "\tsum(ufbm.COUNTS) count\n"
                + "\tsum(ufbm.COUNTS) count,\n"
                + "\tufbm.UNIT\n"
                + "FROM\n"
                + "\tusing_form_back_goods ufbg\n"
                + "\tLEFT JOIN using_form_back_model ufbm ON ufbg.ID = ufbm.USING_FORM_BACK_GOODS_ID\n"
@@ -350,7 +366,7 @@
            map.put("agencyId", agencyId);
        }
        if (StringUtils.isNotEmpty(createName)) {
            sql.append("AND ufb.CREATE_NAME = :createName ");
            sql.append("AND ufb.OPERATOR_NAME = :createName ");
            map.put("createName", createName);
        }
        sql.append("ORDER BY ufb.CREATE_TIME DESC ");
@@ -373,9 +389,9 @@
        UsingFormBack usingFormBack = new UsingFormBack();
        usingFormBack.setId(IdUtil.generateId());
        usingFormBack.setBusinessFormCode(codeGeneratorService.createBusinessFormCode(CodeGeneratorEnum.GOBACK));
//        usingFormBack.setOutWarehouseType();
//        usingFormBack.setOutWarehouseId();
//        usingFormBack.setOutWarehouseName();
        usingFormBack.setOutWarehouseType(1);
        usingFormBack.setOutWarehouseId(departmentId);
        usingFormBack.setOutWarehouseName(departmentName);
        String tenantId = sysInfo.getTenantId();
        String tenantName = sysInfo.getTenantName();
@@ -384,9 +400,14 @@
        usingFormBack.setCreateTime(DateUtils.getDateTimeNumber(System.currentTimeMillis()));
        usingFormBack.setStates(1);
        usingFormBack.setDepartmentId(departmentId);
        usingFormBack.setDepartmentName(departmentName);
        usingFormBack.setOperatorId(operatorId);
        Long sysDeptId = sysInfo.getSysDeptId();
        FinSysTenantDepartment department = finSysTenantDepartmentService.getById(sysDeptId);
        if (department == null) {
            throw new RuntimeException("部门不存在");
        }
        usingFormBack.setDepartmentId(department.getId());
        usingFormBack.setDepartmentName(department.getName());
        usingFormBack.setOperatorId(sysInfo.getId());
        usingFormBack.setOperatorName(operatorName);
        usingFormBack.setDealTime(backTime);
        usingFormBack.setProcureDoc(procureDoc);