#
wang..123
2022-03-29 f70535ac293cf38ce009ab797adadf990e5f8141
src/main/java/zy/cloud/wms/manager/controller/ItemController.java
@@ -11,6 +11,7 @@
import com.core.common.DateUtils;
import com.core.common.R;
import com.core.exception.CoolException;
import lombok.val;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import zy.cloud.wms.common.web.BaseController;
@@ -23,6 +24,7 @@
import zy.cloud.wms.manager.service.ProjectPlanService;
import zy.cloud.wms.manager.service.ProjectTypeService;
import java.text.SimpleDateFormat;
import java.util.*;
@RestController
@@ -47,11 +49,14 @@
                  @RequestParam(required = false)String orderByType,
                  @RequestParam Map<String, Object> param){
        EntityWrapper<Item> wrapper = new EntityWrapper<>();
//        allLike(Item,null,wrapper,param.get("id"));
        HashSet<String> excludeField = new HashSet<>();
        allLike(Item.class,excludeField,wrapper, (String) param.get("id"));
        excludeTrash(param);
        convert(param, wrapper);
        hostEq(wrapper);
        wrapper.orderBy("status",true);
//        wrapper.orderBy("status",true);
        wrapper.orderBy("id",false);
        if (!Cools.isEmpty(orderByField)){wrapper.orderBy(humpToLine(orderByField), "asc".equals(orderByType));}
        return R.ok(itemService.selectPage(new Page<>(curr, limit), wrapper));
    }
@@ -69,6 +74,39 @@
        }
    }
    @RequestMapping(value = "/item/list/chaoPirce")
    @ManagerAuth
    public R list1(@RequestParam(defaultValue = "1")Integer curr,
                  @RequestParam(defaultValue = "10")Integer limit,
                  @RequestParam(required = false)String orderByField,
                  @RequestParam(required = false)String orderByType,
                  @RequestParam Map<String, Object> param){
        val id = param.get("id");
        String uuid=null;
        if(id!=null){
            uuid = id.toString();
        }
        Page<Item> projectPlanPage = itemService.chaoPirce(toPage(curr,limit,param,Item.class),uuid);
        return R.ok(projectPlanPage);
    }
    @RequestMapping(value = "/item/list/chaoTime")
    @ManagerAuth
    public R list2(@RequestParam(defaultValue = "1")Integer curr,
                   @RequestParam(defaultValue = "10")Integer limit,
                   @RequestParam(required = false)String orderByField,
                   @RequestParam(required = false)String orderByType,
                   @RequestParam Map<String, Object> param){
        val id = param.get("id");
        String uuid=null;
        if(id!=null){
            uuid = id.toString();
        }
        Page<Item> projectPlanPage = itemService.chaoTime(toPage(curr,limit,param,Item.class),uuid);
        return R.ok(projectPlanPage);
    }
    @RequestMapping(value = "/item/add/auth")
    @ManagerAuth
    public R add(Item item) {
@@ -76,14 +114,17 @@
        if (Cools.isEmpty(item)) {
            return R.error("参数为空,请联系管理员");
        }
        if (!item.getType().equals("1")) {
            throw new CoolException("目前仅支持集成项目");
        }
        //item.setType("1");
//        if (!item.getType().equals("1")) {
//            throw new CoolException("目前仅支持集成项目");
//        }
        Item name = itemService.selectOne(new EntityWrapper<Item>()
                .eq("name", item.getName()));
        if (!Cools.isEmpty(name)) {
            throw new CoolException("不可有重复项目名");
        }
        if (item.getRealMonth() < 0){
            throw new CoolException("实施周期不可为负数");
        }
        item.setHostId(getHostId());
@@ -99,12 +140,34 @@
   @RequestMapping(value = "/item/update/auth")
   @ManagerAuth
    public R update(Item item){
        EntityWrapper<Item> wapper = new EntityWrapper<Item>();
        Item newitem = itemService.selectOne(wapper.eq("id", item.getId()));
        if (Cools.isEmpty(item)) {
            return R.error("参数为空,请联系管理员");
        }
        if (!item.getType().equals("1")) {
            throw new CoolException("目前仅支持集成项目");
//        item.setType("1");
//        if (!item.getType().equals("1")) {
//            throw new CoolException("目前仅支持集成项目");
//        }
//        item.setRealMonth(1);
//        if (item.getRealMonth() < 0){
//            throw new CoolException("实施周期不可为负数");
//        }
        if(!(newitem.getStartTime()==null || newitem.getEndTime()==null || newitem.getRealStartTime()==null || newitem.getRealEndTime()==null)){
            item.setStartTime(newitem.getStartTime());
            item.setEndTime(newitem.getEndTime());
            item.setRealEndTime(newitem.getRealEndTime());
            item.setRealStartTime(newitem.getRealStartTime());
        }
        //超出运费
        if(item.getPlandeAmt()!=null && item.getRealdeAmt()!=null){
            item.setExcessAmount(item.getRealdeAmt()-item.getPlandeAmt());
        }
        //超出天数
        if(item.getRealinDate()!=null && item.getPlaninDate()!=null){
            Double days = (double) ((item.getRealinDate().getTime() - item.getPlaninDate().getTime()) / (1000*3600*24));
            Integer day= (int) Math.ceil(days);
            item.setExcessTime(day);
        }
        item.setUpdateBy(getUserId());
        item.setUpdateTime(new Date());