diff --git a/ruoyi-admin/src/main/resources/templates/project/info/add.html b/ruoyi-admin/src/main/resources/templates/project/info/add.html index 130d61d2..fc8d581a 100644 --- a/ruoyi-admin/src/main/resources/templates/project/info/add.html +++ b/ruoyi-admin/src/main/resources/templates/project/info/add.html @@ -354,31 +354,17 @@ var maintenanceProjectProductInfoList = [] function initProductList() { - let data = { - pageSize: 100000, - pageNum: 1, - isTable: 0, - } - $.operate.post(ctx + 'system/product/list', {...data, type: '1'}, function (res) { - softwareProjectProductInfoList = res.rows - softwareProjectProductInfoList.unshift({ - model: '', - productCode: '' - }) + let softwareProjectProductInfoListAll = [[${projectInfo.softwareProjectProductInfoList}]] || [] + softwareProjectProductInfoListAll.forEach((ele) => { + addProduct(ele) }) - $.operate.post(ctx + 'system/product/list', {...data, type: '2'}, function (res) { - hardwareProjectProductInfoList = res.rows - hardwareProjectProductInfoList.unshift({ - model: '', - productCode: '' - }) + let hardwareProjectProductInfoListAll = [[${projectInfo.hardwareProjectProductInfoList}]] || [] + hardwareProjectProductInfoListAll.forEach((ele) => { + addProduct2(ele) }) - $.operate.post(ctx + 'system/product/list', {...data, type: '11,22'}, function (res) { - maintenanceProjectProductInfoList = res.rows - maintenanceProjectProductInfoList.unshift({ - model: '', - productCode: '' - }) + let maintenanceProjectProductInfoListAll = [[${projectInfo.maintenanceProjectProductInfoList}]] || [] + maintenanceProjectProductInfoListAll.forEach((ele) => { + addProduct3(ele) }) } @@ -454,6 +440,29 @@ $.modal.openOptions(options); } + function selectProduct(type, name, ele) { + var url = prefix + "/selectProduct"; + window.localStorage.setItem('procuctType', type) + var options = { + title: '选择' + name, + width: "800", + height: '600', + url: url, + callBack: (index, layero) => { + doSubmitProduct(index, layero, ele) + } + }; + $.modal.openOptions(options); + } + + function doSubmitProduct(index, layero, ele) { + var rows = layero.find("iframe")[0].contentWindow.getSelections(); + $(ele).parent().parent().find('.productBomCode').val(rows[0].productCode) + $(ele).parent().parent().find('.model').val(rows[0].model) + $(ele).parent().parent().find('.productDesc').val(rows[0].description) + $.modal.close(index); + } + function doSubmitCustomer(index, layero) { var rows = layero.find("iframe")[0].contentWindow.getSelections(); if (rows.length == 0) { @@ -510,18 +519,8 @@ let tr = $(` ${length + 1} - - + + @@ -531,7 +530,7 @@ ${softwareProjectProductInfoList.map((ele) => { -删除 +删除 `) $('#productTable tbody').append(tr) @@ -544,20 +543,8 @@ ${softwareProjectProductInfoList.map((ele) => { let tr = $(` ${length + 1} - - + + @@ -580,20 +567,8 @@ ${hardwareProjectProductInfoList.map((ele) => { let tr = $(` ${length + 1} - - + + @@ -603,7 +578,7 @@ ${hardwareProjectProductInfoList.map((ele) => { -删除 +删除 `) $('#productTable3 tbody').append(tr) @@ -625,31 +600,6 @@ ${hardwareProjectProductInfoList.map((ele) => { } function initSearchProduct(type) { - layui.use(function () { - var form = layui.form - form.render() - form.on('select(productCode1)', function (data) { - searchProduct(data.value, 'code', data.elem) - }) - form.on('select(productCode2)', function (data) { - searchProduct(data.value, 'code', data.elem) - }) - form.on('select(productCode3)', function (data) { - searchProduct(data.value, 'code', data.elem) - }) - form.on('select(productModel1)', function (data) { - searchProduct(data.value, 'model', data.elem) - }) - form.on('select(productModel2)', function (data) { - searchProduct(data.value, 'model', data.elem) - }) - form.on('select(productModel3)', function (data) { - searchProduct(data.value, 'model', data.elem) - }) - $('.layui-input').on('mouseout', function () { - $(this).blur() - }) - }) $('.productTable .delRow').on('click', function () { let ele = $(this) $.modal.confirm('是否确认删除', function () { @@ -668,33 +618,6 @@ ${hardwareProjectProductInfoList.map((ele) => { }) } - function searchProduct(val, type, ele, typeId) { - let selectObj = {} - let listName = $(ele).attr('name') - if (type == 'code') { - if (listName.indexOf('softwareProjectProductInfoList') > -1) { - selectObj = softwareProjectProductInfoList.find((ele) => ele.productCode == val) - } else if (listName.indexOf('hardwareProjectProductInfoList') > -1) { - selectObj = hardwareProjectProductInfoList.find((ele) => ele.productCode == val) - } else if (listName.indexOf('maintenanceProjectProductInfoList') > -1) { - selectObj = maintenanceProjectProductInfoList.find((ele) => ele.productCode == val) - } - $(ele).parent().parent().find('.model+div').find('.layui-input').val(selectObj.model) - $(ele).parent().parent().find('.model').val(selectObj.model) - } else { - if (listName.indexOf('softwareProjectProductInfoList') > -1) { - selectObj = softwareProjectProductInfoList.find((ele) => ele.model == val) - } else if (listName.indexOf('hardwareProjectProductInfoList') > -1) { - selectObj = hardwareProjectProductInfoList.find((ele) => ele.model == val) - } else if (listName.indexOf('maintenanceProjectProductInfoList') > -1) { - selectObj = maintenanceProjectProductInfoList.find((ele) => ele.model == val) - } - $(ele).parent().parent().find('.productBomCode+div').find('.layui-input').val(selectObj.model) - $(ele).parent().parent().find('.productBomCode').val(selectObj.productCode) - } - $(ele).parent().parent().find('.productDesc').val(selectObj.description) - } - function initPrice() { $('.productTable .quantity').on('input', function () { let num = $(this).val() diff --git a/ruoyi-admin/src/main/resources/templates/project/info/edit.html b/ruoyi-admin/src/main/resources/templates/project/info/edit.html index 119cea5e..79dc9b2c 100644 --- a/ruoyi-admin/src/main/resources/templates/project/info/edit.html +++ b/ruoyi-admin/src/main/resources/templates/project/info/edit.html @@ -356,7 +356,7 @@ -
+
@@ -376,48 +376,18 @@ var maintenanceProjectProductInfoList = [] function initProductList() { - let data = { - pageSize: 100000, - pageNum: 1, - isTable: 0, - } - - $.operate.post(ctx + 'system/product/list', {...data, type: '1'}, function (res) { - softwareProjectProductInfoList = res.rows - softwareProjectProductInfoList.unshift({ - model: '', - productCode: '' - }) - let softwareProjectProductInfoListAll = [[${projectInfo.softwareProjectProductInfoList}]] || [] - softwareProjectProductInfoListAll.forEach((ele) => { - addProduct(ele) - }) + let softwareProjectProductInfoListAll = [[${projectInfo.softwareProjectProductInfoList}]] || [] + softwareProjectProductInfoListAll.forEach((ele) => { + addProduct(ele) }) - $.operate.post(ctx + 'system/product/list', {...data, type: '2'}, function (res) { - hardwareProjectProductInfoList = res.rows - hardwareProjectProductInfoList.unshift({ - model: '', - productCode: '' - }) - let hardwareProjectProductInfoListAll = [[${projectInfo.hardwareProjectProductInfoList}]] || [] - hardwareProjectProductInfoListAll.forEach((ele) => { - addProduct2(ele) - }) - + let hardwareProjectProductInfoListAll = [[${projectInfo.hardwareProjectProductInfoList}]] || [] + hardwareProjectProductInfoListAll.forEach((ele) => { + addProduct2(ele) }) - $.operate.post(ctx + 'system/product/list', {...data, type: '11,22'}, function (res) { - maintenanceProjectProductInfoList = res.rows - maintenanceProjectProductInfoList.unshift({ - model: '', - productCode: '' - }) - let maintenanceProjectProductInfoListAll = [[${projectInfo.maintenanceProjectProductInfoList}]] || [] - maintenanceProjectProductInfoListAll.forEach((ele) => { - addProduct3(ele) - }) - + let maintenanceProjectProductInfoListAll = [[${projectInfo.maintenanceProjectProductInfoList}]] || [] + maintenanceProjectProductInfoListAll.forEach((ele) => { + addProduct3(ele) }) - } function submitHandler() { @@ -430,7 +400,6 @@ $(function () { initProductList() - var layerIndex = parent.layer.index $("input[name='estimatedOrderTime']").datetimepicker({ format: "yyyy-mm-dd", minView: "month", @@ -573,19 +542,8 @@ let tr = $(` ${length + 1} - - - + + @@ -608,19 +566,8 @@ ${softwareProjectProductInfoList.map((ele) => { let tr = $(` ${length + 1} - - - + + @@ -643,19 +590,8 @@ ${hardwareProjectProductInfoList.map((ele) => { let tr = $(` ${length + 1} - - - + + @@ -687,31 +623,6 @@ ${maintenanceProjectProductInfoList.map((ele) => { } function initSearchProduct(type) { - layui.use(function () { - var form = layui.form - form.render() - form.on('select(productCode1)', function (data) { - searchProduct(data.value, 'code', data.elem) - }) - form.on('select(productCode2)', function (data) { - searchProduct(data.value, 'code', data.elem) - }) - form.on('select(productCode3)', function (data) { - searchProduct(data.value, 'code', data.elem) - }) - form.on('select(productModel1)', function (data) { - searchProduct(data.value, 'model', data.elem) - }) - form.on('select(productModel2)', function (data) { - searchProduct(data.value, 'model', data.elem) - }) - form.on('select(productModel3)', function (data) { - searchProduct(data.value, 'model', data.elem) - }) - $('.layui-input').on('mouseout', function () { - $(this).blur() - }) - }) $('.productTable .delRow').on('click', function () { let ele = $(this) $.modal.confirm('是否确认删除', function () { @@ -731,33 +642,6 @@ ${maintenanceProjectProductInfoList.map((ele) => { } - function searchProduct(val, type, ele, typeId) { - let selectObj = {} - let listName = $(ele).attr('name') - if (type == 'code') { - if (listName.indexOf('softwareProjectProductInfoList') > -1) { - selectObj = softwareProjectProductInfoList.find((ele) => ele.productCode == val) - } else if (listName.indexOf('hardwareProjectProductInfoList') > -1) { - selectObj = hardwareProjectProductInfoList.find((ele) => ele.productCode == val) - } else if (listName.indexOf('maintenanceProjectProductInfoList') > -1) { - selectObj = maintenanceProjectProductInfoList.find((ele) => ele.productCode == val) - } - $(ele).parent().parent().find('.model+div').find('.layui-input').val(selectObj.model) - $(ele).parent().parent().find('.model').val(selectObj.model) - } else { - if (listName.indexOf('softwareProjectProductInfoList') > -1) { - selectObj = softwareProjectProductInfoList.find((ele) => ele.model == val) - } else if (listName.indexOf('hardwareProjectProductInfoList') > -1) { - selectObj = hardwareProjectProductInfoList.find((ele) => ele.model == val) - } else if (listName.indexOf('maintenanceProjectProductInfoList') > -1) { - selectObj = maintenanceProjectProductInfoList.find((ele) => ele.model == val) - } - $(ele).parent().parent().find('.productBomCode+div').find('.layui-input').val(selectObj.model) - $(ele).parent().parent().find('.productBomCode').val(selectObj.productCode) - } - $(ele).parent().parent().find('.productDesc').val(selectObj.description) - } - function initPrice() { $('.productTable .quantity').on('input', function () { let num = $(this).val() @@ -835,6 +719,30 @@ ${maintenanceProjectProductInfoList.map((ele) => { } } + + function selectProduct(type, name, ele) { + var url = prefix + "/selectProduct"; + window.localStorage.setItem('procuctType', type) + var options = { + title: '选择' + name, + width: "800", + height: '600', + url: url, + callBack: (index, layero) => { + doSubmitProduct(index, layero, ele) + } + }; + $.modal.openOptions(options); + } + + function doSubmitProduct(index, layero, ele) { + var rows = layero.find("iframe")[0].contentWindow.getSelections(); + $(ele).parent().parent().find('.productBomCode').val(rows[0].productCode) + $(ele).parent().parent().find('.model').val(rows[0].model) + $(ele).parent().parent().find('.productDesc').val(rows[0].description) + $.modal.close(index); + } + \ No newline at end of file diff --git a/ruoyi-admin/src/main/resources/templates/project/info/selectProduct.html b/ruoyi-admin/src/main/resources/templates/project/info/selectProduct.html new file mode 100644 index 00000000..07d675f8 --- /dev/null +++ b/ruoyi-admin/src/main/resources/templates/project/info/selectProduct.html @@ -0,0 +1,90 @@ + + + + + + + +
+
+
+
+
+
    +
  • + + + + +
  • +
  • + + +
  • +
  • +  搜索 +  重置 +
  • +
+
+
+
+
+
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/ruoyi-admin/src/main/resources/templates/project/order/add.html b/ruoyi-admin/src/main/resources/templates/project/order/add.html index c064406b..1b00f762 100644 --- a/ruoyi-admin/src/main/resources/templates/project/order/add.html +++ b/ruoyi-admin/src/main/resources/templates/project/order/add.html @@ -626,13 +626,9 @@ let tr = $(` ${length + 1} - - + + - + + @@ -698,20 +682,8 @@ ${hardwareProjectProductInfoList.map((ele) => { let tr = $(` ${length + 1} - - + + @@ -744,32 +716,6 @@ ${maintenanceProjectProductInfoList.map((ele) => { } function initSearchProduct() { - layui.use(function () { - var form = layui.form - form.render() - - form.on('select(productCode1)', function (data) { - searchProduct(data.value, 'code', data.elem) - }) - form.on('select(productCode2)', function (data) { - searchProduct(data.value, 'code', data.elem) - }) - form.on('select(productCode3)', function (data) { - searchProduct(data.value, 'code', data.elem) - }) - form.on('select(productModel1)', function (data) { - searchProduct(data.value, 'model', data.elem) - }) - form.on('select(productModel2)', function (data) { - searchProduct(data.value, 'model', data.elem) - }) - form.on('select(productModel3)', function (data) { - searchProduct(data.value, 'model', data.elem) - }) - $('.layui-input').on('mouseout', function () { - $(this).blur() - }) - }) $('.productTable .delRow').on('click', function () { let ele = $(this) $.modal.confirm('是否确认删除', function () { @@ -788,33 +734,6 @@ ${maintenanceProjectProductInfoList.map((ele) => { }) } - function searchProduct(val, type, ele) { - let selectObj = {} - let listName = $(ele).attr('name') - if (type == 'code') { - if (listName.indexOf('softwareProjectProductInfoList') > -1) { - selectObj = softwareProjectProductInfoList.find((ele) => ele.productCode == val) - } else if (listName.indexOf('hardwareProjectProductInfoList') > -1) { - selectObj = hardwareProjectProductInfoList.find((ele) => ele.productCode == val) - } else if (listName.indexOf('maintenanceProjectProductInfoList') > -1) { - selectObj = maintenanceProjectProductInfoList.find((ele) => ele.productCode == val) - } - $(ele).parent().parent().find('.model+div').find('.layui-input').val(selectObj.model) - $(ele).parent().parent().find('.model').val(selectObj.model) - } else { - if (listName.indexOf('softwareProjectProductInfoList') > -1) { - selectObj = softwareProjectProductInfoList.find((ele) => ele.model == val) - } else if (listName.indexOf('hardwareProjectProductInfoList') > -1) { - selectObj = hardwareProjectProductInfoList.find((ele) => ele.model == val) - } else if (listName.indexOf('maintenanceProjectProductInfoList') > -1) { - selectObj = maintenanceProjectProductInfoList.find((ele) => ele.model == val) - } - $(ele).parent().parent().find('.productBomCode+div').find('.layui-input').val(selectObj.model) - $(ele).parent().parent().find('.productBomCode').val(selectObj.productCode) - } - $(ele).parent().parent().find('.productDesc').val(selectObj.description) - } - function initPrice() { $('.productTable .quantity').on('input', function () { let num = $(this).val() @@ -1021,6 +940,29 @@ ${ submitHandler() }) } + + function selectProduct(type, name, ele) { + var url = prefix + "/selectProduct"; + window.localStorage.setItem('procuctType', type) + var options = { + title: '选择' + name, + width: "800", + height: '600', + url: url, + callBack: (index, layero) => { + doSubmitProduct(index, layero, ele) + } + }; + $.modal.openOptions(options); + } + + function doSubmitProduct(index, layero, ele) { + var rows = layero.find("iframe")[0].contentWindow.getSelections(); + $(ele).parent().parent().find('.productBomCode').val(rows[0].productCode) + $(ele).parent().parent().find('.model').val(rows[0].model) + $(ele).parent().parent().find('.productDesc').val(rows[0].description) + $.modal.close(index); + } \ No newline at end of file diff --git a/ruoyi-admin/src/main/resources/templates/project/order/edit.html b/ruoyi-admin/src/main/resources/templates/project/order/edit.html index 46a2cd82..a3c582a1 100644 --- a/ruoyi-admin/src/main/resources/templates/project/order/edit.html +++ b/ruoyi-admin/src/main/resources/templates/project/order/edit.html @@ -626,18 +626,8 @@ let tr = $(` ${length + 1} - - + + @@ -661,20 +651,8 @@ ${softwareProjectProductInfoList.map((ele) => { let tr = $(` ${length + 1} - - + + @@ -698,20 +676,8 @@ ${hardwareProjectProductInfoList.map((ele) => { let tr = $(` ${length + 1} - - + + @@ -744,32 +710,6 @@ ${maintenanceProjectProductInfoList.map((ele) => { } function initSearchProduct() { - layui.use(function () { - var form = layui.form - form.render() - - form.on('select(productCode1)', function (data) { - searchProduct(data.value, 'code', data.elem) - }) - form.on('select(productCode2)', function (data) { - searchProduct(data.value, 'code', data.elem) - }) - form.on('select(productCode3)', function (data) { - searchProduct(data.value, 'code', data.elem) - }) - form.on('select(productModel1)', function (data) { - searchProduct(data.value, 'model', data.elem) - }) - form.on('select(productModel2)', function (data) { - searchProduct(data.value, 'model', data.elem) - }) - form.on('select(productModel3)', function (data) { - searchProduct(data.value, 'model', data.elem) - }) - $('.layui-input').on('mouseout', function () { - $(this).blur() - }) - }) $('.productTable .delRow').on('click', function () { let ele = $(this) $.modal.confirm('是否确认删除', function () { @@ -788,34 +728,7 @@ ${maintenanceProjectProductInfoList.map((ele) => { }) } - function searchProduct(val, type, ele) { - let selectObj = {} - let listName = $(ele).attr('name') - if (type == 'code') { - if (listName.indexOf('softwareProjectProductInfoList') > -1) { - selectObj = softwareProjectProductInfoList.find((ele) => ele.productCode == val) - } else if (listName.indexOf('hardwareProjectProductInfoList') > -1) { - selectObj = hardwareProjectProductInfoList.find((ele) => ele.productCode == val) - } else if (listName.indexOf('maintenanceProjectProductInfoList') > -1) { - selectObj = maintenanceProjectProductInfoList.find((ele) => ele.productCode == val) - } - $(ele).parent().parent().find('.model+div').find('.layui-input').val(selectObj.model) - $(ele).parent().parent().find('.model').val(selectObj.model) - } else { - if (listName.indexOf('softwareProjectProductInfoList') > -1) { - selectObj = softwareProjectProductInfoList.find((ele) => ele.model == val) - } else if (listName.indexOf('hardwareProjectProductInfoList') > -1) { - selectObj = hardwareProjectProductInfoList.find((ele) => ele.model == val) - } else if (listName.indexOf('maintenanceProjectProductInfoList') > -1) { - selectObj = maintenanceProjectProductInfoList.find((ele) => ele.model == val) - } - $(ele).parent().parent().find('.productBomCode+div').find('.layui-input').val(selectObj.model) - $(ele).parent().parent().find('.productBomCode').val(selectObj.productCode) - } - $(ele).parent().parent().find('.productDesc').val(selectObj.description) - } - - function initPrice() { + function initPrice() { $('.productTable .quantity').on('input', function () { let num = $(this).val() let priceVal = $(this).parent().parent().find('.price').val() @@ -1009,6 +922,29 @@ ${ submitHandler() }) } + + function selectProduct(type, name, ele) { + var url = prefix + "/selectProduct"; + window.localStorage.setItem('procuctType', type) + var options = { + title: '选择' + name, + width: "800", + height: '600', + url: url, + callBack: (index, layero) => { + doSubmitProduct(index, layero, ele) + } + }; + $.modal.openOptions(options); + } + + function doSubmitProduct(index, layero, ele) { + var rows = layero.find("iframe")[0].contentWindow.getSelections(); + $(ele).parent().parent().find('.productBomCode').val(rows[0].productCode) + $(ele).parent().parent().find('.model').val(rows[0].model) + $(ele).parent().parent().find('.productDesc').val(rows[0].description) + $.modal.close(index); + } \ No newline at end of file diff --git a/ruoyi-admin/src/main/resources/templates/project/order/selectProduct.html b/ruoyi-admin/src/main/resources/templates/project/order/selectProduct.html new file mode 100644 index 00000000..07d675f8 --- /dev/null +++ b/ruoyi-admin/src/main/resources/templates/project/order/selectProduct.html @@ -0,0 +1,90 @@ + + + + + + + +
+
+
+
+
+
    +
  • + + + + +
  • +
  • + + +
  • +
  • +  搜索 +  重置 +
  • +
+
+
+
+
+
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/ruoyi-admin/src/main/resources/templates/project/order/selectProject.html b/ruoyi-admin/src/main/resources/templates/project/order/selectProject.html index 6784788b..105627ce 100644 --- a/ruoyi-admin/src/main/resources/templates/project/order/selectProject.html +++ b/ruoyi-admin/src/main/resources/templates/project/order/selectProject.html @@ -81,8 +81,8 @@ title: '最终客户' }, { - field: '生成订单', - title: 'canGenerate', + field: 'canGenerate', + title: '生成订单', formatter:(value,row)=>{ return value?`未生成`:'已生成' } diff --git a/ruoyi-sip/src/main/java/com/ruoyi/sip/controller/ProjectInfoController.java b/ruoyi-sip/src/main/java/com/ruoyi/sip/controller/ProjectInfoController.java index 546d4f70..e50ea469 100644 --- a/ruoyi-sip/src/main/java/com/ruoyi/sip/controller/ProjectInfoController.java +++ b/ruoyi-sip/src/main/java/com/ruoyi/sip/controller/ProjectInfoController.java @@ -60,6 +60,11 @@ public class ProjectInfoController extends BaseController { return prefix + "/selectAgent"; } + @GetMapping("selectProduct") + public String selectProduct() + { + return prefix + "/selectProduct"; + } /** diff --git a/ruoyi-sip/src/main/java/com/ruoyi/sip/controller/ProjectOrderInfoController.java b/ruoyi-sip/src/main/java/com/ruoyi/sip/controller/ProjectOrderInfoController.java index 874ff8d3..f13f1ca5 100644 --- a/ruoyi-sip/src/main/java/com/ruoyi/sip/controller/ProjectOrderInfoController.java +++ b/ruoyi-sip/src/main/java/com/ruoyi/sip/controller/ProjectOrderInfoController.java @@ -226,4 +226,9 @@ public class ProjectOrderInfoController extends BaseController { return prefix + "/selectPeople"; } + @GetMapping("selectProduct") + public String selectProduct() + { + return prefix + "/selectProduct"; + } }