chenlu
2024-12-24 23476bdd58b6aa71d4e9e814d6d494f23e92a488
Merge branch 'master' of http://10.153.19.25:10105/r/ERP_override
11个文件已修改
159 ■■■■■ 已修改文件
north-glass-erp/northglass-erp/src/components/pp/TagStyleDesigner.vue 30 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/components/sd/order/OrderProcess.vue 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/views/pp/glassOptimize/page/ProjectDetail.vue 51 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/java/com/example/erp/controller/pp/GlassOptimizeController.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/java/com/example/erp/mapper/pp/GlassOptimizeMapper.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/java/com/example/erp/service/mm/FinishedGoodsInventoryService.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/java/com/example/erp/service/pp/GlassOptimizeService.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/resources/mapper/mm/FinishedGoodsInventory.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/resources/mapper/mm/FinishedOperateLog.xml 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/resources/mapper/pp/FolwCard.xml 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/resources/mapper/pp/GlassOptimize.xml 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/components/pp/TagStyleDesigner.vue
@@ -134,7 +134,7 @@
const TgaStyleSet = ref([
  {
    tid: '此面为室内面', title: '此面为室内面', data: '', type: 'text',
    tid: '清空', title: '', data: '', type: 'text',
    options: {
      field: '',
      testData: '',
@@ -146,9 +146,21 @@
    }
  },
  {
    tid: '此面为室内面', title: '此面为室内面', data: '', type: 'text',
    options: {
      field: 'inner',
      testData: '',
      width:100,
      height: 16,
      fontSize: 11.25,
      textAlign: "center",
      textContentVerticalAlign: "middle"
    }
  },
  {
    tid: '此面为室外面', title: '此面为室外面', data: '', type: 'text',
    options: {
      field: '',
      field: 'outside',
      testData: '',
      width:100,
      height: 16,
@@ -305,6 +317,18 @@
    tid: 'size', title: '尺寸数量', data: '', type: 'text',
    options: {
      field: 'size',
      testData: '',
      width:270,
      height: 16,
      fontSize: 11.25,
      textAlign: "left",
      textContentVerticalAlign: "middle"
    }
  },
  {
    tid: 'numberSize', title: '序号尺寸', data: '', type: 'text',
    options: {
      field: 'numberSize',
      testData: '',
      width:270,
      height: 16,
@@ -828,6 +852,8 @@
}
const changeTag = () => {
  const json = JSON.parse(tag.value.value)
  //json.panels[0].printElements[0].options.fields.push({text: '序号尺寸', field: 'numberSize'})
  hiprintTemplate.value.setPaper(json.panels[0].width, json.panels[0].height)
  hiprintTemplate.value.update(json)
}
north-glass-erp/northglass-erp/src/components/sd/order/OrderProcess.vue
@@ -15,13 +15,15 @@
  showOverflow:true,
  rowConfig: {isCurrent: true, isHover: true,height: 30},//鼠标移动或选择高亮
  virtualScroll: true, // 开启虚拟滚动功能
  id: 'OrderProcess',
  id: 'Order_Process',
  printConfig: {},
  importConfig: {},
  exportConfig: {},
  scrollY:{ enabled: true,gt:13 },//开启虚拟滚动
  //scrollX:{ enabled: true,gt:15 },//开启虚拟滚动
  filterConfig: {   //筛选配置项
    // remote: true
  },
  columnConfig: {
    resizable: true,
    useKey: true
@@ -50,10 +52,10 @@
const columns = [
  {field: 'order_number',fixed:"left", width: 90,title: t('order.OrderNum'),showOverflow:"ellipsis"},
  // {type:'expand',fixed:"left",slots: { content:'content' },width: 50},
  {field: 'product_name', width: 150, title: t('order.product'),filters:[{ data: '' }],slots: { filter: 'num1_filter' },filterMethod: filterChanged},
  {field: 'glass_child',width: 130, title: t('reportingWorks.glassChild') ,filters:[{ data: '' }],slots: { filter: 'num1_filter' },filterMethod: filterChanged},
  {field: 'order_type', width: 120,title: t('order.orderType'),filters:[{ data: '' }],slots: { filter: 'num1_filter' },filterMethod: filterChanged},
  {field: 'process_id',width: 110, title: t('processCard.processId'),filters:[{ data: '' }],slots: { filter: 'num1_filter' },filterMethod: filterChanged},
  {field: 'product_name', width: 150, title: t('order.product'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
  {field: 'glass_child',width: 130, title: t('reportingWorks.glassChild') ,filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
  {field: 'order_type', width: 120,title: t('order.orderType'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
  {field: 'process_id',width: 110, title: t('processCard.processId'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
  {field: 'technology_number', width: 90,title:  t('processCard.technologyNumber'),showOverflow:"ellipsis"},
  {field: 'quantity', width: 90,title: t('order.quantity')},
@@ -78,6 +80,9 @@
    if (res.code == 200) {
      gridOptions.columns = JSON.parse(JSON.stringify(columns))
      gridOptions.columns.forEach(item =>{
        item.filterMethod = filterChanged
      })
      res.data.title.forEach(item =>{
        let column = {slots: { default: 'quantitySum' }, width: 90,title: item.process}
        gridOptions.columns.push(column)
north-glass-erp/northglass-erp/src/views/pp/glassOptimize/page/ProjectDetail.vue
@@ -209,6 +209,17 @@
  },
})
const processCardColumns = reactive([
  {field: 'process_id', title: '流程卡', width: 200},
  {field: 'project', title: '项目名', width: 150},
  {field: 'order_number', title: '项目名', width: 150},
  {field: 'width', title: '宽', width: 150},
  {field: 'height', title: '高', width: 150},
  {field: 'technology_number', title: '层', width: 150},
  {field: 'layout_status', title: '总层数', width: 150},
  {field: 'quantity', title: '数量', width: 150},
]);
// 右键菜单
const operationConfigs = [
  {
@@ -226,7 +237,9 @@
    gridRef: xGrid,
    requiresRow: false,
    showMessage: () => {
      ElMessage.info('此功能暂未完善,暂时无法执行显示流程卡操作。');
      getProcessCard();
      processCardDialogVisible.value = true;
      ElMessage.info('操作成功!');
    }
  },
  {
@@ -235,6 +248,7 @@
    gridRef: xGrid,
    requiresRow: false,
    showMessage: () => {
      processCardDialogVisible.value = false;
      ElMessage.info('此功能暂未完善,暂时无法执行隐藏流程卡操作。');
    }
  },
@@ -294,7 +308,7 @@
          if (config.code === 'setAmount') {
            config.openAmount();
            ElMessage.success(config.successMsg);
          }else if (['displayProcessCard', 'hideProcessCard', 'setShape', 'safeDXF', 'exportOPTIMA'].includes(config.code)) {
          } else if (['displayProcessCard', 'hideProcessCard', 'setShape', 'safeDXF', 'exportOPTIMA'].includes(config.code)) {
            config.showMessage();
          }
        }).catch(() => {
@@ -363,6 +377,22 @@
    fetchData();
  }
});
// 流程卡窗口
const processCardDialogVisible = ref(false);
// 用于存储流程卡数据
const processCardData = ref(null);
//流程卡
const getProcessCard = () => {
  const projectNo = ref('P24120301')
  request.post(`/glassOptimize/getProcessCard/${projectNo.value}`).then((res) => {
    if (Number(res.code) === 200) {
      processCardData.value = res.data.data;
    } else {
      ElMessage.warning(res.msg);
    }
  });
};
// 从子组件SetAmount获取磨量值,并更新表格数据
const Amount = (amountData) => {
@@ -514,6 +544,23 @@
      </template>
    </vxe-grid>
    <!-- 流程卡表格 -->
    <el-dialog
        v-model="processCardDialogVisible"
        title="流程卡数据"
        width="80%"
        heigth="600px"
        style="height: 80%;"
    >
      <vxe-grid
          height="100%"
          class="mytable - scrollbar"
          :data="processCardData"
          :columns="processCardColumns"
      >
      </vxe-grid>
    </el-dialog>
  </div>
</template>
north-glass-erp/src/main/java/com/example/erp/controller/pp/GlassOptimizeController.java
@@ -29,6 +29,14 @@
        return Result.seccess(glassOptimizeService.projectInfoSv(projectNo));
    }
    //工程信息流程卡
    @ApiOperation("工程信息流程卡接口")
    @PostMapping  ("/getProcessCard/{projectNo}")
    public Result getProcessCard(
            @PathVariable String projectNo){
        return Result.seccess(glassOptimizeService.getProcessCardSv(projectNo));
    }
    //库存信息
    @ApiOperation("库存信息接口")
    @PostMapping  ("/materialStore/{thickness}/{model}")
north-glass-erp/src/main/java/com/example/erp/mapper/pp/GlassOptimizeMapper.java
@@ -15,6 +15,9 @@
    //工程信息
    List<Map<String, Object>> projectInfoMp(String projectNo);
    //工程信息流程卡
    List<Map<String, Object>> getProcessCardMp(String projectNo);
    //库存信息
    List<Map<String, Object>>  materialStoreMp(String thickness, String model);
north-glass-erp/src/main/java/com/example/erp/service/mm/FinishedGoodsInventoryService.java
@@ -31,6 +31,7 @@
import java.text.SimpleDateFormat;
import java.time.LocalDate;
import java.util.*;
import java.util.stream.Collectors;
@Service
@DS("mm")
@@ -104,9 +105,9 @@
            //获取对象集合循环进行新增修改
            List<FlowCard> flowCardlist = JSONArray.parseArray(JSONObject.toJSONString(object.get("flowCard")), FlowCard.class);
            if (!flowCardlist.isEmpty()){
                //获取单号
                String oddNumber= orderNumberSetting("入库");
                for (FlowCard flowCard : flowCardlist) {
                    //获取单号
                    String oddNumber= orderNumberSetting("入库");
                    //添加出入库记录
                    finishedOperateLogMapper.insertIntFinishedOperateLog(flowCard,userName,oddNumber,container);
                    Integer finishedGoodsInventorycount = finishedGoodsInventoryMapper.findOrderNumberdcount(flowCard.getOrder().getOrderId(),flowCard.getOrderNumber());
north-glass-erp/src/main/java/com/example/erp/service/pp/GlassOptimizeService.java
@@ -29,6 +29,13 @@
        return map;
    }
    //工程信息流程卡
    public Map<String, Object> getProcessCardSv(String projectNo) {
        Map<String, Object> map = new HashMap<>();
        map.put("data", glassOptimizeMapper.getProcessCardMp(projectNo));
        return map;
    }
    //库存信息
    public Map<String, Object> materialStoreSv(String thickness, String model) {
        Map<String, Object> map = new HashMap<>();
north-glass-erp/src/main/resources/mapper/mm/FinishedGoodsInventory.xml
@@ -584,10 +584,11 @@
        fc.process_id,
        fc.received_quantity,
        o.batch
        from pp.flow_card fc left join sd.order_detail od on fc.order_id=od.order_id and fc.order_number=od.order_number inner join sd.`order` o on
        from (select *,min(inventory_quantity) as min_inventory_quantity from pp.flow_card  group by  order_id,order_number,process_id) as fc
        left join sd.order_detail od on fc.order_id=od.order_id and fc.order_number=od.order_number inner join sd.`order` o on
        o.order_id=fc.order_id
        <where>
                and fc.received_quantity <![CDATA[<]]> fc.inventory_quantity
                and fc.received_quantity <![CDATA[<]]> fc.min_inventory_quantity
            <if test="flowCard.order.orderId != null and flowCard.order.orderId != ''">
                and o.order_id regexp #{flowCard.order.orderId}
            </if>
north-glass-erp/src/main/resources/mapper/mm/FinishedOperateLog.xml
@@ -71,6 +71,9 @@
            <if test="finishedOperateLog.quantity != null and finishedOperateLog.quantity != ''">
                and fol.quantity regexp #{finishedOperateLog.quantity}
            </if>
            <if test="finishedOperateLog.processId != null and finishedOperateLog.processId != ''">
                and fol.process_id regexp #{finishedOperateLog.processId}
            </if>
            <if test="finishedOperateLog.operator != null and finishedOperateLog.operator != ''">
                and fol.operator regexp #{finishedOperateLog.operator}
            </if>
north-glass-erp/src/main/resources/mapper/pp/FolwCard.xml
@@ -2211,6 +2211,13 @@
                   ' X ',
                   TRIM(TRAILING '.' FROM TRIM(TRAILING '0' FROM CAST(height AS CHAR))),
                   ' = ',#{printQuantity} )      as size,
               CONCAT(
                   od.order_number,')  ',
                       TRIM(TRAILING '.' FROM TRIM(TRAILING '0' FROM CAST(width AS CHAR))),
                       ' X ',
                       TRIM(TRAILING '.' FROM TRIM(TRAILING '0' FROM CAST(height AS CHAR))),
                       ' = ',#{printQuantity} )      as numberSize,
               od.order_number                                       as orderNumber,
               fc.technology_number                                  as technologyNumber,
               od.building_number                                    as buildingNumber,
north-glass-erp/src/main/resources/mapper/pp/GlassOptimize.xml
@@ -89,6 +89,29 @@
            f.order_number;
    </select>
    <!--工程信息流程卡-->
    <select id="getProcessCardMp">
        SELECT
            fc.process_id,
            fc.order_number,
            fc.technology_number,
            fc.quantity,
            fc.layout_status,
            so.project,
            sd.child_width AS width,
            sd.child_height AS height
        FROM
            pp.flow_card AS fc
                INNER JOIN sd.order AS so ON fc.order_id = so.order_id
                INNER JOIN sd.order_glass_detail AS sd ON sd.order_id = so.order_id AND fc.order_id = sd.order_id
        WHERE
            fc.project_no = #{projectNo}
        GROUP BY
            fc.order_id,
            fc.order_number,
            fc.technology_number ;
    </select>
    <!--库存信息-->
    <select id="materialStoreMp">
        SELECT