Sfoglia il codice sorgente

移动端新件转销售

FengChaoYu 8 mesi fa
parent
commit
3b3cf6a772

+ 66 - 0
mall-miniapp-service/src/main/java/com/gree/mall/miniapp/bean/material/parts/PartsChangeSalesBean.java

@@ -0,0 +1,66 @@
+package com.gree.mall.miniapp.bean.material.parts;
+
+import com.gree.mall.miniapp.plus.entity.WebsitPartsChangeSalesItem;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.math.BigDecimal;
+import java.util.Date;
+import java.util.List;
+
+@Data
+@ApiModel
+public class PartsChangeSalesBean {
+
+    @ApiModelProperty("转销单号")
+    private String changeSalesNo;
+
+    @ApiModelProperty("销售单号")
+    private String salesId;
+
+    @ApiModelProperty("转单类型")
+    private String changeType;
+
+    @ApiModelProperty("总金额")
+    private BigDecimal totalAmount;
+
+    @ApiModelProperty("网点编码")
+    private String websitId;
+
+    @ApiModelProperty("网点名称")
+    private String websitName;
+
+    @ApiModelProperty("配件网点编号")
+    private String partsWebsitId;
+
+    @ApiModelProperty("师傅身份证")
+    private String identity;
+
+    @ApiModelProperty("师傅编号")
+    private String workerId;
+
+    @ApiModelProperty("师傅名称")
+    private String workerName;
+
+    @ApiModelProperty("审批备注")
+    private String examineRemark;
+
+    @ApiModelProperty("单据状态")
+    private String flag;
+
+    @ApiModelProperty("单据状态")
+    private String flagName;
+
+    @ApiModelProperty("创建时间")
+    private Date createTime;
+
+    @ApiModelProperty("审核人")
+    private String examineBy;
+
+    @ApiModelProperty("审核时间")
+    private Date examineTime;
+
+    @ApiModelProperty("转销售明细")
+    List<WebsitPartsChangeSalesItem> partsChangeSalesItemList;
+}

+ 48 - 0
mall-miniapp-service/src/main/java/com/gree/mall/miniapp/controller/material/parts/ChangeSalesController.java

@@ -0,0 +1,48 @@
+package com.gree.mall.miniapp.controller.material.parts;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.gree.mall.miniapp.bean.material.parts.PartsChangeSalesBean;
+import com.gree.mall.miniapp.exception.RemoteServiceException;
+import com.gree.mall.miniapp.helper.ResponseHelper;
+import com.gree.mall.miniapp.logic.material.parts.WebsitPartsChangeSalesLogic;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiParam;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+
+import javax.annotation.Resource;
+
+@Slf4j
+@RestController
+@Api(value = "新件转销售", tags ={"新件转销售"} )
+@RequestMapping(value = "/app/worker/change-sales", produces = "application/json; charset=utf-8")
+public class ChangeSalesController {
+
+    @Resource
+    WebsitPartsChangeSalesLogic websitPartsChangeSalesLogic;
+
+    @ApiOperation(value = "新件转销售列表")
+    @PostMapping("/list")
+    public ResponseHelper<IPage<PartsChangeSalesBean>> appList(
+            @ApiParam(value = "转销单号") @RequestParam(required = false) String changeSalesNo,
+            @ApiParam(value = "单据状态 SUBMIT=提交 AGREE=通过 REJECT=驳回") @RequestParam(required = false) String flag,
+            @ApiParam(value = "师傅身份证", required = true) @RequestParam String identity,
+            @ApiParam(value = "配件编码") @RequestParam(required = false) String partsNumber,
+            @ApiParam(value = "页号",required = true) @RequestParam Integer pageNo,
+            @ApiParam(value = "页大小",required = true) @RequestParam Integer pageSize
+    ) throws RemoteServiceException {
+        return ResponseHelper.success(websitPartsChangeSalesLogic.appList(changeSalesNo, flag, identity, pageNo, pageSize));
+    }
+
+    @ApiOperation(value = "新件转销售详情")
+    @PostMapping("/detail")
+    public ResponseHelper<PartsChangeSalesBean> detail(
+            @ApiParam(value = "转销单号",required = true) @RequestParam String changeSalesNo
+    ) throws RemoteServiceException {
+        return ResponseHelper.success(websitPartsChangeSalesLogic.detail(changeSalesNo));
+    }
+}

