guoyujie
22 分钟以前 d5bb894f9be2e0a3b62d475b60b44f2ab138528c
north-glass-erp/src/main/java/com/example/erp/service/mm/MaterialStoreService.java
@@ -2,10 +2,12 @@
import com.baomidou.dynamic.datasource.annotation.DS;
import com.example.erp.entity.mm.MaterialStore;
import com.example.erp.entity.userInfo.Log;
import com.example.erp.entity.userInfo.SysError;
import com.example.erp.mapper.mm.BasicWarehouseTypeMapper;
import com.example.erp.mapper.mm.MaterialInventoryMapper;
import com.example.erp.mapper.mm.MaterialStoreMapper;
import com.example.erp.service.userInfo.LogService;
import com.example.erp.service.userInfo.SysErrorService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -27,9 +29,11 @@
    BasicWarehouseTypeMapper basicWarehouseTypeMapper;
    @Autowired
    SysErrorService sysErrorService;
    @Autowired
    LogService logService;
    public Boolean saveMaterialStore(Map<String,Object> object) {
        boolean saveState = true;
    public String saveMaterialStore(Map<String,Object> object) {
        String saveState = "true";
        //设置回滚点
        Object savePoint = TransactionAspectSupport.currentTransactionStatus().createSavepoint();
        try {
@@ -54,16 +58,31 @@
            if (object.get("height") != null) {
                height = Double.parseDouble(object.get("height").toString());
            }
            Log log = new Log();
            log.setOperatorId(object.get("userId").toString());
            log.setOperator(object.get("userName").toString());
            log.setContent(object.toString());
            DecimalFormat decimalFormat = new DecimalFormat("#0.00");
            singlePieceArea= Double.parseDouble(decimalFormat.format(width * height / 100000));
            if(Long.parseLong(id)>0){
                materialStoreMapper.updateMaterialStore(type,json, Long.valueOf(id));
                if (Objects.equals(type, "原片")){
                    materialInventoryMapper.updateMaterialInventoryArea(Long.valueOf(id),singlePieceArea);
            Integer jsonCount=materialStoreMapper.selectMaterialStoreJson(json);
            if(jsonCount==0){
                if(Long.parseLong(id)>0){
                    materialStoreMapper.updateMaterialStore(type,json, Long.valueOf(id));
                    if (Objects.equals(type, "原片")){
                        materialInventoryMapper.updateMaterialInventoryArea(Long.valueOf(id),singlePieceArea);
                    }
                    log.setFunction("saveMaterialStore修改");
                }else{
                    materialStoreMapper.insertMaterialStore(type,json);
                    log.setFunction("saveMaterialStore新增");
                }
            }else{
                materialStoreMapper.insertMaterialStore(type,json);
                saveState = "false1";
            }
            logService.saveLog(log);
        } catch (Exception e) {
            TransactionAspectSupport.currentTransactionStatus().rollbackToSavepoint(savePoint);
            //将异常传入数据库
@@ -71,7 +90,7 @@
            sysError.setError(e+Arrays.toString(e.getStackTrace()));
            sysError.setFunc("saveMaterialStore");
            sysErrorService.insert(sysError);
            saveState = false;
            saveState = "false";
        }
        return saveState;
@@ -87,8 +106,16 @@
        return map;
    }
    public Boolean deleteMaterialStore(Map<String,Object> object) {
        boolean saveState = true;
    public Map<String, Object> getSelectMaterialStores(MaterialStore materialStore) {
        Map<String, Object> map = new HashMap<>();
        map.put("data", materialStoreMapper.getSelectMaterialStores(materialStore));
        return map;
    }
    public String deleteMaterialStore(Map<String,Object> object) {
        String saveState = "true";
        //设置回滚点
        Object savePoint = TransactionAspectSupport.currentTransactionStatus().createSavepoint();
        try {
@@ -97,8 +124,20 @@
                id = object.get("id").toString();
            }
            if(id!=null){
                materialStoreMapper.deleteMaterialStore(Long.valueOf(id));
                Integer materialCount=materialStoreMapper.selectMaterialStore(Long.valueOf(id));
                if(materialCount==0){
                    materialStoreMapper.deleteMaterialStore(Long.valueOf(id));
                }else{
                    saveState="false1";
                }
            }
            Log log = new Log();
            log.setOperatorId(object.get("userId").toString());
            log.setOperator(object.get("userName").toString());
            log.setContent(object.toString());
            log.setFunction("deleteMaterialStore删除:"+id);
            logService.saveLog(log);
@@ -109,7 +148,7 @@
            sysError.setError(e+Arrays.toString(e.getStackTrace()));
            sysError.setFunc("deleteMaterialStore");
            sysErrorService.insert(sysError);
            saveState = false;
            saveState = "false";
        }
        return saveState;