目的: V20201B- Grid 加外框 – 藍色 - style - css
-勾選[V]處理
-勾選[V]處理
處理說明: 1> 直接設定 : style , 不用 css檔案
style: 'border: 4px solid #0066cc; border-radius: 6px;'
2> 間接設定: cls , 利用 *.css 檔案
// *.js href *.css
var Tmp_Str = "<link type='text/css' rel='stylesheet' href='../JsFunction/mycss.css' >";
$('head').append(Tmp_Str);
cls: 'edit_BC',
cls: 'my_Grid',
3>*.css
<style type="text/css" >.my_Grid { border: 4px solid #0066cc; border-radius: 6px;}.my_bigfont{ font-size: 30px; color: yellow;}.my_redcolor { background: red; }.my_lightgreen { background: #CCFF00;}</style >
4>子畫面[V] 勾選處理
1>*.js -style - Grid
//子件明細 sub_Grid2 - AMM_EMPD
var sub_Grid2 = Ext.create('TMGrid', {
grid_id: 'sub_Grid2',
columns: sub_Columns_V20201B_2,
flex: 10,
store: Ext.create('gridstore', { model: sub_model_V20201B_2 }),
//style: 'border: 4px solid #0066cc; border-radius: 6px;'
});
//子件明細 sub_Grid3 - AMM_DEVD
var sub_Grid3 = Ext.create('TMGrid', {
grid_id: 'sub_Grid3',
columns: sub_Columns_V20201B_3,
flex: 20,
store: Ext.create('gridstore', { model: sub_model_V20201B_3 }),
//style: 'border: 4px solid #0066cc; border-radius: 6px;'
});
2>*.js - style - panel
var cmp_sub_panel_Grid2 = get_cmp_panel1(200,10);
cmp_sub_panel_Grid2.id = "sub_panel_Grid2";
cmp_sub_panel_Grid2.style = "border: 2px solid #0066cc;";
cmp_sub_panel_Grid2.items.push(sub_Grid2);
var cmp_sub_panel_Grid3 = get_cmp_panel1(200, 20);
cmp_sub_panel_Grid3.id = "sub_panel_Grid3";
cmp_sub_panel_Grid3.style = "border: 2px solid #0066cc; ";
cmp_sub_panel_Grid3.items.push(sub_Grid3);
{
xtype: 'panel',
id: 'sub_panel3',
region: 'south',
layout: { type: "hbox", align: 'stretch' },
flex: 10,
border: 1,
//items: [sub_Grid2, sub_Grid3,] //圖1
items: [cmp_sub_panel_Grid2, cmp_sub_panel_Grid3], //圖2
},
3>*.js - [V]勾選 - 子畫面勾選處理
Ext.define('CHK_PK_OBJ1', {
PK_LIST: [], //儲存選項's的 PK欄位值
ALL_LIST: [], //儲存選項's的 所有欄位值
});
var CHK_PK_OBJ1 = Ext.create('CHK_PK_OBJ1');
var sub_Columns_V20201B_1 = [
{ header: "", xtype: "rownumberer", width: 40, align: "center", sortable: false },
{
//2023/07/14 microed , 將 V120201 改成 雅嵐版本 - 分頁勾選
header: "勾選",
dataIndex: "CHECK", width: 40, xtype: 'checkcolumn', menuDisabled: true, sortable: false,
//rec : 目前資料欄位值
renderer: function (value, metadata, rec, rowIndex, colIndex, store) {
//var item = rec.get('AMMNO') + '&' + rec.get('WC') + '&' + rec.get('ITM');
var Tmp_PK = rec.get('AMMNO') + '&' + rec.get('WC') + '&' + rec.get('WITM');
var chkd = '';
if (rec.get('CHECK') === true) {
if (CHK_PK_OBJ1.PK_LIST.indexOf(Tmp_PK) == -1) {
CHK_PK_OBJ1.PK_LIST.push(Tmp_PK);
CHK_PK_OBJ1.ALL_LIST.push(rec.data);
}
chkd = 'checked';
rec.set('CHECK', true);
}
else if (rec.get('CHECK') === false) {
rec.set('CHECK', false);
//將本Tmp_PK ,由 Array 中移除 , 所以不會有 空字串, 空 Object
CHK_PK_OBJ1.PK_LIST = jQuery.grep(CHK_PK_OBJ1.PK_LIST, function (item) {
var Tmp_cur_PK = item.AMMNO + "&" + item.WC + "&" + item.WITM;
return Tmp_cur_PK != Tmp_PK;
});
CHK_PK_OBJ1.ALL_LIST = jQuery.grep(CHK_PK_OBJ1.ALL_LIST, function (item) {
var Tmp_cur_PK = item.AMMNO + "&" + item.WC + "&" + item.WITM;
return Tmp_cur_PK != Tmp_PK;
});
CHK_PK_OBJ1.ALL_LIST);
}
else if (typeof rec.get('CHECK') === "undefined") { //往上或下一頁
if (CHK_PK_OBJ1.PK_LIST.indexOf(Tmp_PK) > -1) {
chkd = 'checked';
if (CHK_PK_OBJ1.PK_LIST.indexOf(Tmp_PK) == -1) {
CHK_PK_OBJ1.PK_LIST.push(Tmp_PK);
CHK_PK_OBJ1.ALL_LIST.push(rec.data);
console.log("undefined checked CHK_PK_OBJ1.PK_LIST:", CHK_PK_OBJ1.PK_LIST);
console.log("undefined checked CHK_PK_OBJ1.ALL_LIST:", CHK_PK_OBJ1.ALL_LIST);
}
rec.set('CHECK', true);
} else {
rec.set('CHECK', false);
}
}
var cbx = "<input type='checkbox' "
+ chkd + " > ";
return cbx;
},
},
{ header: "AMM單號", dataIndex: "AMMNO", width: 120, sortable: false, TMType: "string" },
{ header: "工作中心", dataIndex: "WC", width: 70, sortable: false, TMType: "string" },
{header: "工作步序", dataIndex: "WITM", width: 70, sortable: false, TMType: "string" },
{ header: "步序說明", dataIndex: "STP", width: 120, sortable: false, TMType: "string" },
{ header: "所需人數", dataIndex: "AQTY", width: 70, sortable: false },
{ header: "熟手人數", dataIndex: "PQTY", width: 70, sortable: false },
{ header: "工時", dataIndex: "WHR", width: 60, sortable: false, align: "right", TMType: "float", renderer: Ext.util.Format.numberRenderer('000,000.00') },
{ header: "步序工作中心", dataIndex: "DWC", width: 80, sortable: false, TMType: "string" },
{ header: "是否排程", dataIndex: "STATUS", width: 80, sortable: false, TMType: "string" },
{ header: "工作編號", dataIndex: "MITM", width: 120, sortable: false, TMType: "string" },
];
4>*.js - 子畫面[V]勾選 - 送至後端處理
function V20201B_OK() {
//1>目前挑選資料 傳送至後端
var cur_rec;
let Tmp_DataAry1 = [];
var Tmp_EMPLYID, Tmp_AMMNO;
var Tmp_Str;
for (var i = 0; i < CHK_PK_OBJ1.PK_LIST.length; i++) {
cur_rec = CHK_PK_OBJ1.ALL_LIST[i];
//Tmp_PK = cur_rec.AMMNO.toString()+"&"+cur_rec.WC.toString()+"&"+cur_rec.ITM.toString();
if (!(JSON.stringify(cur_rec) === '{}')) {
Tmp_DataAry1.push(cur_rec);
}
}
//主畫面勾選資料
let Tmp_DataString1 = JSON.stringify(Tmp_DataAry1);
var np = {};
np["DataString1"] = Tmp_DataString1;
//新增 AMM_TLSAR & AMM_AR
//STEP2: 若 AMM_TLSAR & AMM_AR of FMNO 不存在, 則新增該檔案資料(AMM_TLSAR, AMM_AR)
Tmp_url = '../../api/V20201BAPI/UPDATE_AMM_SCHSTP';
Tmp_RtnStr = getUrlStr(Tmp_url, np, "[細部資料維護]鈕-更新(AMM_SCHSTP.STATUS)=Y/N");
if (!checkRtnOK(Tmp_RtnStr)) {
mywarnalert(Tmp_RtnStr);
return;
}
else {
mysuccessalert(Tmp_RtnStr);
//Ext.getCmp("sub_Grid").store.reload();
Ext.getCmp("sub_btn_V20201B_cancel").fireEvent('click', Ext.getCmp("sub_btn_V20201B_cancel"));
}