+ 77 - 0
mall-miniapp-service/src/main/java/com/gree/mall/miniapp/logic/material/parts/WebsitPartsChangeSalesLogic.java

@@ -0,0 +1,77 @@
+package com.gree.mall.miniapp.logic.material.parts;
+
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.gree.mall.miniapp.bean.material.parts.PartsChangeSalesBean;
+import com.gree.mall.miniapp.commonmapper.MaterialMapper;
+import com.gree.mall.miniapp.enums.base.BaseEnum;
+import com.gree.mall.miniapp.enums.material.PartsOrderFlagEnum;
+import com.gree.mall.miniapp.logic.common.CommonLogic;
+import com.gree.mall.miniapp.plus.entity.WebsitPartsChangeSales;
+import com.gree.mall.miniapp.plus.entity.WebsitPartsChangeSalesItem;
+import com.gree.mall.miniapp.plus.service.WebsitPartsChangeSalesItemService;
+import com.gree.mall.miniapp.plus.service.WebsitPartsChangeSalesService;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.BeanUtils;
+import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.util.ArrayList;
+import java.util.List;
+
+@Slf4j
+@Service
+public class WebsitPartsChangeSalesLogic {
+
+    @Resource
+    MaterialMapper materialMapper;
+    @Resource
+    CommonLogic commonLogic;
+    @Resource
+    WebsitPartsChangeSalesService websitPartsChangeSalesService;
+    @Resource
+    WebsitPartsChangeSalesItemService websitPartsChangeSalesItemService;
+
+    public Object appList(String changeSalesNo, String flag, String identity, Integer pageNo, Integer pageSize) {
+        Page page = websitPartsChangeSalesService.lambdaQuery()
+                .eq(StringUtils.isNotBlank(changeSalesNo), WebsitPartsChangeSales::getChangeSalesNo, changeSalesNo)
+                .eq(StringUtils.isNotBlank(flag), WebsitPartsChangeSales::getFlag, flag)
+                .eq(WebsitPartsChangeSales::getIdentity, identity)
+                .orderByDesc(WebsitPartsChangeSales::getCreateTime)
+                .page(new Page<>(pageNo, pageSize));
+
+        List records = page.getRecords();
+        List<PartsChangeSalesBean> partsChangeSalesBeanList = new ArrayList<>();
+        for (Object record : records) {
+            WebsitPartsChangeSales partsChangeSales = (WebsitPartsChangeSales) record;
+            PartsChangeSalesBean partsChangeSalesBean = new PartsChangeSalesBean();
+            BeanUtils.copyProperties(partsChangeSales, partsChangeSalesBean);
+
+            partsChangeSalesBean.setFlagName(BaseEnum.keyToEnumNotNull(PartsOrderFlagEnum.class, partsChangeSalesBean.getFlag()).getRemark());
+
+            List<WebsitPartsChangeSalesItem> partsNewRefundManageItems = websitPartsChangeSalesItemService.lambdaQuery()
+                    .eq(WebsitPartsChangeSalesItem::getChangeSalesNo, changeSalesNo)
+                    .list();
+
+            partsChangeSalesBean.setPartsChangeSalesItemList(partsNewRefundManageItems);
+            partsChangeSalesBeanList.add(partsChangeSalesBean);
+        }
+        page.setRecords(partsChangeSalesBeanList);
+        return page;
+    }
+
+    public Object detail(String changeSalesNo) {
+        WebsitPartsChangeSales partsChangeSales = websitPartsChangeSalesService.lambdaQuery()
+                .eq(WebsitPartsChangeSales::getChangeSalesNo, changeSalesNo)
+                .one();
+        PartsChangeSalesBean partsChangeSalesBean = new PartsChangeSalesBean();
+        BeanUtils.copyProperties(partsChangeSales, partsChangeSalesBean);
+        partsChangeSalesBean.setFlagName(BaseEnum.keyToEnumNotNull(PartsOrderFlagEnum.class, partsChangeSalesBean.getFlag()).getRemark());
+        List<WebsitPartsChangeSalesItem> partsChangeSalesItems = websitPartsChangeSalesItemService.lambdaQuery()
+                .eq(WebsitPartsChangeSalesItem::getChangeSalesNo, changeSalesNo)
+                .list();
+        partsChangeSalesBean.setPartsChangeSalesItemList(partsChangeSalesItems);
+        return partsChangeSalesBean;
+    }
+}