| | |
| | | |
| | | }) |
| | | return { |
| | | start:selectionStart.rowIndex, |
| | | end : selectionEnd.rowIndex, |
| | | cell:selectCols[0].field |
| | | start:selectionStart.rowIndex,//开始行 |
| | | end : selectionEnd.rowIndex,//结束行 |
| | | cell:selectCols[0].field//选中列 |
| | | } |
| | | //console.log("鼠标选中列:", JSON.stringify(selectCols)) |
| | | |
| | |
| | | {'code': 'remarks', 'name': '加工要求'}, |
| | | {'code': 'Craft', 'name': '工艺',status: 'primary',disabled: true}, |
| | | {'code': 'review', 'name': '审核',status: 'primary',disabled: true}, |
| | | {'code': 'updateMoney', 'name': '金额重置',status: 'primary',disabled: true}, |
| | | {'code': 'saveOrder', 'name': '保存',status: 'primary',icon: 'vxe-icon-save',disabled: false} |
| | | ], |
| | | slots: { |
| | |
| | | switch (code) { |
| | | case 'remarks': { |
| | | dialogTableVisible.value=true |
| | | break |
| | | } |
| | | case 'updateMoney': { |
| | | updateMoney() |
| | | break |
| | | } |
| | | case 'Craft': { |
| | |
| | | productVisible.value = false |
| | | } |
| | | |
| | | |
| | | |
| | | //初始化判断是否有id传入 |
| | | onMounted(()=>{ |
| | | //启用表格拖动选中 |
| | |
| | | } |
| | | request.post(`/order/getOrderById/${str}`).then((res) => { |
| | | if(res.code==200){ |
| | | console.log(res.data.order) |
| | | titleUploadData.value = res.data.order |
| | | //取消工艺按钮禁用 |
| | | gridOptions.toolbarConfig.buttons[1].disabled = false |
| | | //工艺审核后保存按钮禁用 |
| | | if(res.data.order.processReview === 2){ |
| | | gridOptions.toolbarConfig.buttons[3].disabled = true |
| | | gridOptions.toolbarConfig.buttons[4].disabled = true |
| | | } |
| | | //取消审核按钮禁用 |
| | | if(res.data.order.processReview === 2 && res.data.order.orderReview === 0){ |
| | |
| | | gridOptions.toolbarConfig.buttons[2].disabled = false |
| | | gridOptions.toolbarConfig.buttons[2].code='reviews' |
| | | gridOptions.toolbarConfig.buttons[2].name='反审' |
| | | gridOptions.toolbarConfig.buttons[3].disabled = false |
| | | } |
| | | if(res.data.order.productionOrder !==0 ){ |
| | | gridOptions.toolbarConfig.buttons[2].disabled = true |
| | |
| | | } |
| | | }) |
| | | } |
| | | |
| | | //更新金额 |
| | | const updateMoney = () => { |
| | | const updateData = { |
| | | order: titleUploadData.value, |
| | | detail: xGrid.value.getTableData().fullData |
| | | } |
| | | request.post(`/order/updateOrderMoney`,updateData).then(res => { |
| | | if (res.code == 200){ |
| | | ElMessage.success('更新金额成功') |
| | | router.push({path:'/main/order/createOrder',query:{orderId:titleUploadData.value.orderId,random:Math.random()}}) |
| | | } |
| | | |
| | | }) |
| | | |
| | | } |
| | | |
| | | |
| | | // 审核订单 |
| | | const reviewOrder = (state) => { |
| | | request.post(`/order/reviewOrderById/${titleUploadData.value.orderId}/${state}`).then(res =>{ |
| | |
| | | <el-col :span="2"><el-text>计算方式:</el-text></el-col> |
| | | <el-col :span="2"> |
| | | <el-select v-model="titleUploadData.calculateType" clearable placeholder=" " > |
| | | <el-option value="1" label="面积金额(单片)"/> |
| | | <el-option :value="1" label="面积金额(单片)"/> |
| | | </el-select> |
| | | </el-col> |
| | | <el-col :span="2"><el-text>*业务员:</el-text></el-col> |
| | |
| | | import com.example.erp.entity.sd.OrderGlassDetail; |
| | | import com.example.erp.exception.ServiceException; |
| | | import com.example.erp.service.sd.OrderService; |
| | | import io.swagger.annotations.Api; |
| | | import io.swagger.annotations.ApiOperation; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.web.bind.annotation.*; |
| | | |
| | |
| | | |
| | | @RestController |
| | | @RequestMapping("/order") |
| | | @Api(value="订单controller",tags={"订单操作接口"}) |
| | | public class OrderController { |
| | | private final OrderService orderService; |
| | | |
| | |
| | | } |
| | | |
| | | |
| | | @ApiOperation("订单保存") |
| | | @PostMapping("/saveOrder") |
| | | public Result saveOrder(@RequestBody Map<String, Object> orderMap) throws Exception { |
| | | if(orderService.saveOrder(orderMap)) { |
| | |
| | | throw new ServiceException(Constants.Code_500,Constants.Code_msg); |
| | | } |
| | | } |
| | | |
| | | @ApiOperation("订单分页筛选查询") |
| | | @PostMapping("/getOrderList/{pageNum}/{pageSize}/{orderType}/{selectDate}") |
| | | public Result getOrderList(@PathVariable Integer pageNum, @PathVariable Integer pageSize,@PathVariable Integer orderType, @PathVariable List<String> selectDate, @RequestBody Order order) { |
| | | return Result.seccess(orderService.getOrderList(pageNum, pageSize, selectDate, order,orderType)); |
| | | } |
| | | |
| | | @ApiOperation("删除订单") |
| | | @PostMapping("/deleteOrder/{id}") |
| | | public Result deleteOrder(@PathVariable String id) { |
| | | return Result.seccess(orderService.deleteOrder(id)); |
| | | } |
| | | |
| | | @ApiOperation("根据id获取订单信息") |
| | | @PostMapping("/getOrderById/{id}") |
| | | public Result getOrderById(@PathVariable String id) { |
| | | return Result.seccess(orderService.getOrderById(id)); |
| | | } |
| | | @ApiOperation("查询订单工艺") |
| | | @PostMapping("/getOrderCraftById/{id}") |
| | | public Result getOrderCraftById(@PathVariable String id) { |
| | | return Result.seccess(orderService.getOrderCraftById(id)); |
| | | } |
| | | |
| | | @ApiOperation("审核订单") |
| | | @PostMapping("/reviewOrderById/{id}/{status}") |
| | | public Result reviewOrderById(@PathVariable String id,@PathVariable Integer status) { |
| | | return Result.seccess(orderService.reviewOrderById(id,status)); |
| | | } |
| | | |
| | | |
| | | @ApiOperation("审核工艺") |
| | | @PostMapping("/reviewProcessById/{id}/{status}") |
| | | public Result reviewProcessById(@PathVariable String id,@PathVariable Integer status,@RequestBody List<OrderGlassDetail> orderGlassDetails) { |
| | | return Result.seccess(orderService.reviewProcessById(id,status,orderGlassDetails)); |
| | | } |
| | | |
| | | @ApiOperation("更新订单金额单价") |
| | | @PostMapping("/updateOrderMoney") |
| | | public Result updateOrderMoney(@RequestBody Map<String,Object> map) { |
| | | return Result.seccess(orderService.updateOrderMoney(map)); |
| | | } |
| | | } |
| | |
| | | @Api(value="产品controller",tags={"产品操作接口"}) |
| | | @RequestMapping("/product") |
| | | public class ProductController { |
| | | @Autowired |
| | | final |
| | | ProductService productService; |
| | | |
| | | public ProductController(ProductService productService) { |
| | | this.productService = productService; |
| | | } |
| | | |
| | | @ApiOperation("产品查询接口") |
| | | @PostMapping ("/{pageNum}/{pageSize}/{glassType}") |
| | | public Result defaultDateProduct(@PathVariable Integer pageNum, @PathVariable Integer pageSize, @PathVariable List<String> glassType, @RequestBody Product product){ |
| | |
| | | public interface OrderDetailMapper extends BaseMapper<OrderDetail> { |
| | | |
| | | boolean insertBatch(List<OrderDetail> orderDetails); |
| | | |
| | | boolean updateOrderMoney( List<OrderDetail> orderDetails); |
| | | } |
| | |
| | | boolean reviewOrderById(String id,Integer status); |
| | | |
| | | boolean reviewProcessById(String id, Integer status); |
| | | |
| | | boolean updateMoney(@Param("order") Order order); |
| | | } |
| | |
| | | map.put("orderGlassDetails",orderGlassDetails); |
| | | return map; |
| | | } |
| | | |
| | | public boolean updateOrderMoney(Map<String, Object> map) { |
| | | JSONObject jsonObject = new JSONObject(map); |
| | | Order order = JSONObject.parseObject(JSONObject.toJSONString(jsonObject.get("order")), Order.class); |
| | | List<OrderDetail> OrderDetails = JSONArray.parseArray(JSONObject.toJSONString(jsonObject.get("detail")), OrderDetail.class); |
| | | double money = 0; |
| | | for (OrderDetail orderDetail : OrderDetails) { |
| | | orderDetail = updateOrderMoneyComputed(orderDetail,order.getCalculateType()); |
| | | money+= orderDetail.getGrossAmount(); |
| | | } |
| | | order.setMoney(money); |
| | | orderMapper.updateMoney(order); |
| | | orderDetailMapper.updateOrderMoney(OrderDetails); |
| | | return false; |
| | | } |
| | | |
| | | private OrderDetail updateOrderMoneyComputed(OrderDetail orderDetail, Integer calculateType) { |
| | | if (calculateType == 3) { |
| | | orderDetail.setGrossAmount(orderDetail.getPrice() * orderDetail.getQuantity()); |
| | | } else { |
| | | orderDetail.setGrossAmount(orderDetail.getComputeGrossArea() * orderDetail.getPrice()); |
| | | } |
| | | return orderDetail; |
| | | } |
| | | |
| | | |
| | | } |
| | |
| | | ) |
| | | </foreach> |
| | | </insert> |
| | | |
| | | <update id="updateOrderMoney" parameterType="java.util.List"> |
| | | <foreach collection="orderDetails" item="item" index="index" open="" close="" separator=";"> |
| | | update order_detail as a |
| | | set |
| | | a.price = #{item.price}, |
| | | a.gross_amount = #{item.grossAmount} |
| | | where |
| | | a.order_id = #{item.orderId} and |
| | | a.order_number = #{item.orderNumber} |
| | | |
| | | </foreach> |
| | | |
| | | </update> |
| | | |
| | | </mapper> |
| | |
| | | update `order` set process_review = #{status} where order_id = #{id} |
| | | </update> |
| | | |
| | | <update id="updateMoney"> |
| | | update `order` set money = #{order.money} where order_id = #{order.orderId} |
| | | </update> |
| | | |
| | | </mapper> |
| | |
| | | ) |
| | | </foreach> |
| | | </insert> |
| | | |
| | | <update id="updateOrderMoney" parameterType="java.util.List"> |
| | | <foreach collection="orderDetails" item="item" index="index" open="" close="" separator=";"> |
| | | update order_detail as a |
| | | set |
| | | a.price = #{item.price}, |
| | | a.gross_amount = #{item.grossAmount} |
| | | where |
| | | a.order_id = #{item.orderId} and |
| | | a.order_number = #{item.orderNumber} |
| | | |
| | | </foreach> |
| | | |
| | | </update> |
| | | |
| | | </mapper> |
| | |
| | | update `order` set process_review = #{status} where order_id = #{id} |
| | | </update> |
| | | |
| | | <update id="updateMoney"> |
| | | update `order` set money = #{order.money} where order_id = #{order.orderId} |
| | | </update> |
| | | |
| | | </mapper> |